diff --git a/cm/cm1100.cpp b/cm/cm1100.cpp index f404e4829..8c1b67b39 100755 --- a/cm/cm1100.cpp +++ b/cm/cm1100.cpp @@ -1,5 +1,6 @@ #include #include +#include #include #include #include @@ -13,11 +14,65 @@ #include "..\ve\velib.h" #include "cm1100a.h" +#include "cm1100b.h" #include "cm1100.h" +//=============================================================================================== +//maschera di configurazione + +class TPag_per_cms_configmask: public TAutomask +{ +public: + virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly); + void config_loader(TSheet_field& sf, const char* paragrafo); + void config_setter(TSheet_field& sf, const char* paragrafo); + + TPag_per_cms_configmask():TAutomask("cm1100b") + { + config_loader(sfield(F_COSTI), "Costi"); + config_loader(sfield(F_PAGAMENTI), "Pagamenti"); + } + +}; + +bool TPag_per_cms_configmask::on_field_event(TOperable_field& o, TField_event e, long jolly) +{ + switch (o.dlg()) + { + case DLG_SAVEREC: + { + config_setter(sfield(F_COSTI), "Costi"); + config_setter(sfield(F_PAGAMENTI), "Pagamenti"); + } + break; + default: + break; + } + return true; +} + +void TPag_per_cms_configmask::config_loader(TSheet_field& sf, const char* paragrafo) +{ + TConfig config("cm1100.ini", paragrafo); + TString_array conti; + + int n = config.list_variables(conti, true, paragrafo, true); + FOR_EACH_ARRAY_ROW(conti, i, row) + { + TToken_string conto(row->get(1), '.'); //prende il valore della riga + TBill uncle(conto, 0); + uncle.add_to(sf.row(i), 0, 0x2); + } +} + +void TPag_per_cms_configmask::config_setter(TSheet_field& sf, const char* paragrafo) +{ + TConfig config("cm1100.ini", paragrafo); +} + //=============================================================================================== -//maschera +//maschera principale class TPag_per_cms_mask: public TAutomask { @@ -30,10 +85,18 @@ public: bool TPag_per_cms_mask::on_field_event(TOperable_field& o, TField_event e, long jolly) { -/* switch (o.dlg()) + switch (o.dlg()) { - default: break; - }*/ + case F_CONFIG: + { + TPag_per_cms_configmask configmask; //lancia la maschera di configurazione + configmask.run(); + } + break; + + default: + break; + } return true; } @@ -657,7 +720,7 @@ bool TPag_per_cms::cerca_pagamento(const TBill& bill) const void TPag_per_cms::lettura_conti(const char* paragrafo, TAssoc_array& assoc) { - TConfig conti("cm1100a.ini",paragrafo); //paragrafo da scandire nell ini + TConfig conti("cm1100.ini",paragrafo); //paragrafo da scandire nell ini TAssoc_array& vars = conti.list_variables(); FOR_EACH_ASSOC_STRING(vars, h, k, val) //riempie l'assoc con i soli valori del paragrafo dell'ini diff --git a/cm/cm1100a.h b/cm/cm1100a.h index 9380b13bf..eae8dedf6 100755 --- a/cm/cm1100a.h +++ b/cm/cm1100a.h @@ -12,3 +12,5 @@ #define F_ACODFOR 110 #define F_ADESFOR 111 +#define F_CONFIG 120 + diff --git a/cm/cm1100a.uml b/cm/cm1100a.uml index 50559a207..082d264f4 100755 --- a/cm/cm1100a.uml +++ b/cm/cm1100a.uml @@ -8,10 +8,9 @@ BEGIN MESSAGE EXIT,K_ENTER END -BUTTON DLG_ELABORA 10 2 +BUTTON F_CONFIG 10 2 BEGIN PROMPT -23 -1 "~Configura" - MESSAGE K_CFG END BUTTON DLG_QUIT 10 2 @@ -21,7 +20,7 @@ END ENDPAGE -PAGE "Stampa pagato per commessa" -1 -1 50 10 +PAGE "Stampa pagato per commessa / fornitore" -1 -1 50 10 GROUPBOX DLG_NULL 78 6 BEGIN diff --git a/cm/cm1100b.h b/cm/cm1100b.h new file mode 100755 index 000000000..cd3ebbb26 --- /dev/null +++ b/cm/cm1100b.h @@ -0,0 +1,13 @@ +// campi per la maschera cm1100b +#define F_COSTI 200 +#define F_PAGAMENTI 201 + +#define F_SC_GRUPPO 101 +#define F_SC_CONTO 102 +#define F_SC_SOTTOCONTO 103 +#define F_SC_DESCRIZIONE 104 + +#define F_SP_GRUPPO 101 +#define F_SP_CONTO 102 +#define F_SP_SOTTOCONTO 103 +#define F_SP_DESCRIZIONE 104 diff --git a/cm/cm1100b.uml b/cm/cm1100b.uml new file mode 100755 index 000000000..abd8d6f7a --- /dev/null +++ b/cm/cm1100b.uml @@ -0,0 +1,216 @@ +#include "cm1100b.h" + +TOOLBAR "" 0 -2 0 2 + +BUTTON DLG_SAVEREC 10 2 +BEGIN + PROMPT -12 -1 "" + PICTURE BMP_SAVEREC + PICTURE BMP_SAVERECDN +END + +BUTTON DLG_QUIT 10 2 +BEGIN + PROMPT -22 -1 "" +END + +ENDPAGE + +PAGE "Configurazione parametri stampa pagato" -1 -1 78 20 + +TEXT -1 +BEGIN + PROMPT 1 0 "@bCosti" +END + +SPREADSHEET F_COSTI 78 10 +BEGIN + PROMPT 1 1 "Costi" + ITEM "Gruppo" + ITEM "Conto" + ITEM "Sottoconto" + ITEM "Descrizione@50" +END + +TEXT -1 +BEGIN + PROMPT 1 11 "@bPagamenti" +END + +SPREADSHEET F_PAGAMENTI 78 +BEGIN + PROMPT 1 12 "Pagamenti" + ITEM "Gruppo" + ITEM "Conto" + ITEM "Sottoconto" + ITEM "Descrizione@50" +END + +ENDPAGE + +ENDMASK + + +//-----------Pagina di riga dello sheet costi----------------------// + +PAGE "Riga Costo" -1 -1 66 10 + +NUMBER F_SC_GRUPPO 3 +BEGIN + PROMPT 1 2 "Gruppo " + USE LF_PCON KEY 1 SELECT (CONTO="") + INPUT GRUPPO F_SC_GRUPPO + DISPLAY "Gruppo" GRUPPO + DISPLAY "Descrizione@50" DESCR + OUTPUT F_SC_GRUPPO GRUPPO + CHECKTYPE REQUIRED +END + +NUMBER F_SC_CONTO 3 +BEGIN + PROMPT 1 3 "Conto " + USE LF_PCON KEY 1 SELECT (SOTTOCONTO="") + INPUT GRUPPO F_SC_GRUPPO + INPUT CONTO F_SC_CONTO + DISPLAY "Gruppo" GRUPPO + DISPLAY "Conto" CONTO + DISPLAY "Descrizione@50" DESCR + OUTPUT F_SC_CONTO CONTO + OUTPUT F_SC_GRUPPO GRUPPO + CHECKTYPE NORMAL +END + +NUMBER F_SC_SOTTOCONTO 6 +BEGIN + PROMPT 1 4 "Sottoconto " + USE LF_PCON + INPUT GRUPPO F_SC_GRUPPO + INPUT CONTO F_SC_CONTO + INPUT SOTTOCONTO F_SC_SOTTOCONTO + DISPLAY "Gruppo" GRUPPO + DISPLAY "Conto" CONTO + DISPLAY "Sottoconto" SOTTOCONTO + DISPLAY "Descrizione@50" DESCR + OUTPUT F_SC_SOTTOCONTO SOTTOCONTO + OUTPUT F_SC_GRUPPO GRUPPO + OUTPUT F_SC_CONTO CONTO + OUTPUT F_SC_DESCRIZIONE DESCR + CHECKTYPE NORMAL +END + +STRING F_SC_DESCRIZIONE 50 +BEGIN + PROMPT 1 5 "Descrizione " + USE LF_PCON KEY 2 + INPUT DESCR F_SC_DESCRIZIONE + DISPLAY "Descrizione@50" DESCR + DISPLAY "Gruppo" GRUPPO + DISPLAY "Conto" CONTO + DISPLAY "Sottoconto" SOTTOCONTO + OUTPUT F_SC_SOTTOCONTO SOTTOCONTO + OUTPUT F_SC_CONTO CONTO + OUTPUT F_SC_GRUPPO GRUPPO + OUTPUT F_SC_DESCRIZIONE DESCR + CHECKTYPE NORMAL +END + +BUTTON DLG_OK 10 2 +BEGIN + PROMPT -13 -1 "" +END + +BUTTON DLG_DELREC 10 2 +BEGIN + PROMPT -23 -1 "" +END + +BUTTON DLG_CANCEL 10 2 +BEGIN + PROMPT -33 -1 "" +END + +ENDPAGE + +ENDMASK + +//-----------Pagina di riga dello sheet pagamenti----------------------// + +PAGE "Riga Pagamento" -1 -1 66 10 + +NUMBER F_SP_GRUPPO 3 +BEGIN + PROMPT 1 2 "Gruppo " + USE LF_PCON KEY 1 SELECT (CONTO="") + INPUT GRUPPO F_SP_GRUPPO + DISPLAY "Gruppo" GRUPPO + DISPLAY "Descrizione@50" DESCR + OUTPUT F_SP_GRUPPO GRUPPO + CHECKTYPE REQUIRED +END + +NUMBER F_SP_CONTO 3 +BEGIN + PROMPT 1 3 "Conto " + USE LF_PCON KEY 1 SELECT (SOTTOCONTO="") + INPUT GRUPPO F_SP_GRUPPO + INPUT CONTO F_SP_CONTO + DISPLAY "Gruppo" GRUPPO + DISPLAY "Conto" CONTO + DISPLAY "Descrizione@50" DESCR + OUTPUT F_SP_CONTO CONTO + OUTPUT F_SP_GRUPPO GRUPPO + CHECKTYPE NORMAL +END + +NUMBER F_SP_SOTTOCONTO 6 +BEGIN + PROMPT 1 4 "Sottoconto " + USE LF_PCON + INPUT GRUPPO F_SP_GRUPPO + INPUT CONTO F_SP_CONTO + INPUT SOTTOCONTO F_SP_SOTTOCONTO + DISPLAY "Gruppo" GRUPPO + DISPLAY "Conto" CONTO + DISPLAY "Sottoconto" SOTTOCONTO + DISPLAY "Descrizione@50" DESCR + OUTPUT F_SP_SOTTOCONTO SOTTOCONTO + OUTPUT F_SP_GRUPPO GRUPPO + OUTPUT F_SP_CONTO CONTO + OUTPUT F_SP_DESCRIZIONE DESCR + CHECKTYPE NORMAL +END + +STRING F_SP_DESCRIZIONE 50 +BEGIN + PROMPT 1 5 "Descrizione " + USE LF_PCON KEY 2 + INPUT DESCR F_SP_DESCRIZIONE + DISPLAY "Descrizione@50" DESCR + DISPLAY "Gruppo" GRUPPO + DISPLAY "Conto" CONTO + DISPLAY "Sottoconto" SOTTOCONTO + OUTPUT F_SP_SOTTOCONTO SOTTOCONTO + OUTPUT F_SP_CONTO CONTO + OUTPUT F_SP_GRUPPO GRUPPO + OUTPUT F_SP_DESCRIZIONE DESCR + CHECKTYPE NORMAL +END + +BUTTON DLG_OK 10 2 +BEGIN + PROMPT -13 -1 "" +END + +BUTTON DLG_DELREC 10 2 +BEGIN + PROMPT -23 -1 "" +END + +BUTTON DLG_CANCEL 10 2 +BEGIN + PROMPT -33 -1 "" +END + +ENDPAGE + +ENDMASK