Patch level : nopatch
Files correlati : Ricompilazione Demo : [ ] Commento : ATS invio fatture git-svn-id: svn://10.65.10.50/trunk@20578 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
73fc819e35
commit
87ebf8ebeb
@ -135,15 +135,13 @@ void TEsporta_dativa_app::esporta_righe_iva(const TMask& m) const
|
||||
const TDate dadata(1, 1, adata.year() - 1);
|
||||
|
||||
//preparo query su righe iva joinati ai mov
|
||||
TString query;
|
||||
query << "USE RMOVIVA "
|
||||
<< "SELECT ((NUM(ANSI(23.DATAREG))>=NUM(ANSI(#DADATA)))"
|
||||
<< "&&(NUM(ANSI(23.DATAREG))<=NUM(ANSI(#ADATA))))&&(23.INVIVA!=\"X\")&&(23.TIPO=\"F\")";
|
||||
TString query("USE RMOVIVA SELECT BETWEEN(23.DATAREG,#DADATA,#ADATA)&&(23.INVIVA!=\"X\")&&(23.TIPO=\"F\")\n");
|
||||
|
||||
if (m.get_int(F_JOB) == 1)
|
||||
query << "&&(CODCMS!=\"\")\n";
|
||||
else
|
||||
query << "&&(CODCMS=\"\")\n";
|
||||
bool with_cms = m.get_int(F_JOB) == 1;
|
||||
/* if (m.get_int(F_JOB) == 1)
|
||||
query << "&&(CODCMS!=\"\")\n";
|
||||
else
|
||||
query << "&&(CODCMS=\"\")\n"; */
|
||||
|
||||
query << "JOIN MOV INTO NUMREG==NUMREG\n"
|
||||
<< "JOIN %IVA ALIAS 101 INTO CODTAB==CODIVA\n"
|
||||
@ -165,40 +163,76 @@ void TEsporta_dativa_app::esporta_righe_iva(const TMask& m) const
|
||||
|
||||
TDate last_data_pag;
|
||||
const long numreg = rmoviva.get(RMI_NUMREG).as_int();
|
||||
const real impiva = rmoviva.get(RMI_IMPONIBILE).as_real();
|
||||
bool partita_chiusa = test_partita(numreg, last_data_pag);
|
||||
|
||||
if (partita_chiusa)
|
||||
{
|
||||
//creazione di un nuovo record da esportare
|
||||
csv.new_rec("");
|
||||
//..e successivo riempimento
|
||||
TString8 codcms; codcms.cut(0);
|
||||
TString query_movana;
|
||||
query_movana << "USE MOVANA KEY 3\n"
|
||||
<< "FROM NUMREGCG=NUMREG\n"
|
||||
<< "TO NUMREGCG=NUMREG";
|
||||
<< "FROM NUMREGCG=#NUMREG\n"
|
||||
<< "TO NUMREGCG=#NUMREG";
|
||||
TISAM_recordset rec_movana(query_movana);
|
||||
rec_movana.set_var("#NUMREGCG", numreg);
|
||||
|
||||
rec_movana.set_var("#NUMREG", numreg);
|
||||
|
||||
int items = rec_movana.items();
|
||||
if (items > 0)
|
||||
{
|
||||
if (with_cms)
|
||||
{
|
||||
csv.new_rec("");
|
||||
rec_movana.move_first();
|
||||
|
||||
const long numregca = rec_movana.get("NUMREG").as_int();
|
||||
TAnal_mov movana(numregca);
|
||||
|
||||
TAnal_mov movana = rec_movana.move_first();
|
||||
for(int i = 1; i <= movana.rows(); i++)
|
||||
{
|
||||
const TRectype& rmovana = movana.body()[i];
|
||||
|
||||
for(int i = 1; i <= movana.rows(); i++)
|
||||
{
|
||||
const TRectype& rmovana = movana.body()[i];
|
||||
const real impana = rmovana.get_real("IMPORTO");
|
||||
codcms = rmovana.get("CODCMS");
|
||||
csv.set(0, codcms);
|
||||
csv.set(1, rmoviva.get("23.CODCF"));
|
||||
csv.set(2, rmoviva.get("20.RAGSOC"));
|
||||
char sez = rmovana.get_char("SEZIONE");
|
||||
TImporto importo(sez, rmovana.get_real("IMPORTO"));
|
||||
importo.normalize('D');
|
||||
csv.set(3, importo.valore());
|
||||
csv.set(6, rmoviva.get("23.DATADOC"));
|
||||
csv.set(7, rmoviva.get("23.NUMDOC"));
|
||||
csv.set(8, last_data_pag);
|
||||
}
|
||||
}
|
||||
while (rmoviva.move_next())
|
||||
{
|
||||
const long wnumreg = rmoviva.get(RMI_NUMREG).as_int();
|
||||
if (wnumreg != numreg)
|
||||
{
|
||||
rmoviva.move_prev();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
const TString & codcms = rmoviva.get("CODCMS").as_string();
|
||||
|
||||
if(impiva == impana)
|
||||
codcms = rmovana.get("CODCMS");
|
||||
}
|
||||
|
||||
csv.set(0, codcms);
|
||||
csv.set(1, rmoviva.get("23.CODCF"));
|
||||
csv.set(2, rmoviva.get("20.RAGSOC"));
|
||||
csv.set(3, rmoviva.get(RMI_IMPONIBILE).as_real());
|
||||
csv.set(6, rmoviva.get("23.DATADOC"));
|
||||
csv.set(7, rmoviva.get("23.NUMDOC"));
|
||||
csv.set(8, last_data_pag);
|
||||
if ((!with_cms && codcms.blank()) ||
|
||||
(with_cms && codcms.full()))
|
||||
{
|
||||
csv.new_rec("");
|
||||
csv.set(0, codcms);
|
||||
csv.set(1, rmoviva.get("23.CODCF"));
|
||||
csv.set(2, rmoviva.get("20.RAGSOC"));
|
||||
csv.set(3, rmoviva.get(RMI_IMPONIBILE).as_real());
|
||||
csv.set(6, rmoviva.get("23.DATADOC"));
|
||||
csv.set(7, rmoviva.get("23.NUMDOC"));
|
||||
csv.set(8, last_data_pag);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
csv.save_as(path, fmt_text);
|
||||
|
Loading…
x
Reference in New Issue
Block a user