diff --git a/cg/cg2100.cpp b/cg/cg2100.cpp index 69aec1500..156728187 100755 --- a/cg/cg2100.cpp +++ b/cg/cg2100.cpp @@ -569,7 +569,16 @@ void TPrimanota_application::init_mask(TMask& m) m.show(-1, clig); m.show(-2, forg); } - if (corrisp) m.hide(F_STATOPAIV); + + m.hide(-7); // Nascondi tutti i campi del modulo FE (compreso FE_MODPAG) + + if (corrisp) + m.hide(F_STATOPAIV); + else + { + if (has_module(FEAUT)) + m.show(FE_MODPAG); // Mostro FE_MODPAG solo se strettamente necessario + } // Show/Hide campi valuta: F_VALUTAINTRA, F_CAMBIOINTRA, F_CORRISPETTIVO, F_CORRVAL (GROUP 4) m.show(-4, causale().valintra()); @@ -615,6 +624,7 @@ void TPrimanota_application::init_mask(TMask& m) void TPrimanota_application::init_query_mode(TMask& m) { + disable_menu_item(M_FILE_PREVIEW); enable_menu_item(M_FILE_PRINT); enable_menu_item(M_FONT); @@ -776,7 +786,7 @@ void TPrimanota_application::init_insert_mode(TMask& m) m.field(F_RITFIS).set_prompt(PR("IVA intracomun. ")); else m.field(F_RITFIS).set_prompt(PR("Ritenute fiscali ")); -} + } else { if (*causale().codice()) @@ -790,7 +800,7 @@ void TPrimanota_application::init_insert_mode(TMask& m) if (is_fattura()) { activate_numrif(m, false); - const TString16 dt(m.get(F_DATADOC)); + const TString& dt = m.get(F_DATADOC); set_pagamento(NULL,dt); set_scadenze(m); } @@ -1023,7 +1033,7 @@ int TPrimanota_application::read(TMask& m) pags().reset(); // Azzera sheet rate if (!read_scadenze(m)) // Se non esiste fattura { - const TString16 dd = m.get(F_DATADOC); + const TString& dd = m.get(F_DATADOC); set_pagamento(NULL, dd); // Ignora codice pagamento in testata } } diff --git a/cg/cg2100.h b/cg/cg2100.h index 74c76f609..3b3502378 100755 --- a/cg/cg2100.h +++ b/cg/cg2100.h @@ -19,25 +19,27 @@ #define F_DATACOMP 116 #define F_ANNOIVA 117 -#define F_CLIFO 150 +#define F_CLIFO 128 #define F_CLIENTE 151 #define F_RAGSOCCLIENTE 152 #define F_STATOPAIV 153 #define F_PIVACLIENTE 154 #define F_COFICLIENTE 155 #define F_RICALTCLIENTE 156 -#define F_CONTRATTOC 157 -#define F_MODPAG 158 + +#define FE_CONTRATTO 157 +#define FE_MODPAG 158 +#define FE_DATARETT 159 +#define FE_NUMRETT 160 #define F_FORNITORE 161 #define F_RAGSOCFORNITORE 162 #define F_PIVAFORNITORE 164 #define F_COFIFORNITORE 165 #define F_RICALTFORNITORE 166 -#define F_CONTRATTOF 167 -#define F_CONTSEP 168 -#define F_DESCONTSEP 169 +#define NP_CONTSEP 168 +#define NP_DESCONTSEP 169 #define F_GRUPPOCLIFO 170 #define F_CONTOCLIFO 171 diff --git a/cg/cg2100b.uml b/cg/cg2100b.uml index 3e3ac2e71..fed753d2b 100755 --- a/cg/cg2100b.uml +++ b/cg/cg2100b.uml @@ -255,27 +255,27 @@ BEGIN GROUP 5 6 END -STRING F_CONTSEP 6 +STRING NP_CONTSEP 6 BEGIN PROMPT 1 19 "Contab. separata " USE &NPENT - INPUT CODTAB F_CONTSEP + INPUT CODTAB NP_CONTSEP DISPLAY "Codice@6" CODTAB DISPLAY "Descrizione@50" S0 - OUTPUT F_CONTSEP CODTAB - OUTPUT F_DESCONTSEP S0 + OUTPUT NP_CONTSEP CODTAB + OUTPUT NP_DESCONTSEP S0 CHECKTYPE NORMAL FIELD CONTSEP END -STRING F_DESCONTSEP 50 48 +STRING NP_DESCONTSEP 50 48 BEGIN PROMPT 27 19 "" USE &NPENT KEY 2 - INPUT S0 F_DESCONTSEP + INPUT S0 NP_DESCONTSEP DISPLAY "Descrizione@50" S0 DISPLAY "Codice@6" CODTAB - COPY OUTPUT F_CONTSEP + COPY OUTPUT NP_CONTSEP CHECKTYPE NORMAL END diff --git a/cg/cg2100c.uml b/cg/cg2100c.uml index e0825a947..8676922c2 100755 --- a/cg/cg2100c.uml +++ b/cg/cg2100c.uml @@ -215,6 +215,7 @@ BEGIN OUTPUT F_PIVACLIENTE PAIV OUTPUT F_COFICLIENTE COFI OUTPUT F_RICALTCLIENTE RICALT + OUTPUT F_CLIFO TIPOCF MESSAGE COPY,F_FORNITORE CHECKTYPE REQUIRED WARNING "Cliente assente" @@ -240,6 +241,7 @@ BEGIN OUTPUT F_PIVAFORNITORE PAIV OUTPUT F_COFIFORNITORE COFI OUTPUT F_RICALTFORNITORE RICALT + OUTPUT F_CLIFO TIPOCF MESSAGE COPY,F_CLIENTE CHECKTYPE REQUIRED WARNING "Fornitore assente" @@ -419,54 +421,80 @@ BEGIN ADD RUN ba3 -6 END -STRING F_CONTRATTOC 18 +// Campi per Invio dati rilevanti (FE) + +LIST F_CLIFO 1 10 BEGIN - PROMPT 1 12 "Contratto " + PROMPT 1 12 "Tipo " + ITEM "|Conto" + ITEM "C|Cliente" + ITEM "F|Fornitore" + FIELD TIPO + FLAGS "H" +END + +LIST FE_MODPAG 1 16 +BEGIN + PROMPT 1 12 "Tipo " + ITEM "1|Non frazionato" + MESSAGE HIDE,FE_CONTRATTO|SHOW,FE_DATARETT|SHOW,FE_NUMRETT + ITEM "2|Frazionato" + MESSAGE SHOW,FE_CONTRATTO|HIDE,FE_DATARETT|HIDE,FE_NUMRETT + ITEM "3|Periodico" + MESSAGE SHOW,FE_CONTRATTO|HIDE,FE_DATARETT|HIDE,FE_NUMRETT + GROUP 7 + FIELD MODPAG + MODULE fe +END + +STRING FE_CONTRATTO 18 +BEGIN + PROMPT 32 12 "Contratto di riferimento " FLAGS "U" FIELD CONTRATTO USE &FECON - INPUT CODTAB[1,1] "C" + INPUT CODTAB[1,1] F_CLIFO SELECT INPUT CODTAB[2,7] F_CLIENTE SELECT - INPUT CODTAB[8,25] F_CONTRATTOC + INPUT CODTAB[8,25] FE_CONTRATTO DISPLAY "Contratto" CODTAB[8,] DISPLAY "Descrizione@50" S0 - OUTPUT F_CONTRATTOC CODTAB[8,] - CHECKTYPE NORMAL + DISPLAY "Pagamento" S6 + OUTPUT FE_CONTRATTO CODTAB[8,] + OUTPUT FE_MODPAG S6 + CHECKTYPE REQUIRED HELP "Inserire un codice contratto di importo non inferiore a 3000 Euro" ADD RUN fe0 -1 &CON - GROUP 1 - MESSAGE COPY,F_CONTRATTOF + GROUP 7 END -STRING F_CONTRATTOF 18 +DATE FE_DATARETT BEGIN - PROMPT 1 12 "Contratto " + PROMPT 26 12 "Variazione al documento " + USE MOV KEY 3 + INPUT TIPO F_CLIFO SELECT + INPUT CODCF F_CLIENTE SELECT + INPUT DATAREG FE_DATARETT + DISPLAY "Data reg.@10" DATAREG + DISPLAY "Numero@7" NUMDOC + DISPLAY "Num.Reg.@7" NUMREG + DISPLAY "Descrizione@50" DESCR + OUTPUT FE_DATARETT DATAREG + OUTPUT FE_NUMRETT NUMDOC + FIELD DATARETT + GROUP 7 +END + +STRING FE_NUMRETT 7 +BEGIN + PROMPT 66 12 "N." + COPY ALL FE_DATARETT + CHECKTYPE SEARCH + FIELD NUMRETT + GROUP 7 FLAGS "U" - FIELD CONTRATTO - USE &FECON - INPUT CODTAB[1,1] "F" - INPUT CODTAB[2,7] F_FORNITORE SELECT - INPUT CODTAB[8,25] F_CONTRATTOF - DISPLAY "Contratto" CODTAB[8,] - COPY DISPLAY F_CONTRATTOC - OUTPUT F_CONTRATTOF CODTAB[8,] - CHECKTYPE NORMAL - HELP "Inserire un codice contratto di importo non inferiore a 3000 Euro" - ADD RUN fe0 -1 &CON - GROUP 2 - MESSAGE COPY,F_CONTRATTOC END -LIST F_MODPAG 1 14 -BEGIN - PROMPT 42 12 "Modalità pagamento " - ITEM "1|Non frazionato" - ITEM "2|Frazionato" - ITEM "3|Periodico" - MODULE fe - GROUP 1 2 - FIELD MODPAG -END +// Campi per saldaconto in valuta STRING SK_VALUTA 3 BEGIN @@ -645,27 +673,27 @@ BEGIN DRIVENBY F_VALUTAINTRA END -STRING F_CONTSEP 6 +STRING NP_CONTSEP 6 BEGIN - PROMPT 1 19 "Contab. separata " + PROMPT 1 19 "Cont. separata " USE &NPENT - INPUT CODTAB F_CONTSEP + INPUT CODTAB NP_CONTSEP DISPLAY "Codice@6" CODTAB DISPLAY "Descrizione@50" S0 - OUTPUT F_CONTSEP CODTAB - OUTPUT F_DESCONTSEP S0 + OUTPUT NP_CONTSEP CODTAB + OUTPUT NP_DESCONTSEP S0 CHECKTYPE NORMAL FIELD CONTSEP END -STRING F_DESCONTSEP 50 48 +STRING NP_DESCONTSEP 50 BEGIN - PROMPT 27 19 "" + PROMPT 25 19 "" USE &NPENT KEY 2 - INPUT S0 F_DESCONTSEP + INPUT S0 NP_DESCONTSEP DISPLAY "Descrizione@50" S0 DISPLAY "Codice@6" CODTAB - COPY OUTPUT F_CONTSEP + COPY OUTPUT NP_CONTSEP CHECKTYPE NORMAL END diff --git a/cg/f22.dir b/cg/f22.dir index bfb43fa35..dff3e57f4 100755 --- a/cg/f22.dir +++ b/cg/f22.dir @@ -1,3 +1,3 @@ 22 0 -$alleg|0|0|103|0|Comunicazione dati rilevanti|NCF|| +$alleg|0|0|112|0|Comunicazione dati rilevanti||| diff --git a/cg/f22.trr b/cg/f22.trr index fbeddf5e1..9501d9db9 100755 --- a/cg/f22.trr +++ b/cg/f22.trr @@ -1,20 +1,24 @@ 22 -14 +16 ANNO|2|4|0|Anno IVA PROGR|3|7|0|Progressivo TIPOCF|1|1|0|Tipo liente ornitore CODCF|3|6|0|Codice Cliente/Fornitore OCFPI|1|16|0|Codice occasionale -NUMREG|3|7|0|Numero di registrazione originale +FORZATURA|8|1|0|Forzatura a mano IGNORA|2|2|0|Eventuale motivo per ignorare la riga (0 = da inviare) -DATAREG|5|8|0|Data registrazione +DATAREG|5|8|0|Data registrazione (art. 6 d.P.R.n.633/1972) +NUMDOC|1|7|0|Numero Fattura (Obbligatorio se TIPOPE=1) MODPAG|2|1|0|Modalità di pagamento (1=Non frazionato;2=Frazionato;3=Periodico) IMPORTO|4|12|2|Importo dovuto IMPOSTA|4|12|2|Imposta TIPOPE|2|1|0|Tipo operazione (1=Cessione;2=Acquisto) CONTRATTO|1|18|0|Contratto -NUMRETT|3|7|0|Numero di registrazione rettificata +DATARETT|5|8|0|Data documento rettificato +NUMRETT|1|7|0|Numero documento rettificato 3 ANNO+PROGR| ANNO+TIPOCF+CODCF+OCFPI+PROGR| -NUMREG+PROGR| +ANNO+TIPOCF+CODCF+NUMRETT|X + + diff --git a/cg/f23.dir b/cg/f23.dir index 6bc9ced43..9e0fe4608 100755 --- a/cg/f23.dir +++ b/cg/f23.dir @@ -1,3 +1,3 @@ 23 0 -$mov|0|0|401|0|Movimenti di prima nota||| +$mov|0|0|420|0|Movimenti di prima nota||| diff --git a/cg/f23.trr b/cg/f23.trr index 01d45f485..785efb865 100755 --- a/cg/f23.trr +++ b/cg/f23.trr @@ -1,5 +1,5 @@ 23 -50 +53 ANNOES|9|4|0|Codice esercizio NUMREG|3|7|0|Numero di operazione DATAREG|5|8|0|Data operazione @@ -36,7 +36,7 @@ CORRVALUTA|4|18|3|Corrispettivo in valuta intra-comunitario DATACOMPI|5|8|0|Data di competenza intra-comunitaria OCFPI|1|16|0|Codice cliente / fornitore occasionale CODPAG|1|4|0|Codice pagamento -INVIATO|8|1|0|Inviato ad altra contabilita' +INVIATO|8|1|0|Inviato ad altra contabilità INVIVA|8|1|0|Inviata la parte IVA ad altra contabilita' SCARCON|8|1|0|Scaricata la contabilitá TNUMREG|3|7|0|Numero di registrazione temporaneo per ricezioni @@ -47,9 +47,12 @@ DCODNUM|1|4|0|Documento originale CODNUM DNDOC|3|7|0|Documento originale NDOC DATAINC|5|8|0|Data di incasso per liquidazione differita LIQDIFF|8|1|0|Flag di movimento a liquidazione differita +MODPAG|2|1|0|Modalità di pagamento 1=Non frazionato; 2=Frazionato; 3=Periodico CONTRATTO|1|18|0|Contratto con importo > 3000 Euro +DATARETT|5|8|0|Data documento rettificato +NUMRETT|1|7|0|Numero documento rettificato +ANNOFE|2|4|0|Anno invio definitivo dati rilevanti CONTSEP|1|6|0|Contabilità separata -MODPAG|2|1|0|Modalità di pagamento per contratto > 3000 Euro 4 NUMREG| DATAREG+NUMREG|X