diff --git a/src/fp/fp0700.cpp b/src/fp/fp0700.cpp index fe94d1842..a20fe403b 100644 --- a/src/fp/fp0700.cpp +++ b/src/fp/fp0700.cpp @@ -34,7 +34,7 @@ protected: bool on_key(KEY key) override; bool check_not_empty(); bool check_full_fields() const; - void set_err_paf(); + void delete_paf(); void fill(); void init(); void force_reload_sheet(); @@ -129,7 +129,7 @@ void TPAR_mask::fill() TString query; const bool diagn = get_bool(F_DIAGN); - enable(DLG_OK, filter_selected.empty() || filter_selected == "E" || filter_selected == "X"); + enable(DLG_OK, filter_selected.empty() || filter_selected == "E" || filter_selected == "X" || filter_selected == "D"); enable(DLG_PRINT, true); enable(DLG_SAVEREC, (is_f8() && (filter_selected == "X") || filter_selected == "D")); enable(DLG_FINDREC, filter_selected == "D"); @@ -147,6 +147,7 @@ void TPAR_mask::fill() //MY QUERY + //DA RIVEDERE QUESTA QUERY query << "USE " << LF_MOV << " KEY 2\n"; if (dal.ok()) query << "FROM " << MOV_DATAREG << "=" << dal << "\n"; @@ -562,7 +563,7 @@ bool TPAR_mask::on_field_event(TOperable_field& o, TField_event e, long jolly) case DLG_SAVEREC: { if (e == fe_button) - set_err_paf(); + delete_paf(); } break; case DLG_FINDREC: @@ -647,7 +648,7 @@ bool TPAR_mask::check_full_fields() const return true; } -void TPAR_mask::set_err_paf() +void TPAR_mask::delete_paf() { // Vado a riportare sui paf l'errore TSheet_field& sfld = sfield(F_REGS); @@ -670,6 +671,34 @@ void TPAR_mask::set_err_paf() if (chiave_paf_mov(mov, tipodocsdi, hfatt, bfatt) && paf0100f.search(nullptr, hfatt, bfatt)) { TString query; + + query << + "DELETE FROM PAF0100F WHERE P1_KEYHEADERFATT = '" << hfatt << "' AND P1_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF0200F WHERE P2_KEYHEADERFATT = '" << hfatt << "' AND P2_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF0400F WHERE P4_KEYHEADERFATT = '" << hfatt << "' AND P4_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF0700F WHERE P7_KEYHEADERFATT = '" << hfatt << "' AND P7_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF0800F WHERE P8_KEYHEADERFATT = '" << hfatt << "' AND P8_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF1000F WHERE P0_KEYHEADERFATT = '" << hfatt << "' AND P0_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF1100F WHERE PA_KEYHEADERFATT = '" << hfatt << "' AND PA_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF1200F WHERE PB_KEYHEADERFATT = '" << hfatt << "' AND PB_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF1400F WHERE PD_KEYHEADERFATT = '" << hfatt << "' AND PD_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF1600F WHERE PF_KEYHEADERFATT = '" << hfatt << "' AND PF_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF1700F WHERE PG_KEYHEADERFATT = '" << hfatt << "' AND PG_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF1800F WHERE PI_KEYHEADERFATT = '" << hfatt << "' AND PI_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF1900F WHERE PY_KEYHEADERFATT = '" << hfatt << "' AND PY_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF2000F WHERE PJ_KEYHEADERFATT = '" << hfatt << "' AND PJ_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF2100F WHERE PK_KEYHEADERFATT = '" << hfatt << "' AND PK_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF2200F WHERE PL_KEYHEADERFATT = '" << hfatt << "' AND PL_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF2400F WHERE PN_KEYHEADERFATT = '" << hfatt << "' AND PN_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF2500F WHERE PO_KEYHEADERFATT = '" << hfatt << "' AND PO_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF2600F WHERE PP_KEYHEADERFATT = '" << hfatt << "' AND PP_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF2700F WHERE PQ_KEYHEADERFATT = '" << hfatt << "' AND PQ_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF3000F WHERE PT_KEYHEADERFATT = '" << hfatt << "' AND PT_KEYBODYFATT = '" << bfatt << "';\n" << + "DELETE FROM PAF3200F WHERE PU_KEYHEADERFATT = '" << hfatt << "' AND PU_KEYBODYFATT = '" << bfatt << "';\n" << + // PAFW3 non ha il flag di gestione + "DELETE FROM PAFW300F WHERE PW_KEYHEADERFATT = '" << hfatt << "' AND PW_KEYBODYFATT = '" << bfatt << "';\n"; + + /* query << "UPDATE PAF0100F SET P1_GESTIONE = 'E', P1_KEYPRGINVIO = 'DELETED' WHERE P1_KEYHEADERFATT = '" << hfatt << "' AND P1_KEYBODYFATT = '" << bfatt << "';\n" << "UPDATE PAF0200F SET P2_GESTIONE = 'E', P2_KEYPRGINVIO = 'DELETED' WHERE P2_KEYHEADERFATT = '" << hfatt << "' AND P2_KEYBODYFATT = '" << bfatt << "';\n" << @@ -679,7 +708,7 @@ void TPAR_mask::set_err_paf() "UPDATE PAF1000F SET P0_GESTIONE = 'E', P0_KEYPRGINVIO = 'DELETED' WHERE P0_KEYHEADERFATT = '" << hfatt << "' AND P0_KEYBODYFATT = '" << bfatt << "';\n" << "UPDATE PAF1100F SET PA_GESTIONE = 'E', PA_KEYPRGINVIO = 'DELETED' WHERE PA_KEYHEADERFATT = '" << hfatt << "' AND PA_KEYBODYFATT = '" << bfatt << "';\n" << "UPDATE PAF1200F SET PB_GESTIONE = 'E', PB_KEYPRGINVIO = 'DELETED' WHERE PB_KEYHEADERFATT = '" << hfatt << "' AND PB_KEYBODYFATT = '" << bfatt << "';\n" << - "UPDATE PAF1400F SET PB_GESTIONE = 'E', PB_KEYPRGINVIO = 'DELETED' WHERE PB_KEYHEADERFATT = '" << hfatt << "' AND PB_KEYBODYFATT = '" << bfatt << "';\n" << + "UPDATE PAF1400F SET PD_GESTIONE = 'E', PD_KEYPRGINVIO = 'DELETED' WHERE PD_KEYHEADERFATT = '" << hfatt << "' AND PD_KEYBODYFATT = '" << bfatt << "';\n" << "UPDATE PAF1600F SET PF_GESTIONE = 'E', PF_KEYPRGINVIO = 'DELETED' WHERE PF_KEYHEADERFATT = '" << hfatt << "' AND PF_KEYBODYFATT = '" << bfatt << "';\n" << "UPDATE PAF1700F SET PG_GESTIONE = 'E', PG_KEYPRGINVIO = 'DELETED' WHERE PG_KEYHEADERFATT = '" << hfatt << "' AND PG_KEYBODYFATT = '" << bfatt << "';\n" << "UPDATE PAF1800F SET PI_GESTIONE = 'E', PI_KEYPRGINVIO = 'DELETED' WHERE PI_KEYHEADERFATT = '" << hfatt << "' AND PI_KEYBODYFATT = '" << bfatt << "';\n" << @@ -695,6 +724,7 @@ void TPAR_mask::set_err_paf() "UPDATE PAF3200F SET PU_GESTIONE = 'E', PU_KEYPRGINVIO = 'DELETED' WHERE PU_KEYHEADERFATT = '" << hfatt << "' AND PU_KEYBODYFATT = '" << bfatt << "';\n" << // PAFW3 non ha il flag di gestione "UPDATE PAFW300F SET PW_KEYPRGINVIO = 'DELETED' WHERE PW_KEYHEADERFATT = '" << hfatt << "' AND PW_KEYBODYFATT = '" << bfatt << "';\n"; + */ if (!fp_db().sq_set_exec(query)) { TString err = "Impossibile salvare la regolarizzazione "; err << nreg << "\nVerrà saltata."; diff --git a/src/fp/fp0700a.h b/src/fp/fp0700a.h index b254881ca..9e3a5156d 100644 --- a/src/fp/fp0700a.h +++ b/src/fp/fp0700a.h @@ -1,8 +1,8 @@ #define F_DATAINI 401 #define F_DATAEND 402 #define F_REGSEL 403 -#define F_CAUSALI_TIPO 404 -#define F_TIPO_SDI 405 +#define F_CAUSALI_TIPO 404 +#define F_TIPO_SDI 405 #define F_REGS 406 #define F_DIAGN 407 #define START_MASK F_DATAINI diff --git a/src/fp/fp0700a.uml b/src/fp/fp0700a.uml index e465665e5..a565c52ef 100644 --- a/src/fp/fp0700a.uml +++ b/src/fp/fp0700a.uml @@ -71,12 +71,12 @@ END RADIOBUTTON F_REGSEL 7 80 BEGIN - PROMPT 1 3 "Registrazioni da visualizzare" + PROMPT 1 3 "@bIntegrazioni da visualizzare" ITEM "|Da inviare" - ITEM "X|XML Generato" - ITEM "N|Notificato" + //ITEM "N|Notificato" + ITEM "D|Pre-Diagosticate" ITEM "E|In errore" - ITEM "D|Diag." + ITEM "X|XML Generato" FLAGS "Z" END @@ -90,7 +90,7 @@ END LIST F_TIPO_SDI 40 BEGIN - PROMPT 1 14 "Tipo documento SDI " + PROMPT 1 13 "@bDocumento SDI da generare" ITEM "TD16|TD16 Integraz. fatt. rev.ch. interno" ITEM "TD17|TD17 Integ./autof. acq. servizi estero" ITEM "TD18|TD18 Integ. acq. beni intracomunitari" @@ -98,10 +98,16 @@ BEGIN ITEM "TD20|TD20 Autofattura" END - BOOLEAN F_DIAGN - BEGIN - PROMPT 1 15 "Esporta in stato diagnosticato" - END +GROUPBOX DLG_NULL 80 4 +BEGIN + PROMPT 1 14 "@bConfigurazione" + GROUP 1 +END + +BOOLEAN F_DIAGN +BEGIN + PROMPT 2 15 "Esporta in stato diagnosticato" +END STRING DLG_PROFILE 50 BEGIN diff --git a/src/fp/fplib.h b/src/fp/fplib.h index 43d7cdad3..8be06630e 100644 --- a/src/fp/fplib.h +++ b/src/fp/fplib.h @@ -694,9 +694,9 @@ protected: bool add_row_alleg(TFilename& file, long& nprogr, TPaf_record& paf); void set_qta_prezzo(TPaf_record& paf1800f, const TMovimento_contabile& mov, int n_row) const; void add_ritenuta(const TMovimento_contabile & mov, int n_row, TPaf_record& paf0700f) const; - bool add_riepilogo_iva(const TMovimento_contabile mov, int n_riga); + bool add_riepilogo_iva(const TMovimento_contabile & mov, int n_riga); - const char * stato_paf() const { return _definitivo && !get_no_export_pronto() ? "P" : "D"; } + const char * stato_paf() const { return _definitivo ? "P" : "D"; } const TFirm& TReg_fp::get_firm(){return prefix().firm();} diff --git a/src/fp/fplib01.cpp b/src/fp/fplib01.cpp index b0cba2089..c41d0ede8 100644 --- a/src/fp/fplib01.cpp +++ b/src/fp/fplib01.cpp @@ -3043,13 +3043,14 @@ bool TReg_fp::initialize(const TMovimento_contabile& mov) _log.log(-1, _bfatt); // Controllo se il documento almeno in stato di stampa _is_pa = mov.clifo().get_int("ALLEG") == 7; + _pec = _ditta.pec(); - if (_ditta.coddest().empty()) + if (_ditta.coddest().empty() && _pec.empty()) _coddest = "0000000"; else _coddest = _ditta.coddest(); - _pec = _ditta.pec(); + _enapec = _coddest == "0000000" && _pec.full(); _privato = _coddest.len() != 6; // Azzero indici @@ -3148,7 +3149,7 @@ bool TReg_fp::add_row_alleg(TFilename& file, long& nprogr, TPaf_record& paf) return ok; } -bool TReg_fp::add_riepilogo_iva(const TMovimento_contabile mov, int n_riga) +bool TReg_fp::add_riepilogo_iva(const TMovimento_contabile & mov, int n_riga) { TPaf_record& paf2200f = _paf_container.get_paf("PAF2200F"); const TRectype& rec_iva = mov.iva()[n_riga]; @@ -3190,6 +3191,9 @@ bool TReg_fp::export_paf0100f() tel << get_firm().get(NDT_PTEL) << get_firm().get(NDT_TEL); paf0100f.set("P1_TELEFONO", tel); paf0100f.set("P1_MAIL", get_firm().get(NDT_MAIL)); + + const char* c = stato_paf(); + paf0100f.set("P1_GESTIONE", stato_paf()); paf0100f.set("P1_ERRINT", ""); // @@ -3220,17 +3224,17 @@ bool TReg_fp::reg_to_paf(const TMovimento_contabile& mov) // TPaf_record& paf0200f = _paf_container.get_paf("PAF0200F"); - const TAnagrafica & fornitore = mov.clifo().anagrafica(); + const TAnagrafica& fornitore = mov.clifo().anagrafica(); if (!paf0200f.is_full()) { if (fornitore.partita_IVA().full()) { - paf0200f.set("P2_FISCIVAPAESE", fornitore.stato_partita_IVA()); - paf0200f.set("P2_FISCIVACOD", fornitore.partita_IVA()); + paf0200f.set("P2_FISCIVAPAESE", fornitore.stato_partita_IVA()); + paf0200f.set("P2_FISCIVACOD", fornitore.partita_IVA()); } paf0200f.set("P2_CODFISCALE", fornitore.codice_fiscale()); // - + const bool df = _ditta.fisica(); if (_ditta.fisica()) @@ -3266,85 +3270,85 @@ bool TReg_fp::reg_to_paf(const TMovimento_contabile& mov) paf0200f.set("P2_SEDEPROV", fornitore.provincia_residenza()); // } } - - ok &= insert(paf0200f); - - // - // - // - TPaf_record& paf0400f = _paf_container.get_paf("PAF0400F"); - TString stato = _ditta.stato_partita_IVA(); - TTable tab_codiso("%SCE"); - tab_codiso.tab(); - tab_codiso.put("CODTAB", stato); tab_codiso.read(); - TString piva = _ditta.partita_IVA(); - TString fisc = _ditta.codice_fiscale(); + ok &= insert(paf0200f); - if (!stato.full()) - stato = "IT"; - if (tab_codiso.get_bool("B0") || stato == "IT") // Cliente EU + // + // + // + TPaf_record& paf0400f = _paf_container.get_paf("PAF0400F"); + + TString stato = _ditta.stato_partita_IVA(); + TTable tab_codiso("%SCE"); + tab_codiso.tab(); + tab_codiso.put("CODTAB", stato); tab_codiso.read(); + TString piva = _ditta.partita_IVA(); + TString fisc = _ditta.codice_fiscale(); + + if (!stato.full()) + stato = "IT"; + if (tab_codiso.get_bool("B0") || stato == "IT") // Cliente EU + { + if (piva.full()) { - if (piva.full()) + if (piva.len() == 11 && (piva[0] == '8' || piva[0] == '9')) { - if (piva.len() == 11 && (piva[0] == '8' || piva[0] == '9')) - { - fisc = piva; - piva.cut(0); - } - } - else if (fisc.full() && fisc.len() == 11 && (fisc[0] == '8' || fisc[0] == '9')) + fisc = piva; piva.cut(0); - - if (piva.full()) - { - paf0400f.set("P4_FISCIVAPAESE", stato); // - paf0400f.set("P4_FISCIVACOD", piva); // } - if (fisc.full()) - paf0400f.set("P4_CODFISC", fisc); // - } - else // Cliente EXTRA-EU sempre nel campo della partita iva sui paf - { - paf0400f.set("P4_FISCIVAPAESE", stato); - if (fisc.full()) // Guardo prima l'id fiscale, perche' e' qui che dovrebbero stare in Campo - paf0400f.set("P4_FISCIVACOD", fisc); - else if (piva.full()) // Altrimenti dovrebbe essere nella partita iva - paf0400f.set("P4_FISCIVACOD", piva); } + else if (fisc.full() && fisc.len() == 11 && (fisc[0] == '8' || fisc[0] == '9')) + piva.cut(0); - if (_ditta.fisica() && _ditta.nome().full()) + if (piva.full()) { - paf0400f.set("P4_ANANOME", _ditta.nome()); // - paf0400f.set("P4_ANACOGNOME", _ditta.cognome()); // + paf0400f.set("P4_FISCIVAPAESE", stato); // + paf0400f.set("P4_FISCIVACOD", piva); // } - else - { - paf0400f.set("P4_ANADENOM", _ditta.ragione_sociale()); // - } - // DatiSede - paf0400f.set("P4_SEDEIND", _ditta.via_residenza()); - paf0400f.set("P4_SEDENRCIVICO", _ditta.civico_residenza().left(8)); - paf0400f.set("P4_SEDECAP", _ditta.CAP_residenza()); - paf0400f.set("P4_SEDECOMUNE", _ditta.comune_residenza()); - paf0400f.set("P4_SEDEPROV", _ditta.provincia_residenza()); - paf0400f.set("P4_SEDENAZ", _ditta.stato_residenza_ISO()); + if (fisc.full()) + paf0400f.set("P4_CODFISC", fisc); // + } + else // Cliente EXTRA-EU sempre nel campo della partita iva sui paf + { + paf0400f.set("P4_FISCIVAPAESE", stato); + if (fisc.full()) // Guardo prima l'id fiscale, perche' e' qui che dovrebbero stare in Campo + paf0400f.set("P4_FISCIVACOD", fisc); + else if (piva.full()) // Altrimenti dovrebbe essere nella partita iva + paf0400f.set("P4_FISCIVACOD", piva); + } - // Titolo onorifico! - const TString& titolo = (mov.clifo().vendite().get(CFV_TITOLO)); + if (_ditta.fisica() && _ditta.nome().full()) + { + paf0400f.set("P4_ANANOME", _ditta.nome()); // + paf0400f.set("P4_ANACOGNOME", _ditta.cognome()); // + } + else + { + paf0400f.set("P4_ANADENOM", _ditta.ragione_sociale()); // + } + // DatiSede + paf0400f.set("P4_SEDEIND", _ditta.via_residenza()); + paf0400f.set("P4_SEDENRCIVICO", _ditta.civico_residenza().left(8)); + paf0400f.set("P4_SEDECAP", _ditta.CAP_residenza()); + paf0400f.set("P4_SEDECOMUNE", _ditta.comune_residenza()); + paf0400f.set("P4_SEDEPROV", _ditta.provincia_residenza()); + paf0400f.set("P4_SEDENAZ", _ditta.stato_residenza_ISO()); - if (titolo.full()) - paf0400f.set("P4_ANATITOLO", cache().get("TIT", titolo, "S0")); - paf0400f.set("P4_GESTIONE", stato_paf()); - ok &= insert(paf0400f); - // + // Titolo onorifico! + const TString& titolo = (mov.clifo().vendite().get(CFV_TITOLO)); + + if (titolo.full()) + paf0400f.set("P4_ANATITOLO", cache().get("TIT", titolo, "S0")); + paf0400f.set("P4_GESTIONE", stato_paf()); + ok &= insert(paf0400f); + // TPaf_record& paf0700f = _paf_container.get_paf("PAF0700F"); paf0700f.set("P7_TIPODOC", _tipo_doc_sdi); paf0700f.set("P7_DIVISA", "EUR"); // Fisso su euro in quanto effettuiamo il cambio paf0700f.set("P7_DATA", mov.get_date(MOV_DATAREG)); // sembra sempre la data di registrazione visto che è na data di ricezione TString numdoc = mov.get(MOV_NUMDOCEXT); - if (numdoc.blank()) + if (numdoc.blank()) numdoc = mov.get(MOV_NUMDOC); else { @@ -3352,7 +3356,7 @@ bool TReg_fp::reg_to_paf(const TMovimento_contabile& mov) numdoc = numdoc.mid(30); } - paf0700f.set("P7_NUMERO", numdoc); + paf0700f.set("P7_NUMERO", numdoc); paf0700f.set("P7_GESTIONE", stato_paf()); TPaf_record& paf2700f = _paf_container.get_paf("PAF2700F"); @@ -3378,18 +3382,18 @@ bool TReg_fp::reg_to_paf(const TMovimento_contabile& mov) if (nregcoll > 0L) { - const TRectype & movcoll = cache().get(LF_MOV, nregcoll); + const TRectype& movcoll = cache().get(LF_MOV, nregcoll); idsdi = movcoll.get(MOV_IDDOCSDI); datasdi = movcoll.get_date(MOV_DATADOCSDI); } } - if (idsdi.blank()) + if (idsdi.blank()) { idsdi = mov.get(MOV_NUMDOC); datasdi = mov.get_date(MOV_DATADOC); } - + paf1400f.set("PD_IDDOC", idsdi); paf1400f.set("PD_DATADOC", datasdi); ok &= insert(paf1400f); @@ -3414,9 +3418,9 @@ bool TReg_fp::reg_to_paf(const TMovimento_contabile& mov) reset(paf1800f); paf1800f.set("PI_NUMEROLINEA", (long)i); - //PI_TIPOCESSPREST CHAR(2) NOT NULL DEFAULT '', ci va? - //PI_DESCRIZIONE CHAR(100) NOT NULL DEFAULT '', - //PI_RIFAMMINISTR CHAR(20) NOT NULL DEFAULT '', + //PI_TIPOCESSPREST CHAR(2) NOT NULL DEFAULT '', ci va? + //PI_DESCRIZIONE CHAR(100) NOT NULL DEFAULT '', + //PI_RIFAMMINISTR CHAR(20) NOT NULL DEFAULT '', paf1800f.set("PI_QUANTITA", 1l); paf1800f.set("PI_PREZZOUNIT", rec_iva.get(RMI_IMPONIBILE)); @@ -3430,8 +3434,6 @@ bool TReg_fp::reg_to_paf(const TMovimento_contabile& mov) ok &= insert(paf1800f); add_riepilogo_iva(mov, i); - - reset(paf3000f); paf3000f.set("PT_RIFNUMLINEA", (long)i); paf3000f.set("PT_COMMENTO", "");//TODO COSA DOBBIAMO METTERE NELLA DESCRIZIONE IVA CHE NON C'è @@ -3440,33 +3442,31 @@ bool TReg_fp::reg_to_paf(const TMovimento_contabile& mov) if (ok) ok &= insert(paf3000f); if (ok) ok &= insert(paf0700f); - - // Tabella di non invio XML - TPaf_record& pafw300f = _paf_container.get_paf("PAFW300F"); - pafw300f.set("PW_TIPODOC", ""); //TODO PASSARE IL TIPO DOCUMENTO DELLA MASK NEL COSTRUTTORE - pafw300f.set("PW_TIPONUM", ""); //TODO COSA CI METTIAMO NEL TIPO NUM - pafw300f.set("PW_NUMERO", mov.get(MOV_NUMDOC)); - pafw300f.set("PW_DATA", mov.get_date(MOV_DATADOC)); - if (!_definitivo) - pafw300f.set("PW_CODSDI", "**********"); - pafw300f.set("PW_CDEST", _coddest); - pafw300f.set("PW_RAGSOC", fornitore.ragione_sociale().left(35)); - pafw300f.set("PW_PAESE", fornitore.stato_residenza_ISO()); - pafw300f.set("PW_CODICE", fornitore.codice_fiscale_estero()); - pafw300f.set("PW_CFISCA", fornitore.codice_fiscale()); - pafw300f.set("PW_DENOM", fornitore.ragione_sociale()); - if (fornitore.fisica() && fornitore.nome().full()) - { - pafw300f.set("PW_NOME", fornitore.nome()); - pafw300f.set("PW_COGN", fornitore.cognome()); - } - else - pafw300f.set("PW_RAGSOC", fornitore.ragione_sociale().left(35)); - pafw300f.set("PW_IMPO", mov.get_real(MOV_TOTDOC)); //TODO controllare ????? - ok &= insert(pafw300f); - return _to_commit = (ok && save_paf()); } - return ok; + // Tabella di non invio XML + TPaf_record& pafw300f = _paf_container.get_paf("PAFW300F"); + pafw300f.set("PW_TIPODOC", ""); //TODO PASSARE IL TIPO DOCUMENTO DELLA MASK NEL COSTRUTTORE + pafw300f.set("PW_TIPONUM", ""); //TODO COSA CI METTIAMO NEL TIPO NUM + pafw300f.set("PW_NUMERO", mov.get(MOV_NUMDOC)); + pafw300f.set("PW_DATA", mov.get_date(MOV_DATADOC)); + if (!_definitivo) + pafw300f.set("PW_CODSDI", "**********"); + pafw300f.set("PW_CDEST", _coddest); + pafw300f.set("PW_RAGSOC", fornitore.ragione_sociale().left(35)); + pafw300f.set("PW_PAESE", fornitore.stato_residenza_ISO()); + pafw300f.set("PW_CODICE", fornitore.codice_fiscale_estero()); + pafw300f.set("PW_CFISCA", fornitore.codice_fiscale()); + pafw300f.set("PW_DENOM", fornitore.ragione_sociale()); + if (fornitore.fisica() && fornitore.nome().full()) + { + pafw300f.set("PW_NOME", fornitore.nome()); + pafw300f.set("PW_COGN", fornitore.cognome()); + } + else + pafw300f.set("PW_RAGSOC", fornitore.ragione_sociale().left(35)); + pafw300f.set("PW_IMPO", mov.get_real(MOV_TOTDOC)); //TODO controllare ????? + ok &= insert(pafw300f); + return _to_commit = (ok && save_paf()); } bool TReg_fp::reg_to_paf(long n_mov)