Patch level : 10.0 no patch
Files correlati : pd0610 pd0610300a.msk Ricompilazione Demo : [ ] Commento : Modificata la query di selezione documenti git-svn-id: svn://10.65.10.50/branches/R_10_00@21412 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
0973fe757a
commit
529f13f82e
@ -16,54 +16,52 @@
|
|||||||
class TSost_condpag_msk: public TAutomask
|
class TSost_condpag_msk: public TAutomask
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
void elabora_documenti();
|
bool elabora_documenti();
|
||||||
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
|
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
|
||||||
public:
|
public:
|
||||||
TSost_condpag_msk();
|
TSost_condpag_msk();
|
||||||
};
|
};
|
||||||
|
|
||||||
void TSost_condpag_msk::elabora_documenti()
|
bool TSost_condpag_msk::elabora_documenti()
|
||||||
{
|
{
|
||||||
//se non sono settate le date, compilo gli anni dagli esercizi contabili
|
//se non sono settate le date, compilo gli anni dagli esercizi contabili
|
||||||
TEsercizi_contabili& esc = esercizi();
|
TEsercizi_contabili& esc = esercizi();
|
||||||
const TDate dadata = get_date(F_DADATA);
|
const TDate dadata = get_date(F_DADATA);
|
||||||
const TDate adata = get_date(F_ADATA);
|
const TDate adata = get_date(F_ADATA);
|
||||||
const long daanno = dadata.ok() ? dadata.year() : esc.first();
|
const long daanno = dadata.ok() ? dadata.year() : esc.first();
|
||||||
const long aanno = adata.ok() ? adata.year() : esc.last();
|
const long aanno = adata.ok() ? adata.year() : esc.last();
|
||||||
|
const TString8 tipodoc = get(F_TIPODOC);
|
||||||
|
const TString8 stato = get(F_STATO);
|
||||||
|
const long dacodcf = get_long(F_DACODCF);
|
||||||
|
const long acodcf = get_long(F_ACODCF);
|
||||||
|
const TString8 codnum = get(F_CODNUM);
|
||||||
|
|
||||||
TString query;
|
TString query;
|
||||||
query << "USE DOC\n"
|
query << "USE DOC SELECT (CODNUM=\"" << codnum << "\")&&(TIPODOC=\"" << tipodoc << "\")&&(STATO=\"" << stato << "\")&&(TIPOCF=\"C\")&&(BETWEEN(CODCF," << dacodcf << "," << acodcf << "))&&(BETWEEN(DATADOC,#DADATA,#ADATA))\n"
|
||||||
<< "SELECT (TIPODOC=\"#TIPODOC\")&&(STATO=\"#STATO\")&&(TIPOCF=\"C\")&&(BETWEEN(CODCF,#DACODCF,#ACODCF))&&(BETWEEN(DATADOC,#DADATA,#ADATA))\n"
|
<< "FROM PROVV=\"D\" ANNO=" << daanno << "\n"
|
||||||
<< "FROM PROVV=\"D\" ANNO=#DAANNO CODNUM=\"#CODNUM\"\n"
|
<< "TO PROVV=\"D\" ANNO=" << aanno;
|
||||||
<< "TO PROVV=\"D\" ANNO=#AANNO CODNUM=\"#CODNUM\"";
|
|
||||||
|
|
||||||
//instanzio il recordset e gli setto tutte le variabili
|
//instanzio il recordset e gli setto tutte le variabili
|
||||||
TISAM_recordset doc(query);
|
TISAM_recordset doc(query);
|
||||||
doc.set_var("#TIPODOC", get(F_TIPODOC));
|
|
||||||
doc.set_var("#STATO", get(F_STATO));
|
|
||||||
doc.set_var("#DACODCF", get_long(F_DACODCF));
|
|
||||||
doc.set_var("#ACODCF", get_long(F_ACODCF));
|
|
||||||
doc.set_var("#DADATA", dadata);
|
doc.set_var("#DADATA", dadata);
|
||||||
doc.set_var("#ADATA", adata);
|
doc.set_var("#ADATA", adata);
|
||||||
doc.set_var("#DAANNO", daanno);
|
|
||||||
doc.set_var("#AANNO", aanno);
|
|
||||||
doc.set_var("#CODNUM", get(F_CODNUM));
|
|
||||||
|
|
||||||
TLocalisamfile& documenti = doc.cursor()->file();
|
TLocalisamfile& documenti = doc.cursor()->file();
|
||||||
|
|
||||||
const long codpag = get_long(F_CODPAG);
|
const TString4 codpag = get(F_CODPAG);
|
||||||
|
|
||||||
//scorro il recordset e aggiorno i documenti che è necessario aggiornare
|
//scorro il recordset e aggiorno i documenti che è necessario aggiornare
|
||||||
for(bool ok = doc.move_first(); ok; ok = doc.move_next())
|
for(bool ok = doc.move_first(); ok; ok = doc.move_next())
|
||||||
{
|
{
|
||||||
TRectype& rec = doc.cursor()->curr();
|
TRectype& rec = doc.cursor()->curr();
|
||||||
|
|
||||||
if(rec.get_long(DOC_CODPAG) != codpag)
|
if(rec.get(DOC_CODPAG) != codpag)
|
||||||
{
|
{
|
||||||
rec.put(DOC_CODPAG, codpag);
|
rec.put(DOC_CODPAG, codpag);
|
||||||
rec.rewrite(documenti);
|
rec.rewrite(documenti);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return doc.items() > 0 ? true : false;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool TSost_condpag_msk::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
bool TSost_condpag_msk::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||||
@ -73,19 +71,13 @@ bool TSost_condpag_msk::on_field_event(TOperable_field& o, TField_event e, long
|
|||||||
case DLG_OK:
|
case DLG_OK:
|
||||||
if(e == fe_button)
|
if(e == fe_button)
|
||||||
{
|
{
|
||||||
elabora_documenti();
|
if(elabora_documenti())
|
||||||
|
message_box(TR("Elaborazione terminata"));
|
||||||
|
else
|
||||||
|
message_box(TR("Non è stato possibile individuare nessuna commessa da modificare con i filtri impostati"));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
/*case DLG_CANCEL:
|
|
||||||
if(e == fe_button)
|
|
||||||
{
|
|
||||||
reset(F_CLIENTE);
|
|
||||||
reset(F_RAGSOC);
|
|
||||||
sfield(F_SHEET).destroy();
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
break;*/
|
|
||||||
default: break;
|
default: break;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
@ -150,7 +150,7 @@ BEGIN
|
|||||||
PROMPT 1 9 "@bNuova Condizione"
|
PROMPT 1 9 "@bNuova Condizione"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_CODPAG 4
|
STRING F_CODPAG 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 10 "Codice Pagamento"
|
PROMPT 2 10 "Codice Pagamento"
|
||||||
USE %CPG
|
USE %CPG
|
||||||
|
Loading…
x
Reference in New Issue
Block a user