From 7be8269d4c52e2a75bbeb4dcfae507feadd9a05f Mon Sep 17 00:00:00 2001 From: guy Date: Wed, 5 Oct 1994 08:45:14 +0000 Subject: [PATCH] Migliorata gestione valuta e codice pagamento git-svn-id: svn://10.65.10.50/trunk@315 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- cg/cg1600.cpp | 2 +- cg/cg2100.cpp | 36 +- cg/cg2100c.uml | 1184 ++++++++++++++++++++++++------------------------ cg/cg2102.h | 4 + cg/cglib.h | 18 +- 5 files changed, 623 insertions(+), 621 deletions(-) diff --git a/cg/cg1600.cpp b/cg/cg1600.cpp index ab458ce95..172d79b9d 100755 --- a/cg/cg1600.cpp +++ b/cg/cg1600.cpp @@ -467,7 +467,7 @@ bool data_limite (TMask_field& f, KEY key) tipobil = atoi(m.get(F_TIPOBIL)); tipostampa = atoi(m.get(F_TIPOSTAMPA)); - long annoese = m.get_long(F_ANNOESE); + int annoese = m.get_int(F_ANNOESE); if ((tipobil == 1) && (tipostampa == 1)) { diff --git a/cg/cg2100.cpp b/cg/cg2100.cpp index e05fe820e..6fd2c7d20 100755 --- a/cg/cg2100.cpp +++ b/cg/cg2100.cpp @@ -230,35 +230,23 @@ TMask* TPrimanota_application::get_mask(int mode) } -HIDDEN bool gestione_valuta() -{ - static bool v = 2; - if (v == 2) - { - TConfig c(CONFIG_DITTA, "cg"); - v = c.get_bool("GesVal"); - } - return v; +void TPrimanota_application::read_firm_params() +{ + TConfig c(CONFIG_DITTA, "cg"); + _ges_val = c.get_bool("GesVal"); + _ges_sal = c.get_bool("GesSal"); } - void TPrimanota_application::init_mask(TMask& m) { disable_menu_item(M_FILE_PRINT); fill_sheet(m); - // Show/Hide campi valuta: F_VALUTA, F_CAMBIO, F_VISVAL (GROUP 3) - const bool valuta = _causale.valuta() && gestione_valuta(); - m.send_key(K_SHIFT+K_CTRL+(valuta ? 's' : 'h'), -3); - if (valuta) - { - m.set(F_VISVAL, "X"); - // m.field(F_VISVAL).on_hit(); - } - if (_iva != nessuna_iva) { + read_firm_params(); + char clig, forg; if (_iva == iva_acquisti) { @@ -278,6 +266,14 @@ void TPrimanota_application::init_mask(TMask& m) const bool corrval = intra && _causale.corrval(); m.show(F_CORRVALUTA, corrval); + + // Show/Hide campi valuta: F_VALUTA, F_CAMBIO, F_VISVAL (GROUP 3) + const bool valuta = _causale.valuta() && gestione_valuta(); + m.send_key(K_SHIFT+K_CTRL+(valuta ? 's' : 'h'), -3); + if (valuta) + m.set(F_VISVAL, "X"); + + m.efield(F_CODPAG).check_type(gestione_saldaconto() ? CHECK_REQUIRED : CHECK_NORMAL); } m.disable(DLG_NEWREC); @@ -338,7 +334,7 @@ void TPrimanota_application::init_insert_mode(TMask& m) m.set(F_PROTIVA, protiva+1); TMask_field& vv = m.field(F_VISVAL); - if (vv.active()) // Se e' un movimento in valuta + if (vv.active() && m.get(F_VALUTA).empty()) // Se e' un movimento in valuta { const bool ok = m.field(F_VALUTA).on_key(K_F9); // Richiedi valuta vv.set(ok ? "X" : " "); diff --git a/cg/cg2100c.uml b/cg/cg2100c.uml index 01b29e25c..cd701b760 100755 --- a/cg/cg2100c.uml +++ b/cg/cg2100c.uml @@ -1,591 +1,593 @@ -#include "cg2100.h" - -TOOLBAR "" 0 20 0 2 -#include -ENDPAGE - -PAGE "OPERAZIONE DI PRIMA NOTA" -1 -1 77 20 - -NUMBER F_GRUPPOCLIFO 3 -BEGIN - FLAGS "H" -END - -NUMBER F_CONTOCLIFO 3 -BEGIN - FLAGS "H" -END - -NUMBER F_GRUPPORIC 3 -BEGIN - FLAGS "H" -END - -NUMBER F_CONTORIC 3 -BEGIN - FLAGS "H" -END - -NUMBER F_SOTTOCONTORIC 6 -BEGIN - FLAGS "H" -END - -GROUPBOX DLG_NULL 78 3 -BEGIN - PROMPT 1 0 "@BMovimento IVA" -END - -NUMBER F_CODDITTA 5 -BEGIN - PROMPT 3 1 "Ditta " - FLAGS "FGRD" - USE LF_NDITTE KEY 1 - INPUT CODDITTA F_CODDITTA - DISPLAY "Codice" CODDITTA - OUTPUT F_RAGSOC RAGSOC - CHECKTYPE REQUIRED -END - -STRING F_RAGSOC 50 -BEGIN - PROMPT 17 1 "Ragione " - FLAGS "DG" -END - -NUMBER F_NUMREG 6 -BEGIN - PROMPT 57 3 "Operazione n. " - FIELD NUMREG - FLAGS "RDG" - KEY 1 - MESSAGE COPY,H_NUMREG -END - -DATE F_DATAREG -BEGIN - PROMPT 1 3 "Data operazione " - FIELD LF_MOV->DATAREG - MESSAGE COPY,H_DATAREG|COPY,F_DATA74TER -END - -DATE F_DATACOMP -BEGIN - PROMPT 1 4 "Data competenza " - FIELD LF_MOV->DATACOMP -END - -DATE F_DATADOC -BEGIN - PROMPT 1 5 "Data documento " - FIELD LF_MOV->DATADOC - HELP "Specificare la data del documento (non superiore alla data dell'operazione)" - WARNING "Inserire una data documento non superiore alla data dell'operazione" - VALIDATE DATE_CMP_FUNC <= F_DATAREG -END - -NUMBER F_ANNOIVA 4 -BEGIN - PROMPT 32 3 "Anno IVA " - FIELD LF_MOV->ANNOIVA - FLAGS "D" -END - -NUMBER F_ANNOES 4 -BEGIN - PROMPT 32 4 "Anno esercizio " - FIELD LF_MOV->ANNOES - FLAGS "DGRZ" - MESSAGE COPY,H_ANNOES -END - -STRING F_TIPODOC 2 -BEGIN - PROMPT 32 5 "Tipo documento " - FIELD LF_MOV->TIPODOC - FLAGS "D" -END - -STRING F_NUMDOC 7 -BEGIN - PROMPT 57 5 "Documento n. " - FIELD LF_MOV->NUMDOC - WARNING "La causale impone di specificare il numero documento" -END - -STRING F_DESCAGG 5 -BEGIN - PROMPT 1 6 "Descrizione " - FLAGS "U" - USE %DPN - INPUT CODTAB F_DESCAGG - DISPLAY "Codice" CODTAB - DISPLAY "Descrizione@50" S0 - OUTPUT F_DESCAGG CODTAB - OUTPUT F_DESCR S0 - CHECKTYPE NORMAL -END - -STRING F_DESCR 50 -BEGIN - PROMPT 25 6 "" - FIELD LF_MOV->DESCR - USE %DPN KEY 2 - INPUT S0 F_DESCR - DISPLAY "Descrizione@50" S0 - DISPLAY "Codice" CODTAB - COPY OUTPUT F_DESCAGG -END - -LIST F_PROVVISORIO 1 25 -BEGIN - PROMPT 1 7 "Movimento provvisorio " - FIELD PROVVIS - ITEM " |No (movimento normale)" - ITEM "P|Si (cancellabile)" - ITEM "N|Si (non cancellabile)" -END - -BOOLEAN F_SOLAIVA -BEGIN - PROMPT 54 7 "Movimento di sola IVA" -END - -STRING F_CODCAUS 3 -BEGIN - PROMPT 1 8 "Causale " - FLAGS "U" - FIELD LF_MOV->CODCAUS - USE LF_CAUSALI KEY 1 - INPUT CODCAUS F_CODCAUS - DISPLAY "Codice" CODCAUS - DISPLAY "Descrizione@50" DESCR - DISPLAY "Registro" REG - DISPLAY "Tipo" TIPODOC - OUTPUT F_CODCAUS CODCAUS - OUTPUT F_DESCRCAUS DESCR - OUTPUT F_CODREG REG - OUTPUT F_TIPODOC TIPODOC - MESSAGE COPY,H_CODCAUS - CHECKTYPE REQUIRED - ADD RUN cg0 -4 -END - -STRING F_DESCRCAUS 50 -BEGIN - PROMPT 25 8 "" - USE LF_CAUSALI KEY 2 - INPUT DESCR F_DESCRCAUS - DISPLAY "Descrizione@50" DESCR - DISPLAY "Codice" CODCAUS - COPY OUTPUT F_CODCAUS - MESSAGE COPY,H_DESCRCAUS - CHECKTYPE REQUIRED - ADD RUN cg0 -4 -END - -STRING F_CODREG 3 -BEGIN - PROMPT 1 9 "Registro IVA " - FLAGS "DG" - FIELD LF_MOV->REG -END - -NUMBER F_PROTIVA 5 -BEGIN - PROMPT 27 9 "Protocollo IVA " - FIELD LF_MOV->PROTIVA -END - -NUMBER F_RIEPILOGO 5 -BEGIN - PROMPT 51 9 "Riepilogo fino al n. " - FIELD LF_MOV->UPROTIVA - NUM_EXPR ((#F_RIEPILOGO==0)||(#F_RIEPILOGO>=#F_PROTIVA)) - WARNING "Inserire un riepilogo non inferiore al protocollo IVA (Obbigatorio se il cliete/fornitore ha codice inserimento in allegati uguale a 3)" -END - -STRING F_CLIFO 1 -BEGIN - PROMPT 0 10 "" - FIELD TIPO - FLAGS "H" -END - -NUMBER F_CLIENTE 6 -BEGIN - PROMPT 1 10 "Cliente " - FIELD LF_MOV->CODCF - GROUP 1 - USE LF_CLIFO KEY 1 - INPUT TIPOCF "C" - INPUT CODCF F_CLIENTE - DISPLAY "Codice" CODCF - DISPLAY "Ragione Sociale@50" RAGSOC - DISPLAY "Partita IVA@12" PAIV - OUTPUT F_CLIFO TIPOCF - OUTPUT F_CLIENTE CODCF - OUTPUT F_RAGSOCCLIENTE RAGSOC - OUTPUT F_GRUPPOCLIFO GRUPPO - OUTPUT F_CONTOCLIFO CONTO - OUTPUT F_GRUPPORIC GRUPPORIC - OUTPUT F_CONTORIC CONTORIC - OUTPUT F_SOTTOCONTORIC SOTTOCRIC - OUTPUT F_CODPAG CODPAG - OUTPUT F_STATOPAIV STATOPAIV - OUTPUT F_PIVACLIENTE PAIV - OUTPUT F_OCCASIONALE OCCAS - MESSAGE COPY,F_FORNITORE - CHECKTYPE REQUIRED - WARNING "Cliente assente" - ADD RUN cg0 -1 -END - -NUMBER F_FORNITORE 6 -BEGIN - PROMPT 1 10 "Fornitore " - FIELD LF_MOV->CODCF - GROUP 2 - USE LF_CLIFO KEY 1 - INPUT TIPOCF "F" - INPUT CODCF F_FORNITORE - DISPLAY "Codice" CODCF - DISPLAY "Ragione Sociale@50" RAGSOC - DISPLAY "Partita IVA@12" PAIV - OUTPUT F_CLIFO TIPOCF - OUTPUT F_FORNITORE CODCF - OUTPUT F_RAGSOCFORNITORE RAGSOC - OUTPUT F_GRUPPOCLIFO GRUPPO - OUTPUT F_CONTOCLIFO CONTO - OUTPUT F_GRUPPORIC GRUPPORIC - OUTPUT F_CONTORIC CONTORIC - OUTPUT F_SOTTOCONTORIC SOTTOCRIC - OUTPUT F_OCCASIONALE OCCAS - OUTPUT F_CODPAG CODPAG - OUTPUT F_STATOPAIV STATOPAIV - OUTPUT F_PIVAFORNITORE PAIV - MESSAGE COPY,F_CLIENTE - CHECKTYPE REQUIRED - WARNING "Fornitore assente" - ADD RUN cg0 -1 -END - -STRING F_RAGSOCFORNITORE 50 -BEGIN - PROMPT 25 10 "" - GROUP 2 - USE LF_CLIFO KEY 2 - INPUT TIPOCF "F" - INPUT RAGSOC F_RAGSOCFORNITORE - DISPLAY "Ragione Sociale@50" RAGSOC - DISPLAY "Partita IVA@12" PAIV - DISPLAY "Codice" CODCF - COPY OUTPUT F_FORNITORE - CHECKTYPE REQUIRED - ADD RUN cg0 -1 -END - -STRING F_RAGSOCCLIENTE 50 -BEGIN - PROMPT 25 10 "" - GROUP 1 - USE LF_CLIFO KEY 2 - INPUT TIPOCF "C" - INPUT RAGSOC F_RAGSOCCLIENTE - DISPLAY "Ragione Sociale@50" RAGSOC - DISPLAY "Partita IVA@12" PAIV - DISPLAY "Codice" CODCF - COPY OUTPUT F_CLIENTE - CHECKTYPE REQUIRED - ADD RUN cg0 -1 -END - -STRING F_PIVACLIENTE 14 -BEGIN - PROMPT 1 11 "Partita IVA " - GROUP 1 - USE LF_CLIFO KEY 5 - INPUT TIPOCF "C" - INPUT STATOPAIV F_STATOPAIV - INPUT PAIV F_PIVACLIENTE - DISPLAY "Partita IVA@12" PAIV - DISPLAY "Ragione Sociale@50" RAGSOC - DISPLAY "Codice" CODCF - COPY OUTPUT F_CLIENTE - CHECKTYPE NORMAL - ADD RUN cg0 -1 -END - -STRING F_PIVAFORNITORE 14 -BEGIN - PROMPT 1 11 "Partita IVA " - GROUP 2 - USE LF_CLIFO KEY 5 - INPUT TIPOCF "F" - INPUT STATOPAIV F_STATOPAIV - INPUT PAIV F_PIVAFORNITORE - COPY DISPLAY F_PIVACLIENTE - COPY OUTPUT F_FORNITORE - CHECKTYPE NORMAL - ADD RUN cg0 -1 -END - -LIST F_STATOPAIV 18 -BEGIN - PROMPT 32 11 "Stato " - HELP "Codice ISO dello stato per la partita IVA" - ITEM " |Italia o extra CEE" - ITEM "BE|Belgio" - ITEM "DE|Germania" - ITEM "DK|Danimarca" - ITEM "EL|Grecia" - ITEM "ES|Spagna" - ITEM "FR|Francia" - ITEM "GB|Gran Bretagna" - ITEM "IE|Irlanda" - ITEM "IT|Italia" - ITEM "LU|Lussemburgo" - ITEM "NL|Olanda" - ITEM "PT|Portogallo" -END - -BUTTON F_OCCASEDIT 18 -BEGIN - PROMPT 32 11 "Dati anagrafici" - FLAGS "H" -END - -BOOLEAN F_OCCASIONALE -BEGIN - MESSAGE FALSE HIDE,F_OCCASEDIT|ENABLE,F_PIVACLIENTE|ENABLE,F_PIVAFORNITORE|SHOW,F_STATOPAIV - MESSAGE TRUE SHOW,F_OCCASEDIT|DISABLE,F_PIVACLIENTE|DISABLE,F_PIVAFORNITORE|HIDE,F_STATOPAIV - FLAGS "GH" -END - -STRING F_CODPAG 4 -BEGIN - PROMPT 60 11 "Pagamento " - FIELD CODPAG - USE %CPG - INPUT CODTAB F_CODPAG - DISPLAY "Codice" CODTAB - DISPLAY "Descrizione@50" S0 - OUTPUT F_CODPAG CODTAB - CHECKTYPE NORMAL -END - -NUMBER F_TOTALE 15 -BEGIN - PROMPT 1 12 "Totale documento " - FIELD TOTDOC - FLAGS "RV" - PICTURE "." -END - -NUMBER F_RITFIS 15 -BEGIN - PROMPT 1 13 "Ritenute fiscali " - FIELD RITFIS - FLAGS "RV" - PICTURE "." -END - -NUMBER F_RITSOC 15 -BEGIN - PROMPT 1 14 "Ritenute sociali " - FIELD LF_MOV->RITSOC - FLAGS "RV" - PICTURE "." -END - -STRING F_CODIVA 4 -BEGIN - PROMPT 60 12 "Codice IVA " - FLAGS "U" - USE %IVA - INPUT CODTAB F_CODIVA - DISPLAY "Codice" CODTAB - DISPLAY "Descrizione@50" S0 - DISPLAY "%@6" R0 - DISPLAY "Tipo" S1 - OUTPUT F_CODIVA CODTAB - CHECKTYPE NORMAL -END - -DATE F_DATA74TER -BEGIN - PROMPT 54 13 "Data 74/ter " - CHECKTYPE REQUIRED - FIELD DATA74TER -END - -NUMBER F_ANNORIF 4 -BEGIN - PROMPT 45 14 "Rif.partita " - FLAGS "A" - HELP "Anno di riferimento partita" -END - -NUMBER F_NUMRIF 7 -BEGIN - PROMPT 69 14 "/" - HELP "Numero documento (o protocollo IVA) di riferimento" -END - -NUMBER F_CORRLIRE 15 -BEGIN - PROMPT 1 15 "Corrispettivo Lire " - FIELD LF_MOV->CORRLIRE - FLAGS "R" - PICTURE "." -END - -NUMBER F_CORRVALUTA 15 -BEGIN - PROMPT 45 15 "Corrisp. valuta " - FIELD LF_MOV->CORRVALUTA - FLAGS "R" - PICTURE "." -END - - -STRING F_VALUTA 3 -BEGIN - PROMPT 1 16 "Valuta " - FIELD LF_MOV->CODVAL - FLAGS "U" - GROUP 3 - USE %VAL - INPUT CODTAB F_VALUTA - DISPLAY "Codice" CODTAB - DISPLAY "Nome@50" S0 - DISPLAY "Cambio@15" R10 - DISPLAY "Ultimo aggiornamento" D0 - OUTPUT F_VALUTA CODTAB - OUTPUT F_CAMBIO R10 - CHECKTYPE NORMAL -END - -NUMBER F_CAMBIO 15 5 -BEGIN - PROMPT 20 16 "Cambio " - FIELD LF_MOV->CAMBIO - FLAGS "RU" - GROUP 3 - PICTURE ".5" -END - -BOOLEAN F_VISVAL -BEGIN - PROMPT 47 16 "Visualizza importi in valuta" - GROUP 3 -END - -ENDPAGE - -PAGE "IVA" -1 -1 77 20 - -GROUPBOX DLG_NULL 78 4 -BEGIN - PROMPT 1 0 "@BRighe movimento IVA" -END - -NUMBER H_NUMREG 6 -BEGIN - PROMPT 2 1 "Operazione n. " - FLAGS "D" -END - -DATE H_DATAREG -BEGIN - PROMPT 32 1 "Data " - FLAGS "D" -END - -NUMBER H_ANNOES 4 -BEGIN - PROMPT 61 1 "Esercizio " - FLAGS "DRZ" -END - -STRING H_CODCAUS 3 -BEGIN - PROMPT 2 2 "Causale " - FLAGS "D" -END - -STRING H_DESCRCAUS 50 -BEGIN - PROMPT 25 2 "" - FLAGS "D" -END - -SPREADSHEET F_SHEETIVA 0 7 -BEGIN - PROMPT 0 4 "" - ITEM "Imponibile@15" - ITEM "Iva@4" - ITEM "Det@1" - ITEM "Imposta@15" - ITEM "C/R@1" - ITEM " " - ITEM "Gr." - ITEM "Co." - ITEM "Sottoc.@6" - ITEM "Descrizione Conto@50" -END - -NUMBER F_IMPONIBILI 15 -BEGIN - PROMPT 1 11 "Totale imponibili " - FLAGS "DRV" - PICTURE "." -END - -NUMBER F_IMPOSTE 15 -BEGIN - PROMPT 41 11 "Totale imposte " - FLAGS "DRV" - PICTURE "." -END - -SPREADSHEET F_SHEETCG -BEGIN - PROMPT 0 12 "" - ITEM "Dare@15" - ITEM "Avere@15" - ITEM " " - ITEM "Gr." - ITEM "Co." - ITEM "Sottoc.@6" - ITEM "Descrizione conto@50" - ITEM "Codice" - ITEM "Descrizione riga@50" - ITEM " " - ITEM "Gr./c@3" - ITEM "Co./c@3" - ITEM "Sottoc./c@6" - ITEM "Descrizione contropartita@50" - ITEM " " -END - -NUMBER F_DARE 15 -BEGIN - PROMPT 1 -1 "Sbilancio Dare " - FLAGS "DRV" - PICTURE "." -END - -NUMBER F_AVERE 15 -BEGIN - PROMPT 41 -1 "Sbilancio Avere " - FLAGS "DRV" - PICTURE "." -END - -ENDPAGE - -ENDMASK - -#include "cg21iva.uml" -#include "cg21cg.uml" +#include "cg2100.h" + +TOOLBAR "" 0 20 0 2 +#include +ENDPAGE + +PAGE "OPERAZIONE DI PRIMA NOTA" -1 -1 77 20 + +NUMBER F_GRUPPOCLIFO 3 +BEGIN + FLAGS "H" +END + +NUMBER F_CONTOCLIFO 3 +BEGIN + FLAGS "H" +END + +NUMBER F_GRUPPORIC 3 +BEGIN + FLAGS "H" +END + +NUMBER F_CONTORIC 3 +BEGIN + FLAGS "H" +END + +NUMBER F_SOTTOCONTORIC 6 +BEGIN + FLAGS "H" +END + +GROUPBOX DLG_NULL 78 3 +BEGIN + PROMPT 1 0 "@BMovimento IVA" +END + +NUMBER F_CODDITTA 5 +BEGIN + PROMPT 3 1 "Ditta " + FLAGS "FGRD" + USE LF_NDITTE KEY 1 + INPUT CODDITTA F_CODDITTA + DISPLAY "Codice" CODDITTA + OUTPUT F_RAGSOC RAGSOC + CHECKTYPE REQUIRED +END + +STRING F_RAGSOC 50 +BEGIN + PROMPT 17 1 "Ragione " + FLAGS "DG" +END + +NUMBER F_NUMREG 6 +BEGIN + PROMPT 57 3 "Operazione n. " + FIELD NUMREG + FLAGS "RDG" + KEY 1 + MESSAGE COPY,H_NUMREG +END + +DATE F_DATAREG +BEGIN + PROMPT 1 3 "Data operazione " + FIELD LF_MOV->DATAREG + MESSAGE COPY,H_DATAREG|COPY,F_DATA74TER +END + +DATE F_DATACOMP +BEGIN + PROMPT 1 4 "Data competenza " + FIELD LF_MOV->DATACOMP +END + +DATE F_DATADOC +BEGIN + PROMPT 1 5 "Data documento " + FIELD LF_MOV->DATADOC + HELP "Specificare la data del documento (non superiore alla data dell'operazione)" + WARNING "Inserire una data documento non superiore alla data dell'operazione" + VALIDATE DATE_CMP_FUNC <= F_DATAREG +END + +NUMBER F_ANNOIVA 4 +BEGIN + PROMPT 32 3 "Anno IVA " + FIELD LF_MOV->ANNOIVA + FLAGS "D" +END + +NUMBER F_ANNOES 4 +BEGIN + PROMPT 32 4 "Anno esercizio " + FIELD LF_MOV->ANNOES + FLAGS "DGRZ" + MESSAGE COPY,H_ANNOES +END + +STRING F_TIPODOC 2 +BEGIN + PROMPT 32 5 "Tipo documento " + FIELD LF_MOV->TIPODOC + FLAGS "D" +END + +STRING F_NUMDOC 7 +BEGIN + PROMPT 57 5 "Documento n. " + FIELD LF_MOV->NUMDOC + WARNING "La causale impone di specificare il numero documento" +END + +STRING F_DESCAGG 5 +BEGIN + PROMPT 1 6 "Descrizione " + FLAGS "U" + USE %DPN + INPUT CODTAB F_DESCAGG + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@50" S0 + OUTPUT F_DESCAGG CODTAB + OUTPUT F_DESCR S0 + CHECKTYPE NORMAL +END + +STRING F_DESCR 50 +BEGIN + PROMPT 25 6 "" + FIELD LF_MOV->DESCR + USE %DPN KEY 2 + INPUT S0 F_DESCR + DISPLAY "Descrizione@50" S0 + DISPLAY "Codice" CODTAB + COPY OUTPUT F_DESCAGG +END + +LIST F_PROVVISORIO 1 25 +BEGIN + PROMPT 1 7 "Movimento provvisorio " + FIELD PROVVIS + ITEM " |No (movimento normale)" + ITEM "P|Si (cancellabile)" + ITEM "N|Si (non cancellabile)" +END + +BOOLEAN F_SOLAIVA +BEGIN + PROMPT 54 7 "Movimento di sola IVA" +END + +STRING F_CODCAUS 3 +BEGIN + PROMPT 1 8 "Causale " + FLAGS "U" + FIELD LF_MOV->CODCAUS + USE LF_CAUSALI KEY 1 + INPUT CODCAUS F_CODCAUS + DISPLAY "Codice" CODCAUS + DISPLAY "Descrizione@50" DESCR + DISPLAY "Registro" REG + DISPLAY "Tipo" TIPODOC + OUTPUT F_CODCAUS CODCAUS + OUTPUT F_DESCRCAUS DESCR + OUTPUT F_CODREG REG + OUTPUT F_TIPODOC TIPODOC + MESSAGE COPY,H_CODCAUS + CHECKTYPE REQUIRED + ADD RUN cg0 -4 +END + +STRING F_DESCRCAUS 50 +BEGIN + PROMPT 25 8 "" + USE LF_CAUSALI KEY 2 + INPUT DESCR F_DESCRCAUS + DISPLAY "Descrizione@50" DESCR + DISPLAY "Codice" CODCAUS + COPY OUTPUT F_CODCAUS + MESSAGE COPY,H_DESCRCAUS + CHECKTYPE REQUIRED + ADD RUN cg0 -4 +END + +STRING F_CODREG 3 +BEGIN + PROMPT 1 9 "Registro IVA " + FLAGS "DG" + FIELD LF_MOV->REG +END + +NUMBER F_PROTIVA 5 +BEGIN + PROMPT 27 9 "Protocollo IVA " + FIELD LF_MOV->PROTIVA +END + +NUMBER F_RIEPILOGO 5 +BEGIN + PROMPT 51 9 "Riepilogo fino al n. " + FIELD LF_MOV->UPROTIVA + NUM_EXPR ((#F_RIEPILOGO==0)||(#F_RIEPILOGO>=#F_PROTIVA)) + WARNING "Inserire un riepilogo non inferiore al protocollo IVA (Obbigatorio se il cliete/fornitore ha codice inserimento in allegati uguale a 3)" +END + +STRING F_CLIFO 1 +BEGIN + PROMPT 0 10 "" + FIELD TIPO + FLAGS "H" +END + +NUMBER F_CLIENTE 6 +BEGIN + PROMPT 1 10 "Cliente " + FIELD LF_MOV->CODCF + GROUP 1 + USE LF_CLIFO KEY 1 + INPUT TIPOCF "C" + INPUT CODCF F_CLIENTE + DISPLAY "Codice" CODCF + DISPLAY "Ragione Sociale@50" RAGSOC + DISPLAY "Partita IVA@12" PAIV + OUTPUT F_CLIFO TIPOCF + OUTPUT F_CLIENTE CODCF + OUTPUT F_RAGSOCCLIENTE RAGSOC + OUTPUT F_GRUPPOCLIFO GRUPPO + OUTPUT F_CONTOCLIFO CONTO + OUTPUT F_GRUPPORIC GRUPPORIC + OUTPUT F_CONTORIC CONTORIC + OUTPUT F_SOTTOCONTORIC SOTTOCRIC + OUTPUT F_CODPAG CODPAG + OUTPUT F_VALUTA CODVAL + OUTPUT F_STATOPAIV STATOPAIV + OUTPUT F_PIVACLIENTE PAIV + OUTPUT F_OCCASIONALE OCCAS + MESSAGE COPY,F_FORNITORE + CHECKTYPE REQUIRED + WARNING "Cliente assente" + ADD RUN cg0 -1 +END + +NUMBER F_FORNITORE 6 +BEGIN + PROMPT 1 10 "Fornitore " + FIELD LF_MOV->CODCF + GROUP 2 + USE LF_CLIFO KEY 1 + INPUT TIPOCF "F" + INPUT CODCF F_FORNITORE + DISPLAY "Codice" CODCF + DISPLAY "Ragione Sociale@50" RAGSOC + DISPLAY "Partita IVA@12" PAIV + OUTPUT F_CLIFO TIPOCF + OUTPUT F_FORNITORE CODCF + OUTPUT F_RAGSOCFORNITORE RAGSOC + OUTPUT F_GRUPPOCLIFO GRUPPO + OUTPUT F_CONTOCLIFO CONTO + OUTPUT F_GRUPPORIC GRUPPORIC + OUTPUT F_CONTORIC CONTORIC + OUTPUT F_SOTTOCONTORIC SOTTOCRIC + OUTPUT F_OCCASIONALE OCCAS + OUTPUT F_CODPAG CODPAG + OUTPUT F_VALUTA CODVAL + OUTPUT F_STATOPAIV STATOPAIV + OUTPUT F_PIVAFORNITORE PAIV + MESSAGE COPY,F_CLIENTE + CHECKTYPE REQUIRED + WARNING "Fornitore assente" + ADD RUN cg0 -1 +END + +STRING F_RAGSOCFORNITORE 50 +BEGIN + PROMPT 25 10 "" + GROUP 2 + USE LF_CLIFO KEY 2 + INPUT TIPOCF "F" + INPUT RAGSOC F_RAGSOCFORNITORE + DISPLAY "Ragione Sociale@50" RAGSOC + DISPLAY "Partita IVA@12" PAIV + DISPLAY "Codice" CODCF + COPY OUTPUT F_FORNITORE + CHECKTYPE REQUIRED + ADD RUN cg0 -1 +END + +STRING F_RAGSOCCLIENTE 50 +BEGIN + PROMPT 25 10 "" + GROUP 1 + USE LF_CLIFO KEY 2 + INPUT TIPOCF "C" + INPUT RAGSOC F_RAGSOCCLIENTE + DISPLAY "Ragione Sociale@50" RAGSOC + DISPLAY "Partita IVA@12" PAIV + DISPLAY "Codice" CODCF + COPY OUTPUT F_CLIENTE + CHECKTYPE REQUIRED + ADD RUN cg0 -1 +END + +STRING F_PIVACLIENTE 14 +BEGIN + PROMPT 1 11 "Partita IVA " + GROUP 1 + USE LF_CLIFO KEY 5 + INPUT TIPOCF "C" + INPUT STATOPAIV F_STATOPAIV + INPUT PAIV F_PIVACLIENTE + DISPLAY "Partita IVA@12" PAIV + DISPLAY "Ragione Sociale@50" RAGSOC + DISPLAY "Codice" CODCF + COPY OUTPUT F_CLIENTE + CHECKTYPE NORMAL + ADD RUN cg0 -1 +END + +STRING F_PIVAFORNITORE 14 +BEGIN + PROMPT 1 11 "Partita IVA " + GROUP 2 + USE LF_CLIFO KEY 5 + INPUT TIPOCF "F" + INPUT STATOPAIV F_STATOPAIV + INPUT PAIV F_PIVAFORNITORE + COPY DISPLAY F_PIVACLIENTE + COPY OUTPUT F_FORNITORE + CHECKTYPE NORMAL + ADD RUN cg0 -1 +END + +LIST F_STATOPAIV 18 +BEGIN + PROMPT 32 11 "Stato " + HELP "Codice ISO dello stato per la partita IVA" + ITEM " |Italia o extra CEE" + ITEM "BE|Belgio" + ITEM "DE|Germania" + ITEM "DK|Danimarca" + ITEM "EL|Grecia" + ITEM "ES|Spagna" + ITEM "FR|Francia" + ITEM "GB|Gran Bretagna" + ITEM "IE|Irlanda" + ITEM "IT|Italia" + ITEM "LU|Lussemburgo" + ITEM "NL|Olanda" + ITEM "PT|Portogallo" +END + +BUTTON F_OCCASEDIT 18 +BEGIN + PROMPT 32 11 "Dati anagrafici" + FLAGS "H" +END + +BOOLEAN F_OCCASIONALE +BEGIN + MESSAGE FALSE HIDE,F_OCCASEDIT|ENABLE,F_PIVACLIENTE|ENABLE,F_PIVAFORNITORE|SHOW,F_STATOPAIV + MESSAGE TRUE SHOW,F_OCCASEDIT|DISABLE,F_PIVACLIENTE|DISABLE,F_PIVAFORNITORE|HIDE,F_STATOPAIV + FLAGS "GH" +END + +STRING F_CODPAG 4 +BEGIN + PROMPT 60 11 "Pagamento " + FIELD CODPAG + USE %CPG + INPUT CODTAB F_CODPAG + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@50" S0 + OUTPUT F_CODPAG CODTAB + CHECKTYPE NORMAL +END + +NUMBER F_TOTALE 15 +BEGIN + PROMPT 1 12 "Totale documento " + FIELD TOTDOC + FLAGS "RV" + PICTURE "." +END + +NUMBER F_RITFIS 15 +BEGIN + PROMPT 1 13 "Ritenute fiscali " + FIELD RITFIS + FLAGS "RV" + PICTURE "." +END + +NUMBER F_RITSOC 15 +BEGIN + PROMPT 1 14 "Ritenute sociali " + FIELD LF_MOV->RITSOC + FLAGS "RV" + PICTURE "." +END + +STRING F_CODIVA 4 +BEGIN + PROMPT 60 12 "Codice IVA " + FLAGS "U" + USE %IVA + INPUT CODTAB F_CODIVA + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@50" S0 + DISPLAY "%@6" R0 + DISPLAY "Tipo" S1 + OUTPUT F_CODIVA CODTAB + CHECKTYPE NORMAL +END + +DATE F_DATA74TER +BEGIN + PROMPT 54 13 "Data 74/ter " + CHECKTYPE REQUIRED + FIELD DATA74TER +END + +NUMBER F_ANNORIF 4 +BEGIN + PROMPT 45 14 "Rif.partita " + FLAGS "A" + HELP "Anno di riferimento partita" +END + +NUMBER F_NUMRIF 7 +BEGIN + PROMPT 69 14 "/" + HELP "Numero documento (o protocollo IVA) di riferimento" +END + +NUMBER F_CORRLIRE 15 +BEGIN + PROMPT 1 15 "Corrispettivo Lire " + FIELD LF_MOV->CORRLIRE + FLAGS "R" + PICTURE "." +END + +NUMBER F_CORRVALUTA 15 +BEGIN + PROMPT 45 15 "Corrisp. valuta " + FIELD LF_MOV->CORRVALUTA + FLAGS "R" + PICTURE "." +END + + +STRING F_VALUTA 3 +BEGIN + PROMPT 1 16 "Valuta " + FIELD LF_MOV->CODVAL + FLAGS "U" + GROUP 3 + USE %VAL + INPUT CODTAB F_VALUTA + DISPLAY "Codice" CODTAB + DISPLAY "Nome@50" S0 + DISPLAY "Cambio@15" R10 + DISPLAY "Ultimo aggiornamento" D0 + OUTPUT F_VALUTA CODTAB + OUTPUT F_CAMBIO R10 + CHECKTYPE NORMAL +END + +NUMBER F_CAMBIO 15 5 +BEGIN + PROMPT 20 16 "Cambio " + FIELD LF_MOV->CAMBIO + FLAGS "RU" + GROUP 3 + PICTURE ".5" +END + +BOOLEAN F_VISVAL +BEGIN + PROMPT 47 16 "Visualizza importi in valuta" + GROUP 3 +END + +ENDPAGE + +PAGE "IVA" -1 -1 77 20 + +GROUPBOX DLG_NULL 78 4 +BEGIN + PROMPT 1 0 "@BRighe movimento IVA" +END + +NUMBER H_NUMREG 6 +BEGIN + PROMPT 2 1 "Operazione n. " + FLAGS "D" +END + +DATE H_DATAREG +BEGIN + PROMPT 32 1 "Data " + FLAGS "D" +END + +NUMBER H_ANNOES 4 +BEGIN + PROMPT 61 1 "Esercizio " + FLAGS "DRZ" +END + +STRING H_CODCAUS 3 +BEGIN + PROMPT 2 2 "Causale " + FLAGS "D" +END + +STRING H_DESCRCAUS 50 +BEGIN + PROMPT 25 2 "" + FLAGS "D" +END + +SPREADSHEET F_SHEETIVA 0 7 +BEGIN + PROMPT 0 4 "" + ITEM "Imponibile@15" + ITEM "Iva@4" + ITEM "Det@1" + ITEM "Imposta@15" + ITEM "C/R@1" + ITEM " " + ITEM "Gr." + ITEM "Co." + ITEM "Sottoc.@6" + ITEM "Descrizione Conto@50" +END + +NUMBER F_IMPONIBILI 15 +BEGIN + PROMPT 1 11 "Totale imponibili " + FLAGS "DRV" + PICTURE "." +END + +NUMBER F_IMPOSTE 15 +BEGIN + PROMPT 41 11 "Totale imposte " + FLAGS "DRV" + PICTURE "." +END + +SPREADSHEET F_SHEETCG +BEGIN + PROMPT 0 12 "" + ITEM "Dare@15" + ITEM "Avere@15" + ITEM " " + ITEM "Gr." + ITEM "Co." + ITEM "Sottoc.@6" + ITEM "Descrizione conto@50" + ITEM "Codice" + ITEM "Descrizione riga@50" + ITEM " " + ITEM "Gr./c@3" + ITEM "Co./c@3" + ITEM "Sottoc./c@6" + ITEM "Descrizione contropartita@50" + ITEM " " +END + +NUMBER F_DARE 15 +BEGIN + PROMPT 1 -1 "Sbilancio Dare " + FLAGS "DRV" + PICTURE "." +END + +NUMBER F_AVERE 15 +BEGIN + PROMPT 41 -1 "Sbilancio Avere " + FLAGS "DRV" + PICTURE "." +END + +ENDPAGE + +ENDMASK + +#include "cg21iva.uml" +#include "cg21cg.uml" diff --git a/cg/cg2102.h b/cg/cg2102.h index 1fb8fda9b..09aced629 100755 --- a/cg/cg2102.h +++ b/cg/cg2102.h @@ -39,6 +39,7 @@ class TPrimanota_application : public TRelation_application TCausale _causale; // Causale corrente TLibro_giornale _giornale; // Libro giornale corrente TipoIVA _iva; // Tipo di IVA corrente + bool _ges_val, _ges_sal; // Gestione valuta e saldaconto TSaldo_agg _saldi; // Saldi da aggiornare @@ -105,8 +106,11 @@ protected: TipoIVA iva() const { return _iva; } char clifo() const { return iva() == iva_vendite ? 'C' : 'F'; } TMask& TPrimanota_application::mask() const; + bool gestione_valuta() const { return _ges_val; } + bool gestione_saldaconto() const { return _ges_sal; } void fill_sheet(TMask& m) const; + void read_firm_params(); void init_mask(TMask& m); TSheet_field& cgs() const; diff --git a/cg/cglib.h b/cg/cglib.h index 64da53163..34d6a35b2 100755 --- a/cg/cglib.h +++ b/cg/cglib.h @@ -60,10 +60,10 @@ public: bool calcola_clifo(int, int, int, int, int); TRectype& ricerca_progr_prec(int, int, int, long); real saldofin_esprec(int,int,int,long); - real saldo() {return _saldo;} - real saldoini() {return _saldo_iniziale;} - real prgdare() {return _prg_dare;} - real prgavere() {return _prg_avere;} + real saldo() const {return _saldo;} + real saldoini() const {return _saldo_iniziale;} + real prgdare() const {return _prg_dare;} + real prgavere() const {return _prg_avere;} bool prg_attuali(int,TConto&,int,real&,real&); bool prg_mov_eliminati(int,TConto&,int,real&,real&); Saldo(); @@ -103,19 +103,19 @@ public: char sezione, bool somma=TRUE); void set_anno_es(int anno) { _anno_es = anno; } - int anno_es() { return _anno_es; } + int anno_es() const { return _anno_es; } void set_movap (bool movap) { _movap = movap; } - bool movap() { return _movap; } + bool movap() const { return _movap; } void set_movprovv (bool p) { _provv = p; } bool movprovv() { return _provv; } - void set_data_ulmov (TDate& data) { _data_ulmov = data; } - TDate& data_ulmov() { return _data_ulmov; } + void set_data_ulmov (const TDate& data) { _data_ulmov = data; } + const TDate& data_ulmov() const { return _data_ulmov; } void set_num_ulmov (long num) { _num_ulmov = num; } - long num_ulmov() { return _num_ulmov; } + long num_ulmov() const { return _num_ulmov; } void reset(); // pulisce l'array dei conti TSaldo_agg();