cg1200a.uml Allungato codice cliente/fornitore da 5 a 6

cg3.url        Aggiunto menu dei colori
cg3600.cpp     Completata visualizzazione mastrini a video
cg3600a.uml    Maschera di query mastrini
cglib.h        Migliorata gestione esercizi
cglib02.cpp    Resa statica la tabella degli esercizi
cg3600.h       Nomi dei campi per la visualizzazione mastrini
cg3600b.uml    Maschera di visualizzazione sheet mastrini


git-svn-id: svn://10.65.10.50/trunk@3931 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1996-11-27 11:51:03 +00:00
parent bac717a9ac
commit 96f813af8d
8 changed files with 2341 additions and 515 deletions

View File

@ -1,5 +1,5 @@
#include "cg1200a.h" #include "cg1200a.h"
#include <lffiles.h>
PAGE "Selezione" -1 -1 70 19 PAGE "Selezione" -1 -1 70 19
NUMBER F_CODDITTA 5 NUMBER F_CODDITTA 5
@ -70,7 +70,7 @@ BEGIN
PROMPT 48 5 "a Codice" PROMPT 48 5 "a Codice"
END END
STRING FLD_CLI_CODFR 5 STRING FLD_CLI_CODFR 6
BEGIN BEGIN
PROMPT 34 6 "" PROMPT 34 6 ""
USE LF_CLIFO KEY 1 USE LF_CLIFO KEY 1
@ -84,7 +84,7 @@ BEGIN
HELP "Codice di inizio stampa: vuoto = inizio archivio" HELP "Codice di inizio stampa: vuoto = inizio archivio"
END END
STRING FLD_CLI_CODTO 5 STRING FLD_CLI_CODTO 6
BEGIN BEGIN
PROMPT 48 6 "" PROMPT 48 6 ""
COPY USE FLD_CLI_CODFR COPY USE FLD_CLI_CODFR
@ -128,7 +128,7 @@ BEGIN
WARNING "Limite superiore errato" WARNING "Limite superiore errato"
END END
STRING FLD_FOR_CODFR 5 STRING FLD_FOR_CODFR 6
BEGIN BEGIN
PROMPT 34 6 "" PROMPT 34 6 ""
COPY USE FLD_CLI_CODFR COPY USE FLD_CLI_CODFR
@ -140,7 +140,7 @@ BEGIN
HELP "Codice C/F di inizio stampa: vuoto = inizio archivio" HELP "Codice C/F di inizio stampa: vuoto = inizio archivio"
END END
STRING FLD_FOR_CODTO 5 STRING FLD_FOR_CODTO 6
BEGIN BEGIN
PROMPT 48 6 "" PROMPT 48 6 ""
COPY USE FLD_FOR_CODFR COPY USE FLD_FOR_CODFR

View File

@ -48,8 +48,15 @@ MENU MENU_BAR(4)
/* ---------------------------------------------------- /* ----------------------------------------------------
* cg3 -5 * cg3 -5
*
* cg3600.cpp Mastrini a video
* ---------------------------------------------------- */ * ---------------------------------------------------- */
MENUBAR MENU_BAR(5) MENUBAR MENU_BAR(5)
MENU MENU_BAR(5) MENU MENU_BAR(5)
SUBMENU MENU_FILE "~File" SUBMENU MENU_FILE "~File"
SUBMENU M_FONT "~Opzioni"
MENU M_FONT
ITEM MENU_ITEM(1) "~Colori righe"

File diff suppressed because it is too large Load Diff

View File

@ -19,12 +19,16 @@
#define F_ACAUSALE 115 #define F_ACAUSALE 115
#define F_ADESCAUS 116 #define F_ADESCAUS 116
#define F_MASTRINI 200 #define F_MASTRINI 200
#define F_TOTRIG_IMP 201 #define F_TOTRIG_SAL 201
#define F_TOTRIG_DAR 202 #define F_TOTRIG_DAR 202
#define F_TOTRIG_AVE 203 #define F_TOTRIG_AVE 203
#define F_TOTPER_IMP 211 #define F_TOTPER_SAL 211
#define F_TOTPER_DAR 212 #define F_TOTPER_DAR 212
#define F_TOTPER_AVE 213 #define F_TOTPER_AVE 213
#define F_TOTATT_IMP 221 #define F_TOTATT_SAL 221
#define F_TOTATT_DAR 222 #define F_TOTATT_DAR 222
#define F_TOTATT_AVE 223 #define F_TOTATT_AVE 223
#define F_TOTPRO_SAL 231
#define F_TOTPRO_DAR 232
#define F_TOTPRO_AVE 233

