Patch level : 12.0 nopatch

Files correlati     : fp0700.cpp, fp0700a.h, fp0700a.uml, fplib.h, fplib01.cpp
Commento:
Modifiche Integrazioni per reinvio modifica provvisorio
This commit is contained in:
Simoe 2022-02-18 11:21:01 +01:00
parent 8c293c2964
commit a08d9fc134
5 changed files with 157 additions and 121 deletions

View File

@ -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.";

View File

@ -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

View File

@ -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

View File

@ -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();}

View File

@ -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", "");
// </DatiTrassmissione>
@ -3220,17 +3224,17 @@ bool TReg_fp::reg_to_paf(const TMovimento_contabile& mov)
// <CedentePrestatore>
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);
// </CedentePrestatore>
// </CedentePrestatore>
// <CessionarioCommittente>
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
// </CedentePrestatore>
// </CedentePrestatore>
// <CessionarioCommittente>
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);
// </CessionarioCommittente>
// 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);
// </CessionarioCommittente>
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)