diff --git a/src/li/li0300.cpp b/src/li/li0300.cpp index 70e219259..12f928540 100644 --- a/src/li/li0300.cpp +++ b/src/li/li0300.cpp @@ -63,7 +63,7 @@ void TDI_mask::save_config() } ini_set_string(CONFIG_DITTA, "li", "CODIVA", get(FLD_TABIVA_CODTAB)); ini_set_string(CONFIG_DITTA, "li", "TIPIDOC", tipidoc); - + message_box(TR("Impostazioni salvate correttamente")); } class TDISettings_app : public TSkeleton_application diff --git a/src/li/li0300a.uml b/src/li/li0300a.uml index 4032186aa..7a489a941 100644 --- a/src/li/li0300a.uml +++ b/src/li/li0300a.uml @@ -1,99 +1,99 @@ -#include "li0300a.h" - -TOOLBAR "topbar" 0 0 0 2 - -BUTTON DLG_SAVEREC 2 2 -BEGIN - PROMPT 2 1 "~Registra" - MESSAGE EXIT,K_SAVE - PICTURE TOOL_SAVEREC -END - -#include - -ENDPAGE - -PAGE "Impostazioni dichiarazioni d'intento" 0 2 0 0 - -STRING FLD_TABIVA_CODTAB 4 -BEGIN - PROMPT 2 1 "Codice IVA plafond: " - FIELD CODTAB - KEY 1 - USE %IVA - FLAGS "U" - INPUT CODTAB FLD_TABIVA_CODTAB - DISPLAY "Codice" CODTAB - DISPLAY "Descrizione@50" S0 - DISPLAY "Tipo" S1 - DISPLAY "%@5" R0 - DISPLAY "Vent." S6 - DISPLAY "Sospeso" B2 - OUTPUT FLD_TABIVA_CODTAB CODTAB - HELP "Inserire il codice IVA" - CHECKTYPE REQUIRED - VALIDATE ZEROFILL_FUNC 2 -END - - +#include "li0300a.h" + +TOOLBAR "topbar" 0 0 0 2 + +BUTTON DLG_SAVEREC 2 2 +BEGIN + PROMPT 2 1 "~Registra" + MESSAGE EXIT,K_SAVE + PICTURE TOOL_SAVEREC +END + +#include + +ENDPAGE + +PAGE "Impostazioni dichiarazioni d'intento" 0 2 0 0 + +STRING FLD_TABIVA_CODTAB 4 +BEGIN + PROMPT 2 1 "Codice IVA plafond: " + FIELD CODTAB + KEY 1 + USE %IVA + FLAGS "U" + INPUT CODTAB FLD_TABIVA_CODTAB + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@50" S0 + DISPLAY "Tipo" S1 + DISPLAY "%@5" R0 + DISPLAY "Vent." S6 + DISPLAY "Sospeso" B2 + OUTPUT FLD_TABIVA_CODTAB CODTAB + HELP "Inserire il codice IVA" + CHECKTYPE REQUIRED + VALIDATE ZEROFILL_FUNC 2 +END + + SPREADSHEET DOC_STATO 45 10 BEGIN PROMPT 30 1 "" ITEM "Tipo Numerazione" ITEM "Da stato" ITEM "A stato" -END - -ENDPAGE - -ENDMASK - -PAGE "Riga tipo numerazione" -1 -1 78 8 - -STRING FLD_TIPODOC 4 -BEGIN - PROMPT 2 1 "Codice Numerazione " - FIELD CODTAB - KEY 1 - USE %NUM - FLAGS "U" - INPUT CODTAB FLD_TIPODOC - DISPLAY "Codice" CODTAB - DISPLAY "Descrizione@50" S0 - OUTPUT FLD_TIPODOC CODTAB - CHECKTYPE REQUIRED -END - -STRING FLD_STATODOCDA 4 -BEGIN - PROMPT 2 2 "Da Numerazione " - FIELD CODTAB - KEY 1 - USE %STD - FLAGS "U" - INPUT CODTAB FLD_STATODOCA - DISPLAY "Stato" CODTAB - DISPLAY "Descrizione@50" S0 - OUTPUT FLD_STATODOCDA CODTAB - //CHECKTYPE REQUIRED -END - -STRING FLD_STATODOCA 4 -BEGIN - PROMPT 2 3 "A Numerazione " - FIELD CODTAB - KEY 1 - USE %STD - FLAGS "U" - INPUT CODTAB FLD_STATODOCA - DISPLAY "Stato" CODTAB - DISPLAY "Descrizione@50" S0 - OUTPUT FLD_STATODOCA CODTAB - //CHECKTYPE REQUIRED -END - -ENDPAGE - +END + +ENDPAGE + +ENDMASK + +PAGE "Riga tipo numerazione" -1 -1 78 8 + +STRING FLD_TIPODOC 4 +BEGIN + PROMPT 2 1 "Tipo Documento " + FIELD TIPODOC + HELP "Codice tipo documento" + USE %TIP + INPUT CODTAB FLD_TIPODOC + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@50" S0 + OUTPUT FLD_TIPODOC CODTAB + CHECKTYPE REQUIRED +END + +STRING FLD_STATODOCDA 4 +BEGIN + PROMPT 2 2 "Da Numerazione " + FIELD CODTAB + KEY 1 + USE %STD + FLAGS "U" + INPUT CODTAB FLD_STATODOCA + DISPLAY "Stato" CODTAB + DISPLAY "Descrizione@50" S0 + OUTPUT FLD_STATODOCDA CODTAB + //CHECKTYPE REQUIRED +END + +STRING FLD_STATODOCA 4 +BEGIN + PROMPT 2 3 "A Numerazione " + FIELD CODTAB + KEY 1 + USE %STD + FLAGS "U" + INPUT CODTAB FLD_STATODOCA + DISPLAY "Stato" CODTAB + DISPLAY "Descrizione@50" S0 + OUTPUT FLD_STATODOCA CODTAB + NUM_EXPR #FLD_STATODOCA>=#FLD_STATODOCDA + //CHECKTYPE REQUIRED +END + +ENDPAGE + TOOLBAR "Documento" 0 0 0 2 BUTTON DLG_OK 2 2 diff --git a/src/li/li0400a.h b/src/li/li0400a.h index 2f8ee854c..f0ab1a661 100755 --- a/src/li/li0400a.h +++ b/src/li/li0400a.h @@ -29,3 +29,4 @@ #define F_PROTINTF 123 #define F_PROTINTS 124 #define F_NOTE 125 +#define B_CHIUSA 126 diff --git a/src/li/li0400a.uml b/src/li/li0400a.uml index 4c042fb3f..ecd2cab0c 100755 --- a/src/li/li0400a.uml +++ b/src/li/li0400a.uml @@ -229,6 +229,12 @@ BEGIN FIELD TIPOOP END +BOOLEAN B_CHIUSA +BEGIN + PROMPT 40 16 "Chiusa: " + FIELD CHIUSA +END + CURRENCY F_IMPORTO 18 BEGIN PROMPT 1 17 "Importo " diff --git a/src/li/lilib01.cpp b/src/li/lilib01.cpp index db5216d60..46d1fe8fd 100644 --- a/src/li/lilib01.cpp +++ b/src/li/lilib01.cpp @@ -1,4 +1,5 @@ #include "lilib01.h" +#include #define FINO_A_PLAFOND 2 @@ -7,10 +8,10 @@ void TLi_manager::elabTipiStati(TToken_string& tipi, TToken_string& stati) for(int i = 0; i < tipidoc.items(); i++) { TToken_string statidoc(ini_get_string(CONFIG_DITTA, "li", tipidoc.get(i)), ','); - for(int j = 0; j < statidoc.items(); j++) + for(int j = statidoc.get_int(0); j <= statidoc.get_int(1); j++) { tipi.add(tipidoc.get(i)); - stati.add(statidoc.get(j)); + stati.add(j); } } } @@ -62,7 +63,7 @@ const real TLi_manager::getPlaRes() TLista_documenti din; // Legge tutti i documenti di input TToken_string tipi, stati; elabTipiStati(tipi, stati); - TDate ad(TString(year)<<"1201"); + TDate ad(31, 12, year); // Trovo tutti i documenti che mi interessano e sottraggo l'imponibile al plafond din.read('D', tipocf, codcli, year, tipi, stati, iniDicInt, ad); @@ -76,7 +77,7 @@ const real TLi_manager::getPlaRes() TRiepilogo_iva * totali = static_cast(tabIva.get()); if(totali->cod_iva() == codiva) { - resPlafond -= totali->imp_orig(); + resPlafond -= cache().get("%TIP", din[i].tipo().codice()).get_bool("B7") ? -totali->imp_orig() : totali->imp_orig(); } if(resPlafond < 0) break; }