View File

@ -1,305 +1,259 @@
#include "cg3600a.h" #include "cg3600.h"
TOOLBAR "" 0 21 0 0 TOOLBAR "" 0 20 0 0
BUTTON DLG_OK 10 2 BUTTON DLG_OK 10 2
BEGIN BEGIN
PROMPT -14 -11 "" PROMPT -13 -11 ""
END END
BUTTON DLG_CANCEL 10 2 BUTTON DLG_FINDREC 10 2
BEGIN BEGIN
PROMPT -24 -11 "" PROMPT -23 -11 ""
END PICTURE BMP_FINDREC
END
BUTTON DLG_FINDREC 10 2
BEGIN BUTTON DLG_QUIT 10 2
PROMPT -34 -11 "" BEGIN
PICTURE BMP_FINDREC PROMPT -33 -11 ""
END END
BUTTON DLG_QUIT 10 2 ENDPAGE
BEGIN
PROMPT -44 -11 "" PAGE "Mastrini" -1 -1 76 20
END
NUMBER F_CODDITTA 5
ENDPAGE BEGIN
PROMPT 1 1 "Ditta "
PAGE "Mastrini" -1 -1 76 20 FLAGS "DF"
USE LF_NDITTE
NUMBER F_CODDITTA 5 INPUT CODDITTA F_CODDITTA
BEGIN OUTPUT F_RAGSOC RAGSOC
PROMPT 1 0 "Ditta " CHECKTYPE NORMAL
FLAGS "DF" END
USE LF_NDITTE
INPUT CODDITTA F_CODDITTA STRING F_RAGSOC 50
OUTPUT F_RAGSOC RAGSOC BEGIN
CHECKTYPE NORMAL PROMPT 22 1 ""
END FLAGS "D"
END
STRING F_RAGSOC 50
BEGIN LIST F_TIPO 10
PROMPT 22 0 "" BEGIN
FLAGS "D" PROMPT 1 3 "Tipo "
END ITEM " |Conto" MESSAGE SHOW,1@|HIDE,2@|HIDE,3@
ITEM "C|Cliente" MESSAGE HIDE,1@|SHOW,2@|HIDE,3@
LIST F_TIPO 10 ITEM "F|Fornitore" MESSAGE HIDE,1@|HIDE,2@|SHOW,3@
BEGIN END
PROMPT 1 0 "Tipo "
ITEM " |Conto" MESSAGE SHOW,1@|HIDE,2@|HIDE,3@ NUMBER F_GRUPPO 3
ITEM "C|Cliente" MESSAGE HIDE,1@|SHOW,2@|HIDE,3@ BEGIN
ITEM "F|Fornitore" MESSAGE HIDE,1@|HIDE,2@|SHOW,3@ PROMPT 1 4 "Gruppo "
FLAGS "H" USE LF_PCON SELECT (CONTO="")
END INPUT GRUPPO F_GRUPPO
DISPLAY "Gruppo" GRUPPO
NUMBER F_GRUPPO 3 DISPLAY "Descrizione@50" DESCR
BEGIN OUTPUT F_GRUPPO GRUPPO
PROMPT 1 1 "Gruppo " OUTPUT F_DESGRUPPO DESCR
USE LF_PCON SELECT (CONTO="") CHECKTYPE REQUIRED
INPUT GRUPPO F_GRUPPO END
DISPLAY "Gruppo" GRUPPO
DISPLAY "Descrizione@50" DESCR STRING F_DESGRUPPO 50
OUTPUT F_GRUPPO GRUPPO BEGIN
OUTPUT F_DESGRUPPO DESCR PROMPT 22 4 ""
CHECKTYPE REQUIRED USE LF_PCON KEY 2 SELECT (CONTO="")
ADD RUN cg0 -0 INPUT DESCR F_DESGRUPPO
END DISPLAY "Descrizione@50" DESCR
DISPLAY "Gruppo" GRUPPO
STRING F_DESGRUPPO 50 COPY OUTPUT F_GRUPPO
BEGIN CHECKTYPE REQUIRED
PROMPT 22 1 "" END
USE LF_PCON KEY 2 SELECT (CONTO="")
INPUT DESCR F_DESGRUPPO NUMBER F_CONTO 3
DISPLAY "Descrizione@50" DESCR BEGIN
DISPLAY "Gruppo" GRUPPO PROMPT 1 5 "Conto "
COPY OUTPUT F_GRUPPO USE LF_PCON SELECT (CONTO!="")&&(SOTTOCONTO="")
CHECKTYPE REQUIRED INPUT GRUPPO F_GRUPPO
ADD RUN cg0 -0 INPUT CONTO F_CONTO
END DISPLAY "Gruppo" GRUPPO
DISPLAY "Conto" CONTO
NUMBER F_CONTO 3 DISPLAY "Tipo" TMCF
BEGIN DISPLAY "Descrizione@50" DESCR
PROMPT 1 2 "Conto " OUTPUT F_TIPO TMCF
USE LF_PCON SELECT (CONTO!="")&&(SOTTOCONTO="") OUTPUT F_GRUPPO GRUPPO
INPUT GRUPPO F_GRUPPO OUTPUT F_CONTO CONTO
INPUT CONTO F_CONTO OUTPUT F_DESCONTO DESCR
DISPLAY "Gruppo" GRUPPO CHECKTYPE REQUIRED
DISPLAY "Conto" CONTO END
DISPLAY "Tipo" TMCF
DISPLAY "Descrizione@50" DESCR STRING F_DESCONTO 50
OUTPUT F_TIPO TMCF BEGIN
OUTPUT F_GRUPPO GRUPPO PROMPT 22 5 ""
OUTPUT F_CONTO CONTO USE LF_PCON KEY 2 SELECT (CONTO!="")&&(SOTTOCONTO="")
OUTPUT F_DESCONTO DESCR INPUT DESCR F_DESGRUPPO
CHECKTYPE REQUIRED COPY DISPLAY F_GRUPPO
ADD RUN cg0 -0 DISPLAY "Conto" CONTO
END DISPLAY "Tipo" TMCF
COPY OUTPUT F_CONTO
STRING F_DESCONTO 50 CHECKTYPE REQUIRED
BEGIN END
PROMPT 22 2 ""
USE LF_PCON KEY 2 SELECT (CONTO!="")&&(SOTTOCONTO="") NUMBER F_SOTTOCONTO 6
INPUT DESCR F_DESGRUPPO BEGIN
COPY DISPLAY F_GRUPPO PROMPT 1 6 "Sottoconto "
DISPLAY "Conto" CONTO USE LF_PCON SELECT (SOTTOCONTO!="")
DISPLAY "Tipo" TMCF COPY INPUT F_CONTO
COPY OUTPUT F_CONTO INPUT SOTTOCONTO F_SOTTOCONTO
CHECKTYPE REQUIRED DISPLAY "Gruppo" GRUPPO
ADD RUN cg0 -0 DISPLAY "Conto" CONTO
END DISPLAY "Sottoconto" SOTTOCONTO
DISPLAY "Descrizione@50" DESCR
NUMBER F_SOTTOCONTO 6 OUTPUT F_GRUPPO GRUPPO
BEGIN OUTPUT F_CONTO CONTO
PROMPT 1 3 "Sottoconto " OUTPUT F_SOTTOCONTO SOTTOCONTO
USE LF_PCON SELECT (SOTTOCONTO!="") OUTPUT F_DESSOTTOC DESCR
COPY INPUT F_CONTO CHECKTYPE REQUIRED
INPUT SOTTOCONTO F_SOTTOCONTO GROUP 1 4
DISPLAY "Gruppo" GRUPPO END
DISPLAY "Conto" CONTO
DISPLAY "Sottoconto" SOTTOCONTO STRING F_DESSOTTOC 50
DISPLAY "Descrizione@50" DESCR BEGIN
OUTPUT F_GRUPPO GRUPPO PROMPT 22 6 ""
OUTPUT F_CONTO CONTO USE LF_PCON KEY 2 SELECT (SOTTOCONTO!="")
OUTPUT F_SOTTOCONTO SOTTOCONTO INPUT DESCR F_DESSOTTOC
OUTPUT F_DESSOTTOC DESCR COPY DISPLAY F_DESCONTO
CHECKTYPE REQUIRED DISPLAY "Sottoconto" SOTTOCONTO
GROUP 1 COPY OUTPUT F_SOTTOCONTO
ADD RUN cg0 -0 CHECKTYPE REQUIRED
END GROUP 1 4
END
STRING F_DESSOTTOC 50
BEGIN NUMBER F_CLIENTE 6
PROMPT 22 3 "" BEGIN
USE LF_PCON KEY 2 SELECT (SOTTOCONTO!="") PROMPT 1 6 "Cliente "
INPUT DESCR F_DESSOTTOC USE LF_CLIFO
COPY DISPLAY F_DESCONTO INPUT TIPOCF "C"
DISPLAY "Sottoconto" SOTTOCONTO INPUT CODCF F_CLIENTE
COPY OUTPUT F_SOTTOCONTO DISPLAY "Codice" CODCF
CHECKTYPE REQUIRED DISPLAY "Ragione Sociale@50" RAGSOC
GROUP 1 OUTPUT F_CLIENTE CODCF
ADD RUN cg0 -0 OUTPUT F_RAGSOCCLI RAGSOC
END CHECKTYPE REQUIRED
GROUP 2 4
NUMBER F_CLIENTE 6 END
BEGIN
PROMPT 1 3 "Cliente " STRING F_RAGSOCCLI 50
USE LF_CLIFO BEGIN
INPUT TIPOCF "C" PROMPT 22 6 ""
INPUT CODCF F_CLIENTE USE LF_CLIFO KEY 2
DISPLAY "Codice" CODCF INPUT TIPOCF "C"
DISPLAY "Ragione Sociale@50" RAGSOC INPUT RAGSOC F_RAGSOCCLI
OUTPUT F_CLIENTE CODCF DISPLAY "Ragione Sociale@50" RAGSOC
OUTPUT F_RAGSOCCLI RAGSOC DISPLAY "Codice" CODCF
CHECKTYPE REQUIRED COPY OUTPUT F_CLIENTE
GROUP 2 CHECKTYPE REQUIRED
ADD RUN cg0 -1 C GROUP 2 4
END END
STRING F_RAGSOCCLI 50 STRING F_FORNITORE 6
BEGIN BEGIN
PROMPT 22 3 "" PROMPT 1 6 "Fornitore "
USE LF_CLIFO KEY 2 USE LF_CLIFO
INPUT TIPOCF "C" INPUT TIPOCF "F"
INPUT RAGSOC F_RAGSOCCLI INPUT CODCF F_FORNITORE
DISPLAY "Ragione Sociale@50" RAGSOC COPY DISPLAY F_CLIENTE
DISPLAY "Codice" CODCF OUTPUT F_FORNITORE CODCF
COPY OUTPUT F_CLIENTE OUTPUT F_RAGSOCFOR RAGSOC
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
GROUP 2 GROUP 3 4
ADD RUN cg0 -1 C END
END
STRING F_RAGSOCFOR 50
STRING F_FORNITORE 6 BEGIN
BEGIN PROMPT 22 6 ""
PROMPT 1 3 "Fornitore " USE LF_CLIFO KEY 2
USE LF_CLIFO INPUT TIPOCF "F"
INPUT TIPOCF "F" INPUT RAGSOC F_RAGSOCFOR
INPUT CODCF F_FORNITORE COPY DISPLAY F_RAGSOCCLI
COPY DISPLAY F_CLIENTE COPY OUTPUT F_FORNITORE
OUTPUT F_FORNITORE CODCF CHECKTYPE REQUIRED
OUTPUT F_RAGSOCFOR RAGSOC GROUP 3 4
CHECKTYPE REQUIRED END
GROUP 3
ADD RUN cg0 -1 F NUMBER F_ESERCIZIO 4
END BEGIN
PROMPT 1 8 "Esercizio "
STRING F_RAGSOCFOR 50 USE ESC
BEGIN INPUT CODTAB F_ESERCIZIO
PROMPT 22 3 "" DISPLAY "Codice" CODTAB
USE LF_CLIFO KEY 2 DISPLAY "Inizio esercizio" D0
INPUT TIPOCF "F" DISPLAY "Fine esercizio" D1
INPUT RAGSOC F_RAGSOCFOR OUTPUT F_ESERCIZIO CODTAB
COPY DISPLAY F_RAGSOCCLI ADD NONE
COPY OUTPUT F_FORNITORE END
CHECKTYPE REQUIRED
GROUP 3 DATE F_DADATA
ADD RUN cg0 -1 F BEGIN
END PROMPT 22 8 "Dalla data "
END
NUMBER F_ESERCIZIO 4
BEGIN DATE F_ADATA
PROMPT 1 4 "Esercizio " BEGIN
USE ESC PROMPT 51 8 "Alla data "
INPUT CODTAB F_ESERCIZIO VALIDATE DATE_CMP_FUNC >= F_DADATA
DISPLAY "Codice" CODTAB WARNING "La data finale deve essere maggiore di quella iniziale"
DISPLAY "Inizio esercizio" D0 END
DISPLAY "Fine esercizio" D1
OUTPUT F_ESERCIZIO CODTAB STRING F_DACAUSALE 3
ADD NONE BEGIN
END PROMPT 1 10 "Da causale "
FLAGS "U"
DATE F_DADATA USE LF_CAUSALI
BEGIN INPUT CODCAUS F_DACAUSALE
PROMPT 22 4 "Dalla data " DISPLAY "Codice" CODCAUS
END DISPLAY "Descrizione@50" DESCR
OUTPUT F_DACAUSALE CODCAUS
DATE F_ADATA OUTPUT F_DADESCAUS DESCR
BEGIN STR_EXPR (#F_ACAUSALE="")||(#F_DACAUSALE<=#F_ACAUSALE)
PROMPT 51 4 "Alla data " WARNING "La causale iniziale deve precedere quella finale"
VALIDATE DATE_CMP_FUNC >= F_DADATA CHECKTYPE SEARCH
WARNING "La data finale deve essere maggiore di quella iniziale" END
END
STRING F_DADESCAUS 50
STRING F_DACAUSALE 3 BEGIN
BEGIN PROMPT 22 10 ""
PROMPT 1 5 "Da causale " USE LF_CAUSALI KEY 2
FLAGS "U" INPUT DESCR F_DADESCAUS
USE LF_CAUSALI DISPLAY "Descrizione@50" DESCR
INPUT CODCAUS F_DACAUSALE DISPLAY "Codice" CODCAUS
DISPLAY "Codice" CODCAUS COPY OUTPUT F_DACAUSALE
DISPLAY "Descrizione@50" DESCR CHECKTYPE SEARCH
OUTPUT F_DACAUSALE CODCAUS END
OUTPUT F_DADESCAUS DESCR
STR_EXPR (#F_ACAUSALE="")||(#F_DACAUSALE<=#F_ACAUSALE) STRING F_ACAUSALE 3
WARNING "La causale iniziale deve precedere quella finale" BEGIN
CHECKTYPE SEARCH PROMPT 1 11 "A causale "
END FLAGS "U"
COPY USE F_DACAUSALE
STRING F_DADESCAUS 50 INPUT CODCAUS F_ACAUSALE
BEGIN COPY DISPLAY F_DACAUSALE
PROMPT 22 5 "" OUTPUT F_ACAUSALE CODCAUS
USE LF_CAUSALI KEY 2 OUTPUT F_ADESCAUS DESCR
INPUT DESCR F_DADESCAUS STR_EXPR (#F_ACAUSALE>=#F_DACAUSALE)
DISPLAY "Descrizione@50" DESCR WARNING "La causale finale deve seguire quella iniziale"
DISPLAY "Codice" CODCAUS CHECKTYPE SEARCH
COPY OUTPUT F_DACAUSALE END
CHECKTYPE SEARCH
END STRING F_ADESCAUS 50
BEGIN
STRING F_ACAUSALE 3 PROMPT 22 11 ""
BEGIN COPY USE F_DADESCAUS
PROMPT 1 6 "A causale " INPUT DESCR F_ADESCAUS
FLAGS "U" COPY DISPLAY F_DADESCAUS
COPY USE F_DACAUSALE COPY OUTPUT F_ACAUSALE
INPUT CODCAUS F_ACAUSALE CHECKTYPE SEARCH
COPY DISPLAY F_DACAUSALE END
OUTPUT F_ACAUSALE CODCAUS
OUTPUT F_ADESCAUS DESCR ENDPAGE
STR_EXPR (#F_ACAUSALE>=#F_DACAUSALE)
WARNING "La causale finale deve seguire quella iniziale" ENDMASK
CHECKTYPE SEARCH
END
STRING F_ADESCAUS 50
BEGIN
PROMPT 22 6 ""
COPY USE F_DADESCAUS
INPUT DESCR F_ADESCAUS
COPY DISPLAY F_DADESCAUS
COPY OUTPUT F_ACAUSALE
CHECKTYPE SEARCH
END
SPREADSHEET F_MASTRINI 0 5
BEGIN
PROMPT 1 7 "Mastrini"
FLAGS "M"
ITEM "Data Op. \nData Doc.@10"
ITEM "C@1"
ITEM "Operazione@20F"
ITEM "N.Doc. \nN.Prot.@7"
ITEM "Importo@18R"
ITEM "Saldo@20R"
ITEM "Causale@20"
ITEM "Dare@18R"
ITEM "Avere@18R"
END
TEXT DLG_NULL
BEGIN
PROMPT 1 -3 "Totali all'ultima riga visualizzata "
END
TEXT DLG_NULL
BEGIN
PROMPT 1 -2 "Totali al periodo "
END
TEXT DLG_NULL
BEGIN
PROMPT 1 -1 "Totali attuali "
END
ENDPAGE
ENDMASK

194
cg/cg3600b.uml Executable file
View File

@ -0,0 +1,194 @@
#include "cg3600.h"
TOOLBAR "" 0 20 0 0
BUTTON DLG_LINK 10 2
BEGIN
PROMPT -12 -11 ""
PICTURE BMP_LINK
END
BUTTON DLG_CANCEL 10 2
BEGIN
PROMPT -22 -11 ""
END
ENDPAGE
PAGE "Mastrini" -1 -1 76 20
NUMBER F_GRUPPO 3
BEGIN
PROMPT 1 0 "Conto "
FLAGS "D"
END
NUMBER F_CONTO 3
BEGIN
PROMPT 12 0 ""
FLAGS "D"
END
NUMBER F_SOTTOCONTO 6
BEGIN
PROMPT 17 0 ""
FLAGS "D"
END
STRING F_DESSOTTOC 50
BEGIN
PROMPT 25 0 ""
FLAGS "D"
END
NUMBER F_ESERCIZIO 4
BEGIN
PROMPT 1 1 "Esercizio "
FLAGS "D"
END
DATE F_DADATA
BEGIN
PROMPT 25 1 "Dalla data "
FLAGS "D"
END
DATE F_ADATA
BEGIN
PROMPT 54 1 "Alla data "
FLAGS "D"
END
SPREADSHEET F_MASTRINI 0 -6
BEGIN
PROMPT 1 2 "Mastrini"
FLAGS "DM2"
ITEM "Data Op. \nData Com.@10F"
ITEM "C@1F"
ITEM "Operazione@20F"
ITEM "Causale@20"
ITEM "Dare@15R"
ITEM "Avere@15R"
ITEM "N.Doc. \nN.Prot.@7"
ITEM "Importo@17R"
ITEM "Saldo fine\ngiornata@17R"
END
TEXT DLG_NULL
BEGIN
PROMPT 26 -5 "@bSaldo"
END
TEXT DLG_NULL
BEGIN
PROMPT 45 -5 "@bDare"
END
TEXT DLG_NULL
BEGIN
PROMPT 61 -5 "@bAvere"
END
TEXT DLG_NULL
BEGIN
PROMPT 1 -4 "Prog. precedenti"
END
STRING F_TOTPRO_SAL 17
BEGIN
PROMPT 20 -4 ""
FLAGS "DR"
END
NUMBER F_TOTPRO_DAR 15
BEGIN
PROMPT 39 -4 ""
PICTURE "."
FLAGS "D"
END
NUMBER F_TOTPRO_AVE 15
BEGIN
PROMPT 56 -4 ""
PICTURE "."
FLAGS "D"
END
TEXT DLG_NULL
BEGIN
PROMPT 1 -3 "Tot. riga corrente"
END
STRING F_TOTRIG_SAL 17
BEGIN
PROMPT 20 -3 ""
FLAGS "DR"
END
NUMBER F_TOTRIG_DAR 15
BEGIN
PROMPT 39 -3 ""
PICTURE "."
FLAGS "D"
END
NUMBER F_TOTRIG_AVE 15
BEGIN
PROMPT 56 -3 ""
PICTURE "."
FLAGS "D"
END
TEXT DLG_NULL
BEGIN
PROMPT 1 -2 "Tot. periodo"
END
STRING F_TOTPER_SAL 17
BEGIN
PROMPT 20 -2 ""
FLAGS "DR"
END
NUMBER F_TOTPER_DAR 15
BEGIN
PROMPT 39 -2 ""
PICTURE "."
FLAGS "D"
END
NUMBER F_TOTPER_AVE 15
BEGIN
PROMPT 56 -2 ""
PICTURE "."
FLAGS "D"
END
TEXT DLG_NULL
BEGIN
PROMPT 1 -1 "Tot. attuali"
END
STRING F_TOTATT_SAL 17
BEGIN
PROMPT 20 -1 ""
FLAGS "DR"
END
NUMBER F_TOTATT_DAR 15
BEGIN
PROMPT 39 -1 ""
PICTURE "."
FLAGS "D"
END
NUMBER F_TOTATT_AVE 15
BEGIN
PROMPT 56 -1 ""
PICTURE "."
FLAGS "D"
END
ENDPAGE
ENDMASK

View File

@ -185,23 +185,26 @@ public:
virtual ~TEsercizio() {} virtual ~TEsercizio() {}
}; };
class TEsercizi_contabili : private TArray class TEsercizi_contabili : public TObject
{ {
long _firm; static TArray _esercizi;
static long _firm;
protected: protected:
void check() const; static void check();
const TEsercizio& esc(int i) const const TEsercizio& esc(int i) const
{ return (const TEsercizio&)operator[](i); } { return (const TEsercizio&)_esercizi[i]; }
int date2index(const TDate& d) const; int date2index(const TDate& d) const;
int esc2index(int codice) const; int esc2index(int codice) const;
int items() const { return _esercizi.items(); }
public: public:
void update(); static void update();
const TEsercizio& esercizio(int codice) const; const TEsercizio& esercizio(int codice) const;
const TEsercizio& operator [](int codice) const { return esercizio(codice); }
int date2esc(const TDate& date) const; int date2esc(const TDate& date) const;
int pred(int codice) const; int pred(int codice) const;
@ -209,7 +212,7 @@ public:
int first() const; int first() const;
int last() const; int last() const;
bool exist(int codice) const; bool exist(int codice) const;
TEsercizi_contabili(); TEsercizi_contabili();
virtual ~TEsercizi_contabili() {} virtual ~TEsercizi_contabili() {}
}; };

View File

@ -321,6 +321,9 @@ void TSaldo_agg::registra()
// Gestione Tabella esercizi // Gestione Tabella esercizi
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
TArray TEsercizi_contabili::_esercizi;
long TEsercizi_contabili::_firm = 0;
TEsercizio::TEsercizio(const TRectype& rec) TEsercizio::TEsercizio(const TRectype& rec)
{ {
_codice = rec.get_int("CODTAB"); _codice = rec.get_int("CODTAB");
@ -339,24 +342,25 @@ int TEsercizio::compare(const TSortable& s) const
return c; return c;
} }
TEsercizi_contabili::TEsercizi_contabili() : _firm(0) TEsercizi_contabili::TEsercizi_contabili()
{ } {
}
void TEsercizi_contabili::update() void TEsercizi_contabili::update()
{ {
_firm = prefix().get_codditta(); _firm = prefix().get_codditta();
destroy(); _esercizi.destroy();
TTable esc("ESC"); TTable tab_esc("ESC");
for (int err = esc.first(); err == NOERR; err = esc.next()) for (int err = tab_esc.first(); err == NOERR; err = tab_esc.next())
{ {
TEsercizio* e = new TEsercizio(esc.curr()); TEsercizio* e = new TEsercizio(tab_esc.curr());
add(e); _esercizi.add(e);
} }
sort(); _esercizi.sort();
} }
void TEsercizi_contabili::check() const void TEsercizi_contabili::check()
{ {
if (_firm != prefix().get_codditta()) if (_firm != prefix().get_codditta())
{ {
@ -365,7 +369,7 @@ void TEsercizi_contabili::check() const
error_box("Questo programma carinissimo usa gli esercizi,\n" error_box("Questo programma carinissimo usa gli esercizi,\n"
"purtroppo non tiene conto del cambio ditta!"); "purtroppo non tiene conto del cambio ditta!");
#endif #endif
((TEsercizi_contabili*)this)->update(); // Fool the compiler update();
} }
} }
@ -434,9 +438,3 @@ const TEsercizio& TEsercizi_contabili::esercizio(int codice) const
const int i = esc2index(codice); const int i = esc2index(codice);
return esc(i); return esc(i);
} }