From 4ed0c1c7d8968e73e80e337485d1818e912eac97 Mon Sep 17 00:00:00 2001 From: mtollari Date: Wed, 8 Nov 2017 10:49:10 +0000 Subject: [PATCH] Patch level : 12.0 476 Files correlati : li Commento : Modificati programmi lettere intento: - li0300: Aggiunta di un secondo codice IVA per le esenzioni - li0400: Disabilitata funzione di controllo per molteplici dichiarazioni di intento aperte, adesso posso aprirne quante ne voglio git-svn-id: svn://10.65.10.50/branches/R_10_00@24179 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- src/li/li0300.cpp | 28 +++++++++++++++++++++++++++- src/li/li0300a.h | 11 ++++++----- src/li/li0300a.uml | 22 ++++++++++++++++++++-- src/li/li0400.cpp | 28 ---------------------------- 4 files changed, 53 insertions(+), 36 deletions(-) diff --git a/src/li/li0300.cpp b/src/li/li0300.cpp index 12f928540..2cece33e6 100644 --- a/src/li/li0300.cpp +++ b/src/li/li0300.cpp @@ -15,16 +15,41 @@ private: TSheet_field& sheet; // Sheet public: - bool on_field_event(TOperable_field& o, TField_event e, long jolly) { return true; }; + bool on_field_event(TOperable_field& o, TField_event e, long jolly); TDI_mask() : TAutomask("li0300a"), sheet(sfield(DOC_STATO)) { load_config(); }; void load_config(); void save_config(); }; +bool TDI_mask::on_field_event(TOperable_field& o, TField_event e, long jolly) +{ + switch (o.dlg()) + { + case FLD_TABIVA_CODTAB: + case FLD_TABIVA_CODTAB_ALT: + { + if(e == fe_modify) + { + TString codiva = get(FLD_TABIVA_CODTAB), codiva2 = get(FLD_TABIVA_CODTAB_ALT); + if(codiva == codiva2) + { + error_box("Attenzione! Questo codice è già stato inserito"); + o.set(""); + } + } + } + break; + default: + break; + } + return true; +} + void TDI_mask::load_config() { set(FLD_TABIVA_CODTAB, ini_get_string(CONFIG_DITTA, "li", "CODIVA")); + set(FLD_TABIVA_CODTAB_ALT, ini_get_string(CONFIG_DITTA, "li", "CODIVALT")); TToken_string tipidoc(ini_get_string(CONFIG_DITTA, "li", "TIPIDOC")); TString_array& strarr = sheet.rows_array(); @@ -62,6 +87,7 @@ void TDI_mask::save_config() ini_set_string(CONFIG_DITTA, "li", row.get(0), val); } ini_set_string(CONFIG_DITTA, "li", "CODIVA", get(FLD_TABIVA_CODTAB)); + ini_set_string(CONFIG_DITTA, "li", "CODIVALT", get(FLD_TABIVA_CODTAB_ALT)); ini_set_string(CONFIG_DITTA, "li", "TIPIDOC", tipidoc); message_box(TR("Impostazioni salvate correttamente")); } diff --git a/src/li/li0300a.h b/src/li/li0300a.h index 3e28bac40..28b229673 100644 --- a/src/li/li0300a.h +++ b/src/li/li0300a.h @@ -1,7 +1,8 @@ -#define FLD_TIPODOC 101 -#define FLD_STATODOCDA 102 -#define FLD_STATODOCA 103 +#define FLD_TIPODOC 101 +#define FLD_STATODOCDA 102 +#define FLD_STATODOCA 103 -#define DOC_STATO 201 +#define DOC_STATO 201 -#define FLD_TABIVA_CODTAB 301 \ No newline at end of file +#define FLD_TABIVA_CODTAB 301 +#define FLD_TABIVA_CODTAB_ALT 302 \ No newline at end of file diff --git a/src/li/li0300a.uml b/src/li/li0300a.uml index 40dd30df4..d389916f7 100644 --- a/src/li/li0300a.uml +++ b/src/li/li0300a.uml @@ -17,7 +17,7 @@ PAGE "Impostazioni dichiarazioni d'intento" 0 2 0 0 STRING FLD_TABIVA_CODTAB 4 BEGIN - PROMPT 2 1 "Codice IVA plafond: " + PROMPT 2 1 "Codice IVA plafond: " FIELD CODTAB KEY 1 USE %IVA @@ -35,10 +35,28 @@ BEGIN VALIDATE ZEROFILL_FUNC 2 END +STRING FLD_TABIVA_CODTAB_ALT 4 +BEGIN + PROMPT 2 2 "Codice IVA alternativo: " + 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_ALT CODTAB + HELP "Inserire il codice IVA" + VALIDATE ZEROFILL_FUNC 2 +END SPREADSHEET DOC_STATO 45 10 BEGIN - PROMPT 30 1 "" + PROMPT 2 4 "" ITEM "Tipo Documento" ITEM "Da stato" ITEM "A stato" diff --git a/src/li/li0400.cpp b/src/li/li0400.cpp index a0c46f4da..6c08cd9dd 100755 --- a/src/li/li0400.cpp +++ b/src/li/li0400.cpp @@ -17,7 +17,6 @@ class TLetint_mask : public TAutomask protected: virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly); virtual bool on_key(KEY k); - bool hasLiOpen(); bool block; bool keyforced; @@ -95,18 +94,6 @@ bool TLetint_mask::on_field_event(TOperable_field& o, TField_event e, long jolly } break; - case F_CODCLI: - // Controllo se il cliente non ha già una dichiarazione aperta - if(!keyforced && hasLiOpen() && insert_mode()) - { - warning_box("Il cliente %d ha già una dichiarazione aperta! Chiudere prima la precedente!", get_int(F_CODCLI)); - - disable(DLG_SAVEREC); - } - else - { - enable(DLG_SAVEREC); - } case F_DAL: if(e != fe_modify) break; @@ -147,21 +134,6 @@ bool TLetint_mask::on_field_event(TOperable_field& o, TField_event e, long jolly return true; } -bool TLetint_mask::hasLiOpen() -{ - TRelation relLi(LF_LETINT); - TRectype r_li(relLi.curr()); - r_li.put("CODCLI", get(F_CODCLI)); - r_li.put("ANNO", 2017); // É da quest'anno che abbiamo messo il campo chiusa - - TCursor c_li(&relLi, "", 2, &r_li, &r_li); - for(c_li = 0; c_li.pos() < c_li.items(); ++c_li) - { - if(!c_li.curr().get_bool("CHIUSA")) return true; // Alla prima trovata esco - } - return false; -} - TDate TLetint_mask::ultima_stampa(int anno) { TTable reg("REG");