Correzione errori
git-svn-id: svn://10.65.10.50/trunk@3747 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
fc852afa39
commit
54b473bf48
58
m770/772.cpp
58
m770/772.cpp
@ -1,29 +1,29 @@
|
||||
#include <xvt.h>
|
||||
#include <checks.h>
|
||||
#include "770.h"
|
||||
#include "772.h"
|
||||
|
||||
#define usage "Error - usage : %s -{0|1|2|3}"
|
||||
|
||||
int main(int argc,char** argv)
|
||||
{
|
||||
const int n = (argc > 1) ? atoi(argv[1]+1) : -1;
|
||||
|
||||
switch (n)
|
||||
{
|
||||
case 0:
|
||||
m72100(argc,argv); break;
|
||||
case 1:
|
||||
m72200(argc,argv); break;
|
||||
case 2:
|
||||
m72300(argc,argv); break;
|
||||
case 3:
|
||||
m72400(argc,argv); break;
|
||||
case 4:
|
||||
stampa_quadro(argc,argv); break;
|
||||
default:
|
||||
error_box(usage, argv[0]) ;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
#include <xvt.h>
|
||||
#include <checks.h>
|
||||
#include "770.h"
|
||||
#include "772.h"
|
||||
|
||||
#define usage "Error - usage : %s -{0|1|2|3}"
|
||||
|
||||
int main(int argc,char** argv)
|
||||
{
|
||||
const int n = (argc > 1) ? atoi(argv[1]+1) : -1;
|
||||
|
||||
switch (n)
|
||||
{
|
||||
case 0:
|
||||
m72100(argc,argv); break;
|
||||
case 1:
|
||||
m72200(argc,argv); break;
|
||||
case 2:
|
||||
m72300(argc,argv); break;
|
||||
case 3:
|
||||
m72400(argc,argv); break;
|
||||
case 4:
|
||||
stampa_quadro(argc,argv); break;
|
||||
default:
|
||||
error_box(usage, argv[0]) ;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
// 77qaall.h
|
||||
#define QA_ANNO_ALL 101
|
||||
#define QA_NUM_ALL 102
|
||||
#define QA2_NUM_ALL 103
|
||||
// 77qaall.h
|
||||
#define QA_ANNO_ALL 101
|
||||
#define QA_NUM_ALL 102
|
||||
#define QA2_NUM_ALL 103
|
||||
#define QA2_ANNO_ALL 104
|
@ -8,7 +8,7 @@ JOIN 13 TO 6 ALIAS 213 INTO COM=COMRF(COMRES)
|
||||
JOIN 6 TO 61 ALIAS 216 INTO TIPOA=TIPOA CODANAGR=CODANAGR
|
||||
JOIN 8 TO 216@ ALIAS 218 INTO CODANAGR=CODANAGR
|
||||
JOIN 13 TO 218@ ALIAS 313 INTO COM=COMNASC
|
||||
JOIN 13 TO 216@ ALIAS 413 INTO COM=COMRES
|
||||
JOIN 13 TO 216@ ALIAS 413 INTO STATO=STATORES COM=COMRES
|
||||
JOIN %STA TO 216@ ALIAS 24 INTO CODTAB=STATORES
|
||||
END
|
||||
|
||||
@ -50,14 +50,14 @@ END
|
||||
STRINGA 1
|
||||
BEGIN
|
||||
KEY "CODICE FISCALE"
|
||||
PROMPT 3 10 ""
|
||||
PROMPT 3 9 ""
|
||||
FIELD 116@->COFI
|
||||
END
|
||||
|
||||
STRINGA 2
|
||||
BEGIN
|
||||
KEY "RAGIONE SOCIALE"
|
||||
PROMPT 39 10 ""
|
||||
PROMPT 39 9 ""
|
||||
FIELD 116@->RAGSOC
|
||||
GROUP 2
|
||||
END
|
||||
@ -65,7 +65,7 @@ END
|
||||
STRINGA 3
|
||||
BEGIN
|
||||
KEY "COGNOME"
|
||||
PROMPT 39 10 ""
|
||||
PROMPT 39 9 ""
|
||||
FIELD 116@->RAGSOC[1,30]
|
||||
GROUP 1
|
||||
END
|
||||
@ -73,7 +73,7 @@ END
|
||||
STRINGA 4
|
||||
BEGIN
|
||||
KEY "NOME"
|
||||
PROMPT 17 12 ""
|
||||
PROMPT 17 11 ""
|
||||
FIELD 116@->RAGSOC[31,50]
|
||||
GROUP 1
|
||||
END
|
||||
@ -81,7 +81,7 @@ END
|
||||
STRINGA 5
|
||||
BEGIN
|
||||
KEY "SESSO"
|
||||
PROMPT 59 12 ""
|
||||
PROMPT 59 11 ""
|
||||
FIELD 118@->SESSO
|
||||
GROUP 1
|
||||
END
|
||||
@ -89,7 +89,7 @@ END
|
||||
STRINGA 6
|
||||
BEGIN
|
||||
KEY "DATA DI NASCITA"
|
||||
PROMPT 63 12 ""
|
||||
PROMPT 67 11 ""
|
||||
FIELD 118@->DATANASC
|
||||
GROUP 1
|
||||
END
|
||||
@ -97,7 +97,7 @@ END
|
||||
STRINGA 7
|
||||
BEGIN
|
||||
KEY "COMUNE DI NASCITA"
|
||||
PROMPT 83 12 ""
|
||||
PROMPT 83 11 ""
|
||||
FIELD 113@->DENCOM
|
||||
GROUP 1
|
||||
END
|
||||
@ -105,7 +105,7 @@ END
|
||||
STRINGA 8
|
||||
BEGIN
|
||||
KEY "PROV. DI NASCITA"
|
||||
PROMPT 125 12 ""
|
||||
PROMPT 125 11 ""
|
||||
FIELD 113@->PROVCOM
|
||||
GROUP 1
|
||||
END
|
||||
@ -113,21 +113,21 @@ END
|
||||
STRINGA 10
|
||||
BEGIN
|
||||
KEY "COMUNE DI RES.FISCALE"
|
||||
PROMPT 17 14 ""
|
||||
PROMPT 17 13 ""
|
||||
FIELD 213@->DENCOM
|
||||
END
|
||||
|
||||
STRINGA 11
|
||||
BEGIN
|
||||
KEY "PROV DI RES.FISCALE"
|
||||
PROMPT 59 14 ""
|
||||
PROMPT 59 13 ""
|
||||
FIELD 213@->PROVCOM
|
||||
END
|
||||
|
||||
STRINGA 12
|
||||
BEGIN
|
||||
KEY "VIA di RES."
|
||||
PROMPT 67 14 ""
|
||||
PROMPT 67 13 ""
|
||||
FIELD 116@->INDRF
|
||||
FIELD 116@->INDRES
|
||||
FLAGS "H"
|
||||
@ -137,7 +137,7 @@ END
|
||||
STRINGA 15
|
||||
BEGIN
|
||||
KEY "NUM. CIVICO di RES."
|
||||
PROMPT 103 14 ""
|
||||
PROMPT 103 13 ""
|
||||
FIELD 116@->CIVRF
|
||||
FIELD 116@->CIVRES
|
||||
FLAGS "H"
|
||||
@ -147,13 +147,13 @@ END
|
||||
STRINGA 17
|
||||
BEGIN
|
||||
KEY "VIA + NUM CIV. DI RES."
|
||||
PROMPT 67 14 ""
|
||||
PROMPT 67 13 ""
|
||||
END
|
||||
|
||||
STRINGA 16
|
||||
BEGIN
|
||||
KEY "CAP"
|
||||
PROMPT 124 14 ""
|
||||
PROMPT 124 13 ""
|
||||
FIELD 116@->CAPRF
|
||||
FIELD 116@->CAPRES
|
||||
END
|
||||
@ -161,13 +161,13 @@ END
|
||||
STRINGA 13
|
||||
BEGIN
|
||||
KEY "CODICE FISCALE DICHIARANTE"
|
||||
PROMPT 105 17 ""
|
||||
PROMPT 105 16 ""
|
||||
END
|
||||
|
||||
NUMBER 14
|
||||
BEGIN
|
||||
KEY "NUM. FOGLIO"
|
||||
PROMPT 125 20 ""
|
||||
PROMPT 125 19 ""
|
||||
END
|
||||
|
||||
END
|
||||
@ -329,7 +329,7 @@ BEGIN
|
||||
PROMPT 91 5 ""
|
||||
PICTURE "###.###.###^^^"
|
||||
MESSAGE ADD,FL->17
|
||||
FIELD 61->IMPONIBILE
|
||||
// FIELD 61->IMPONIBILE
|
||||
END
|
||||
|
||||
NUMBER 18
|
||||
@ -338,7 +338,7 @@ BEGIN
|
||||
PROMPT 105 5 ""
|
||||
PICTURE "###.###.###^^^"
|
||||
MESSAGE ADD,FL->18
|
||||
FIELD 61->RITENUTE
|
||||
// FIELD 61->RITENUTE
|
||||
END
|
||||
|
||||
NUMBER 19
|
||||
@ -347,7 +347,7 @@ BEGIN
|
||||
PROMPT 120 5 ""
|
||||
PICTURE "###.###.###^^^"
|
||||
MESSAGE ADD,FL->19
|
||||
FIELD 61->NETTO
|
||||
// FIELD 61->NETTO
|
||||
END
|
||||
|
||||
END
|
||||
@ -395,5 +395,12 @@ BEGIN
|
||||
PROMPT 120 1 ""
|
||||
PICTURE "###.###.###^^^"
|
||||
END
|
||||
|
||||
STRINGA 2
|
||||
BEGIN
|
||||
KEY "FIRMA"
|
||||
PROMPT 83 5 ""
|
||||
FIELD 116@->RAGSOC
|
||||
END
|
||||
|
||||
END
|
||||
|
@ -8,8 +8,8 @@ JOIN 13 TO 6 ALIAS 213 INTO COM=COMRF(COMRES)
|
||||
JOIN 6 TO 62 ALIAS 216 INTO TIPOA=TIPOA CODANAGR=CODANAGR
|
||||
JOIN 8 TO 216@ ALIAS 218 INTO CODANAGR=CODANAGR
|
||||
JOIN 13 TO 218@ ALIAS 313 INTO COM=COMNASC
|
||||
JOIN 13 TO 216@ ALIAS 413 INTO COM=COMRES
|
||||
JOIN 13 TO 216@ ALIAS 513 INTO COM=COMRF(COMRES)
|
||||
JOIN 13 TO 216@ ALIAS 413 INTO STATO=STATORES COM=COMRES
|
||||
JOIN 13 TO 216@ ALIAS 513 INTO STATO=""(STATORES) COM=COMRF(COMRES)
|
||||
JOIN %STA TO 216@ ALIAS 24 INTO CODTAB=STATORES
|
||||
END
|
||||
|
||||
@ -37,7 +37,7 @@ BEGIN
|
||||
FI 131
|
||||
END
|
||||
|
||||
SECTION HEADER FIRST 19
|
||||
SECTION HEADER FIRST 20
|
||||
|
||||
LISTA 9
|
||||
BEGIN
|
||||
@ -348,14 +348,14 @@ END
|
||||
STRING 15
|
||||
BEGIN
|
||||
KEY "DESCR. CAUSALE"
|
||||
PROMPT 11 7 ""
|
||||
FIELD 14@->S0[1,20]
|
||||
PROMPT 12 7 ""
|
||||
FIELD 14@->S2
|
||||
END
|
||||
|
||||
NUMBER 16
|
||||
BEGIN
|
||||
KEY "TOTALE"
|
||||
PROMPT 42 7 ""
|
||||
PROMPT 26 7 ""
|
||||
// FIELD 62->TOTALE
|
||||
PICTURE "###.###.###^^^"
|
||||
MESSAGE ADD,FL->16
|
||||
@ -364,7 +364,7 @@ END
|
||||
NUMBER 17
|
||||
BEGIN
|
||||
KEY "SOMME NON SOGGETTE A RITENUTA"
|
||||
PROMPT 61 7 ""
|
||||
PROMPT 47 7 ""
|
||||
// FIELD 62->SOMME
|
||||
PICTURE "###.###.###^^^"
|
||||
MESSAGE ADD,FL->17
|
||||
@ -373,7 +373,7 @@ END
|
||||
NUMBER 18
|
||||
BEGIN
|
||||
KEY "IMPONIBILE"
|
||||
PROMPT 82 7 ""
|
||||
PROMPT 67 7 ""
|
||||
// FIELD 62->IMPONIBILE
|
||||
PICTURE "###.###.###^^^"
|
||||
MESSAGE ADD,FL->18
|
||||
@ -382,7 +382,7 @@ END
|
||||
STRING 19
|
||||
BEGIN
|
||||
KEY "ALIQUOTA"
|
||||
PROMPT 93 7 ""
|
||||
PROMPT 84 7 ""
|
||||
FIELD 62->PERC
|
||||
PICTURE "###@@"
|
||||
END
|
||||
@ -390,7 +390,7 @@ END
|
||||
NUMBER 20
|
||||
BEGIN
|
||||
KEY "IMPORTO"
|
||||
PROMPT 106 7 ""
|
||||
PROMPT 100 7 ""
|
||||
// FIELD 62->IMPORTO
|
||||
PICTURE "###.###.###^^^"
|
||||
MESSAGE ADD,FL->20
|
||||
@ -399,7 +399,7 @@ END
|
||||
NUMBER 21
|
||||
BEGIN
|
||||
KEY "NETTO"
|
||||
PROMPT 126 7 ""
|
||||
PROMPT 120 7 ""
|
||||
// FIELD 62->NETTO
|
||||
PICTURE "###.###.###^^^"
|
||||
MESSAGE ADD,FL->21
|
||||
@ -407,33 +407,33 @@ END
|
||||
|
||||
END
|
||||
|
||||
SECTION FOOTER LAST 1
|
||||
SECTION FOOTER LAST 5
|
||||
|
||||
NUMBER 16
|
||||
BEGIN
|
||||
KEY "TOTALE TOTALE"
|
||||
PROMPT 36 1 ""
|
||||
PROMPT 26 1 ""
|
||||
PICTURE "###.###.###^^^"
|
||||
END
|
||||
|
||||
NUMBER 17
|
||||
BEGIN
|
||||
KEY "TOTALE SOMME NON SOGGETTE"
|
||||
PROMPT 55 1 ""
|
||||
PROMPT 47 1 ""
|
||||
PICTURE "###.###.###^^^"
|
||||
END
|
||||
|
||||
NUMBER 18
|
||||
BEGIN
|
||||
KEY "TOTALE IMPONIBILE"
|
||||
PROMPT 75 1 ""
|
||||
PROMPT 67 1 ""
|
||||
PICTURE "###.###.###^^^"
|
||||
END
|
||||
|
||||
NUMBER 20
|
||||
BEGIN
|
||||
KEY "TOTALE IMPORTO"
|
||||
PROMPT 101 1 ""
|
||||
PROMPT 100 1 ""
|
||||
PICTURE "###.###.###^^^"
|
||||
END
|
||||
|
||||
@ -444,4 +444,12 @@ BEGIN
|
||||
PICTURE "###.###.###^^^"
|
||||
END
|
||||
|
||||
STRINGA 2
|
||||
BEGIN
|
||||
KEY "FIRMA"
|
||||
PROMPT 83 5 ""
|
||||
FIELD 116@->RAGSOC
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
END
|
||||
|
@ -8,8 +8,8 @@ JOIN 13 TO 6 ALIAS 213 INTO COM=COMRF(COMRES)
|
||||
JOIN 6 TO 63 ALIAS 216 INTO TIPOA=TIPOA CODANAGR=CODANAGR
|
||||
JOIN 8 TO 216@ ALIAS 218 INTO CODANAGR=CODANAGR
|
||||
JOIN 13 TO 218@ ALIAS 313 INTO COM=COMNASC
|
||||
JOIN 13 TO 216@ ALIAS 413 INTO COM=COMRES
|
||||
JOIN 13 TO 216@ ALIAS 513 INTO COM=COMRF(COMRES)
|
||||
JOIN 13 TO 216@ ALIAS 413 INTO STATO=STATORES COM=COMRES
|
||||
JOIN 13 TO 216@ ALIAS 513 INTO STATO=""(STATORES) COM=COMRF(COMRES)
|
||||
JOIN %STA TO 216@ ALIAS 24 INTO CODTAB=STATORES
|
||||
END
|
||||
|
||||
@ -170,6 +170,8 @@ BEGIN
|
||||
PROMPT 125 22 ""
|
||||
END
|
||||
|
||||
END
|
||||
|
||||
STRINGA 21
|
||||
BEGIN
|
||||
KEY "Ritenuta d'acconto"
|
||||
@ -181,9 +183,6 @@ BEGIN
|
||||
KEY "Ritenuta d'imposta"
|
||||
PROMPT 110 22 ""
|
||||
END
|
||||
|
||||
END
|
||||
|
||||
SECTION BODY ODD 6
|
||||
|
||||
LISTA 100
|
||||
@ -456,4 +455,12 @@ BEGIN
|
||||
PICTURE "###.###.###^^^"
|
||||
END
|
||||
|
||||
STRINGA 2
|
||||
BEGIN
|
||||
KEY "FIRMA"
|
||||
PROMPT 83 5 ""
|
||||
FIELD 116@->RAGSOC
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
END
|
||||
|
2910
m770/77stba.cpp
2910
m770/77stba.cpp
File diff suppressed because it is too large
Load Diff
630
m770/77stba.h
630
m770/77stba.h
@ -1,315 +1,315 @@
|
||||
#ifndef _77STBA_H
|
||||
#define _77STBA_H
|
||||
|
||||
#include "77stq.h"
|
||||
|
||||
HIDDEN const int BASE_FORMLEN = 73;
|
||||
HIDDEN const int BASE_PAGINE = 4;
|
||||
|
||||
class TBase1 : public TDicForm
|
||||
{
|
||||
private:
|
||||
long _codditta;
|
||||
TRelation* r; // usate per contare i soci
|
||||
TCursor* c;
|
||||
bool _bAllegSoci;
|
||||
long iContaSoci();
|
||||
protected:
|
||||
void stampa_corpo(TPrinter& pr);
|
||||
void stampa_soci(TPrinter& pr);
|
||||
bool bAllegSoci() const { return _bAllegSoci; }
|
||||
virtual int dic_form_len() const;
|
||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void stampa_totali(TPrinter& pr) {}
|
||||
virtual void aggiorna_totali(const char tipo) {}
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const;
|
||||
public:
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TBase1(const char* sNomeForm, const char* quadro);
|
||||
virtual ~TBase1();
|
||||
};
|
||||
|
||||
class TBase2 : public TDicForm
|
||||
{
|
||||
private:
|
||||
long _codditta;
|
||||
protected:
|
||||
void stampa_corpo(TPrinter& pr);
|
||||
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const { return 4;}
|
||||
public:
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TBase2(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro) {}
|
||||
virtual ~TBase2() {}
|
||||
};
|
||||
|
||||
class TBase3 : public TDicForm
|
||||
{
|
||||
private:
|
||||
bool _bAggiuntivoL; // se necessario stampare aggiuntivo L
|
||||
protected:
|
||||
void stampa_testata(TPrinter& pr);
|
||||
void stampa_totali_L(TPrinter& pr);
|
||||
bool aggiuntivoL() const { return _bAggiuntivoL; }
|
||||
int stampa_L(TPrinter& pr,const int iChiaveL);
|
||||
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const { return 4;}
|
||||
virtual long filtra(const long codditta);
|
||||
public:
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TBase3(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro) {}
|
||||
virtual ~TBase3() {}
|
||||
};
|
||||
|
||||
const int _RIGA_TOTALI_L = 65;
|
||||
|
||||
class TRigaN : public TSortable
|
||||
{
|
||||
TRecnotype _pos;
|
||||
int _MeseRif,_AnnoRif; // periodo di riferimento
|
||||
real _ImpRimb,_CompAss; // importi
|
||||
|
||||
public:
|
||||
virtual int compare(const TSortable& s) const;
|
||||
TRecnotype pos() const { return _pos; }
|
||||
|
||||
const char* sMeseRif() const;
|
||||
const char* sAnnoRif() const;
|
||||
const int iMeseRif() const { return _MeseRif; }
|
||||
const int iAnnoRif() const { return _AnnoRif; }
|
||||
const char* ImpRimb(const char* pic) const { return _ImpRimb.string(pic); }
|
||||
const char* CompAss(const char* pic) const { return _CompAss.string(pic); }
|
||||
TRigaN(const TLocalisamfile& qn);
|
||||
virtual ~TRigaN() { }
|
||||
};
|
||||
|
||||
class TRigheNR : public TObject
|
||||
{
|
||||
TArray _data;
|
||||
|
||||
protected:
|
||||
const TRigaN& rigaN(int i) const { return (const TRigaN&)_data[i]; }
|
||||
|
||||
public:
|
||||
const TRigaN& operator[](int i) const { return rigaN(i); }
|
||||
|
||||
int fill(const long codditta,TLocalisamfile& qnr);
|
||||
int items() const { return _data.items(); }
|
||||
void destroy() { _data.destroy(); }
|
||||
TRigheNR() { }
|
||||
virtual ~TRigheNR() { }
|
||||
};
|
||||
|
||||
class TRigaQT : public TSortable
|
||||
{
|
||||
int _MesePag,_AnnoPag; // periodo di riferimento
|
||||
real _ContVers,_ContRimb,_Interessi; // importi
|
||||
TString _sCodReg;
|
||||
TRecnotype _pos;
|
||||
public:
|
||||
virtual int compare(const TSortable& s) const;
|
||||
TRecnotype pos() const { return _pos; }
|
||||
const char* sMesePag() const;
|
||||
const char* sAnnoPag() const;
|
||||
const int iMesePag() const { return _MesePag; }
|
||||
const int iAnnoPag() const { return _AnnoPag; }
|
||||
const char* ContVers(const char* pic) const { return _ContVers.string(pic); }
|
||||
const char* ContRimb(const char* pic) const { return _ContRimb.string(pic); }
|
||||
const char* Interessi(const char* pic) const { return _Interessi.string(pic); }
|
||||
const char* CodReg() const { return (const char*)_sCodReg; }
|
||||
TRigaQT(const TLocalisamfile& qt);
|
||||
virtual ~TRigaQT() { }
|
||||
};
|
||||
|
||||
class TRigheQT : public TObject
|
||||
{
|
||||
TArray _data;
|
||||
|
||||
protected:
|
||||
const TRigaQT& rigaQT(int i) const { return (const TRigaQT&)_data[i]; }
|
||||
|
||||
public:
|
||||
const TRigaQT& operator[](int i) const { return rigaQT(i); }
|
||||
void destroy() { _data.destroy(); }
|
||||
int fill(const long codditta,TLocalisamfile& qt);
|
||||
int items() const { return _data.items(); }
|
||||
|
||||
TRigheQT() {}
|
||||
virtual ~TRigheQT() {}
|
||||
};
|
||||
|
||||
class TRigaPS : public TSortable
|
||||
{
|
||||
TDate _dDv; // data vers.
|
||||
real _rImp,_rIntDip,_rIntDat; // importi
|
||||
TString _sTipoV,_sCodTrib,_sSerie,_sNumero;
|
||||
TRecnotype _pos;
|
||||
public:
|
||||
virtual int compare(const TSortable& s) const;
|
||||
TRecnotype pos() const { return _pos; }
|
||||
TDate dDataVers() const { return _dDv; }
|
||||
const char* sDataVers() const { return _dDv.string(); }
|
||||
const char* sImposta() const;
|
||||
const char* sIntDip() const;
|
||||
const char* sIntDat() const;
|
||||
const char* sImposta(const char* pic) const { return _rImp.string(pic); }
|
||||
const char* sIntDip(const char* pic) const { return _rIntDip.string(pic); }
|
||||
const char* sIntDat(const char* pic) const { return _rIntDat.string(pic); }
|
||||
const char* sTipoVers() const { return (const char*)_sTipoV; }
|
||||
const char* sCodTrib() const { return (const char*)_sCodTrib; }
|
||||
const char* sSerie() const { return (const char*)_sSerie; }
|
||||
const char* sNumero() const { return (const char*)_sNumero; }
|
||||
TRigaPS(const TLocalisamfile& qt);
|
||||
virtual ~TRigaPS() { }
|
||||
};
|
||||
|
||||
class TRighePS : public TObject
|
||||
{
|
||||
TArray _data;
|
||||
|
||||
protected:
|
||||
const TRigaPS& rigaPS(int i) const { return (const TRigaPS&)_data[i]; }
|
||||
|
||||
public:
|
||||
const TRigaPS& operator[](int i) const { return rigaPS(i); }
|
||||
int fill(const long codditta,TLocalisamfile& ps);
|
||||
void destroy() { _data.destroy(); }
|
||||
int items() const { return _data.items(); }
|
||||
TRighePS() {}
|
||||
virtual ~TRighePS() {}
|
||||
};
|
||||
|
||||
class TBase4 : public TDicForm
|
||||
{
|
||||
private:
|
||||
long _codditta;
|
||||
bool _bAggN,_bAggP,_bAggR,_bAggQ,_bAggS,_bAggT;
|
||||
protected:
|
||||
int _IdFirma;
|
||||
TRigheNR _righeNR; // array dei record N e R
|
||||
TRigheQT _righeQT;
|
||||
TRighePS _righePS;
|
||||
void stampa_righe_vuote(TPrinter& pr,const int righe);
|
||||
void fill_riga_QT(TPrint_section& sec,const int num);
|
||||
void fill_riga_PS(TPrint_section& sec,const int num);
|
||||
void fill_riga_NR(TPrint_section& sec,const int num, const int side);
|
||||
void stampa_testata(TPrinter& pr);
|
||||
void stampa_fine(TPrinter& pr);
|
||||
void stampa_N(TPrinter& pr);
|
||||
void stampa_P(TPrinter& pr);
|
||||
void stampa_Q(TPrinter& pr);
|
||||
void stampa_R(TPrinter& pr);
|
||||
void stampa_S(TPrinter& pr);
|
||||
void stampa_T(TPrinter& pr);
|
||||
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const { return 4;}
|
||||
int calcola_firma();
|
||||
public:
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TBase4(const char* sNomeForm, const char* quadro) : _IdFirma(824), TDicForm(sNomeForm, quadro) {}
|
||||
virtual ~TBase4() {}
|
||||
};
|
||||
|
||||
const int _FIELD_L = 740;
|
||||
|
||||
class TStampaBase : public TStampaQuadro
|
||||
{
|
||||
private:
|
||||
TBase1* _fBase1;
|
||||
TBase2* _fBase2;
|
||||
TBase3* _fBase3;
|
||||
TBase4* _fBase4;
|
||||
TRelation* _rel;
|
||||
protected:
|
||||
virtual bool user_create();
|
||||
virtual bool user_destroy();
|
||||
virtual bool conta_tipi_per() const { return FALSE; }
|
||||
virtual TDicForm* get_form() const { return _fBase1; }
|
||||
virtual TCursor* get_cursor() const { return NULL; }
|
||||
virtual bool print_quadro(const int OffsetDitta, const bool modulaser);
|
||||
public:
|
||||
TStampaBase(char livel) : TStampaQuadro("Base", livel) { }
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Quadro L aggiuntivo
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
class TQuadroL : public TDicForm
|
||||
{
|
||||
private:
|
||||
long _codditta;
|
||||
real _rRitEff, _rRitVer;
|
||||
protected:
|
||||
void stampa_testata(TPrinter& pr);
|
||||
void stampa_totali_L(TPrinter& pr);
|
||||
bool stampa_L(TPrinter& pr,const long lStartRec,const int iRecL);
|
||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const;
|
||||
virtual long filtra(const long codditta);
|
||||
void CalcolaTotalePrecedenti(TCursor* cur, const int _START_AGG_L);
|
||||
public:
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TQuadroL(const char* sNomeForm, const char* quadro) : _rRitEff(ZERO),_rRitVer(ZERO),TDicForm(sNomeForm, quadro) {}
|
||||
virtual ~TQuadroL() {}
|
||||
};
|
||||
|
||||
class TStampaQuadroAggL : public TStampaQuadro
|
||||
{
|
||||
TQuadroL* _form;
|
||||
TCursor* _cur;
|
||||
protected:
|
||||
virtual bool user_create();
|
||||
virtual bool user_destroy();
|
||||
virtual TDicForm* get_form() const { return _form; }
|
||||
virtual TCursor* get_cursor() const { return _cur; }
|
||||
virtual bool conta_tipi_per() const { return FALSE; }
|
||||
public:
|
||||
TStampaQuadroAggL(const char* quadro, char liv):TStampaQuadro(quadro, liv) {}
|
||||
virtual ~TStampaQuadroAggL() { }
|
||||
};
|
||||
|
||||
class TQuadroN : public TBase4
|
||||
{
|
||||
long _codditta;
|
||||
public:
|
||||
void stampa_fine(TPrinter& pr);
|
||||
void stampa_N(TPrinter& pr);
|
||||
void stampa_P(TPrinter& pr);
|
||||
void stampa_Q(TPrinter& pr);
|
||||
void stampa_R(TPrinter& pr);
|
||||
void stampa_S(TPrinter& pr);
|
||||
void stampa_T(TPrinter& pr);
|
||||
void stampa_testata(TPrinter& pr);
|
||||
virtual int prima_riga(PaginaQuadro p) const;
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TQuadroN(const char* sNomeForm, const char* quadro) : TBase4(sNomeForm, quadro) { _IdFirma=2; }
|
||||
virtual ~TQuadroN() {}
|
||||
};
|
||||
|
||||
class TStampaQuadroAggN : public TStampaQuadro
|
||||
{
|
||||
TQuadroN* _form;
|
||||
TCursor* _cur;
|
||||
protected:
|
||||
virtual bool user_create();
|
||||
virtual bool user_destroy();
|
||||
virtual TDicForm* get_form() const { return _form; }
|
||||
virtual TCursor* get_cursor() const { return _cur; }
|
||||
virtual bool conta_tipi_per() const { return FALSE; }
|
||||
public:
|
||||
TStampaQuadroAggN(const char* quadro, char liv):TStampaQuadro(quadro, liv) {}
|
||||
virtual ~TStampaQuadroAggN() { }
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
#ifndef _77STBA_H
|
||||
#define _77STBA_H
|
||||
|
||||
#include "77stq.h"
|
||||
|
||||
HIDDEN const int BASE_FORMLEN = 73;
|
||||
HIDDEN const int BASE_PAGINE = 4;
|
||||
|
||||
class TBase1 : public TDicForm
|
||||
{
|
||||
private:
|
||||
long _codditta;
|
||||
TRelation* r; // usate per contare i soci
|
||||
TCursor* c;
|
||||
bool _bAllegSoci;
|
||||
long iContaSoci();
|
||||
protected:
|
||||
void stampa_corpo(TPrinter& pr);
|
||||
void stampa_soci(TPrinter& pr);
|
||||
bool bAllegSoci() const { return _bAllegSoci; }
|
||||
virtual int dic_form_len() const;
|
||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void stampa_totali(TPrinter& pr) {}
|
||||
virtual void aggiorna_totali(const char tipo) {}
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const;
|
||||
public:
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TBase1(const char* sNomeForm, const char* quadro);
|
||||
virtual ~TBase1();
|
||||
};
|
||||
|
||||
class TBase2 : public TDicForm
|
||||
{
|
||||
private:
|
||||
long _codditta;
|
||||
protected:
|
||||
void stampa_corpo(TPrinter& pr);
|
||||
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const { return 4;}
|
||||
public:
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TBase2(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro) {}
|
||||
virtual ~TBase2() {}
|
||||
};
|
||||
|
||||
class TBase3 : public TDicForm
|
||||
{
|
||||
private:
|
||||
bool _bAggiuntivoL; // se necessario stampare aggiuntivo L
|
||||
protected:
|
||||
void stampa_testata(TPrinter& pr);
|
||||
void stampa_totali_L(TPrinter& pr);
|
||||
bool aggiuntivoL() const { return _bAggiuntivoL; }
|
||||
int stampa_L(TPrinter& pr,const int iChiaveL);
|
||||
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const { return 4;}
|
||||
virtual long filtra(const long codditta);
|
||||
public:
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TBase3(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro) {}
|
||||
virtual ~TBase3() {}
|
||||
};
|
||||
|
||||
const int _RIGA_TOTALI_L = 65;
|
||||
|
||||
class TRigaN : public TSortable
|
||||
{
|
||||
TRecnotype _pos;
|
||||
int _MeseRif,_AnnoRif; // periodo di riferimento
|
||||
real _ImpRimb,_CompAss; // importi
|
||||
|
||||
public:
|
||||
virtual int compare(const TSortable& s) const;
|
||||
TRecnotype pos() const { return _pos; }
|
||||
|
||||
const char* sMeseRif() const;
|
||||
const char* sAnnoRif() const;
|
||||
const int iMeseRif() const { return _MeseRif; }
|
||||
const int iAnnoRif() const { return _AnnoRif; }
|
||||
const char* ImpRimb(const char* pic) const { return _ImpRimb.string(pic); }
|
||||
const char* CompAss(const char* pic) const { return _CompAss.string(pic); }
|
||||
TRigaN(const TLocalisamfile& qn);
|
||||
virtual ~TRigaN() { }
|
||||
};
|
||||
|
||||
class TRigheNR : public TObject
|
||||
{
|
||||
TArray _data;
|
||||
|
||||
protected:
|
||||
const TRigaN& rigaN(int i) const { return (const TRigaN&)_data[i]; }
|
||||
|
||||
public:
|
||||
const TRigaN& operator[](int i) const { return rigaN(i); }
|
||||
|
||||
int fill(const long codditta,TLocalisamfile& qnr);
|
||||
int items() const { return _data.items(); }
|
||||
void destroy() { _data.destroy(); }
|
||||
TRigheNR() { }
|
||||
virtual ~TRigheNR() { }
|
||||
};
|
||||
|
||||
class TRigaQT : public TSortable
|
||||
{
|
||||
int _MesePag,_AnnoPag; // periodo di riferimento
|
||||
real _ContVers,_ContRimb,_Interessi; // importi
|
||||
TString _sCodReg;
|
||||
TRecnotype _pos;
|
||||
public:
|
||||
virtual int compare(const TSortable& s) const;
|
||||
TRecnotype pos() const { return _pos; }
|
||||
const char* sMesePag() const;
|
||||
const char* sAnnoPag() const;
|
||||
const int iMesePag() const { return _MesePag; }
|
||||
const int iAnnoPag() const { return _AnnoPag; }
|
||||
const char* ContVers(const char* pic) const { return _ContVers.string(pic); }
|
||||
const char* ContRimb(const char* pic) const { return _ContRimb.string(pic); }
|
||||
const char* Interessi(const char* pic) const { return _Interessi.string(pic); }
|
||||
const char* CodReg() const { return (const char*)_sCodReg; }
|
||||
TRigaQT(const TLocalisamfile& qt);
|
||||
virtual ~TRigaQT() { }
|
||||
};
|
||||
|
||||
class TRigheQT : public TObject
|
||||
{
|
||||
TArray _data;
|
||||
|
||||
protected:
|
||||
const TRigaQT& rigaQT(int i) const { return (const TRigaQT&)_data[i]; }
|
||||
|
||||
public:
|
||||
const TRigaQT& operator[](int i) const { return rigaQT(i); }
|
||||
void destroy() { _data.destroy(); }
|
||||
int fill(const long codditta,TLocalisamfile& qt);
|
||||
int items() const { return _data.items(); }
|
||||
|
||||
TRigheQT() {}
|
||||
virtual ~TRigheQT() {}
|
||||
};
|
||||
|
||||
class TRigaPS : public TSortable
|
||||
{
|
||||
TDate _dDv; // data vers.
|
||||
real _rImp,_rIntDip,_rIntDat; // importi
|
||||
TString _sTipoV,_sCodTrib,_sSerie,_sNumero;
|
||||
TRecnotype _pos;
|
||||
public:
|
||||
virtual int compare(const TSortable& s) const;
|
||||
TRecnotype pos() const { return _pos; }
|
||||
TDate dDataVers() const { return _dDv; }
|
||||
const char* sDataVers() const { return _dDv.string(); }
|
||||
const char* sImposta() const;
|
||||
const char* sIntDip() const;
|
||||
const char* sIntDat() const;
|
||||
const char* sImposta(const char* pic) const { return _rImp.string(pic); }
|
||||
const char* sIntDip(const char* pic) const { return _rIntDip.string(pic); }
|
||||
const char* sIntDat(const char* pic) const { return _rIntDat.string(pic); }
|
||||
const char* sTipoVers() const { return (const char*)_sTipoV; }
|
||||
const char* sCodTrib() const { return (const char*)_sCodTrib; }
|
||||
const char* sSerie() const { return (const char*)_sSerie; }
|
||||
const char* sNumero() const { return (const char*)_sNumero; }
|
||||
TRigaPS(const TLocalisamfile& qt);
|
||||
virtual ~TRigaPS() { }
|
||||
};
|
||||
|
||||
class TRighePS : public TObject
|
||||
{
|
||||
TArray _data;
|
||||
|
||||
protected:
|
||||
const TRigaPS& rigaPS(int i) const { return (const TRigaPS&)_data[i]; }
|
||||
|
||||
public:
|
||||
const TRigaPS& operator[](int i) const { return rigaPS(i); }
|
||||
int fill(const long codditta,TLocalisamfile& ps);
|
||||
void destroy() { _data.destroy(); }
|
||||
int items() const { return _data.items(); }
|
||||
TRighePS() {}
|
||||
virtual ~TRighePS() {}
|
||||
};
|
||||
|
||||
class TBase4 : public TDicForm
|
||||
{
|
||||
private:
|
||||
long _codditta;
|
||||
bool _bAggN,_bAggP,_bAggR,_bAggQ,_bAggS,_bAggT;
|
||||
protected:
|
||||
int _IdFirma;
|
||||
TRigheNR _righeNR; // array dei record N e R
|
||||
TRigheQT _righeQT;
|
||||
TRighePS _righePS;
|
||||
void stampa_righe_vuote(TPrinter& pr,const int righe);
|
||||
void fill_riga_QT(TPrint_section& sec,const int num);
|
||||
void fill_riga_PS(TPrint_section& sec,const int num);
|
||||
void fill_riga_NR(TPrint_section& sec,const int num, const int side);
|
||||
void stampa_testata(TPrinter& pr);
|
||||
void stampa_fine(TPrinter& pr);
|
||||
void stampa_N(TPrinter& pr);
|
||||
void stampa_P(TPrinter& pr);
|
||||
void stampa_Q(TPrinter& pr);
|
||||
void stampa_R(TPrinter& pr);
|
||||
void stampa_S(TPrinter& pr);
|
||||
void stampa_T(TPrinter& pr);
|
||||
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const { return 4;}
|
||||
int calcola_firma();
|
||||
public:
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TBase4(const char* sNomeForm, const char* quadro) : _IdFirma(824), TDicForm(sNomeForm, quadro) {}
|
||||
virtual ~TBase4() {}
|
||||
};
|
||||
|
||||
const int _FIELD_L = 740;
|
||||
|
||||
class TStampaBase : public TStampaQuadro
|
||||
{
|
||||
private:
|
||||
TBase1* _fBase1;
|
||||
TBase2* _fBase2;
|
||||
TBase3* _fBase3;
|
||||
TBase4* _fBase4;
|
||||
TRelation* _rel;
|
||||
protected:
|
||||
virtual bool user_create();
|
||||
virtual bool user_destroy();
|
||||
virtual bool conta_tipi_per() const { return FALSE; }
|
||||
virtual TDicForm* get_form() const { return _fBase1; }
|
||||
virtual TCursor* get_cursor() const { return NULL; }
|
||||
virtual bool print_quadro(const int OffsetDitta, const bool modulaser);
|
||||
public:
|
||||
TStampaBase(char livel) : TStampaQuadro("Base", livel) { }
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Quadro L aggiuntivo
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
class TQuadroL : public TDicForm
|
||||
{
|
||||
private:
|
||||
long _codditta;
|
||||
real _rRitEff, _rRitVer;
|
||||
protected:
|
||||
void stampa_testata(TPrinter& pr);
|
||||
void stampa_totali_L(TPrinter& pr);
|
||||
bool stampa_L(TPrinter& pr,const long lStartRec,const int iRecL);
|
||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const;
|
||||
virtual long filtra(const long codditta);
|
||||
void CalcolaTotalePrecedenti(TCursor* cur, const int _START_AGG_L);
|
||||
public:
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TQuadroL(const char* sNomeForm, const char* quadro) : _rRitEff(ZERO),_rRitVer(ZERO),TDicForm(sNomeForm, quadro) {}
|
||||
virtual ~TQuadroL() {}
|
||||
};
|
||||
|
||||
class TStampaQuadroAggL : public TStampaQuadro
|
||||
{
|
||||
TQuadroL* _form;
|
||||
TCursor* _cur;
|
||||
protected:
|
||||
virtual bool user_create();
|
||||
virtual bool user_destroy();
|
||||
virtual TDicForm* get_form() const { return _form; }
|
||||
virtual TCursor* get_cursor() const { return _cur; }
|
||||
virtual bool conta_tipi_per() const { return FALSE; }
|
||||
public:
|
||||
TStampaQuadroAggL(const char* quadro, char liv):TStampaQuadro(quadro, liv) {}
|
||||
virtual ~TStampaQuadroAggL() { }
|
||||
};
|
||||
|
||||
class TQuadroN : public TBase4
|
||||
{
|
||||
long _codditta;
|
||||
public:
|
||||
void stampa_fine(TPrinter& pr);
|
||||
void stampa_N(TPrinter& pr);
|
||||
void stampa_P(TPrinter& pr);
|
||||
void stampa_Q(TPrinter& pr);
|
||||
void stampa_R(TPrinter& pr);
|
||||
void stampa_S(TPrinter& pr);
|
||||
void stampa_T(TPrinter& pr);
|
||||
void stampa_testata(TPrinter& pr);
|
||||
virtual int prima_riga(PaginaQuadro p) const;
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TQuadroN(const char* sNomeForm, const char* quadro) : TBase4(sNomeForm, quadro) { _IdFirma=2; }
|
||||
virtual ~TQuadroN() {}
|
||||
};
|
||||
|
||||
class TStampaQuadroAggN : public TStampaQuadro
|
||||
{
|
||||
TQuadroN* _form;
|
||||
TCursor* _cur;
|
||||
protected:
|
||||
virtual bool user_create();
|
||||
virtual bool user_destroy();
|
||||
virtual TDicForm* get_form() const { return _form; }
|
||||
virtual TCursor* get_cursor() const { return _cur; }
|
||||
virtual bool conta_tipi_per() const { return FALSE; }
|
||||
public:
|
||||
TStampaQuadroAggN(const char* quadro, char liv):TStampaQuadro(quadro, liv) {}
|
||||
virtual ~TStampaQuadroAggN() { }
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
187
m770/77stq.cpp
187
m770/77stq.cpp
@ -50,6 +50,11 @@ void TDicForm::set_cofi_dic(const char* cofi)
|
||||
_codditta_dic = sogg_estinto(_codditta);
|
||||
}
|
||||
|
||||
/*TCursor& TDicForm::cur()
|
||||
{
|
||||
return *_cur;
|
||||
} */
|
||||
|
||||
void TDicForm::set_cursor(TCursor* cur)
|
||||
{
|
||||
CHECK(cur, "NULL cursor in TDicForm");
|
||||
@ -589,7 +594,7 @@ void TDicForm::jump_to_line(TPrinter& pr, const int lin)
|
||||
void TDicForm::stampa_totali(TPrinter& pr)
|
||||
{
|
||||
TPrint_section& totali = section('F', last_page);
|
||||
totali.update();
|
||||
totali.update();
|
||||
for (int i = 0; i < totali.items(); i++)
|
||||
{
|
||||
pr.print(totali.row(i));
|
||||
@ -675,6 +680,32 @@ void TDicForm::set_body(TPrinter& pr, const char tipo)
|
||||
progind()->addstatus(1);
|
||||
}
|
||||
|
||||
void TDicForm::firma_dichiarante()
|
||||
{
|
||||
TPrint_section& footer = section('F', last_page);
|
||||
TForm_item& firma = footer.find_field(FIRMADIC);
|
||||
|
||||
if (_PaginaCorrente == PRIMA)
|
||||
firma.hide();
|
||||
if (_PaginaCorrente == QUARTA)
|
||||
{
|
||||
firma.show();
|
||||
const int y = firma.y()-1;
|
||||
|
||||
TString cognome = firma.get();
|
||||
if (cognome.len() > 30 && cognome[29] == ' ')
|
||||
{
|
||||
TString nome = cognome.mid(30, -1);
|
||||
cognome.cut(30); cognome.trim();
|
||||
cognome << ' ' << nome;
|
||||
firma.set(cognome);
|
||||
|
||||
footer.row(y).reset();
|
||||
footer.row(y).put(cognome, firma.x()-1);
|
||||
}
|
||||
}
|
||||
// footer.update();
|
||||
}
|
||||
|
||||
void TDicForm::posiziona()
|
||||
{
|
||||
@ -702,7 +733,7 @@ class TQuadroG : public TDicForm
|
||||
void stampa_prospetti3_4(TPrinter& pr);
|
||||
|
||||
protected:
|
||||
virtual bool ultima_pagina() const { return _PaginaCorrente==SECONDA; }
|
||||
virtual bool ultima_pagina() const { return _PaginaCorrente==SECONDA; }
|
||||
virtual void inc_curr_page();
|
||||
virtual void next_page(TPrinter& pr);
|
||||
virtual void stampa_totali(TPrinter& pr) {}
|
||||
@ -1699,7 +1730,7 @@ public:
|
||||
bool controlla_percentuale(TCursor* cur, const real& perc_p);
|
||||
void set_body(TPrinter& pr, const char tipo);
|
||||
void setta_importi(TPrint_section& body);
|
||||
void leggi_importi();
|
||||
void leggi_importi();
|
||||
|
||||
TQuadroD(const char* form, const char* quadro) : TDicForm(form, quadro) {}
|
||||
virtual ~TQuadroD() {}
|
||||
@ -1843,7 +1874,7 @@ bool TQuadroD::print(const long codditta, const long NumFis, const long NumNoFis
|
||||
|
||||
_CtrFisStampati = _CtrNoFisStampati = 0;
|
||||
_finite_fis = _finite_nofis = FALSE;
|
||||
_GiaStampatiFis = _GiaStampatiNoFis = FALSE;
|
||||
_GiaStampatiFis = _GiaStampatiNoFis = FALSE;
|
||||
_EndPrintDitta = FALSE; // Vero se stampato l'ultimo record
|
||||
bool LastRecord = FALSE; // Vero se letto l'ultimo record
|
||||
bool stampa = TRUE;
|
||||
@ -1859,10 +1890,11 @@ bool TQuadroD::print(const long codditta, const long NumFis, const long NumNoFis
|
||||
{
|
||||
for (int pagina=1; pagina <= QD_PAGINE; pagina++, next_page(pr))
|
||||
{
|
||||
pr.formlen(QD_FORMLEN);
|
||||
|
||||
// pr.formlen(QD_FORMLEN);
|
||||
firma_dichiarante();
|
||||
if (_PaginaCorrente == PRIMA)
|
||||
{
|
||||
{
|
||||
pr.formlen(dic_form_len());
|
||||
if (_modulaser) ClearFlagModulaser();
|
||||
|
||||
bool testata = TRUE;
|
||||
@ -1872,7 +1904,11 @@ bool TQuadroD::print(const long codditta, const long NumFis, const long NumNoFis
|
||||
// Stampa intestazione, solo sul primo foglio.
|
||||
if (testata)
|
||||
{
|
||||
(*cur) = PtrFis >= 0L ? PtrFis : 0L;
|
||||
(*cur) = PtrFis >= 0L ? PtrFis : 0L;
|
||||
if (_PaginaPosizionamento)
|
||||
fill_page(pr, 9);
|
||||
else
|
||||
fill_page(pr, 12);
|
||||
stampa_testata(pr);
|
||||
testata = FALSE;
|
||||
}
|
||||
@ -1943,7 +1979,7 @@ bool TQuadroD::print(const long codditta, const long NumFis, const long NumNoFis
|
||||
{
|
||||
// Reset del flag di pagina con posiz.
|
||||
if (_posiziona && _PaginaPosizionamento) _PaginaPosizionamento = FALSE;
|
||||
|
||||
pr.formlen(dic_form_len());
|
||||
bool testata = TRUE;
|
||||
for (int righe=0; righe < QD_RIGHE_SECONDA; righe++)
|
||||
{
|
||||
@ -1991,7 +2027,8 @@ bool TQuadroD::print(const long codditta, const long NumFis, const long NumNoFis
|
||||
|
||||
if (_PaginaCorrente == TERZA)
|
||||
{
|
||||
bool testata = TRUE;
|
||||
pr.formlen(dic_form_len());
|
||||
bool testata = TRUE;
|
||||
for (int righe=0; righe < QD_RIGHE_TERZA; righe++)
|
||||
{
|
||||
stampa = TRUE;
|
||||
@ -2040,8 +2077,8 @@ bool TQuadroD::print(const long codditta, const long NumFis, const long NumNoFis
|
||||
|
||||
if (_PaginaCorrente == QUARTA)
|
||||
{
|
||||
pr.formlen(dic_form_len());
|
||||
azzera_totali();
|
||||
|
||||
bool testata = TRUE;
|
||||
for (int righe=0; righe < QD_RIGHE_QUARTA; righe++)
|
||||
{
|
||||
@ -2115,7 +2152,8 @@ bool TQuadroD::print(const long codditta, const long NumFis, const long NumNoFis
|
||||
}
|
||||
}
|
||||
}
|
||||
PtrNoFis = cur->pos();
|
||||
PtrNoFis = cur->pos();
|
||||
firma_dichiarante();
|
||||
}
|
||||
} // for pagina..
|
||||
} // while !_EndPrintDitta
|
||||
@ -2223,14 +2261,14 @@ bool TQuadroD1::controlla_percentuale(TCursor* cur, const real& perc_p)
|
||||
|
||||
void TQuadroD1::leggi_importi()
|
||||
{
|
||||
TRectype& cur = cursor()->curr();
|
||||
TCursor* cur = cursor();
|
||||
|
||||
_totale = cur.get_real(QD1_TOTALE);
|
||||
_quotapro = cur.get_real(QD1_QUOTAPRO);
|
||||
_speseant = cur.get_real(QD1_SPESEANT);
|
||||
_imponibile = cur.get_real(QD1_IMPONIBILE);
|
||||
_importo = cur.get_real(QD1_IMPORTO);
|
||||
_netto = cur.get_real(QD1_NETTO);
|
||||
_totale = cur->curr().get_real(QD1_TOTALE);
|
||||
_quotapro = cur->curr().get_real(QD1_QUOTAPRO);
|
||||
_speseant = cur->curr().get_real(QD1_SPESEANT);
|
||||
_imponibile = cur->curr().get_real(QD1_IMPONIBILE);
|
||||
_importo = cur->curr().get_real(QD1_IMPORTO);
|
||||
_netto = cur->curr().get_real(QD1_NETTO);
|
||||
}
|
||||
|
||||
void TQuadroD1::setta_importi(TPrint_section& body)
|
||||
@ -2314,9 +2352,8 @@ void TQuadroD1::next_page(TPrinter& pr)
|
||||
bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFis)
|
||||
{
|
||||
bool StabilitaInesistenzaNoFis = FALSE;
|
||||
bool StabilitaInesistenzaFis = FALSE;
|
||||
bool StabilitaInesistenzaFis = FALSE;
|
||||
bool StampatoRitenutaImposta = FALSE;
|
||||
|
||||
long CtrFis = NumFis;
|
||||
long CtrNoFis = NumNoFis;
|
||||
long PtrFis = -1L, PtrNoFis=-1L;
|
||||
@ -2328,7 +2365,7 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
_EndPrintDitta = FALSE; // Vero se stampato l'ultimo record
|
||||
bool LastRecord = FALSE; // Vero se letto l'ultimo record
|
||||
bool stampa = TRUE;
|
||||
|
||||
|
||||
_PaginaCorrente = PRIMA;
|
||||
|
||||
if (!InitPrint(codditta))
|
||||
@ -2340,17 +2377,19 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
{
|
||||
for (int pagina=1; pagina <= QD_PAGINE; pagina++, next_page(pr))
|
||||
{
|
||||
pr.formlen(dic_form_len());
|
||||
|
||||
// pr.formlen(QD_FORMLEN);
|
||||
firma_dichiarante();
|
||||
if (_PaginaCorrente == PRIMA)
|
||||
{
|
||||
pr.formlen(dic_form_len());
|
||||
if (_modulaser) ClearFlagModulaser();
|
||||
|
||||
bool testata = TRUE;
|
||||
for (int righe=0; righe < QD1_RIGHE_PRIMA; righe++)
|
||||
{
|
||||
stampa = TRUE;
|
||||
// Stampa intestazione, solo sul primo foglio.
|
||||
if (righe == 0)
|
||||
if (testata)
|
||||
{
|
||||
(*cur) = PtrFis >= 0L ? PtrFis : 0L;
|
||||
|
||||
@ -2370,6 +2409,7 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
head.find_field(22).set("");
|
||||
}
|
||||
stampa_testata(pr);
|
||||
testata = FALSE;
|
||||
}
|
||||
|
||||
if (_finite_fis || StabilitaInesistenzaFis)
|
||||
@ -2404,21 +2444,19 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
(*cur) = PtrFis;
|
||||
const char tipo = cur->curr().get(QD1_TIPOA)[0];
|
||||
|
||||
if (tipo == 'F')
|
||||
{
|
||||
const bool rit_imp = !cur->curr(-14).get_bool("B0");
|
||||
if (righe > 0 && rit_imp && !StampatoRitenutaImposta)
|
||||
break;
|
||||
|
||||
if (tipo != 'F')
|
||||
break;
|
||||
else
|
||||
{
|
||||
const bool rit_acc = cur->curr(-14).get_bool("B0");
|
||||
if (righe > 0 && !rit_acc && !StampatoRitenutaImposta) break;
|
||||
CtrFis--;
|
||||
if (CtrFis == 0L) _finite_fis = TRUE;
|
||||
|
||||
real perc_p = cur->curr().get_real(QD1_PERC);
|
||||
stampa = controlla_percentuale(cur,perc_p);
|
||||
if (stampa)
|
||||
{
|
||||
set_body(pr, 'F');
|
||||
}
|
||||
else
|
||||
{
|
||||
leggi_importi();
|
||||
@ -2434,8 +2472,6 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
LastRecord = cur->pos() >= _Items-1;
|
||||
}
|
||||
}
|
||||
else
|
||||
break;
|
||||
} // for righe..
|
||||
PtrFis = cur->pos();
|
||||
}
|
||||
@ -2445,6 +2481,7 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
// Reset del flag di pagina con posiz.
|
||||
if (_posiziona && _PaginaPosizionamento) _PaginaPosizionamento = FALSE;
|
||||
|
||||
pr.formlen(dic_form_len());
|
||||
bool testata = TRUE;
|
||||
for (int righe=0; righe < QD1_RIGHE_SECONDA; righe++)
|
||||
{
|
||||
@ -2461,21 +2498,20 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
(*cur) = PtrFis;
|
||||
const char tipo = cur->curr().get(QD1_TIPOA)[0];
|
||||
|
||||
if (tipo == 'F')
|
||||
if (tipo != 'F')
|
||||
break;
|
||||
else
|
||||
{
|
||||
const bool rit_imp = !cur->curr(-14).get_bool("B0");
|
||||
if (rit_imp && !StampatoRitenutaImposta)
|
||||
break;
|
||||
|
||||
const bool rit_acc = cur->curr(-14).get_bool("B0");
|
||||
if (!rit_acc && !StampatoRitenutaImposta) break;
|
||||
|
||||
CtrFis--;
|
||||
if (CtrFis == 0L) _finite_fis = TRUE;
|
||||
|
||||
real perc_p = cur->curr().get_real(QD1_PERC);
|
||||
stampa = controlla_percentuale(cur,perc_p);
|
||||
if (stampa)
|
||||
{
|
||||
set_body(pr, 'F');
|
||||
}
|
||||
else
|
||||
{
|
||||
leggi_importi();
|
||||
@ -2490,8 +2526,6 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
LastRecord = cur->pos() >= _Items-1;
|
||||
}
|
||||
}
|
||||
else
|
||||
break;
|
||||
}
|
||||
PtrFis = cur->pos();
|
||||
}
|
||||
@ -2499,6 +2533,7 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
if (_PaginaCorrente == TERZA)
|
||||
{
|
||||
bool testata = TRUE;
|
||||
pr.formlen(dic_form_len());
|
||||
for (int righe=0; righe < QD1_RIGHE_TERZA; righe++)
|
||||
{
|
||||
stampa = TRUE;
|
||||
@ -2515,20 +2550,20 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
(*cur) = PtrFis;
|
||||
const char tipo = cur->curr().get(QD1_TIPOA)[0];
|
||||
|
||||
if (tipo == 'F')
|
||||
if (tipo != 'F')
|
||||
break;
|
||||
else
|
||||
{
|
||||
const bool rit_imp = !cur->curr(-14).get_bool("B0");
|
||||
if (rit_imp && !StampatoRitenutaImposta)
|
||||
break;
|
||||
const bool rit_acc = cur->curr(-14).get_bool("B0");
|
||||
if (!rit_acc && !StampatoRitenutaImposta) break;
|
||||
|
||||
CtrFis--;
|
||||
if (CtrFis == 0L) _finite_fis = TRUE;
|
||||
|
||||
real perc_p = cur->curr().get_real(QD1_PERC);
|
||||
stampa = controlla_percentuale(cur,perc_p);
|
||||
if (stampa)
|
||||
{
|
||||
set_body(pr, 'F');
|
||||
}
|
||||
else
|
||||
{
|
||||
leggi_importi();
|
||||
@ -2544,14 +2579,13 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
LastRecord = cur->pos() >= _Items-1;
|
||||
}
|
||||
}
|
||||
else
|
||||
break;
|
||||
}
|
||||
PtrFis = cur->pos();
|
||||
}
|
||||
|
||||
if (_PaginaCorrente == QUARTA)
|
||||
{
|
||||
pr.formlen(dic_form_len());
|
||||
azzera_totali();
|
||||
|
||||
bool testata = TRUE;
|
||||
@ -2628,6 +2662,7 @@ bool TQuadroD1::print(const long codditta, const long NumFis, const long NumNoFi
|
||||
}
|
||||
}
|
||||
PtrNoFis = cur->pos();
|
||||
firma_dichiarante();
|
||||
}
|
||||
} // for pagina..
|
||||
} // while !_EndPrintDitta
|
||||
@ -2662,7 +2697,7 @@ bool TStampaQuadroD1::user_create()
|
||||
_form = new TQuadroD1("77QD1", quadro());
|
||||
|
||||
TString sortkey(80);
|
||||
sortkey.format("CODDITTA|TIPOA|14@->B0-|216@->RAGSOC|CODANAGR|CODCAUS|PERC");
|
||||
sortkey.format("CODDITTA|TIPOA|216@->RAGSOC|CODANAGR|CODCAUS|PERC", LF_QUAD1, LF_QUAD1);
|
||||
_cur = new TSorted_cursor(_form->TForm::relation(), sortkey);
|
||||
|
||||
return TRUE;
|
||||
@ -3203,7 +3238,7 @@ class TQuadroF : public TDicForm
|
||||
void azzera_contatori();
|
||||
void aggiorna_totali(char tipoprosp, TRectype& r);
|
||||
void stampa_totali(char tipoprosp, TPrinter& pr);
|
||||
virtual bool ultima_pagina() const { return _PaginaCorrente==SECONDA; }
|
||||
virtual bool ultima_pagina() const { return _PaginaCorrente==SECONDA; }
|
||||
|
||||
public:
|
||||
virtual bool print(const long codditta, const long numfis=0L, const long numnofis=0L);
|
||||
@ -3769,9 +3804,9 @@ bool get_alleg_730(const long codditta)
|
||||
base.put("CODDITTA",(long)codditta);
|
||||
if (base.read()==NOERR)
|
||||
{
|
||||
const long allegA=base.get_long("N730ALLA");
|
||||
const long allegA2=base.get_long("N730ALLA2");
|
||||
return allegA || allegA2;
|
||||
const long allegA=base.get_long("N730ALLA");
|
||||
const long allegA2=base.get_long("N730ALLA2");
|
||||
return allegA || allegA2;
|
||||
}
|
||||
else
|
||||
return FALSE;
|
||||
@ -3800,29 +3835,29 @@ bool TBusta::print(const long codditta, const long, const long)
|
||||
all730.set(bAlleg730 ? "X" : "");
|
||||
|
||||
TPrinter& pr=printer();
|
||||
TPrint_section& body = section('B', odd_page);
|
||||
const int body_righe = body.height();
|
||||
TPrint_section& body = section('B', odd_page);
|
||||
const int body_righe = body.height();
|
||||
TCursor* cur=cursor();
|
||||
bool finito=FALSE;
|
||||
bool finito=FALSE;
|
||||
(*cur)=0L;
|
||||
pr.formlen(BUSTA_CON_POSIZ);
|
||||
if (!_PaginaPosizionamento)
|
||||
jump_to_line(pr,prima_riga(PRIMA));
|
||||
while (!finito)
|
||||
{
|
||||
body.reset();
|
||||
body.update();
|
||||
for (int i=0; i < body_righe; i++)
|
||||
{
|
||||
pr.print(body.row(i));
|
||||
_RigaCorr++;
|
||||
}
|
||||
if (usa_progind())
|
||||
progind()->addstatus(1);
|
||||
++(*cur);
|
||||
finito= cur->pos() >= cur->items()-1;
|
||||
while (!finito)
|
||||
{
|
||||
body.reset();
|
||||
body.update();
|
||||
for (int i=0; i < body_righe; i++)
|
||||
{
|
||||
pr.print(body.row(i));
|
||||
_RigaCorr++;
|
||||
}
|
||||
if (usa_progind())
|
||||
progind()->addstatus(1);
|
||||
++(*cur);
|
||||
finito= cur->pos() >= cur->items()-1;
|
||||
pr.formlen(BUSTA_SENZA_POSIZ);
|
||||
_PaginaPosizionamento=FALSE;
|
||||
_PaginaPosizionamento=FALSE;
|
||||
}
|
||||
// TForm::print(0);
|
||||
}
|
||||
@ -3978,10 +4013,6 @@ int stampa_quadro(int argc, char* argv[])
|
||||
{
|
||||
app = new TStampaQuadroAggL(quadro, livello);
|
||||
}
|
||||
else if (quadro == "N")
|
||||
{
|
||||
app = new TStampaQuadroAggN(quadro, livello);
|
||||
}
|
||||
|
||||
if (app != NULL)
|
||||
{
|
||||
|
565
m770/77stq.h
565
m770/77stq.h
@ -1,281 +1,284 @@
|
||||
#ifndef __77STQ_H
|
||||
#define __77STQ_H
|
||||
|
||||
#include <xvt.h>
|
||||
#include <applicat.h>
|
||||
#include <relation.h>
|
||||
#include <config.h>
|
||||
#include <mask.h>
|
||||
#include <form.h>
|
||||
#include <printer.h>
|
||||
#include <progind.h>
|
||||
#include "base.h"
|
||||
#include <urldefid.h>
|
||||
#include <nditte.h>
|
||||
#include <anagr.h>
|
||||
#include "quadroc.h"
|
||||
#include "quadrod.h"
|
||||
#include "quadrod1.h"
|
||||
#include "quadrogd.h"
|
||||
#include "quadrif.h"
|
||||
#include "77stqd.h"
|
||||
#include "77lib.h"
|
||||
|
||||
// Righe da saltare nelle prime pag. dei moduli successivi al primo (che' son
|
||||
// senza le righe del posizionamento...)
|
||||
HIDDEN int HEADER_PRIMA_NOPOS = 3;
|
||||
|
||||
// Chincaglieria che serve per posiziona()
|
||||
typedef long HWND;
|
||||
HIDDEN const int MAX_LEN = 300;
|
||||
extern "C" {
|
||||
BOOLEAN PrintLineNow( char *pData, word cbBytes, HWND hInst );
|
||||
};
|
||||
|
||||
|
||||
HIDDEN TString16 __dep16;
|
||||
HIDDEN TString80 __dep80;
|
||||
|
||||
// Vega-Key di Modulaser
|
||||
HIDDEN const char* VK_STARTDOC = "<VK>&MA796&0&1";
|
||||
HIDDEN const char* VK_ENDDOC = "<VK>!0";
|
||||
typedef enum { STARTDOC, STARTDITTA, STARTPAGE, ENDDOC } ModulaserKey;
|
||||
|
||||
// Campi form
|
||||
#define TOT_TOTALE 1
|
||||
#define TOT_SNSRIT 2
|
||||
#define TOT_IMPON 3
|
||||
#define TOT_IMPOR 4
|
||||
#define TOT_NETTO 5
|
||||
|
||||
#define D_TOTALE 16
|
||||
#define D_SNSRIT 17
|
||||
#define D_IMPONIBILE 18
|
||||
#define D_IMPORTO 20
|
||||
#define D_NETTO 21
|
||||
|
||||
#define D1_TOTALE 12
|
||||
#define D1_QUOTAPRO 13
|
||||
#define D1_SPESEANT 14
|
||||
#define D1_IMPONIBILE 15
|
||||
#define D1_IMPORTO 17
|
||||
#define D1_NETTO 18
|
||||
|
||||
#define C_TOTALE 14
|
||||
#define C_CONTSSN 15
|
||||
#define C_SOMME 16
|
||||
#define C_IMPONIBILE 17
|
||||
#define C_RITENUTE 18
|
||||
#define C_NETTO 19
|
||||
|
||||
#define H_COFI_DIC 13
|
||||
#define H_NUM_FOGLIO 14
|
||||
#define QD_STATO_ESTERO 12
|
||||
|
||||
// Quadro D
|
||||
HIDDEN const int QD_FORMLEN = 72;
|
||||
HIDDEN const int POS_DITTA = 120; // Colonna del codice ditta a pie' di modulo
|
||||
HIDDEN const int QD_PAGINE = 4;
|
||||
HIDDEN const int QD_RIGHE_PRIMA = 4;
|
||||
HIDDEN const int QD_RIGHE_SECONDA = 7;
|
||||
HIDDEN const int QD_RIGHE_TERZA = 7;
|
||||
HIDDEN const int QD_RIGHE_QUARTA = 7;
|
||||
HIDDEN const int QD1_RIGHE_PRIMA = 6;
|
||||
HIDDEN const int QD1_RIGHE_SECONDA = 9;
|
||||
HIDDEN const int QD1_RIGHE_TERZA = 9;
|
||||
HIDDEN const int QD1_RIGHE_QUARTA = 8;
|
||||
|
||||
HIDDEN const int HEADER_SECONDA = 8;
|
||||
HIDDEN const int HEADER_TERZA = 8; // Sarebbero 9 col righello...
|
||||
HIDDEN const int HEADER_QUARTA = 13; // 15 col righello...
|
||||
|
||||
HIDDEN const int HEADER_D1_SECONDA = 8;
|
||||
HIDDEN const int HEADER_D1_TERZA = 8;
|
||||
HIDDEN const int HEADER_D1_QUARTA = 14;
|
||||
|
||||
typedef enum { PRIMA=1, SECONDA, TERZA, QUARTA } PaginaQuadro;
|
||||
typedef enum { fisiche, nofisiche } TipoPagina;
|
||||
|
||||
const char* get_ragsoc_anagr(char tipo, long codanagr);
|
||||
|
||||
class TDicForm : public TForm
|
||||
{
|
||||
private:
|
||||
real _f_tot_totale, _f_tot_snsrit, _f_tot_impon, _f_tot_impor, _f_tot_netto;
|
||||
real _nf_tot_totale, _nf_tot_snsrit, _nf_tot_impon, _nf_tot_impor, _nf_tot_netto;
|
||||
|
||||
TCursor* _cur;
|
||||
|
||||
protected:
|
||||
long _Items; // numero di record che hanno passato il filtro
|
||||
PaginaQuadro _PaginaCorrente;
|
||||
|
||||
void set_curr_page(PaginaQuadro pagina) { _PaginaCorrente = pagina; }
|
||||
virtual int dic_form_len() const;
|
||||
virtual void inc_curr_page();
|
||||
virtual void next_page(TPrinter& pr);
|
||||
bool _modulaser; // se stampa per modulaser
|
||||
bool _posiziona;
|
||||
TipoDitta _tipo_ditta; // tipo ditta: normale, estinto, dichiarante
|
||||
int _num_foglio; // numero foglio
|
||||
TString _cofi_dic; // cod.fis. dichiarante
|
||||
bool _can_print_tot_fis, _can_print_tot_nofis;
|
||||
bool _finite_fis, _finite_nofis, _LastDitta, _EndPrintDitta;
|
||||
bool _GiaStampatiFis, _GiaStampatiNoFis, _PaginaPosizionamento;
|
||||
bool _GiaPosizionato, _GiaMessoStartDoc, _GiaMessoStartPage[QD_PAGINE]; // flag per modulaser
|
||||
int _CtrNoFisStampati, _CtrFisStampati; // contatori p.f. e p.g. stampate
|
||||
long _codditta, _codditta_dic; // cod.ditta e cod.ditta dichiarante
|
||||
int _RigaCorr; // contatore riga corrente
|
||||
TString16 _quadro; // codice quadro in stampa
|
||||
|
||||
void stampa_testata(TPrinter& pr);
|
||||
virtual bool ultima_pagina() const { return _PaginaCorrente==QUARTA; }
|
||||
virtual void stampa_totali(TPrinter& pr);
|
||||
// virtual void aggiorna_totali(const char tipo);
|
||||
virtual void set_body(TPrinter& pr, const char tipo);
|
||||
void StampaPagina(PaginaQuadro PaginaCorrente, const bool StampaTotali, const long Fis, const long NoFis);
|
||||
void posiziona();
|
||||
void fill_page(TPrinter& pr, const int righe);
|
||||
void jump_to_line(TPrinter& pr, const int riga);
|
||||
const char* BuildModulaserStartPage();
|
||||
void put_modulaser(TPrintrow& row, ModulaserKey key, int page=0);
|
||||
void ClearFlagModulaser();
|
||||
bool PaginaPosizionamento() const;
|
||||
virtual bool InitPrint(const long codditta);
|
||||
|
||||
public:
|
||||
virtual TCursor* cursor() const { return _cur; }
|
||||
virtual TRelation* relation() const { return _cur->relation(); }
|
||||
|
||||
virtual long filtra(const long codditta);
|
||||
|
||||
TProgind* _prog; // progind usata in print()
|
||||
|
||||
long codditta() const { return _codditta; }
|
||||
void set_codditta(const long ditta) { _codditta = ditta; }
|
||||
void set_posiziona(const bool posiz) { _GiaPosizionato = FALSE; }
|
||||
void can_print_tot_fis(const bool canpr) { _can_print_tot_fis = canpr; }
|
||||
void can_print_tot_nofis(const bool canpr) { _can_print_tot_nofis = canpr; }
|
||||
void set_last_ditta(const bool last) { _LastDitta = last; }
|
||||
bool last_ditta() const { return _LastDitta; }
|
||||
bool EndJob() const { return _LastDitta && _EndPrintDitta; }
|
||||
bool ultima_fis();
|
||||
bool ultima_nofis();
|
||||
TString& cofi_dic() { return _cofi_dic; }
|
||||
void set_cofi_dic(const char* cofi);
|
||||
TipoDitta tipo_ditta() const { return _tipo_ditta; }
|
||||
void set_tipo_ditta(TipoDitta tipo) { _tipo_ditta = tipo; }
|
||||
bool modulaser() const { return _modulaser; }
|
||||
void set_modulaser(const bool modul) { _modulaser = modul; }
|
||||
void set_num_foglio(const int foglio) { _num_foglio = foglio; }
|
||||
int num_foglio() const { return _num_foglio; }
|
||||
virtual void azzera_totali();
|
||||
PaginaQuadro curr_page() const { return _PaginaCorrente; }
|
||||
// TCursor& cur();
|
||||
|
||||
void set_progind(TProgind* prog) { _prog = prog; }
|
||||
TProgind* progind() { return _prog; }
|
||||
bool usa_progind() const { return _prog != NULL; }
|
||||
|
||||
virtual void set_cursor(TCursor* cur);
|
||||
virtual void close_print();
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
virtual int prima_riga(PaginaQuadro p) const;
|
||||
const TString& quadro() const { return _quadro; }
|
||||
|
||||
TDicForm(const char* form, const char* quadro);
|
||||
virtual ~TDicForm() {}
|
||||
};
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TStDicArray
|
||||
//
|
||||
// Array delle ditte da stampare. Contiene una riga per ogni ditta che si vuole stampare
|
||||
// Il formato della riga e':
|
||||
// codditta|estinti|numfis|numnofis|ultimafis|ultimanofis
|
||||
//
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
class TStDicArray : public TObject
|
||||
{
|
||||
private:
|
||||
TString_array _store;
|
||||
|
||||
public:
|
||||
TToken_string& operator[](int i) const;
|
||||
int curr_index() const { return _store.last(); }
|
||||
void set(const int index, const TipoDitta tipo=normale, const int num_fis=0, const int num_nofis=0,
|
||||
bool ultima_con_fis=FALSE, bool ultima_con_nofis=FALSE, const char* cofidic=NULL);
|
||||
void set_tipo(const int index, const TipoDitta tipo);
|
||||
void set_ultima_con_fis(const int index, const bool ultima_fis);
|
||||
void set_ultima_con_nofis(const int index, const bool ultima_nofis);
|
||||
void set_flag_tipi(const int index, const bool ultima_fis, const bool ultima_nofis);
|
||||
void set_ctr_tipi(const int index, const int num_fis, const int num_nofis);
|
||||
void add(const long codditta, const TipoDitta tipo=normale, const int num_fis=0, const int num_nofis=0,
|
||||
bool ultima_con_fis=FALSE, bool ultima_con_nofis=FALSE, const char* cofidic=NULL);
|
||||
int items() const { return _store.items(); }
|
||||
void destroy() { _store.destroy(); }
|
||||
};
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// STAMPA QUADRO
|
||||
//
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
class TStampaQuadro : public TApplication
|
||||
{
|
||||
TMask* _m; // Maschera di stampa
|
||||
|
||||
TConfig* _cnf; // Configurazione
|
||||
TString16 _section; // Paragrafo del config
|
||||
long _codditta;
|
||||
int _anno_dic;
|
||||
|
||||
TString _quadro;
|
||||
char _livello; // "S" studio, "D" singola ditta
|
||||
TString _title;
|
||||
|
||||
TStDicArray _ditte;
|
||||
|
||||
protected: // TApplication
|
||||
virtual bool menu(MENU_TAG);
|
||||
virtual void on_config_change();
|
||||
|
||||
virtual bool create();
|
||||
virtual bool destroy();
|
||||
|
||||
protected:
|
||||
virtual bool user_create() pure;
|
||||
virtual bool user_destroy() pure;
|
||||
|
||||
virtual TDicForm* get_form() const pure;
|
||||
virtual TCursor* get_cursor() const pure;
|
||||
|
||||
virtual const char* mask_name() const;
|
||||
virtual const char* form_name() const;
|
||||
|
||||
virtual bool conta_tipi_per() const { return TRUE; }
|
||||
void fill_estinti(const long CodDic);
|
||||
const TStDicArray& ditte() const { return _ditte; }
|
||||
|
||||
virtual bool print_quadro(const int OffsetDitta, const bool modulaser);
|
||||
virtual void print(const bool modulaser);
|
||||
|
||||
bool singola_ditta() const { return _livello == 'D'; }
|
||||
const TString& quadro() const { return _quadro; }
|
||||
|
||||
void set_taitol(const char* t) { _title = t; }
|
||||
|
||||
TStampaQuadro(const char* quad, char liv);
|
||||
|
||||
public:
|
||||
const TString& taitol() const { return _title; }
|
||||
|
||||
virtual ~TStampaQuadro() { }
|
||||
};
|
||||
|
||||
#endif
|
||||
#ifndef __77STQ_H
|
||||
#define __77STQ_H
|
||||
|
||||
#include <xvt.h>
|
||||
#include <applicat.h>
|
||||
#include <relation.h>
|
||||
#include <config.h>
|
||||
#include <mask.h>
|
||||
#include <form.h>
|
||||
#include <printer.h>
|
||||
#include <progind.h>
|
||||
#include "base.h"
|
||||
#include <urldefid.h>
|
||||
#include <nditte.h>
|
||||
#include <anagr.h>
|
||||
#include "quadroc.h"
|
||||
#include "quadrod.h"
|
||||
#include "quadrod1.h"
|
||||
#include "quadrogd.h"
|
||||
#include "quadrif.h"
|
||||
#include "77stqd.h"
|
||||
#include "77lib.h"
|
||||
|
||||
// Righe da saltare nelle prime pag. dei moduli successivi al primo (che' son
|
||||
// senza le righe del posizionamento...)
|
||||
HIDDEN int HEADER_PRIMA_NOPOS = 3;
|
||||
|
||||
// Chincaglieria che serve per posiziona()
|
||||
typedef long HWND;
|
||||
HIDDEN const int MAX_LEN = 300;
|
||||
extern "C" {
|
||||
BOOLEAN PrintLineNow( char *pData, word cbBytes, HWND hInst );
|
||||
};
|
||||
|
||||
|
||||
HIDDEN TString16 __dep16;
|
||||
HIDDEN TString80 __dep80;
|
||||
|
||||
// Vega-Key di Modulaser
|
||||
HIDDEN const char* VK_STARTDOC = "<VK>&MA796&0&1";
|
||||
HIDDEN const char* VK_ENDDOC = "<VK>!0";
|
||||
typedef enum { STARTDOC, STARTDITTA, STARTPAGE, ENDDOC } ModulaserKey;
|
||||
|
||||
// Campi form
|
||||
#define FIRMADIC 2 // Per usare la funzione firma_dichiarante() ricordarsi di definire
|
||||
// nel footer il blocco dellla firma con id = 2
|
||||
#define TOT_TOTALE 1
|
||||
#define TOT_SNSRIT 2
|
||||
#define TOT_IMPON 3
|
||||
#define TOT_IMPOR 4
|
||||
#define TOT_NETTO 5
|
||||
|
||||
#define D_TOTALE 16
|
||||
#define D_SNSRIT 17
|
||||
#define D_IMPONIBILE 18
|
||||
#define D_IMPORTO 20
|
||||
#define D_NETTO 21
|
||||
|
||||
#define D1_TOTALE 12
|
||||
#define D1_QUOTAPRO 13
|
||||
#define D1_SPESEANT 14
|
||||
#define D1_IMPONIBILE 15
|
||||
#define D1_IMPORTO 17
|
||||
#define D1_NETTO 18
|
||||
|
||||
#define C_TOTALE 14
|
||||
#define C_CONTSSN 15
|
||||
#define C_SOMME 16
|
||||
#define C_IMPONIBILE 17
|
||||
#define C_RITENUTE 18
|
||||
#define C_NETTO 19
|
||||
|
||||
#define H_COFI_DIC 13
|
||||
#define H_NUM_FOGLIO 14
|
||||
#define QD_STATO_ESTERO 12
|
||||
|
||||
// Quadro D
|
||||
HIDDEN const int QD_FORMLEN = 72;
|
||||
HIDDEN const int POS_DITTA = 120; // Colonna del codice ditta a pie' di modulo
|
||||
HIDDEN const int QD_PAGINE = 4;
|
||||
HIDDEN const int QD_RIGHE_PRIMA = 4;
|
||||
HIDDEN const int QD_RIGHE_SECONDA = 7;
|
||||
HIDDEN const int QD_RIGHE_TERZA = 7;
|
||||
HIDDEN const int QD_RIGHE_QUARTA = 7;
|
||||
HIDDEN const int QD1_RIGHE_PRIMA = 6;
|
||||
HIDDEN const int QD1_RIGHE_SECONDA = 9;
|
||||
HIDDEN const int QD1_RIGHE_TERZA = 9;
|
||||
HIDDEN const int QD1_RIGHE_QUARTA = 8;
|
||||
|
||||
HIDDEN const int HEADER_SECONDA = 8;
|
||||
HIDDEN const int HEADER_TERZA = 8; // Sarebbero 9 col righello...
|
||||
HIDDEN const int HEADER_QUARTA = 13; // 15 col righello...
|
||||
|
||||
HIDDEN const int HEADER_D1_SECONDA = 8;
|
||||
HIDDEN const int HEADER_D1_TERZA = 8;
|
||||
HIDDEN const int HEADER_D1_QUARTA = 14;
|
||||
|
||||
typedef enum { PRIMA=1, SECONDA, TERZA, QUARTA } PaginaQuadro;
|
||||
typedef enum { fisiche, nofisiche } TipoPagina;
|
||||
|
||||
const char* get_ragsoc_anagr(char tipo, long codanagr);
|
||||
|
||||
class TDicForm : public TForm
|
||||
{
|
||||
private:
|
||||
real _f_tot_totale, _f_tot_snsrit, _f_tot_impon, _f_tot_impor, _f_tot_netto;
|
||||
real _nf_tot_totale, _nf_tot_snsrit, _nf_tot_impon, _nf_tot_impor, _nf_tot_netto;
|
||||
|
||||
TCursor* _cur;
|
||||
|
||||
protected:
|
||||
long _Items; // numero di record che hanno passato il filtro
|
||||
PaginaQuadro _PaginaCorrente;
|
||||
|
||||
void set_curr_page(PaginaQuadro pagina) { _PaginaCorrente = pagina; }
|
||||
virtual int dic_form_len() const;
|
||||
virtual void inc_curr_page();
|
||||
virtual void next_page(TPrinter& pr);
|
||||
bool _modulaser; // se stampa per modulaser
|
||||
bool _posiziona;
|
||||
TipoDitta _tipo_ditta; // tipo ditta: normale, estinto, dichiarante
|
||||
int _num_foglio; // numero foglio
|
||||
TString _cofi_dic; // cod.fis. dichiarante
|
||||
bool _can_print_tot_fis, _can_print_tot_nofis;
|
||||
bool _finite_fis, _finite_nofis, _LastDitta, _EndPrintDitta;
|
||||
bool _GiaStampatiFis, _GiaStampatiNoFis, _PaginaPosizionamento;
|
||||
bool _GiaPosizionato, _GiaMessoStartDoc, _GiaMessoStartPage[QD_PAGINE]; // flag per modulaser
|
||||
int _CtrNoFisStampati, _CtrFisStampati; // contatori p.f. e p.g. stampate
|
||||
long _codditta, _codditta_dic; // cod.ditta e cod.ditta dichiarante
|
||||
int _RigaCorr; // contatore riga corrente
|
||||
TString16 _quadro; // codice quadro in stampa
|
||||
|
||||
void stampa_testata(TPrinter& pr);
|
||||
virtual bool ultima_pagina() const { return _PaginaCorrente==QUARTA; }
|
||||
virtual void stampa_totali(TPrinter& pr);
|
||||
// virtual void aggiorna_totali(const char tipo);
|
||||
virtual void set_body(TPrinter& pr, const char tipo);
|
||||
void StampaPagina(PaginaQuadro PaginaCorrente, const bool StampaTotali, const long Fis, const long NoFis);
|
||||
void posiziona();
|
||||
void fill_page(TPrinter& pr, const int righe);
|
||||
void jump_to_line(TPrinter& pr, const int riga);
|
||||
const char* BuildModulaserStartPage();
|
||||
void put_modulaser(TPrintrow& row, ModulaserKey key, int page=0);
|
||||
void ClearFlagModulaser();
|
||||
bool PaginaPosizionamento() const;
|
||||
virtual bool InitPrint(const long codditta);
|
||||
|
||||
public:
|
||||
virtual TCursor* cursor() const { return _cur; }
|
||||
virtual TRelation* relation() const { return _cur->relation(); }
|
||||
|
||||
virtual long filtra(const long codditta);
|
||||
|
||||
TProgind* _prog; // progind usata in print()
|
||||
|
||||
long codditta() const { return _codditta; }
|
||||
void set_codditta(const long ditta) { _codditta = ditta; }
|
||||
void set_posiziona(const bool posiz) { _GiaPosizionato = FALSE; }
|
||||
void can_print_tot_fis(const bool canpr) { _can_print_tot_fis = canpr; }
|
||||
void can_print_tot_nofis(const bool canpr) { _can_print_tot_nofis = canpr; }
|
||||
void set_last_ditta(const bool last) { _LastDitta = last; }
|
||||
bool last_ditta() const { return _LastDitta; }
|
||||
bool EndJob() const { return _LastDitta && _EndPrintDitta; }
|
||||
bool ultima_fis();
|
||||
bool ultima_nofis();
|
||||
TString& cofi_dic() { return _cofi_dic; }
|
||||
void set_cofi_dic(const char* cofi);
|
||||
TipoDitta tipo_ditta() const { return _tipo_ditta; }
|
||||
void set_tipo_ditta(TipoDitta tipo) { _tipo_ditta = tipo; }
|
||||
bool modulaser() const { return _modulaser; }
|
||||
void set_modulaser(const bool modul) { _modulaser = modul; }
|
||||
void set_num_foglio(const int foglio) { _num_foglio = foglio; }
|
||||
int num_foglio() const { return _num_foglio; }
|
||||
virtual void azzera_totali();
|
||||
void firma_dichiarante();
|
||||
PaginaQuadro curr_page() const { return _PaginaCorrente; }
|
||||
// TCursor& cur();
|
||||
|
||||
void set_progind(TProgind* prog) { _prog = prog; }
|
||||
TProgind* progind() { return _prog; }
|
||||
bool usa_progind() const { return _prog != NULL; }
|
||||
|
||||
virtual void set_cursor(TCursor* cur);
|
||||
virtual void close_print();
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
virtual int prima_riga(PaginaQuadro p) const;
|
||||
const TString& quadro() const { return _quadro; }
|
||||
|
||||
TDicForm(const char* form, const char* quadro);
|
||||
virtual ~TDicForm() {}
|
||||
};
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TStDicArray
|
||||
//
|
||||
// Array delle ditte da stampare. Contiene una riga per ogni ditta che si vuole stampare
|
||||
// Il formato della riga e':
|
||||
// codditta|estinti|numfis|numnofis|ultimafis|ultimanofis
|
||||
//
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
class TStDicArray : public TObject
|
||||
{
|
||||
private:
|
||||
TString_array _store;
|
||||
|
||||
public:
|
||||
TToken_string& operator[](int i) const;
|
||||
int curr_index() const { return _store.last(); }
|
||||
void set(const int index, const TipoDitta tipo=normale, const int num_fis=0, const int num_nofis=0,
|
||||
bool ultima_con_fis=FALSE, bool ultima_con_nofis=FALSE, const char* cofidic=NULL);
|
||||
void set_tipo(const int index, const TipoDitta tipo);
|
||||
void set_ultima_con_fis(const int index, const bool ultima_fis);
|
||||
void set_ultima_con_nofis(const int index, const bool ultima_nofis);
|
||||
void set_flag_tipi(const int index, const bool ultima_fis, const bool ultima_nofis);
|
||||
void set_ctr_tipi(const int index, const int num_fis, const int num_nofis);
|
||||
void add(const long codditta, const TipoDitta tipo=normale, const int num_fis=0, const int num_nofis=0,
|
||||
bool ultima_con_fis=FALSE, bool ultima_con_nofis=FALSE, const char* cofidic=NULL);
|
||||
int items() const { return _store.items(); }
|
||||
void destroy() { _store.destroy(); }
|
||||
};
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// STAMPA QUADRO
|
||||
//
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
class TStampaQuadro : public TApplication
|
||||
{
|
||||
TMask* _m; // Maschera di stampa
|
||||
|
||||
TConfig* _cnf; // Configurazione
|
||||
TString16 _section; // Paragrafo del config
|
||||
long _codditta;
|
||||
int _anno_dic;
|
||||
|
||||
TString _quadro;
|
||||
char _livello; // "S" studio, "D" singola ditta
|
||||
TString _title;
|
||||
|
||||
TStDicArray _ditte;
|
||||
|
||||
protected: // TApplication
|
||||
virtual bool menu(MENU_TAG);
|
||||
virtual void on_config_change();
|
||||
|
||||
virtual bool create();
|
||||
virtual bool destroy();
|
||||
|
||||
protected:
|
||||
virtual bool user_create() pure;
|
||||
virtual bool user_destroy() pure;
|
||||
|
||||
virtual TDicForm* get_form() const pure;
|
||||
virtual TCursor* get_cursor() const pure;
|
||||
|
||||
virtual const char* mask_name() const;
|
||||
virtual const char* form_name() const;
|
||||
|
||||
virtual bool conta_tipi_per() const { return TRUE; }
|
||||
void fill_estinti(const long CodDic);
|
||||
const TStDicArray& ditte() const { return _ditte; }
|
||||
|
||||
virtual bool print_quadro(const int OffsetDitta, const bool modulaser);
|
||||
virtual void print(const bool modulaser);
|
||||
|
||||
bool singola_ditta() const { return _livello == 'D'; }
|
||||
const TString& quadro() const { return _quadro; }
|
||||
|
||||
void set_taitol(const char* t) { _title = t; }
|
||||
|
||||
TStampaQuadro(const char* quad, char liv);
|
||||
|
||||
public:
|
||||
const TString& taitol() const { return _title; }
|
||||
|
||||
virtual ~TStampaQuadro() { }
|
||||
};
|
||||
|
||||
#endif
|
||||
|
674
m770/77stqc.cpp
674
m770/77stqc.cpp
@ -1,337 +1,337 @@
|
||||
///////////////////////////////////////////////////////////
|
||||
// Quadro 770/C
|
||||
///////////////////////////////////////////////////////////
|
||||
|
||||
#include "77stqc.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////
|
||||
// Quadro C
|
||||
/////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
bool TQuadroC::controlla_percentuale(TCursor& cur, const real& perc_p)
|
||||
{
|
||||
bool stampa = TRUE;
|
||||
|
||||
long ditta_p = cur.curr().get_long(QUC_CODDITTA);
|
||||
char tipo_p = cur.curr().get_char(QUC_TIPOA);
|
||||
long codana_p = cur.curr().get_long(QUC_CODANAGR);
|
||||
TString codcaus_p = cur.curr().get (QUC_CODCAUS);
|
||||
TString ragsoc_p = get_ragsoc_anagr(tipo_p,codana_p);
|
||||
|
||||
if (perc_p == ZERO)
|
||||
{
|
||||
++(cur);
|
||||
long ditta = cur.curr().get_long(QUC_CODDITTA);
|
||||
char tipo = cur.curr().get_char(QUC_TIPOA);
|
||||
long codana = cur.curr().get_long(QUC_CODANAGR);
|
||||
TString codcaus = cur.curr().get (QUC_CODCAUS);
|
||||
TString ragsoc = get_ragsoc_anagr(tipo,codana);
|
||||
real perc = cur.curr().get_real(QUC_PERC);
|
||||
|
||||
if (ditta == ditta_p && tipo == tipo_p && ragsoc == ragsoc_p
|
||||
&& codana == codana_p && codcaus == codcaus_p)
|
||||
{
|
||||
if (perc != ZERO)
|
||||
{
|
||||
stampa = FALSE;
|
||||
_devo_sommare = TRUE;
|
||||
}
|
||||
else
|
||||
stampa = FALSE;
|
||||
}
|
||||
--(cur);
|
||||
}
|
||||
else
|
||||
if (perc_p != ZERO)
|
||||
{
|
||||
++(cur);
|
||||
long ditta = cur.curr().get_long(QUC_CODDITTA);
|
||||
char tipo = cur.curr().get_char(QUC_TIPOA);
|
||||
long codana = cur.curr().get_long(QUC_CODANAGR);
|
||||
TString codcaus = cur.curr().get (QUC_CODCAUS);
|
||||
TString ragsoc = get_ragsoc_anagr(tipo,codana);
|
||||
real perc = cur.curr().get_real(QUC_PERC);
|
||||
|
||||
if (ditta == ditta_p && tipo == tipo_p && ragsoc == ragsoc_p &&
|
||||
codana == codana_p && codcaus == codcaus_p && perc_p == perc)
|
||||
stampa = FALSE;
|
||||
else
|
||||
_devo_sommare = TRUE;
|
||||
|
||||
--(cur);
|
||||
}
|
||||
|
||||
return stampa;
|
||||
}
|
||||
|
||||
void TQuadroC::leggi_importi()
|
||||
{
|
||||
TCursor* cur = cursor();
|
||||
|
||||
_totale += cur->curr().get_real(QUC_TOTALE);
|
||||
_contssn += cur->curr().get_real(QUC_CONTSSN);
|
||||
_somme += cur->curr().get_real(QUC_SOMME);
|
||||
_imponibile += cur->curr().get_real(QUC_IMPONIBILE);
|
||||
_ritenute += cur->curr().get_real(QUC_RITENUTE);
|
||||
_netto += cur->curr().get_real(QUC_NETTO);
|
||||
}
|
||||
|
||||
void TQuadroC::setta_importi(TPrint_section& body)
|
||||
{
|
||||
TCursor* cur = cursor();
|
||||
|
||||
real totale = cur->curr().get_real(QUC_TOTALE);
|
||||
real contssn = cur->curr().get_real(QUC_CONTSSN);
|
||||
real somme = cur->curr().get_real(QUC_SOMME);
|
||||
real imponibile = cur->curr().get_real(QUC_IMPONIBILE);
|
||||
real ritenute = cur->curr().get_real(QUC_RITENUTE);
|
||||
real netto = cur->curr().get_real(QUC_NETTO);
|
||||
|
||||
if (_devo_sommare)
|
||||
{
|
||||
totale += _totale;
|
||||
contssn += _contssn;
|
||||
somme += _somme;
|
||||
imponibile += _imponibile;
|
||||
ritenute += _ritenute;
|
||||
netto += _netto;
|
||||
_devo_sommare = FALSE;
|
||||
_totale = ZERO;
|
||||
_contssn = ZERO;
|
||||
_somme = ZERO;
|
||||
_imponibile = ZERO;
|
||||
_ritenute = ZERO;
|
||||
_netto = ZERO;
|
||||
}
|
||||
|
||||
TForm_item& ftotale = body.find_field(C_TOTALE);
|
||||
TForm_item& fcontssn = body.find_field(C_CONTSSN);
|
||||
TForm_item& fsomme = body.find_field(C_SOMME);
|
||||
TForm_item& fimponibile = body.find_field(C_IMPONIBILE);
|
||||
TForm_item& fritenute = body.find_field(C_RITENUTE);
|
||||
TForm_item& fnetto = body.find_field(C_NETTO);
|
||||
|
||||
TString stotale (totale.string());
|
||||
TString scontssn (contssn.string());
|
||||
TString ssomme (somme.string());
|
||||
TString simponibile(imponibile.string());
|
||||
TString sritenute (ritenute.string());
|
||||
TString snetto (netto.string());
|
||||
// Setta i campi
|
||||
ftotale.set(stotale);
|
||||
fcontssn.set(scontssn);
|
||||
fsomme.set(ssomme);
|
||||
fimponibile.set(simponibile);
|
||||
fritenute.set(sritenute);
|
||||
fnetto.set(snetto);
|
||||
}
|
||||
|
||||
void TQuadroC::stampa_corpo(TPrinter& pr)
|
||||
{
|
||||
TPrint_section& body = section('B', odd_page);
|
||||
const int body_righe = body.height();
|
||||
body.reset();
|
||||
// body.update();
|
||||
setta_importi(body);
|
||||
body.update();
|
||||
// const int body_righe = body.height();
|
||||
for (int i=0; i < body_righe; i++)
|
||||
{
|
||||
pr.print(body.row(i));
|
||||
_RigaCorr++;
|
||||
}
|
||||
body.reset();
|
||||
if (usa_progind())
|
||||
progind()->addstatus(1);
|
||||
}
|
||||
|
||||
int TQuadroC::elementi_pagina(PaginaQuadro p) const
|
||||
{
|
||||
const int n[4] = { 6, 10, 10, 9 };
|
||||
return n[p-PRIMA];
|
||||
}
|
||||
|
||||
int TQuadroC::prima_riga(PaginaQuadro p) const
|
||||
{
|
||||
// old return p == PRIMA ? 27 : 8;
|
||||
// nik1 return p == PRIMA ? 26 : 7;
|
||||
return p == PRIMA ? 27 : 9;
|
||||
}
|
||||
|
||||
bool TQuadroC::print(const long codditta, const long NumFis, const long NumNoFis)
|
||||
{
|
||||
TCursor& cur = *cursor();
|
||||
TPrinter& pr = printer();
|
||||
bool stampa = TRUE;
|
||||
|
||||
if (!InitPrint(codditta))
|
||||
return FALSE;
|
||||
|
||||
// pr.formlen(QA_FORMLEN);
|
||||
|
||||
int elementi = 0; // Numero di elementi stampati in questa pagina
|
||||
int ele_bis = 0;
|
||||
bool stampato_ultimo = FALSE;
|
||||
bool stampati_totali = FALSE;
|
||||
|
||||
int pos = 0;
|
||||
TDipendenti indice;
|
||||
if (quadro() == "A" || quadro() == "B")
|
||||
{
|
||||
const int i = indice.fill(cur);
|
||||
if (i > 0)
|
||||
{
|
||||
if (usa_progind())
|
||||
progind()->addstatus(cur.items()-i); // Segna come elaborati tutti gli ignorati
|
||||
|
||||
cur = indice[0].pos();
|
||||
}
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
cur = 0;
|
||||
|
||||
while (!stampati_totali)
|
||||
{
|
||||
bool stampa = TRUE;
|
||||
bool stampero_ultimo = stampato_ultimo == FALSE;
|
||||
if (stampero_ultimo)
|
||||
{
|
||||
if (indice.items() > 0) // Usa indice alternativo
|
||||
stampero_ultimo &= pos == indice.items()-1;
|
||||
else // Usa indice del cursore
|
||||
stampero_ultimo &= cur.pos() == cur.items()-1;
|
||||
}
|
||||
|
||||
_EndPrintDitta=stampato_ultimo;
|
||||
switch(_PaginaCorrente)
|
||||
{
|
||||
case PRIMA:
|
||||
pr.formlen(dic_form_len());
|
||||
|
||||
if (_modulaser)
|
||||
ClearFlagModulaser();
|
||||
|
||||
if (ele_bis == 0)
|
||||
{
|
||||
stampa_testata(pr);
|
||||
jump_to_line(pr, prima_riga(PRIMA));
|
||||
}
|
||||
|
||||
if (!stampato_ultimo)
|
||||
{
|
||||
real perc_p = cur.curr().get_real(QUC_PERC);
|
||||
stampa = controlla_percentuale(cur,perc_p);
|
||||
if (stampa)
|
||||
stampa_corpo(pr);
|
||||
else
|
||||
{
|
||||
leggi_importi();
|
||||
elementi--;
|
||||
}
|
||||
stampato_ultimo = stampero_ultimo;
|
||||
}
|
||||
|
||||
elementi++;
|
||||
ele_bis++;
|
||||
if (elementi >= elementi_pagina(PRIMA))
|
||||
{
|
||||
next_page(pr);
|
||||
elementi = 0;
|
||||
ele_bis = 0;
|
||||
}
|
||||
break;
|
||||
_PaginaPosizionamento=FALSE;
|
||||
case SECONDA:
|
||||
case TERZA:
|
||||
pr.formlen(dic_form_len());
|
||||
if (!stampato_ultimo)
|
||||
{
|
||||
if (ele_bis == 0)
|
||||
jump_to_line(pr, prima_riga(_PaginaCorrente));
|
||||
|
||||
real perc_p = cur.curr().get_real(QUC_PERC);
|
||||
stampa = controlla_percentuale(cur,perc_p);
|
||||
if (stampa)
|
||||
stampa_corpo(pr);
|
||||
else
|
||||
{
|
||||
leggi_importi();
|
||||
elementi--;
|
||||
}
|
||||
stampato_ultimo = stampero_ultimo;
|
||||
}
|
||||
elementi++;
|
||||
ele_bis++;
|
||||
if (elementi >= elementi_pagina(_PaginaCorrente))
|
||||
{
|
||||
next_page(pr);
|
||||
elementi = 0;
|
||||
ele_bis = 0;
|
||||
}
|
||||
break;
|
||||
case QUARTA:
|
||||
pr.formlen(dic_form_len());
|
||||
if (!stampato_ultimo)
|
||||
{
|
||||
if (ele_bis == 0)
|
||||
jump_to_line(pr, prima_riga(QUARTA));
|
||||
|
||||
real perc_p = cur.curr().get_real(QUC_PERC);
|
||||
stampa = controlla_percentuale(cur,perc_p);
|
||||
if (stampa)
|
||||
stampa_corpo(pr);
|
||||
else
|
||||
{
|
||||
leggi_importi();
|
||||
elementi--;
|
||||
}
|
||||
stampato_ultimo = stampero_ultimo;
|
||||
}
|
||||
|
||||
elementi++;
|
||||
ele_bis++;
|
||||
|
||||
if (elementi >= elementi_pagina(QUARTA))
|
||||
{
|
||||
if (stampato_ultimo)
|
||||
{
|
||||
jump_to_line(pr, riga_totali(QUARTA));
|
||||
stampa_totali(pr);
|
||||
stampati_totali = TRUE;
|
||||
}
|
||||
next_page(pr);
|
||||
elementi = 0;
|
||||
ele_bis = 0;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
CHECK(0, "Invalid Quadro A page");
|
||||
break;
|
||||
}
|
||||
|
||||
if (!stampato_ultimo)
|
||||
{
|
||||
if (indice.items() > 0)
|
||||
cur = indice[++pos].pos();
|
||||
else
|
||||
++cur;
|
||||
}
|
||||
}
|
||||
|
||||
close_print();
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool TStampaQuadroC::user_create()
|
||||
{
|
||||
_form = new TQuadroC("77QC", quadro());
|
||||
|
||||
TString sortkey(80);
|
||||
sortkey.format("CODDITTA|TIPOA|216@->RAGSOC|CODANAGR|CODCAUS|PERC", LF_QUAC, LF_QUAC);
|
||||
_cur = new TSorted_cursor(_form->TForm::relation(), sortkey);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
///////////////////////////////////////////////////////////
|
||||
// Quadro 770/C
|
||||
///////////////////////////////////////////////////////////
|
||||
|
||||
#include "77stqc.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////
|
||||
// Quadro C
|
||||
/////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
bool TQuadroC::controlla_percentuale(TCursor& cur, const real& perc_p)
|
||||
{
|
||||
bool stampa = TRUE;
|
||||
|
||||
long ditta_p = cur.curr().get_long(QUC_CODDITTA);
|
||||
char tipo_p = cur.curr().get_char(QUC_TIPOA);
|
||||
long codana_p = cur.curr().get_long(QUC_CODANAGR);
|
||||
TString codcaus_p = cur.curr().get (QUC_CODCAUS);
|
||||
TString ragsoc_p = get_ragsoc_anagr(tipo_p,codana_p);
|
||||
|
||||
if (perc_p == ZERO)
|
||||
{
|
||||
++(cur);
|
||||
long ditta = cur.curr().get_long(QUC_CODDITTA);
|
||||
char tipo = cur.curr().get_char(QUC_TIPOA);
|
||||
long codana = cur.curr().get_long(QUC_CODANAGR);
|
||||
TString codcaus = cur.curr().get (QUC_CODCAUS);
|
||||
TString ragsoc = get_ragsoc_anagr(tipo,codana);
|
||||
real perc = cur.curr().get_real(QUC_PERC);
|
||||
|
||||
if (ditta == ditta_p && tipo == tipo_p && ragsoc == ragsoc_p
|
||||
&& codana == codana_p && codcaus == codcaus_p)
|
||||
{
|
||||
if (perc != ZERO)
|
||||
{
|
||||
stampa = FALSE;
|
||||
_devo_sommare = TRUE;
|
||||
}
|
||||
else
|
||||
stampa = FALSE;
|
||||
}
|
||||
--(cur);
|
||||
}
|
||||
else
|
||||
if (perc_p != ZERO)
|
||||
{
|
||||
++(cur);
|
||||
long ditta = cur.curr().get_long(QUC_CODDITTA);
|
||||
char tipo = cur.curr().get_char(QUC_TIPOA);
|
||||
long codana = cur.curr().get_long(QUC_CODANAGR);
|
||||
TString codcaus = cur.curr().get (QUC_CODCAUS);
|
||||
TString ragsoc = get_ragsoc_anagr(tipo,codana);
|
||||
real perc = cur.curr().get_real(QUC_PERC);
|
||||
|
||||
if (ditta == ditta_p && tipo == tipo_p && ragsoc == ragsoc_p &&
|
||||
codana == codana_p && codcaus == codcaus_p && perc_p == perc)
|
||||
stampa = FALSE;
|
||||
else
|
||||
_devo_sommare = TRUE;
|
||||
|
||||
--(cur);
|
||||
}
|
||||
|
||||
return stampa;
|
||||
}
|
||||
|
||||
void TQuadroC::leggi_importi()
|
||||
{
|
||||
TCursor* cur = cursor();
|
||||
|
||||
_totale += cur->curr().get_real(QUC_TOTALE);
|
||||
_contssn += cur->curr().get_real(QUC_CONTSSN);
|
||||
_somme += cur->curr().get_real(QUC_SOMME);
|
||||
_imponibile += cur->curr().get_real(QUC_IMPONIBILE);
|
||||
_ritenute += cur->curr().get_real(QUC_RITENUTE);
|
||||
_netto += cur->curr().get_real(QUC_NETTO);
|
||||
}
|
||||
|
||||
void TQuadroC::setta_importi(TPrint_section& body)
|
||||
{
|
||||
TCursor* cur = cursor();
|
||||
|
||||
real totale = cur->curr().get_real(QUC_TOTALE);
|
||||
real contssn = cur->curr().get_real(QUC_CONTSSN);
|
||||
real somme = cur->curr().get_real(QUC_SOMME);
|
||||
real imponibile = cur->curr().get_real(QUC_IMPONIBILE);
|
||||
real ritenute = cur->curr().get_real(QUC_RITENUTE);
|
||||
real netto = cur->curr().get_real(QUC_NETTO);
|
||||
|
||||
if (_devo_sommare)
|
||||
{
|
||||
totale += _totale;
|
||||
contssn += _contssn;
|
||||
somme += _somme;
|
||||
imponibile += _imponibile;
|
||||
ritenute += _ritenute;
|
||||
netto += _netto;
|
||||
_devo_sommare = FALSE;
|
||||
_totale = ZERO;
|
||||
_contssn = ZERO;
|
||||
_somme = ZERO;
|
||||
_imponibile = ZERO;
|
||||
_ritenute = ZERO;
|
||||
_netto = ZERO;
|
||||
}
|
||||
|
||||
TForm_item& ftotale = body.find_field(C_TOTALE);
|
||||
TForm_item& fcontssn = body.find_field(C_CONTSSN);
|
||||
TForm_item& fsomme = body.find_field(C_SOMME);
|
||||
TForm_item& fimponibile = body.find_field(C_IMPONIBILE);
|
||||
TForm_item& fritenute = body.find_field(C_RITENUTE);
|
||||
TForm_item& fnetto = body.find_field(C_NETTO);
|
||||
|
||||
TString stotale (totale.string());
|
||||
TString scontssn (contssn.string());
|
||||
TString ssomme (somme.string());
|
||||
TString simponibile(imponibile.string());
|
||||
TString sritenute (ritenute.string());
|
||||
TString snetto (netto.string());
|
||||
// Setta i campi
|
||||
ftotale.set(stotale);
|
||||
fcontssn.set(scontssn);
|
||||
fsomme.set(ssomme);
|
||||
fimponibile.set(simponibile);
|
||||
fritenute.set(sritenute);
|
||||
fnetto.set(snetto);
|
||||
}
|
||||
|
||||
void TQuadroC::stampa_corpo(TPrinter& pr)
|
||||
{
|
||||
TPrint_section& body = section('B', odd_page);
|
||||
const int body_righe = body.height();
|
||||
body.reset();
|
||||
// body.update();
|
||||
setta_importi(body);
|
||||
body.update();
|
||||
// const int body_righe = body.height();
|
||||
for (int i=0; i < body_righe; i++)
|
||||
{
|
||||
pr.print(body.row(i));
|
||||
_RigaCorr++;
|
||||
}
|
||||
body.reset();
|
||||
if (usa_progind())
|
||||
progind()->addstatus(1);
|
||||
}
|
||||
|
||||
int TQuadroC::elementi_pagina(PaginaQuadro p) const
|
||||
{
|
||||
const int n[4] = { 6, 10, 10, 9 };
|
||||
return n[p-PRIMA];
|
||||
}
|
||||
|
||||
int TQuadroC::prima_riga(PaginaQuadro p) const
|
||||
{
|
||||
// old return p == PRIMA ? 27 : 8;
|
||||
// nik1 return p == PRIMA ? 26 : 7;
|
||||
return p == PRIMA ? 26 : 8;
|
||||
}
|
||||
|
||||
bool TQuadroC::print(const long codditta, const long NumFis, const long NumNoFis)
|
||||
{
|
||||
TCursor& cur = *cursor();
|
||||
TPrinter& pr = printer();
|
||||
bool stampa = TRUE;
|
||||
|
||||
if (!InitPrint(codditta))
|
||||
return FALSE;
|
||||
|
||||
// pr.formlen(QA_FORMLEN);
|
||||
|
||||
int elementi = 0; // Numero di elementi stampati in questa pagina
|
||||
int ele_bis = 0;
|
||||
bool stampato_ultimo = FALSE;
|
||||
bool stampati_totali = FALSE;
|
||||
|
||||
int pos = 0;
|
||||
TDipendenti indice;
|
||||
if (quadro() == "A" || quadro() == "B")
|
||||
{
|
||||
const int i = indice.fill(cur);
|
||||
if (i > 0)
|
||||
{
|
||||
if (usa_progind())
|
||||
progind()->addstatus(cur.items()-i); // Segna come elaborati tutti gli ignorati
|
||||
|
||||
cur = indice[0].pos();
|
||||
}
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
cur = 0;
|
||||
|
||||
while (!stampati_totali)
|
||||
{
|
||||
bool stampa = TRUE;
|
||||
bool stampero_ultimo = stampato_ultimo == FALSE;
|
||||
if (stampero_ultimo)
|
||||
{
|
||||
if (indice.items() > 0) // Usa indice alternativo
|
||||
stampero_ultimo &= pos == indice.items()-1;
|
||||
else // Usa indice del cursore
|
||||
stampero_ultimo &= cur.pos() == cur.items()-1;
|
||||
}
|
||||
|
||||
_EndPrintDitta=stampato_ultimo;
|
||||
switch(_PaginaCorrente)
|
||||
{
|
||||
case PRIMA:
|
||||
pr.formlen(dic_form_len());
|
||||
|
||||
if (_modulaser)
|
||||
ClearFlagModulaser();
|
||||
|
||||
if (ele_bis == 0)
|
||||
{
|
||||
stampa_testata(pr);
|
||||
jump_to_line(pr, prima_riga(PRIMA));
|
||||
}
|
||||
|
||||
if (!stampato_ultimo)
|
||||
{
|
||||
real perc_p = cur.curr().get_real(QUC_PERC);
|
||||
stampa = controlla_percentuale(cur,perc_p);
|
||||
if (stampa)
|
||||
stampa_corpo(pr);
|
||||
else
|
||||
{
|
||||
leggi_importi();
|
||||
elementi--;
|
||||
}
|
||||
stampato_ultimo = stampero_ultimo;
|
||||
}
|
||||
|
||||
elementi++;
|
||||
ele_bis++;
|
||||
if (elementi >= elementi_pagina(PRIMA))
|
||||
{
|
||||
next_page(pr);
|
||||
elementi = 0;
|
||||
ele_bis = 0;
|
||||
}
|
||||
break;
|
||||
_PaginaPosizionamento=FALSE;
|
||||
case SECONDA:
|
||||
case TERZA:
|
||||
pr.formlen(dic_form_len());
|
||||
if (!stampato_ultimo)
|
||||
{
|
||||
if (ele_bis == 0)
|
||||
jump_to_line(pr, prima_riga(_PaginaCorrente));
|
||||
|
||||
real perc_p = cur.curr().get_real(QUC_PERC);
|
||||
stampa = controlla_percentuale(cur,perc_p);
|
||||
if (stampa)
|
||||
stampa_corpo(pr);
|
||||
else
|
||||
{
|
||||
leggi_importi();
|
||||
elementi--;
|
||||
}
|
||||
stampato_ultimo = stampero_ultimo;
|
||||
}
|
||||
elementi++;
|
||||
ele_bis++;
|
||||
if (elementi >= elementi_pagina(_PaginaCorrente))
|
||||
{
|
||||
next_page(pr);
|
||||
elementi = 0;
|
||||
ele_bis = 0;
|
||||
}
|
||||
break;
|
||||
case QUARTA:
|
||||
pr.formlen(dic_form_len());
|
||||
if (!stampato_ultimo)
|
||||
{
|
||||
if (ele_bis == 0)
|
||||
jump_to_line(pr, prima_riga(QUARTA));
|
||||
|
||||
real perc_p = cur.curr().get_real(QUC_PERC);
|
||||
stampa = controlla_percentuale(cur,perc_p);
|
||||
if (stampa)
|
||||
stampa_corpo(pr);
|
||||
else
|
||||
{
|
||||
leggi_importi();
|
||||
elementi--;
|
||||
}
|
||||
stampato_ultimo = stampero_ultimo;
|
||||
}
|
||||
|
||||
elementi++;
|
||||
ele_bis++;
|
||||
|
||||
if (elementi >= elementi_pagina(QUARTA))
|
||||
{
|
||||
if (stampato_ultimo)
|
||||
{
|
||||
jump_to_line(pr, riga_totali(QUARTA));
|
||||
stampa_totali(pr);
|
||||
stampati_totali = TRUE;
|
||||
}
|
||||
next_page(pr);
|
||||
elementi = 0;
|
||||
ele_bis = 0;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
CHECK(0, "Invalid Quadro A page");
|
||||
break;
|
||||
}
|
||||
|
||||
if (!stampato_ultimo)
|
||||
{
|
||||
if (indice.items() > 0)
|
||||
cur = indice[++pos].pos();
|
||||
else
|
||||
++cur;
|
||||
}
|
||||
}
|
||||
|
||||
close_print();
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool TStampaQuadroC::user_create()
|
||||
{
|
||||
_form = new TQuadroC("77QC", quadro());
|
||||
|
||||
TString sortkey(80);
|
||||
sortkey.format("CODDITTA|TIPOA|216@->RAGSOC|CODANAGR|CODCAUS|PERC", LF_QUAC, LF_QUAC);
|
||||
_cur = new TSorted_cursor(_form->TForm::relation(), sortkey);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
@ -1,39 +1,39 @@
|
||||
#ifndef __77STQC_H
|
||||
#define __77STQC_H
|
||||
|
||||
#include "77stq.h"
|
||||
#include "77stqab.h"
|
||||
|
||||
class TQuadroC : public TQuadroA
|
||||
{
|
||||
enum { QA_FORMLEN = 72 };
|
||||
|
||||
real _totale, _contssn, _somme, _imponibile, _ritenute, _netto;
|
||||
bool _devo_sommare;
|
||||
|
||||
protected:
|
||||
virtual int elementi_pagina(PaginaQuadro p) const;
|
||||
virtual int prima_riga(PaginaQuadro p) const;
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
|
||||
public:
|
||||
bool controlla_percentuale(TCursor& cur, const real& perc_p);
|
||||
void stampa_corpo(TPrinter& pr);
|
||||
void setta_importi(TPrint_section& body);
|
||||
void leggi_importi();
|
||||
|
||||
TQuadroC(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
|
||||
virtual ~TQuadroC() { }
|
||||
};
|
||||
|
||||
class TStampaQuadroC : public TStampaQuadroA
|
||||
{
|
||||
protected:
|
||||
virtual bool user_create();
|
||||
|
||||
public:
|
||||
TStampaQuadroC(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) { }
|
||||
virtual ~TStampaQuadroC() { }
|
||||
};
|
||||
|
||||
#endif
|
||||
#ifndef __77STQC_H
|
||||
#define __77STQC_H
|
||||
|
||||
#include "77stq.h"
|
||||
#include "77stqab.h"
|
||||
|
||||
class TQuadroC : public TQuadroA
|
||||
{
|
||||
enum { QA_FORMLEN = 72 };
|
||||
|
||||
real _totale, _contssn, _somme, _imponibile, _ritenute, _netto;
|
||||
bool _devo_sommare;
|
||||
|
||||
protected:
|
||||
virtual int elementi_pagina(PaginaQuadro p) const;
|
||||
virtual int prima_riga(PaginaQuadro p) const;
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
|
||||
public:
|
||||
bool controlla_percentuale(TCursor& cur, const real& perc_p);
|
||||
void stampa_corpo(TPrinter& pr);
|
||||
void setta_importi(TPrint_section& body);
|
||||
void leggi_importi();
|
||||
|
||||
TQuadroC(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
|
||||
virtual ~TQuadroC() { }
|
||||
};
|
||||
|
||||
class TStampaQuadroC : public TStampaQuadroA
|
||||
{
|
||||
protected:
|
||||
virtual bool user_create();
|
||||
|
||||
public:
|
||||
TStampaQuadroC(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) { }
|
||||
virtual ~TStampaQuadroC() { }
|
||||
};
|
||||
|
||||
#endif
|
||||
|
118
m770/anadip.h
118
m770/anadip.h
@ -1,59 +1,59 @@
|
||||
#ifndef _ANADIP_H
|
||||
#define _ANADIP_H
|
||||
|
||||
// Campi maschera manutenzione anagrafica dipendenti
|
||||
#define ADF_CODDITTA 181
|
||||
#define F_RAGSOCIALE 102
|
||||
#define ADF_DIP_CODDIP 103
|
||||
#define F_DIP_CODFI 104
|
||||
#define F_DIP_COGNOME 105
|
||||
#define F_DIP_NOME 106
|
||||
#define F_DIP_SESSO 107
|
||||
#define F_DIP_DATANA 108
|
||||
#define F_DIP_COMUNENA 109
|
||||
#define F_DIP_PROVNA 110
|
||||
#define F_DIP_COMUNERE 111
|
||||
#define F_DIP_PROVRE 112
|
||||
#define F_DIP_INDRE 113
|
||||
#define F_DIP_QUALIFICA 114
|
||||
#define F_DIP_STATOCIV 115
|
||||
#define F_DIP_EREDE 116
|
||||
#define F_DIP_CODEREDE0 117
|
||||
#define F_DIP_CODEREDE1 118
|
||||
#define F_DIP_CODEREDE2 119
|
||||
#define F_DIP_CODEREDE3 120
|
||||
#define F_DIP_CODEREDE4 121
|
||||
#define F_DIP_CODEREDE5 122
|
||||
#define F_DIP_CODEREDE6 123
|
||||
#define F_DIP_CODEREDE7 124
|
||||
#define F_DIP_CODEREDE8 125
|
||||
#define F_DIP_CODEREDE9 126
|
||||
#define F_DIP_COGNEREDE0 127
|
||||
#define F_DIP_COGNEREDE1 128
|
||||
#define F_DIP_COGNEREDE2 129
|
||||
#define F_DIP_COGNEREDE3 130
|
||||
#define F_DIP_COGNEREDE4 131
|
||||
#define F_DIP_COGNEREDE5 132
|
||||
#define F_DIP_COGNEREDE6 133
|
||||
#define F_DIP_COGNEREDE7 134
|
||||
#define F_DIP_COGNEREDE8 135
|
||||
#define F_DIP_COGNEREDE9 136
|
||||
#define F_DIP_NOMEREDE0 137
|
||||
#define F_DIP_NOMEREDE1 138
|
||||
#define F_DIP_NOMEREDE2 139
|
||||
#define F_DIP_NOMEREDE3 140
|
||||
#define F_DIP_NOMEREDE4 141
|
||||
#define F_DIP_NOMEREDE5 142
|
||||
#define F_DIP_NOMEREDE6 143
|
||||
#define F_DIP_NOMEREDE7 144
|
||||
#define F_DIP_NOMEREDE8 145
|
||||
#define F_DIP_NOMEREDE9 146
|
||||
|
||||
// Aggiunte 96
|
||||
#define ADF_CODDIPDEC 147
|
||||
#define ADF_ASSFIS 148
|
||||
#define ADF_COMNASC 149
|
||||
#define ADF_COMRES 150
|
||||
#define ADF_CODCOMNASC 151
|
||||
|
||||
#endif
|
||||
#ifndef _ANADIP_H
|
||||
#define _ANADIP_H
|
||||
|
||||
// Campi maschera manutenzione anagrafica dipendenti
|
||||
#define ADF_CODDITTA 181
|
||||
#define F_RAGSOCIALE 102
|
||||
#define ADF_DIP_CODDIP 103
|
||||
#define F_DIP_CODFI 104
|
||||
#define F_DIP_COGNOME 105
|
||||
#define F_DIP_NOME 106
|
||||
#define F_DIP_SESSO 107
|
||||
#define F_DIP_DATANA 108
|
||||
#define F_DIP_COMUNENA 109
|
||||
#define F_DIP_PROVNA 110
|
||||
#define F_DIP_COMUNERE 111
|
||||
#define F_DIP_PROVRE 112
|
||||
#define F_DIP_INDRE 113
|
||||
#define F_DIP_QUALIFICA 114
|
||||
#define F_DIP_STATOCIV 115
|
||||
#define F_DIP_EREDE 116
|
||||
#define F_DIP_CODEREDE0 117
|
||||
#define F_DIP_CODEREDE1 118
|
||||
#define F_DIP_CODEREDE2 119
|
||||
#define F_DIP_CODEREDE3 120
|
||||
#define F_DIP_CODEREDE4 121
|
||||
#define F_DIP_CODEREDE5 122
|
||||
#define F_DIP_CODEREDE6 123
|
||||
#define F_DIP_CODEREDE7 124
|
||||
#define F_DIP_CODEREDE8 125
|
||||
#define F_DIP_CODEREDE9 126
|
||||
#define F_DIP_COGNEREDE0 127
|
||||
#define F_DIP_COGNEREDE1 128
|
||||
#define F_DIP_COGNEREDE2 129
|
||||
#define F_DIP_COGNEREDE3 130
|
||||
#define F_DIP_COGNEREDE4 131
|
||||
#define F_DIP_COGNEREDE5 132
|
||||
#define F_DIP_COGNEREDE6 133
|
||||
#define F_DIP_COGNEREDE7 134
|
||||
#define F_DIP_COGNEREDE8 135
|
||||
#define F_DIP_COGNEREDE9 136
|
||||
#define F_DIP_NOMEREDE0 137
|
||||
#define F_DIP_NOMEREDE1 138
|
||||
#define F_DIP_NOMEREDE2 139
|
||||
#define F_DIP_NOMEREDE3 140
|
||||
#define F_DIP_NOMEREDE4 141
|
||||
#define F_DIP_NOMEREDE5 142
|
||||
#define F_DIP_NOMEREDE6 143
|
||||
#define F_DIP_NOMEREDE7 144
|
||||
#define F_DIP_NOMEREDE8 145
|
||||
#define F_DIP_NOMEREDE9 146
|
||||
|
||||
// Aggiunte 96
|
||||
#define ADF_CODDIPDEC 147
|
||||
#define ADF_ASSFIS 148
|
||||
#define ADF_COMNASC 149
|
||||
#define ADF_COMRES 150
|
||||
#define ADF_CODCOMNASC 151
|
||||
|
||||
#endif
|
||||
|
208
m770/base.h
208
m770/base.h
@ -1,104 +1,104 @@
|
||||
// Mod.770 - Archivio BASE
|
||||
|
||||
#define BSE_CODDITTA "CODDITTA"
|
||||
#define BSE_CODDIC "CODDIC"
|
||||
#define BSE_TIPOQUA "TIPOQUA"
|
||||
#define BSE_CODDATLAV "CODDATLAV"
|
||||
#define BSE_ANNODIC "ANNODIC"
|
||||
#define BSE_ER92C93 "ER92C93"
|
||||
#define BSE_ER93C94 "ER93C94"
|
||||
#define BSE_NATTVER "NATTVER"
|
||||
#define BSE_EVNATTEC "EVNATTEC"
|
||||
#define BSE_CODCAAF "CODCAAF"
|
||||
#define BSE_CODPRO "CODPRO"
|
||||
#define BSE_N73093ALL "N73093ALL"
|
||||
#define BSE_SERIE "SERIE"
|
||||
#define BSE_DATAVERS "DATAVERS"
|
||||
#define BSE_NUMERO "NUMERO"
|
||||
#define BSE_A0NFCOM "A0NFCOM"
|
||||
#define BSE_A0NLDIP "A0NLDIP"
|
||||
#define BSE_A0COBB "A0COBB"
|
||||
#define BSE_A0CNET "A0CNET"
|
||||
#define BSE_A0EPREV "A0EPREV"
|
||||
#define BSE_A0IITRA "A0IITRA"
|
||||
#define BSE_A0CTER "A0CTER"
|
||||
#define BSE_A0TIMP "A0TIMP"
|
||||
#define BSE_A0ILOR "A0ILOR"
|
||||
#define BSE_A0TDET "A0TDET"
|
||||
#define BSE_A0RTER "A0RTER"
|
||||
#define BSE_A0RDAT "A0RDAT"
|
||||
#define BSE_A0ERIT "A0ERIT"
|
||||
#define BSE_A0CARR "A0CARR"
|
||||
#define BSE_A0AARR "A0AARR"
|
||||
#define BSE_A0DARR "A0DARR"
|
||||
#define BSE_A0RARR "A0RARR"
|
||||
#define BSE_A0RITSI "A0RITSI"
|
||||
#define BSE_A0CINPS "A0CINPS"
|
||||
#define BSE_A0RITOPEVA "A0RITOPEVA"
|
||||
#define BSE_A0RITOPESA "A0RITOPESA"
|
||||
#define BSE_A0CIIAUT "A0CIIAUT"
|
||||
#define BSE_A0NADLAV "A0NADLAV"
|
||||
#define BSE_A0NACAAF "A0NACAAF"
|
||||
#define BSE_A0CRIMPRAS "A0CRIMPRAS"
|
||||
#define BSE_A3NFCOM "A3NFCOM"
|
||||
#define BSE_A3NUMPER "A3NUMPER"
|
||||
#define BSE_A3REPT10 "A3REPT10"
|
||||
#define BSE_A3REPT12 "A3REPT12"
|
||||
#define BSE_B0NFCOM "B0NFCOM"
|
||||
#define BSE_B0NLDIP "B0NLDIP"
|
||||
#define BSE_B0TFR93 "B0TFR93"
|
||||
#define BSE_B0AI "B0AI"
|
||||
#define BSE_B0COLAV "B0COLAV"
|
||||
#define BSE_B0TFR7492 "B0TFR7492"
|
||||
#define BSE_B0AI7492 "B0AI7492"
|
||||
#define BSE_B0RITSI "B0RITSI"
|
||||
#define BSE_B0IMP "B0IMP"
|
||||
#define BSE_B0TIMP "B0TIMP"
|
||||
#define BSE_B0ROP "B0ROP"
|
||||
#define BSE_B0AIINPS "B0AIINPS"
|
||||
#define BSE_B0ROPESA "B0ROPESA"
|
||||
#define BSE_B0CIIAUT "B0CIIAUT"
|
||||
#define BSE_B1NFCOM "B1NFCOM"
|
||||
#define BSE_B1NPER "B1NPER"
|
||||
#define BSE_B1TIND "B1TIND"
|
||||
#define BSE_B1TIRM "B1TIRM"
|
||||
#define BSE_B1TICOM "B1TICOM"
|
||||
#define BSE_C0NFCOM "C0NFCOM"
|
||||
#define BSE_C0NLASS "C0NLASS"
|
||||
#define BSE_C0ACTOT "C0ACTOT"
|
||||
#define BSE_C0SNSRIT "C0SNSRIT"
|
||||
#define BSE_C0ROPE "C0ROPE"
|
||||
#define BSE_C0CIIAUT "C0CIIAUT"
|
||||
#define BSE_D0NFCOM "D0NFCOM"
|
||||
#define BSE_D0NLAUT "D0NLAUT"
|
||||
#define BSE_D0ACTOT "D0ACTOT"
|
||||
#define BSE_D0SNSRIT "D0SNSRIT"
|
||||
#define BSE_D0ROPE "D0ROPE"
|
||||
#define BSE_D0CIIAUT "D0CIIAUT"
|
||||
#define BSE_D1NFCOM "D1NFCOM"
|
||||
#define BSE_D1NPER "D1NPER"
|
||||
#define BSE_D1TACOR "D1TACOR"
|
||||
#define BSE_D1SNSRIT "D1SNSRIT"
|
||||
#define BSE_D1ROPE "D1ROPE"
|
||||
#define BSE_QCOMP "QCOMP"
|
||||
#define BSE_QSUPPINV "QSUPPINV"
|
||||
#define BSE_NSUPPM "NSUPPM"
|
||||
#define BSE_LUOVERS "LUOVERS"
|
||||
#define BSE_TIPOVERS "TIPOVERS"
|
||||
#define BSE_RSS "RSS"
|
||||
#define BSE_FLART4 "FLART4"
|
||||
#define BSE_QSUPPRIC "QSUPPRIC"
|
||||
#define BSE_DITTACAAF "DITTACAAF"
|
||||
#define BSE_C0CONTSSN "C0CONTSSN"
|
||||
|
||||
#define I8_1 "B0NFCOM"
|
||||
#define I8_2 "B0NLDIP"
|
||||
#define I8_3 "B0TFR93"
|
||||
#define I8_4 "B0AI"
|
||||
#define I8_5 "B0COLAV"
|
||||
#define I8_6 "B0TFR7492"
|
||||
#define I9_7 "B0AI7492"
|
||||
#define I9_8 "B0IMP"
|
||||
#define I9_9 "B0TIMP"
|
||||
#define I9_10 "B0ROP"
|
||||
|
||||
// Mod.770 - Archivio BASE
|
||||
|
||||
#define BSE_CODDITTA "CODDITTA"
|
||||
#define BSE_CODDIC "CODDIC"
|
||||
#define BSE_TIPOQUA "TIPOQUA"
|
||||
#define BSE_CODDATLAV "CODDATLAV"
|
||||
#define BSE_ANNODIC "ANNODIC"
|
||||
#define BSE_ER92C93 "ER92C93"
|
||||
#define BSE_ER93C94 "ER93C94"
|
||||
#define BSE_NATTVER "NATTVER"
|
||||
#define BSE_EVNATTEC "EVNATTEC"
|
||||
#define BSE_CODCAAF "CODCAAF"
|
||||
#define BSE_CODPRO "CODPRO"
|
||||
#define BSE_N73093ALL "N73093ALL"
|
||||
#define BSE_SERIE "SERIE"
|
||||
#define BSE_DATAVERS "DATAVERS"
|
||||
#define BSE_NUMERO "NUMERO"
|
||||
#define BSE_A0NFCOM "A0NFCOM"
|
||||
#define BSE_A0NLDIP "A0NLDIP"
|
||||
#define BSE_A0COBB "A0COBB"
|
||||
#define BSE_A0CNET "A0CNET"
|
||||
#define BSE_A0EPREV "A0EPREV"
|
||||
#define BSE_A0IITRA "A0IITRA"
|
||||
#define BSE_A0CTER "A0CTER"
|
||||
#define BSE_A0TIMP "A0TIMP"
|
||||
#define BSE_A0ILOR "A0ILOR"
|
||||
#define BSE_A0TDET "A0TDET"
|
||||
#define BSE_A0RTER "A0RTER"
|
||||
#define BSE_A0RDAT "A0RDAT"
|
||||
#define BSE_A0ERIT "A0ERIT"
|
||||
#define BSE_A0CARR "A0CARR"
|
||||
#define BSE_A0AARR "A0AARR"
|
||||
#define BSE_A0DARR "A0DARR"
|
||||
#define BSE_A0RARR "A0RARR"
|
||||
#define BSE_A0RITSI "A0RITSI"
|
||||
#define BSE_A0CINPS "A0CINPS"
|
||||
#define BSE_A0RITOPEVA "A0RITOPEVA"
|
||||
#define BSE_A0RITOPESA "A0RITOPESA"
|
||||
#define BSE_A0CIIAUT "A0CIIAUT"
|
||||
#define BSE_A0NADLAV "A0NADLAV"
|
||||
#define BSE_A0NACAAF "A0NACAAF"
|
||||
#define BSE_A0CRIMPRAS "A0CRIMPRAS"
|
||||
#define BSE_A3NFCOM "A3NFCOM"
|
||||
#define BSE_A3NUMPER "A3NUMPER"
|
||||
#define BSE_A3REPT10 "A3REPT10"
|
||||
#define BSE_A3REPT12 "A3REPT12"
|
||||
#define BSE_B0NFCOM "B0NFCOM"
|
||||
#define BSE_B0NLDIP "B0NLDIP"
|
||||
#define BSE_B0TFR93 "B0TFR93"
|
||||
#define BSE_B0AI "B0AI"
|
||||
#define BSE_B0COLAV "B0COLAV"
|
||||
#define BSE_B0TFR7492 "B0TFR7492"
|
||||
#define BSE_B0AI7492 "B0AI7492"
|
||||
#define BSE_B0RITSI "B0RITSI"
|
||||
#define BSE_B0IMP "B0IMP"
|
||||
#define BSE_B0TIMP "B0TIMP"
|
||||
#define BSE_B0ROP "B0ROP"
|
||||
#define BSE_B0AIINPS "B0AIINPS"
|
||||
#define BSE_B0ROPESA "B0ROPESA"
|
||||
#define BSE_B0CIIAUT "B0CIIAUT"
|
||||
#define BSE_B1NFCOM "B1NFCOM"
|
||||
#define BSE_B1NPER "B1NPER"
|
||||
#define BSE_B1TIND "B1TIND"
|
||||
#define BSE_B1TIRM "B1TIRM"
|
||||
#define BSE_B1TICOM "B1TICOM"
|
||||
#define BSE_C0NFCOM "C0NFCOM"
|
||||
#define BSE_C0NLASS "C0NLASS"
|
||||
#define BSE_C0ACTOT "C0ACTOT"
|
||||
#define BSE_C0SNSRIT "C0SNSRIT"
|
||||
#define BSE_C0ROPE "C0ROPE"
|
||||
#define BSE_C0CIIAUT "C0CIIAUT"
|
||||
#define BSE_D0NFCOM "D0NFCOM"
|
||||
#define BSE_D0NLAUT "D0NLAUT"
|
||||
#define BSE_D0ACTOT "D0ACTOT"
|
||||
#define BSE_D0SNSRIT "D0SNSRIT"
|
||||
#define BSE_D0ROPE "D0ROPE"
|
||||
#define BSE_D0CIIAUT "D0CIIAUT"
|
||||
#define BSE_D1NFCOM "D1NFCOM"
|
||||
#define BSE_D1NPER "D1NPER"
|
||||
#define BSE_D1TACOR "D1TACOR"
|
||||
#define BSE_D1SNSRIT "D1SNSRIT"
|
||||
#define BSE_D1ROPE "D1ROPE"
|
||||
#define BSE_QCOMP "QCOMP"
|
||||
#define BSE_QSUPPINV "QSUPPINV"
|
||||
#define BSE_NSUPPM "NSUPPM"
|
||||
#define BSE_LUOVERS "LUOVERS"
|
||||
#define BSE_TIPOVERS "TIPOVERS"
|
||||
#define BSE_RSS "RSS"
|
||||
#define BSE_FLART4 "FLART4"
|
||||
#define BSE_QSUPPRIC "QSUPPRIC"
|
||||
#define BSE_DITTACAAF "DITTACAAF"
|
||||
#define BSE_C0CONTSSN "C0CONTSSN"
|
||||
|
||||
#define I8_1 "B0NFCOM"
|
||||
#define I8_2 "B0NLDIP"
|
||||
#define I8_3 "B0TFR93"
|
||||
#define I8_4 "B0AI"
|
||||
#define I8_5 "B0COLAV"
|
||||
#define I8_6 "B0TFR7492"
|
||||
#define I9_7 "B0AI7492"
|
||||
#define I9_8 "B0IMP"
|
||||
#define I9_9 "B0TIMP"
|
||||
#define I9_10 "B0ROP"
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
// caus77.h - campi tabella causali
|
||||
#define bCONTRIBUTO_INPS "B4"
|
||||
#define bCODICE_QUADRO "S1"
|
||||
#define bSOMME_ASSOG_RAC "B0"
|
||||
#define rPERC_RAC "R0"
|
||||
// caus77.h - campi tabella causali
|
||||
#define bCONTRIBUTO_INPS "B4"
|
||||
#define bCODICE_QUADRO "S1"
|
||||
#define bSOMME_ASSOG_RAC "B0"
|
||||
#define rPERC_RAC "R0"
|
||||
|
36
m770/pe1.h
36
m770/pe1.h
@ -1,18 +1,18 @@
|
||||
#ifndef _PE1_H
|
||||
#define _PE1_H
|
||||
|
||||
//771230m.uml (prospetto E1)
|
||||
#define PE1F_CODCAUS 113
|
||||
#define PE1F_IMPONIBILE 119
|
||||
#define PE1F_RITENUTA 160
|
||||
#define PE1F_COMPENSO 161
|
||||
#define PE1F_CODCAUS2 162
|
||||
#define F_CODANAGR2 170
|
||||
#define F_RAGSOC2 171
|
||||
#define PE1F_HPERC 172
|
||||
#define PE1F_CODDITTA 181
|
||||
#define PE1F_DESCRCAUS 184
|
||||
#define PE1F_RAGDITTA 185
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef _PE1_H
|
||||
#define _PE1_H
|
||||
|
||||
//771230m.uml (prospetto E1)
|
||||
#define PE1F_CODCAUS 113
|
||||
#define PE1F_IMPONIBILE 119
|
||||
#define PE1F_RITENUTA 160
|
||||
#define PE1F_COMPENSO 161
|
||||
#define PE1F_CODCAUS2 162
|
||||
#define F_CODANAGR2 170
|
||||
#define F_RAGSOC2 171
|
||||
#define PE1F_HPERC 172
|
||||
#define PE1F_CODDITTA 181
|
||||
#define PE1F_DESCRCAUS 184
|
||||
#define PE1F_RAGDITTA 185
|
||||
|
||||
#endif
|
||||
|
||||
|
46
m770/rpag.h
46
m770/rpag.h
@ -1,23 +1,23 @@
|
||||
// Mod.770 - Scheda percipienti - Righe Pagamenti
|
||||
|
||||
#ifndef __RPAG_H
|
||||
#define __RPAG_H
|
||||
|
||||
#define PAG_CODDITTA "CODDITTA"
|
||||
#define PAG_TIPOA "TIPOA"
|
||||
#define PAG_CODANAGR "CODANAGR"
|
||||
#define PAG_NPROG "NPROG"
|
||||
#define PAG_NRIGA "NRIGA"
|
||||
#define PAG_DATAPAG "DATAPAG"
|
||||
#define PAG_IMPONIBILE "IMPONIBILE"
|
||||
#define PAG_PERC "PERC"
|
||||
#define PAG_RITENUTA "RITENUTA"
|
||||
#define PAG_COMPENSO "COMPENSO"
|
||||
#define PAG_NETTO "NETTO"
|
||||
#define PAG_NUMVERS "NUMVERS"
|
||||
#define PAG_NUMPAG "NUMPAG"
|
||||
#define PAG_SPESA "SPESA"
|
||||
#define PAG_INPSPERC "CTSSNPERC"
|
||||
#define PAG_INPSCOMP "CTSSNCOMP"
|
||||
|
||||
#endif
|
||||
// Mod.770 - Scheda percipienti - Righe Pagamenti
|
||||
|
||||
#ifndef __RPAG_H
|
||||
#define __RPAG_H
|
||||
|
||||
#define PAG_CODDITTA "CODDITTA"
|
||||
#define PAG_TIPOA "TIPOA"
|
||||
#define PAG_CODANAGR "CODANAGR"
|
||||
#define PAG_NPROG "NPROG"
|
||||
#define PAG_NRIGA "NRIGA"
|
||||
#define PAG_DATAPAG "DATAPAG"
|
||||
#define PAG_IMPONIBILE "IMPONIBILE"
|
||||
#define PAG_PERC "PERC"
|
||||
#define PAG_RITENUTA "RITENUTA"
|
||||
#define PAG_COMPENSO "COMPENSO"
|
||||
#define PAG_NETTO "NETTO"
|
||||
#define PAG_NUMVERS "NUMVERS"
|
||||
#define PAG_NUMPAG "NUMPAG"
|
||||
#define PAG_SPESA "SPESA"
|
||||
#define PAG_INPSPERC "CTSSNPERC"
|
||||
#define PAG_INPSCOMP "CTSSNCOMP"
|
||||
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user