Patch level : 12.0 854
Files correlati : fp0.exe fp0400a.msk Commento : Aggiunta associazione automatica all'avvio
This commit is contained in:
parent
860be2a0c4
commit
bb4c48b9de
@ -98,6 +98,7 @@ protected:
|
|||||||
public:
|
public:
|
||||||
TString& get_fattsel() const;
|
TString& get_fattsel() const;
|
||||||
|
|
||||||
|
void auto_assoc();
|
||||||
TPassive_mask(bool f1);
|
TPassive_mask(bool f1);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -412,6 +413,48 @@ TString& TPassive_mask::get_fattsel() const
|
|||||||
return fattsel << get(F_ASSOC);
|
return fattsel << get(F_ASSOC);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TPassive_mask::auto_assoc()
|
||||||
|
{
|
||||||
|
TString query = "SELECT PZ_TIPOPROT AS TIPO_PROT, YEAR(P7_DATA) AS ANNO, P7_TIPODOC AS [TIPO_SDI], P7_NUMERO AS [NUM_DOC], \n"
|
||||||
|
"P7_DATA AS[DATA_DOC], PZ_DATAORARIC AS[DATA_RIC], PQ_IMPTOTDOC AS[TOT_DOC], PZ_NUMREGCONT AS NUMREGCONT, PZ_DATAREGCONT AS DATAREGCONT, P2_ANADENOMIN AS[RAG_SOC], P2_ANANOME AS NOME, \n"
|
||||||
|
"P2_ANACOGNOME AS COGNOME, P2_FISCIVACOD AS[P_IVA], P2_CODFISCALE AS[COD_FISC], P2_FISCIVAPAESE AS[COD_PAESE], \n"
|
||||||
|
"COUNT(PP_ATTACHMENT) AS ATTACHMENT, P1_CODDEST AS[COD_SDI], PU_PEC AS PEC, P1_KEYPRGINVIO AS KEYPROG, P1_KEYHEADERFATT AS KEYHEAD, P1_KEYBODYFATT AS KEYFATT, \n"
|
||||||
|
"PZ_NUMPROT AS[NUM_PROT], PZ_ANNOPROT AS[ANNO_PROT], PZ_TIPOCF AS[TIPO_CF], PZ_CLIFOR AS[COD_CLIFOR] \n"
|
||||||
|
"FROM PAA0100F PAA01 \n"
|
||||||
|
"JOIN PAA0200F PAA02 ON P1_KEYPRGINVIO = P2_KEYPRGINVIO and P1_KEYHEADERFATT = P2_KEYHEADERFATT and P1_KEYBODYFATT = P2_KEYBODYFATT \n"
|
||||||
|
"JOIN PAA0700F PAA07 ON P1_KEYPRGINVIO = P7_KEYPRGINVIO and P1_KEYHEADERFATT = P7_KEYHEADERFATT and P1_KEYBODYFATT = P7_KEYBODYFATT \n"
|
||||||
|
"JOIN PAA2700F PAA27 ON P1_KEYPRGINVIO = PQ_KEYPRGINVIO and P1_KEYHEADERFATT = PQ_KEYHEADERFATT and P1_KEYBODYFATT = PQ_KEYBODYFATT \n"
|
||||||
|
"LEFT JOIN PAA2600F PAA26 ON P1_KEYPRGINVIO = PP_KEYPRGINVIO and P1_KEYHEADERFATT = PP_KEYHEADERFATT and P1_KEYBODYFATT = PP_KEYBODYFATT \n"
|
||||||
|
"LEFT JOIN PAA3200F PAA32 ON P1_KEYPRGINVIO = PU_KEYPRGINVIO and P1_KEYHEADERFATT = PU_KEYHEADERFATT and P1_KEYBODYFATT = PU_KEYBODYFATT \n"
|
||||||
|
"LEFT JOIN FPPRO00F FPPRO ON P1_KEYPRGINVIO = PZ_KEYPRGINVIO and P1_KEYHEADERFATT = PZ_KEYHEADERFATT and P1_KEYBODYFATT = PZ_KEYBODYFATT \n"
|
||||||
|
"WHERE PZ_CLIFOR = '' \n"
|
||||||
|
"GROUP BY YEAR(P7_DATA), P7_TIPODOC, P7_NUMERO, P7_DATA, PZ_DATAORARIC, PQ_IMPTOTDOC, PZ_NUMREGCONT, PZ_DATAREGCONT, P2_ANADENOMIN, P2_ANANOME, P2_ANACOGNOME, P2_FISCIVACOD, P2_CODFISCALE, P2_FISCIVAPAESE, \n"
|
||||||
|
"P1_CODDEST, PU_PEC, P1_KEYPRGINVIO, P1_KEYHEADERFATT, P1_KEYBODYFATT, PZ_TIPOPROT, PZ_NUMPROT, PZ_ANNOPROT, PZ_TIPOCF, PZ_CLIFOR;";
|
||||||
|
|
||||||
|
fp_db().sq_set_exec(query, false);
|
||||||
|
SSimple_query update_db; set_connection(update_db); update_db.sq_set_autocommit(false); // Non posso usare contemporaneamente due volte fp_db()
|
||||||
|
|
||||||
|
TLocalisamfile clifo(LF_CLIFO);
|
||||||
|
for(bool ok = fp_db().sq_next(); ok; ok = fp_db().sq_next())
|
||||||
|
{
|
||||||
|
TToken_string key("",';');
|
||||||
|
key.add(fp_db().sq_get("KEYPROG")); key.add(fp_db().sq_get("KEYHEAD")); key.add(fp_db().sq_get("KEYFATT"));
|
||||||
|
|
||||||
|
clifo.zero();
|
||||||
|
clifo.put(CLI_TIPOCF, "F");
|
||||||
|
|
||||||
|
int for_cod = find_fornitore(clifo);
|
||||||
|
if(for_cod > 0)
|
||||||
|
{
|
||||||
|
static TString update;
|
||||||
|
update.cut(0) << "UPDATE FPPRO00F \nSET PZ_TIPOCF = 'F', PZ_CLIFOR = '" << clifo.get(CLI_CODCF) << "' \n" <<
|
||||||
|
"WHERE PZ_KEYPRGINVIO = '" << key.get(0) << "' AND PZ_KEYHEADERFATT = '" << key.get(1) << "' AND PZ_KEYBODYFATT = '" << key.get(2) << "';";
|
||||||
|
update_db.sq_set_exec(update);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
update_db.sq_commit();
|
||||||
|
}
|
||||||
|
|
||||||
int TPassive_mask::find_fornitore(TLocalisamfile& clifo)
|
int TPassive_mask::find_fornitore(TLocalisamfile& clifo)
|
||||||
{
|
{
|
||||||
TString paa_codfisc = fp_db().sq_get("COD_FISC");
|
TString paa_codfisc = fp_db().sq_get("COD_FISC");
|
||||||
@ -1114,6 +1157,7 @@ TPassive_mask::TPassive_mask(bool f1) : TAutomask("fp0400a"), _f1(f1), _filter_c
|
|||||||
_tmp_dir = _tmp_dir.tempdir();
|
_tmp_dir = _tmp_dir.tempdir();
|
||||||
TMask::set_handler(F_CAUSFA, causfa_handler);
|
TMask::set_handler(F_CAUSFA, causfa_handler);
|
||||||
TMask::set_handler(F_FORNITORE, clifo_handler);
|
TMask::set_handler(F_FORNITORE, clifo_handler);
|
||||||
|
auto_assoc();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ END
|
|||||||
|
|
||||||
BUTTON DLG_EXPORT 10 2
|
BUTTON DLG_EXPORT 10 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 4 1 "Contabilizzaz."
|
PROMPT 4 1 "Contabilizza"
|
||||||
PICTURE TOOL_EXPORT
|
PICTURE TOOL_EXPORT
|
||||||
END
|
END
|
||||||
|
|
||||||
@ -43,8 +43,8 @@ PAGE "Fatture Passive" 0 2 0 0
|
|||||||
RADIOBUTTON F_ASSOC 20 50
|
RADIOBUTTON F_ASSOC 20 50
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 0 1 "@BFornitori"
|
PROMPT 0 1 "@BFornitori"
|
||||||
ITEM "|Non Associate"
|
|
||||||
ITEM "E|Associate"
|
ITEM "E|Associate"
|
||||||
|
ITEM "|Non Associate"
|
||||||
ITEM "A|Tutte"
|
ITEM "A|Tutte"
|
||||||
FLAGS "Z"
|
FLAGS "Z"
|
||||||
END
|
END
|
||||||
|
@ -23,6 +23,7 @@ class TDoc_fp;
|
|||||||
|
|
||||||
enum { no_pdf = -1, pdf_ok = 0, no_alleg = -2};
|
enum { no_pdf = -1, pdf_ok = 0, no_alleg = -2};
|
||||||
|
|
||||||
|
bool set_connection(SSimple_query& s);
|
||||||
// Ritorna la connessione al DB paf secondo i parametri impostati nel programma di configurazione
|
// Ritorna la connessione al DB paf secondo i parametri impostati nel programma di configurazione
|
||||||
SSimple_query& fp_db();
|
SSimple_query& fp_db();
|
||||||
// Lancia una maschera di password FP
|
// Lancia una maschera di password FP
|
||||||
|
Loading…
x
Reference in New Issue
Block a user