Patch level : 12.0 608

Files correlati     : fp
Commento            :
- Sistemata tabella visualizzazione
- Sistemato filtro
- Aggiunto sociounico
- Aggiunta PEC
This commit is contained in:
Mattia Tollari 2018-07-23 11:42:24 +02:00
parent 512e2899bf
commit 76762b9ac1
4 changed files with 40 additions and 17 deletions

View File

@ -356,6 +356,7 @@ void TAnagrafica::split_ragsoc()
bool TAnagrafica::init(const TRectype& rec)
{
_tipo = '\0';
_sociounico = '\0';
_stato_estero = _stato_nasc = 0;
_allegato = 0;
_ragsoc.cut(0);
@ -443,6 +444,7 @@ bool TAnagrafica::init(const TRectype& rec)
const char tipoa = rec.get_char(NDT_TIPOA);
const long codana = rec.get_long(NDT_CODANAGR);
const bool good = init(LF_ANAG, tipoa, codana);
_sociounico = rec.get_char(NDT_SOCIOUNICO);
if (_tipo == 'G')
{
_ragsoc = rec.get(NDT_RAGSOC);

View File

@ -16,6 +16,7 @@
class TAnagrafica : public TObject
{
char _tipo; // F o G
char _sociounico;
TString4 _stato_paiv;
TString _cofi, _paiv, _cofiest;
TString80 _ragsoc;
@ -54,6 +55,7 @@ public:
const TString& stato_estero_UNICO() const;
int inserimento_in_allegato() const { return _allegato; }
char is_black_list(const TDate& datareg) const;
const char sociounico() const { return _sociounico; }
const TString& comune_nascita() const;
const TString& provincia_nascita() const;

View File

@ -158,6 +158,7 @@ protected:
}
const TString& var2str(const TString& fld, const TVariant& var) const;
const TVariant& get(const char* fld) const;
public:
void reset() { _fields.destroy(); }
@ -168,7 +169,7 @@ public:
void set(const char* fld, const TString& var);
void set(const char* fld, const TDate& var);
void set(const char* fld, bool var);
const TVariant& get(const char* fld) const;
const TString sq_get(const char* fld) const;
bool insert();
bool remove();
@ -258,6 +259,11 @@ void TPaf_record::set(const char* fld, bool var)
set(fld, var ? "SI" : "NO");
}
const TString TPaf_record::sq_get(const char* fld) const
{
return db().sq_get(fld);
}
// Legge il valore di un campo variant
const TVariant& TPaf_record::get(const char* fld) const
{
@ -442,7 +448,7 @@ void TPA_mask::fill()
sht.destroy();
const TDate dal = get(F_DATAINI);
const char filter_selected = get(F_FATTSEL)[0];
TString filter_selected = get(F_FATTSEL);
// Record di controllo per eventuali elaborazioni precedenti
TString hfatt(LEN_HFATT), bfatt(LEN_BFATT);
@ -451,7 +457,7 @@ void TPA_mask::fill()
TString query;
query << "USE 33 " <<
"SELECT (BETWEEN(33.DATADOC,#DADATADOC,#ADATADOC))&&(33.TIPOCF=='C')&&(17.PADESTIN!='')&&(400@." FLD_TIPO_SDI "!='')";
"SELECT (BETWEEN(33.DATADOC,#DADATADOC,#ADATADOC))&&(33.TIPOCF=='C')&&((17.PADESTIN!='')||(20.PEC!=''))&&(400@." FLD_TIPO_SDI "!='')";
if(get(F_DATIPODOC).full() && get(F_ATIPODOC).full())
{
query << "&&(BETWEEN(33.TIPODOC, #DATIPODOC, #ATIPODOC))";
@ -491,7 +497,8 @@ void TPA_mask::fill()
{
if (paf0100f.search(NULL, hfatt, bfatt))
{
if (filter_selected && paf0100f.get("P1_GESTIONE").as_string()[0] != filter_selected)
sent = true;
if (!filter_selected.full() || paf0100f.sq_get("P1_GESTIONE") != filter_selected)
continue;
}
}
@ -506,10 +513,12 @@ void TPA_mask::fill()
row->add(rec.get(DOC_DATADOC).as_date());
row->add(rec.get(CFV_CODCF).as_int());
row->add(rec.get("20." CLI_RAGSOC).as_string());
row->add(rec.get(CFV_PADESTIN).as_string());
row->add(rec.get(CFV_PARIFAMM).as_string());
TString rif = rec.get("17." CFV_PADESTIN).as_string();
if (rif.empty())
rif = rec.get("20.PEC").as_string();
row->add(rif);
row->add(rec.get("17." CFV_PARIFAMM).as_string());
row->add(rec.get("20." CLI_COFI).as_string());
row->add(!td.invio_xml() ? "X" : "");
bool split = rec.get("20." CLI_SPLITPAY).as_bool();
if (split)
@ -526,6 +535,7 @@ void TPA_mask::fill()
const bool attach = !rec.get("COLL_GOLEM").is_empty();
row->add(attach ? "X" : " ");
row->add(!td.invio_xml() ? "X" : "");
sht.add(row);
}
@ -1027,6 +1037,8 @@ bool TDoc2Paf::elabora(TDocumentoEsteso& doc)
rifamm = doc.clifor().vendite().get(CFV_PARIFAMM);
paf0200f.set("P2_RIFAMMINISTR", rifamm);
paf0200f.set("P2_ISCRREASOCIOU", _ditta.sociounico() == 'S' ? "SU" : "SM");
TISAM_recordset unloc("USE UNLOC\nJOIN COMUNI INTO COM==COMCCIAA\nFROM CODDITTA=#DITTA\nTO CODDITTA=#DITTA");
unloc.set_var("#DITTA", firm.get(NDT_CODDITTA));
if (unloc.move_first())
@ -1639,18 +1651,24 @@ bool TDoc2Paf::elabora(TDocumentoEsteso& doc)
ok &= paf2600f.insert();
}
}
const TTipo_documento& td = cached_tipodoc(doc.get(DOC_TIPODOC));
/*
if(td.invio_xml())
{
// Genero il pdf del documento e lo allego
}
*/
}
// </DatiPagamento>
return true;
// Tabella di non invio XML
TPaf_record pafw300f("PAFW300F");
pafw300f.set("PW_KEYPRGINVIO", hfatt);
pafw300f.set("PW_KEYHEADERFATT", bfatt);
pafw300f.remove(); // Cancella eventuali allegati
const TTipo_documento& td = cached_tipodoc(doc.get(DOC_TIPODOC));
if(!td.invio_xml())
pafw300f.set("PW_CODSDI", "**********");
ok &= pafw300f.insert();
return ok;
}
bool TDoc2Paf::elabora(const TRectype& rec)

View File

@ -57,5 +57,6 @@
#define NDT_NONOBBSTAT "NONOBBSTAT"
#define NDT_INTCAF "INTCAF"
#define NDT_DICHP "DICHP"
#define NDT_SOCIOUNICO "SOCIOUNICO"
#endif