Patch level : 12.0
Files correlati : fp Commento : - Spostate chiavi tabella a campi della classe, così si evita di passarseli tutto il tempo - Aggiunte le spese incasso - Aggiunto TD20
This commit is contained in:
parent
3e6707c33e
commit
7241dc5d4c
@ -836,8 +836,9 @@ bool TDoc_fp::add_row_alleg(TFilename& file, long& nprogr, TPaf_record& paf)
|
|||||||
|
|
||||||
bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
||||||
{
|
{
|
||||||
TString8 hfatt; // Codice univoco di 6 caratteri dell'ufficio P.A. o di 7 caratteri per un privato
|
// Azzero
|
||||||
TString20 bfatt; // Codice univoco di 20 caratteri del documento
|
_hfatt.cut(0);
|
||||||
|
_bfatt.cut(0);
|
||||||
|
|
||||||
TAnagrafica clifo(doc.clifor().tipo(), doc.clifor().codice());
|
TAnagrafica clifo(doc.clifor().tipo(), doc.clifor().codice());
|
||||||
|
|
||||||
@ -853,9 +854,9 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
const bool privato = coddest.len() != 6;
|
const bool privato = coddest.len() != 6;
|
||||||
bool ok = true;
|
bool ok = true;
|
||||||
|
|
||||||
if (!chiave_paf(doc, hfatt, bfatt))
|
if (!chiave_paf(doc, _hfatt, _bfatt))
|
||||||
return false;
|
return false;
|
||||||
log(-1, bfatt);
|
log(-1, _bfatt);
|
||||||
|
|
||||||
const TFirm& firm = prefix().firm();
|
const TFirm& firm = prefix().firm();
|
||||||
const char* const paese = "IT";
|
const char* const paese = "IT";
|
||||||
@ -863,8 +864,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
|
|
||||||
// <DatiTrassmissione>
|
// <DatiTrassmissione>
|
||||||
TPaf_record paf0100f("PAF0100F");
|
TPaf_record paf0100f("PAF0100F");
|
||||||
paf0100f.set("P1_KEYHEADERFATT", hfatt);
|
paf0100f.set("P1_KEYHEADERFATT", _hfatt);
|
||||||
paf0100f.set("P1_KEYBODYFATT", bfatt);
|
paf0100f.set("P1_KEYBODYFATT", _bfatt);
|
||||||
remove(paf0100f);
|
remove(paf0100f);
|
||||||
|
|
||||||
paf0100f.set("P1_TRASMITTPAESE", paese);
|
paf0100f.set("P1_TRASMITTPAESE", paese);
|
||||||
@ -884,8 +885,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
{
|
{
|
||||||
// <Datipec>
|
// <Datipec>
|
||||||
TPaf_record paf3200f("PAF3200F");
|
TPaf_record paf3200f("PAF3200F");
|
||||||
paf3200f.set("PU_KEYHEADERFATT", hfatt);
|
paf3200f.set("PU_KEYHEADERFATT", _hfatt);
|
||||||
paf3200f.set("PU_KEYBODYFATT", bfatt);
|
paf3200f.set("PU_KEYBODYFATT", _bfatt);
|
||||||
remove(paf3200f);
|
remove(paf3200f);
|
||||||
paf3200f.set("PU_PEC", pec);
|
paf3200f.set("PU_PEC", pec);
|
||||||
ok &= insert(paf3200f);
|
ok &= insert(paf3200f);
|
||||||
@ -894,8 +895,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
|
|
||||||
// <CedentePrestatore>
|
// <CedentePrestatore>
|
||||||
TPaf_record paf0200f("PAF0200F");
|
TPaf_record paf0200f("PAF0200F");
|
||||||
paf0200f.set("P2_KEYHEADERFATT", hfatt);
|
paf0200f.set("P2_KEYHEADERFATT", _hfatt);
|
||||||
paf0200f.set("P2_KEYBODYFATT", bfatt);
|
paf0200f.set("P2_KEYBODYFATT", _bfatt);
|
||||||
remove(paf0200f);
|
remove(paf0200f);
|
||||||
|
|
||||||
if (_ditta.partita_IVA().full())
|
if (_ditta.partita_IVA().full())
|
||||||
@ -967,8 +968,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
// <CessionarioCommittente>
|
// <CessionarioCommittente>
|
||||||
|
|
||||||
TPaf_record paf0400f("PAF0400F");
|
TPaf_record paf0400f("PAF0400F");
|
||||||
paf0400f.set("P4_KEYHEADERFATT", hfatt);
|
paf0400f.set("P4_KEYHEADERFATT", _hfatt);
|
||||||
paf0400f.set("P4_KEYBODYFATT", bfatt);
|
paf0400f.set("P4_KEYBODYFATT", _bfatt);
|
||||||
remove(paf0400f);
|
remove(paf0400f);
|
||||||
|
|
||||||
if (cliente.partita_IVA().full())
|
if (cliente.partita_IVA().full())
|
||||||
@ -1006,8 +1007,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
|
|
||||||
// <DatiGenerali>
|
// <DatiGenerali>
|
||||||
TPaf_record paf0700f("PAF0700F");
|
TPaf_record paf0700f("PAF0700F");
|
||||||
paf0700f.set("P7_KEYHEADERFATT", hfatt);
|
paf0700f.set("P7_KEYHEADERFATT", _hfatt);
|
||||||
paf0700f.set("P7_KEYBODYFATT", bfatt);
|
paf0700f.set("P7_KEYBODYFATT", _bfatt);
|
||||||
remove(paf0700f);
|
remove(paf0700f);
|
||||||
paf0700f.set("P7_TIPODOC", doc.tipo().tipo_doc_sdi());
|
paf0700f.set("P7_TIPODOC", doc.tipo().tipo_doc_sdi());
|
||||||
paf0700f.set("P7_DIVISA", "EUR"); // Aggiungere codice ISO 4217 a tabella divise (%VAL)
|
paf0700f.set("P7_DIVISA", "EUR"); // Aggiungere codice ISO 4217 a tabella divise (%VAL)
|
||||||
@ -1031,8 +1032,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
|
|
||||||
// <ScontoMaggiorazione>
|
// <ScontoMaggiorazione>
|
||||||
TPaf_record paf0900f("PAF0900F");
|
TPaf_record paf0900f("PAF0900F");
|
||||||
paf0900f.set("P9_KEYHEADERFATT", hfatt);
|
paf0900f.set("P9_KEYHEADERFATT", _hfatt);
|
||||||
paf0900f.set("P9_KEYBODYFATT", bfatt);
|
paf0900f.set("P9_KEYBODYFATT", _bfatt);
|
||||||
remove(paf0900f);
|
remove(paf0900f);
|
||||||
|
|
||||||
TString80 sconto_expr = doc.get(DOC_SCONTOPERC);
|
TString80 sconto_expr = doc.get(DOC_SCONTOPERC);
|
||||||
@ -1065,8 +1066,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
|
|
||||||
// <DatiGenerali>
|
// <DatiGenerali>
|
||||||
TPaf_record paf2700f("PAF2700F");
|
TPaf_record paf2700f("PAF2700F");
|
||||||
paf2700f.set("PQ_KEYHEADERFATT", hfatt);
|
paf2700f.set("PQ_KEYHEADERFATT", _hfatt);
|
||||||
paf2700f.set("PQ_KEYBODYFATT", bfatt);
|
paf2700f.set("PQ_KEYBODYFATT", _bfatt);
|
||||||
remove(paf2700f);
|
remove(paf2700f);
|
||||||
paf2700f.set("PQ_IMPTOTDOC", doc.totale_doc());
|
paf2700f.set("PQ_IMPTOTDOC", doc.totale_doc());
|
||||||
|
|
||||||
@ -1089,8 +1090,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
|
|
||||||
// Azzera DDT
|
// Azzera DDT
|
||||||
TPaf_record paf1600f("PAF1600F");
|
TPaf_record paf1600f("PAF1600F");
|
||||||
paf1600f.set("PF_KEYHEADERFATT", hfatt);
|
paf1600f.set("PF_KEYHEADERFATT", _hfatt);
|
||||||
paf1600f.set("PF_KEYBODYFATT", bfatt);
|
paf1600f.set("PF_KEYBODYFATT", _bfatt);
|
||||||
remove(paf1600f);
|
remove(paf1600f);
|
||||||
|
|
||||||
// Fuori dallo scope per dopo
|
// Fuori dallo scope per dopo
|
||||||
@ -1101,22 +1102,22 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
// SEMPRE
|
// SEMPRE
|
||||||
// Azzera contratti
|
// Azzera contratti
|
||||||
TPaf_record paf1000f("PAF1000F");
|
TPaf_record paf1000f("PAF1000F");
|
||||||
paf1000f.set("P0_KEYHEADERFATT", hfatt);
|
paf1000f.set("P0_KEYHEADERFATT", _hfatt);
|
||||||
paf1000f.set("P0_KEYBODYFATT", bfatt);
|
paf1000f.set("P0_KEYBODYFATT", _bfatt);
|
||||||
paf1000f.set("P0_RIFNUMLINEA", 0L);
|
paf1000f.set("P0_RIFNUMLINEA", 0L);
|
||||||
remove(paf1000f);
|
remove(paf1000f);
|
||||||
|
|
||||||
// Azzera convenzioni
|
// Azzera convenzioni
|
||||||
TPaf_record paf1100f("PAF1100F");
|
TPaf_record paf1100f("PAF1100F");
|
||||||
paf1100f.set("PA_KEYHEADERFATT", hfatt);
|
paf1100f.set("PA_KEYHEADERFATT", _hfatt);
|
||||||
paf1100f.set("PA_KEYBODYFATT", bfatt);
|
paf1100f.set("PA_KEYBODYFATT", _bfatt);
|
||||||
paf1100f.set("PA_RIFNUMLINEA", 0L);
|
paf1100f.set("PA_RIFNUMLINEA", 0L);
|
||||||
remove(paf1100f);
|
remove(paf1100f);
|
||||||
|
|
||||||
// Azzera ordini
|
// Azzera ordini
|
||||||
TPaf_record paf1200f("PAF1200F");
|
TPaf_record paf1200f("PAF1200F");
|
||||||
paf1200f.set("PB_KEYHEADERFATT", hfatt);
|
paf1200f.set("PB_KEYHEADERFATT", _hfatt);
|
||||||
paf1200f.set("PB_KEYBODYFATT", bfatt);
|
paf1200f.set("PB_KEYBODYFATT", _bfatt);
|
||||||
paf1200f.set("PB_RIFNUMLINEA", 0L);
|
paf1200f.set("PB_RIFNUMLINEA", 0L);
|
||||||
remove(paf1200f);
|
remove(paf1200f);
|
||||||
|
|
||||||
@ -1179,23 +1180,23 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
// <DatiBeniServizi>
|
// <DatiBeniServizi>
|
||||||
|
|
||||||
TPaf_record paf1800f("PAF1800F");
|
TPaf_record paf1800f("PAF1800F");
|
||||||
paf1800f.set("PI_KEYHEADERFATT", hfatt);
|
paf1800f.set("PI_KEYHEADERFATT", _hfatt);
|
||||||
paf1800f.set("PI_KEYBODYFATT", bfatt);
|
paf1800f.set("PI_KEYBODYFATT", _bfatt);
|
||||||
remove(paf1800f); // Cancella tutte le righe documento
|
remove(paf1800f); // Cancella tutte le righe documento
|
||||||
|
|
||||||
TPaf_record paf2000f("PAF2000F");
|
TPaf_record paf2000f("PAF2000F");
|
||||||
paf2000f.set("PJ_KEYHEADERFATT", hfatt);
|
paf2000f.set("PJ_KEYHEADERFATT", _hfatt);
|
||||||
paf2000f.set("PJ_KEYBODYFATT", bfatt);
|
paf2000f.set("PJ_KEYBODYFATT", _bfatt);
|
||||||
remove(paf2000f); // Cancella tutti gli sconti di riga
|
remove(paf2000f); // Cancella tutti gli sconti di riga
|
||||||
|
|
||||||
TPaf_record paf1900f("PAF1900F");
|
TPaf_record paf1900f("PAF1900F");
|
||||||
paf1900f.set("PY_KEYHEADERFATT", hfatt);
|
paf1900f.set("PY_KEYHEADERFATT", _hfatt);
|
||||||
paf1900f.set("PY_KEYBODYFATT", bfatt);
|
paf1900f.set("PY_KEYBODYFATT", _bfatt);
|
||||||
remove(paf1900f); // Cancella tutte le righe articoli del documento
|
remove(paf1900f); // Cancella tutte le righe articoli del documento
|
||||||
|
|
||||||
TPaf_record paf3000f("PAF3000F");
|
TPaf_record paf3000f("PAF3000F");
|
||||||
paf3000f.set("PT_KEYHEADERFATT", hfatt);
|
paf3000f.set("PT_KEYHEADERFATT", _hfatt);
|
||||||
paf3000f.set("PT_KEYBODYFATT", bfatt);
|
paf3000f.set("PT_KEYBODYFATT", _bfatt);
|
||||||
remove(paf3000f);
|
remove(paf3000f);
|
||||||
|
|
||||||
long riga = 0;
|
long riga = 0;
|
||||||
@ -1212,13 +1213,13 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
FOR_EACH_PHYSICAL_RDOC(doc, r, rdoc)
|
FOR_EACH_PHYSICAL_RDOC(doc, r, rdoc)
|
||||||
{
|
{
|
||||||
paf1800f.reset();
|
paf1800f.reset();
|
||||||
paf1800f.set("PI_KEYHEADERFATT", hfatt);
|
paf1800f.set("PI_KEYHEADERFATT", _hfatt);
|
||||||
paf1800f.set("PI_KEYBODYFATT", bfatt);
|
paf1800f.set("PI_KEYBODYFATT", _bfatt);
|
||||||
paf1800f.set("PI_NUMEROLINEA", ++riga);
|
paf1800f.set("PI_NUMEROLINEA", ++riga);
|
||||||
|
|
||||||
paf3000f.reset();
|
paf3000f.reset();
|
||||||
paf3000f.set("PT_KEYHEADERFATT", hfatt);
|
paf3000f.set("PT_KEYHEADERFATT", _hfatt);
|
||||||
paf3000f.set("PT_KEYBODYFATT", bfatt);
|
paf3000f.set("PT_KEYBODYFATT", _bfatt);
|
||||||
paf3000f.set("PT_RIFNUMLINEA", riga);
|
paf3000f.set("PT_RIFNUMLINEA", riga);
|
||||||
paf3000f.set("PT_COMMENTO", descrizione(*rdoc));
|
paf3000f.set("PT_COMMENTO", descrizione(*rdoc));
|
||||||
|
|
||||||
@ -1234,8 +1235,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
if (art.ok())
|
if (art.ok())
|
||||||
{
|
{
|
||||||
paf1900f.reset();
|
paf1900f.reset();
|
||||||
paf1900f.set("PY_KEYHEADERFATT", hfatt);
|
paf1900f.set("PY_KEYHEADERFATT", _hfatt);
|
||||||
paf1900f.set("PY_KEYBODYFATT", bfatt);
|
paf1900f.set("PY_KEYBODYFATT", _bfatt);
|
||||||
paf1900f.set("PY_KEYNLINEA", riga);
|
paf1900f.set("PY_KEYNLINEA", riga);
|
||||||
|
|
||||||
TString& tmp = get_tmp_string();
|
TString& tmp = get_tmp_string();
|
||||||
@ -1323,8 +1324,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
// <DatiDDT>
|
// <DatiDDT>
|
||||||
TPaf_record paf1600f("PAF1600F");
|
TPaf_record paf1600f("PAF1600F");
|
||||||
paf1600f.reset();
|
paf1600f.reset();
|
||||||
paf1600f.set("PF_KEYHEADERFATT", hfatt);
|
paf1600f.set("PF_KEYHEADERFATT", _hfatt);
|
||||||
paf1600f.set("PF_KEYBODYFATT", bfatt);
|
paf1600f.set("PF_KEYBODYFATT", _bfatt);
|
||||||
paf1600f.set("PF_RIFNUMLINEA", (long)r);
|
paf1600f.set("PF_RIFNUMLINEA", (long)r);
|
||||||
paf1600f.set("PF_NUMDDDT", a._numdoc);
|
paf1600f.set("PF_NUMDDDT", a._numdoc);
|
||||||
paf1600f.set("PF_DATADDT", a._datadoc);
|
paf1600f.set("PF_DATADDT", a._datadoc);
|
||||||
@ -1336,8 +1337,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
{
|
{
|
||||||
// <DatiOrdineAcquisto>
|
// <DatiOrdineAcquisto>
|
||||||
TPaf_record paf1000f("PAF1000F");
|
TPaf_record paf1000f("PAF1000F");
|
||||||
paf1000f.set("P0_KEYHEADERFATT", hfatt);
|
paf1000f.set("P0_KEYHEADERFATT", _hfatt);
|
||||||
paf1000f.set("P0_KEYBODYFATT", bfatt);
|
paf1000f.set("P0_KEYBODYFATT", _bfatt);
|
||||||
paf1000f.set("P0_RIFNUMLINEA", (long)r);
|
paf1000f.set("P0_RIFNUMLINEA", (long)r);
|
||||||
paf1000f.set("P0_IDDOC", a._numdoc);
|
paf1000f.set("P0_IDDOC", a._numdoc);
|
||||||
paf1000f.set("P0_DATADOC", a._datadoc);
|
paf1000f.set("P0_DATADOC", a._datadoc);
|
||||||
@ -1417,14 +1418,15 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
if(doc.ha_riga_esenzione())
|
if(doc.ha_riga_esenzione())
|
||||||
{
|
{
|
||||||
const TRiga_documento& riga_es = doc.get_riga_esenzione();
|
const TRiga_documento& riga_es = doc.get_riga_esenzione();
|
||||||
|
|
||||||
paf1800f.reset();
|
paf1800f.reset();
|
||||||
paf1800f.set("PI_KEYHEADERFATT", hfatt);
|
paf1800f.set("PI_KEYHEADERFATT", _hfatt);
|
||||||
paf1800f.set("PI_KEYBODYFATT", bfatt);
|
paf1800f.set("PI_KEYBODYFATT", _bfatt);
|
||||||
paf1800f.set("PI_NUMEROLINEA", ++riga);
|
paf1800f.set("PI_NUMEROLINEA", ++riga);
|
||||||
|
|
||||||
paf3000f.reset();
|
paf3000f.reset();
|
||||||
paf3000f.set("PT_KEYHEADERFATT", hfatt);
|
paf3000f.set("PT_KEYHEADERFATT", _hfatt);
|
||||||
paf3000f.set("PT_KEYBODYFATT", bfatt);
|
paf3000f.set("PT_KEYBODYFATT", _bfatt);
|
||||||
paf3000f.set("PT_RIFNUMLINEA", riga);
|
paf3000f.set("PT_RIFNUMLINEA", riga);
|
||||||
paf3000f.set("PT_COMMENTO", descrizione(riga_es));
|
paf3000f.set("PT_COMMENTO", descrizione(riga_es));
|
||||||
|
|
||||||
@ -1437,16 +1439,16 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Se il bollo va fatto pagare bisogna aggiungere una riga!
|
// Se il bollo va fatto pagare bisogna aggiungere una riga!
|
||||||
if(doc.get_bool("ADDBOLLI"))
|
if(doc.get_bool("ADDBOLLI") && doc.get_real("BOLLI") > ZERO)
|
||||||
{
|
{
|
||||||
paf1800f.reset();
|
paf1800f.reset();
|
||||||
paf1800f.set("PI_KEYHEADERFATT", hfatt);
|
paf1800f.set("PI_KEYHEADERFATT", _hfatt);
|
||||||
paf1800f.set("PI_KEYBODYFATT", bfatt);
|
paf1800f.set("PI_KEYBODYFATT", _bfatt);
|
||||||
paf1800f.set("PI_NUMEROLINEA", ++riga);
|
paf1800f.set("PI_NUMEROLINEA", ++riga);
|
||||||
|
|
||||||
paf3000f.reset();
|
paf3000f.reset();
|
||||||
paf3000f.set("PT_KEYHEADERFATT", hfatt);
|
paf3000f.set("PT_KEYHEADERFATT", _hfatt);
|
||||||
paf3000f.set("PT_KEYBODYFATT", bfatt);
|
paf3000f.set("PT_KEYBODYFATT", _bfatt);
|
||||||
paf3000f.set("PT_RIFNUMLINEA", riga);
|
paf3000f.set("PT_RIFNUMLINEA", riga);
|
||||||
paf3000f.set("PT_COMMENTO", "Imposta bollo assolta in modo virtuale");
|
paf3000f.set("PT_COMMENTO", "Imposta bollo assolta in modo virtuale");
|
||||||
|
|
||||||
@ -1457,17 +1459,42 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
ok &= insert(paf1800f) && insert(paf3000f);
|
ok &= insert(paf1800f) && insert(paf3000f);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// OMAGGI????
|
||||||
|
|
||||||
|
// Aggiungo le spese incasso
|
||||||
|
if(doc.get_real("SPESINC") > ZERO)
|
||||||
|
{
|
||||||
|
paf1800f.reset();
|
||||||
|
paf1800f.set("PI_KEYHEADERFATT", _hfatt);
|
||||||
|
paf1800f.set("PI_KEYBODYFATT", _bfatt);
|
||||||
|
paf1800f.set("PI_NUMEROLINEA", ++riga);
|
||||||
|
|
||||||
|
paf3000f.reset();
|
||||||
|
paf3000f.set("PT_KEYHEADERFATT", _hfatt);
|
||||||
|
paf3000f.set("PT_KEYBODYFATT", _bfatt);
|
||||||
|
paf3000f.set("PT_RIFNUMLINEA", riga);
|
||||||
|
paf3000f.set("PT_COMMENTO", "Spese incasso");
|
||||||
|
|
||||||
|
paf1800f.set("PI_QUANTITA", UNO);
|
||||||
|
real imponibile = doc.imponibile();
|
||||||
|
paf1800f.set("PI_PREZZOUNIT", doc.spese_incasso(imponibile, 6, _netto));
|
||||||
|
paf1800f.set("PI_PRZTOTALE", doc.spese_incasso(imponibile, 6, _lordo));
|
||||||
|
|
||||||
|
set_IVA(doc.codiva_spese(), paf1800f);
|
||||||
|
ok &= insert(paf1800f) && insert(paf3000f);
|
||||||
|
}
|
||||||
|
|
||||||
// Conai assolto
|
// Conai assolto
|
||||||
if(doc.clifor().vendite().get_bool("CONAIASS"))
|
if(doc.clifor().vendite().get_bool("CONAIASS"))
|
||||||
{
|
{
|
||||||
paf1800f.reset();
|
paf1800f.reset();
|
||||||
paf1800f.set("PI_KEYHEADERFATT", hfatt);
|
paf1800f.set("PI_KEYHEADERFATT", _hfatt);
|
||||||
paf1800f.set("PI_KEYBODYFATT", bfatt);
|
paf1800f.set("PI_KEYBODYFATT", _bfatt);
|
||||||
paf1800f.set("PI_NUMEROLINEA", ++riga);
|
paf1800f.set("PI_NUMEROLINEA", ++riga);
|
||||||
|
|
||||||
paf3000f.reset();
|
paf3000f.reset();
|
||||||
paf3000f.set("PT_KEYHEADERFATT", hfatt);
|
paf3000f.set("PT_KEYHEADERFATT", _hfatt);
|
||||||
paf3000f.set("PT_KEYBODYFATT", bfatt);
|
paf3000f.set("PT_KEYBODYFATT", _bfatt);
|
||||||
paf3000f.set("PT_RIFNUMLINEA", riga);
|
paf3000f.set("PT_RIFNUMLINEA", riga);
|
||||||
paf3000f.set("PT_COMMENTO", ini_get_string(CONFIG_DITTA, "ve", "DESCCONAIASS", "Contributo CONAI assolto ove dovuto"));
|
paf3000f.set("PT_COMMENTO", ini_get_string(CONFIG_DITTA, "ve", "DESCCONAIASS", "Contributo CONAI assolto ove dovuto"));
|
||||||
|
|
||||||
@ -1498,8 +1525,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
|
|
||||||
// <DatiRiepilogo>
|
// <DatiRiepilogo>
|
||||||
TPaf_record paf2200f("PAF2200F");
|
TPaf_record paf2200f("PAF2200F");
|
||||||
paf2200f.set("PL_KEYHEADERFATT", hfatt);
|
paf2200f.set("PL_KEYHEADERFATT", _hfatt);
|
||||||
paf2200f.set("PL_KEYBODYFATT", bfatt);
|
paf2200f.set("PL_KEYBODYFATT", _bfatt);
|
||||||
remove(paf2200f); // Cancella tutte le righe di riepilogo IVA
|
remove(paf2200f); // Cancella tutte le righe di riepilogo IVA
|
||||||
|
|
||||||
const char* eiva = "I"; // Esigibilità IVA: Immediata, Differita, Split payment
|
const char* eiva = "I"; // Esigibilità IVA: Immediata, Differita, Split payment
|
||||||
@ -1532,8 +1559,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
|
|
||||||
// <DatiPagamento>
|
// <DatiPagamento>
|
||||||
TPaf_record paf2400f("PAF2400F");
|
TPaf_record paf2400f("PAF2400F");
|
||||||
paf2400f.set("PN_KEYHEADERFATT", hfatt);
|
paf2400f.set("PN_KEYHEADERFATT", _hfatt);
|
||||||
paf2400f.set("PN_KEYBODYFATT", bfatt);
|
paf2400f.set("PN_KEYBODYFATT", _bfatt);
|
||||||
remove(paf2400f); // Cancella i dati pagamento
|
remove(paf2400f); // Cancella i dati pagamento
|
||||||
|
|
||||||
TPagamento& pag = doc.pagamento();
|
TPagamento& pag = doc.pagamento();
|
||||||
@ -1548,8 +1575,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
ok &= insert(paf2400f);
|
ok &= insert(paf2400f);
|
||||||
|
|
||||||
TPaf_record paf2500f("PAF2500F");
|
TPaf_record paf2500f("PAF2500F");
|
||||||
paf2500f.set("PO_KEYHEADERFATT", hfatt);
|
paf2500f.set("PO_KEYHEADERFATT", _hfatt);
|
||||||
paf2500f.set("PO_KEYBODYFATT", bfatt);
|
paf2500f.set("PO_KEYBODYFATT", _bfatt);
|
||||||
remove(paf2500f); // Cancella tutte le rate
|
remove(paf2500f); // Cancella tutte le rate
|
||||||
|
|
||||||
// Imposto i campi uguali per tutte le rate
|
// Imposto i campi uguali per tutte le rate
|
||||||
@ -1594,8 +1621,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
if (_gestioneallegati)
|
if (_gestioneallegati)
|
||||||
{
|
{
|
||||||
TPaf_record paf2600f("PAF2600F");
|
TPaf_record paf2600f("PAF2600F");
|
||||||
paf2600f.set("PP_KEYHEADERFATT", hfatt);
|
paf2600f.set("PP_KEYHEADERFATT", _hfatt);
|
||||||
paf2600f.set("PP_KEYBODYFATT", bfatt);
|
paf2600f.set("PP_KEYBODYFATT", _bfatt);
|
||||||
remove(paf2600f); // Cancella eventuali allegati
|
remove(paf2600f); // Cancella eventuali allegati
|
||||||
long nprogr = 0; // Numero di file allegati
|
long nprogr = 0; // Numero di file allegati
|
||||||
// Se abilitato stampo il documento e lo allego
|
// Se abilitato stampo il documento e lo allego
|
||||||
@ -1635,7 +1662,7 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
{
|
{
|
||||||
if (_def_fld.empty())
|
if (_def_fld.empty())
|
||||||
{
|
{
|
||||||
TString msgerr; msgerr << "Errore: il documento " << bfatt << " ha degli allegati ma nella configurazione non è stato impostato come trametterli\nCaricare il documento senza allegati?";
|
TString msgerr; msgerr << "Errore: il documento " << _bfatt << " ha degli allegati ma nella configurazione non è stato impostato come trametterli\nCaricare il documento senza allegati?";
|
||||||
load_allegati = false;
|
load_allegati = false;
|
||||||
if (!yesno_box(msgerr))
|
if (!yesno_box(msgerr))
|
||||||
return false;
|
return false;
|
||||||
@ -1660,8 +1687,8 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
|||||||
|
|
||||||
// Tabella di non invio XML
|
// Tabella di non invio XML
|
||||||
TPaf_record pafw300f("PAFW300F");
|
TPaf_record pafw300f("PAFW300F");
|
||||||
pafw300f.set("PW_KEYHEADERFATT", hfatt);
|
pafw300f.set("PW_KEYHEADERFATT", _hfatt);
|
||||||
pafw300f.set("PW_KEYBODYFATT", bfatt);
|
pafw300f.set("PW_KEYBODYFATT", _bfatt);
|
||||||
remove(pafw300f); // Cancella eventuali allegati
|
remove(pafw300f); // Cancella eventuali allegati
|
||||||
const TTipo_documento& td = cached_tipodoc(doc.get(DOC_TIPODOC));
|
const TTipo_documento& td = cached_tipodoc(doc.get(DOC_TIPODOC));
|
||||||
const TString codsdi = !td.invio_xml() ? "**********" : (enapec ? pec : coddest);
|
const TString codsdi = !td.invio_xml() ? "**********" : (enapec ? pec : coddest);
|
||||||
@ -1711,7 +1738,7 @@ TDoc_fp::TDoc_fp() : _log(nullptr), _cache_insert(false)
|
|||||||
|
|
||||||
#ifdef DBG
|
#ifdef DBG
|
||||||
_gestioneallegati = _allegafattura = false;
|
_gestioneallegati = _allegafattura = false;
|
||||||
#elif
|
#else
|
||||||
_gestioneallegati = ini_get_bool(CONFIG_DITTA, "fp", "gestioneallegati");
|
_gestioneallegati = ini_get_bool(CONFIG_DITTA, "fp", "gestioneallegati");
|
||||||
_allegafattura = ini_get_bool(CONFIG_DITTA, "fp", "allegafatt");
|
_allegafattura = ini_get_bool(CONFIG_DITTA, "fp", "allegafatt");
|
||||||
#endif
|
#endif
|
||||||
|
@ -88,6 +88,8 @@ private:
|
|||||||
bool _to_commit;
|
bool _to_commit;
|
||||||
bool _cache_insert;
|
bool _cache_insert;
|
||||||
vector<TString> _query;
|
vector<TString> _query;
|
||||||
|
TString8 _hfatt; // Codice univoco di 6 caratteri dell'ufficio P.A. o di 7 caratteri per un privato
|
||||||
|
TString20 _bfatt; // Codice univoco di 20 caratteri del documento
|
||||||
|
|
||||||
int parse_line(const TString& line, TString& var, TString& val) const;
|
int parse_line(const TString& line, TString& var, TString& val) const;
|
||||||
bool create_table(TScanner& paf, const TString& table);
|
bool create_table(TScanner& paf, const TString& table);
|
||||||
|
@ -92,7 +92,8 @@ BEGIN
|
|||||||
ITEM "TD03|TD03 Acconto/Anticipo su parcella" MESSAGE ENABLE,F_NOTACREDDEB|""
|
ITEM "TD03|TD03 Acconto/Anticipo su parcella" MESSAGE ENABLE,F_NOTACREDDEB|""
|
||||||
ITEM "TD04|TD04 Nota di credito" MESSAGE ENABLE,F_NOTACREDDEB|"X"
|
ITEM "TD04|TD04 Nota di credito" MESSAGE ENABLE,F_NOTACREDDEB|"X"
|
||||||
ITEM "TD05|TD05 Nota di debito" MESSAGE ENABLE,F_NOTACREDDEB|"X"
|
ITEM "TD05|TD05 Nota di debito" MESSAGE ENABLE,F_NOTACREDDEB|"X"
|
||||||
ITEM "TD06|TD06 parcella" MESSAGE ENABLE,F_NOTACREDDEB|""
|
ITEM "TD06|TD06 Parcella" MESSAGE ENABLE,F_NOTACREDDEB|""
|
||||||
|
ITEM "TD20|TD20 Autofattura" MESSAGE ENABLE,F_NOTACREDDEB|""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN F_ESPORTA_FP
|
BOOLEAN F_ESPORTA_FP
|
||||||
|
Loading…
x
Reference in New Issue
Block a user