Patch level : 12.0 no-patch

Files correlati     : ps0713
Commento            : 
Rivisti completamente i filtri:
- Aggiunto filtro da/a Fornitore
- Aggiunto filtro da/a Gruppo
- Aggiunto filtro da/a Conto
- Aggiunto filtro da/a Sottoconto
- Aggiunto filtro da/a Importo
- Sistemata data test in test_partita()
- Aggiunti controlli per i nuovi campi
- Sistemata query per i nuovi campi
- Aggiunta pagina per i nuovi campi


git-svn-id: svn://10.65.10.50/branches/R_10_00@23866 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
mtollari 2017-06-13 15:45:44 +00:00
parent b66f707789
commit f6d7eb4639
3 changed files with 428 additions and 120 deletions

View File

@ -48,52 +48,86 @@ bool TEsportaIva_msk::on_field_event(TOperable_field& o, TField_event e, long jo
if (e == fe_init) if (e == fe_init)
o.set(ini_get_string(CONFIG_DITTA, "Esporta_Dati_IVA", "Path")); o.set(ini_get_string(CONFIG_DITTA, "Esporta_Dati_IVA", "Path"));
break; break;
/* case F_DACODCF:
case F_DADATA:
if (e == fe_init)
o.set(ini_get_string(CONFIG_DITTA, "Esporta_Dati_IVA", "LastSend", "01-01-2017"));
break;
*/
//case F_ADATA:
case F_CODCF:
if (e == fe_modify || e == fe_close) if (e == fe_modify || e == fe_close)
createName(); createName();
break; break;
case B_FORNITORE: case F_ACODCF:
if (e == fe_modify || e == fe_close)
createName();
break;
case B_DAFORNITORE:
if(e != fe_init) if(e != fe_init)
{ {
if(get_bool(B_FORNITORE)) if(get_bool(B_DAFORNITORE))
{ {
enable(F_CODCF); enable(F_DACODCF);
enable(F_RAGSOC); enable(F_DARAGSOC);
} }
else else
{ {
disable(F_CODCF); disable(F_DACODCF);
disable(F_RAGSOC); disable(F_DARAGSOC);
set(F_CODCF, ""); set(F_DACODCF, "");
set(F_RAGSOC, ""); set(F_DARAGSOC, "");
createName(); createName();
} }
} }
break; break;
case B_GCS: case B_AFORNITORE:
if(get_bool(B_GCS)) if(e != fe_init)
{ {
enable(F_GRUPPO); if(get_bool(B_AFORNITORE))
enable(F_CONTO); {
enable(F_SOTTOCONTO); enable(F_ACODCF);
enable(F_ARAGSOC);
}
else
{
disable(F_ACODCF);
disable(F_ARAGSOC);
set(F_ACODCF, "");
set(F_ARAGSOC, "");
createName();
}
}
break;
case B_DAGCS:
if(get_bool(B_DAGCS))
{
enable(F_DAGRUPPO);
enable(F_DACONTO);
enable(F_DASOTTOCONTO);
} }
else else
{ {
disable(F_GRUPPO); disable(F_DAGRUPPO);
disable(F_CONTO); disable(F_DACONTO);
disable(F_SOTTOCONTO); disable(F_DASOTTOCONTO);
set(F_GRUPPO, ""); set(F_DAGRUPPO, "");
set(F_CONTO, ""); set(F_DACONTO, "");
set(F_SOTTOCONTO, ""); set(F_DASOTTOCONTO, "");
} }
break;
case B_AGCS:
if(get_bool(B_AGCS))
{
enable(F_AGRUPPO);
enable(F_ACONTO);
enable(F_ASOTTOCONTO);
}
else
{
disable(F_AGRUPPO);
disable(F_ACONTO);
disable(F_ASOTTOCONTO);
set(F_AGRUPPO, "");
set(F_ACONTO, "");
set(F_ASOTTOCONTO, "");
}
break;
case B_PRTAPE: case B_PRTAPE:
if(e == fe_init) if(e == fe_init)
{ {
@ -101,10 +135,13 @@ bool TEsportaIva_msk::on_field_event(TOperable_field& o, TField_event e, long jo
set(B_PRTCHIU, "X"); set(B_PRTCHIU, "X");
set(B_SOLNONINV, "X"); set(B_SOLNONINV, "X");
} }
break; break;
case DLG_RECALC: case DLG_RECALC:
if (e != fe_init) if (e != fe_init)
{
show_page(1);
fill(); fill();
}
break; break;
default: break; default: break;
} }
@ -116,10 +153,16 @@ void TEsportaIva_msk::createName()
//setto il campo F_NAME a un valore fisso, e cioè: "CODF_data.txt" //setto il campo F_NAME a un valore fisso, e cioè: "CODF_data.txt"
TDate today(TODAY); TDate today(TODAY);
TString name; TString name;
if(get(F_CODCF).full()) if(get(F_DACODCF).full())
name << get(F_CODCF); name << get(F_DACODCF);
if(get(F_CODCF).full() && today.ok()) // Solo se ci sono entrambi, sennò farebbe schifo if(get(F_DACODCF).full() && (today.ok() || get(F_ACODCF).full())) // Solo se ci sono entrambi, sennò farebbe schifo
name << "_";
if(get(F_ACODCF).full())
name << get(F_ACODCF);
if(get(F_ACODCF).full() && today.ok()) // Solo se ci sono entrambi, sennò farebbe schifo
name << "_"; name << "_";
if(today.ok()) if(today.ok())
@ -137,7 +180,7 @@ bool TEsportaIva_msk::testFields() const
warning_box("Selezionare almeno un tipo di partita!"); warning_box("Selezionare almeno un tipo di partita!");
return false; return false;
} }
if(get_bool(B_FORNITORE) && get(F_CODCF).empty()) if(get_bool(B_DAFORNITORE) && get(F_DACODCF).empty())
{ {
warning_box("Selezionare il fornitore o togliere il filtro!"); warning_box("Selezionare il fornitore o togliere il filtro!");
return false; return false;
@ -185,25 +228,81 @@ TISAM_recordset TEsportaIva_msk::createRecset() const
query << "(23.TIPO=\"F\")"; query << "(23.TIPO=\"F\")";
if(get_bool(B_FORNITORE)) if(get_bool(B_DAFORNITORE) && get_bool(B_AFORNITORE))
{ {
query << "&&(23.CODCF=#CODCF)"; query << "&&STR((23.CODCF>=#DACODCF))&&STR((23.CODCF<=#ACODCF))";
}
else if(get_bool(B_DAFORNITORE))
{
query << "&&(23.CODCF=#DACODCF)";
}
else if(get_bool(B_AFORNITORE))
{
query << "&&(23.CODCF=#ACODCF)";
} }
if(get_bool(B_GCS)) bool nolav = get_int(F_JOB) != 1;
if(nolav)
{ {
if(get_int(F_GRUPPO) > 0)
/* Gruppo *************************************************************/
if(get_int(F_DAGRUPPO) > 0 && get_int(F_AGRUPPO) > 0)
{ {
query << "&&(25.GRUPPO=#GRUPPO)"; query << "&&STR((25.GRUPPO>=#DAGRUPPO))&&STR((25.GRUPPO<=#AGRUPPO))";
if(get_int(F_CONTO) > 0)
{
query << "&&(25.CONTO=#CONTO)";
if(get_int(F_SOTTOCONTO) > 0)
{
query << "&&(25.SOTTOCONTO=#SOTTOCONTO)";
}
}
} }
else if(get_int(F_DAGRUPPO) > 0)
{
query << "&&(25.GRUPPO=#DAGRUPPO)";
}
else if(get_int(F_AGRUPPO) > 0)
{
query << "&&(25.GRUPPO=#AGRUPPO)";
}
/* Conto *************************************************************/
if(get_int(F_DACONTO) > 0 && get_int(F_ACONTO) > 0)
{
query << "&&STR((25.CONTO>=#DACONTO))&&STR((25.CONTO<=#ACONTO))";
}
else if(get_int(F_DACONTO) > 0)
{
query << "&&(25.CONTO=#DACONTO)";
}
else if(get_int(F_ACONTO) > 0)
{
query << "&&(25.CONTO=#ACONTO)";
}
/* Sottoconto *************************************************************/
if(get_int(F_DASOTTOCONTO) > 0 && get_int(F_ASOTTOCONTO) > 0)
{
query << "&&STR((25.SOTTOCONTO>=#DASOTTOCONTO))&&STR((25.SOTTOCONTO<=#ASOTTOCONTO))";
}
else if(get_int(F_DASOTTOCONTO) > 0)
{
query << "&&(25.SOTTOCONTO=#DASOTTOCONTO)";
}
else if(get_int(F_ASOTTOCONTO) > 0)
{
query << "&&(25.SOTTOCONTO=#ASOTTOCONTO)";
}
}
if(get_real(F_DAIMPORTO) > ZERO && get_real(F_AIMPORTO) > ZERO)
{
query << "&&STR((23.TOTDOC>=#DATOTDOC))&&STR((23.TOTDOC<=#ATOTDOC))";
}
if(get_real(F_DAIMPORTO) > ZERO)
{
query << "&&(23.TOTDOC>#DATOTDOC)";
}
if(get_real(F_AIMPORTO) > ZERO)
{
query << "&&(23.TOTDOC<#ATOTDOC)";
} }
query << "\n"; query << "\n";
@ -225,39 +324,66 @@ TISAM_recordset TEsportaIva_msk::createRecset() const
recset.set_var("#ADATAFATT", aDFatt); recset.set_var("#ADATAFATT", aDFatt);
} }
if(get_bool(B_FORNITORE)) if(get_bool(B_DAFORNITORE))
{ {
recset.set_var("#CODCF", get(F_CODCF)); recset.set_var("#DACODCF", get(F_DACODCF));
}
if(get_bool(B_AFORNITORE))
{
recset.set_var("#ACODCF", get(F_ACODCF));
} }
if(get_bool(B_GCS)) if(nolav)
{ {
if(get_int(F_GRUPPO) > 0)
/* Gruppo *************************************************************/
if(get_int(F_DAGRUPPO) > 0)
{ {
recset.set_var("#GRUPPO", get(F_GRUPPO)); recset.set_var("#DAGRUPPO", get(F_DAGRUPPO));
if(get_int(F_CONTO) > 0) }
{ if(get_int(F_AGRUPPO) > 0)
recset.set_var("#CONTO", get(F_CONTO)); {
if(get_int(F_SOTTOCONTO) > 0) recset.set_var("#AGRUPPO", get(F_AGRUPPO));
{ }
recset.set_var("#SOTTOCONTO", get(F_SOTTOCONTO));
} /* Conto *************************************************************/
}
if(get_int(F_DACONTO) > 0)
{
recset.set_var("#DACONTO", get(F_DACONTO));
}
if(get_int(F_ACONTO) > 0)
{
recset.set_var("#ACONTO", get(F_ACONTO));
}
/* Sottoconto *************************************************************/
if(get_int(F_DASOTTOCONTO) > 0)
{
recset.set_var("#DASOTTOCONTO", get(F_DASOTTOCONTO));
}
if(get_int(F_ASOTTOCONTO) > 0)
{
recset.set_var("#ASOTTOCONTO", get(F_ASOTTOCONTO));
} }
} }
if(get_real(F_DAIMPORTO) > ZERO)
recset.set_var("#DAIMPORTO", get_real(F_DAIMPORTO));
if(get_real(F_AIMPORTO) > ZERO)
recset.set_var("#AIMPORTO", get_real(F_AIMPORTO));
return recset; return recset;
} }
TDate TEsportaIva_msk::getDataTest() const TDate TEsportaIva_msk::getDataTest() const
{ {
if(get_date(F_ADATAREG).ok()) if(get_date(F_ADATAPAG).ok())
{ {
return get_date(F_ADATAREG); return get_date(F_ADATAPAG);
}
else if(get_date(F_ADATAFATT).ok())
{
return get_date(F_ADATAFATT);
} }
return TDate(TODAY); return TDate(TODAY);
} }
@ -314,6 +440,7 @@ void TEsportaIva_msk::fill()
TProgress_monitor pi(rmoviva.items(), TR("Creazione sheet...")); TProgress_monitor pi(rmoviva.items(), TR("Creazione sheet..."));
bool lav = get_int(F_JOB) == 1;
bool all = get_bool(B_PRTAPE) && get_bool(B_PRTCHIU); bool all = get_bool(B_PRTAPE) && get_bool(B_PRTCHIU);
for (bool ok = rmoviva.move_first(); ok && !pi.is_cancelled(); ok = rmoviva.move_next()) for (bool ok = rmoviva.move_first(); ok && !pi.is_cancelled(); ok = rmoviva.move_next())
{ {
@ -340,7 +467,7 @@ void TEsportaIva_msk::fill()
{ {
daDPag = TDate(01,01,1990); daDPag = TDate(01,01,1990);
} }
if(aDPag.ok() && daDPag.ok() && (last_data_pag < daDPag || aDPag < last_data_pag || !last_data_pag.ok())) continue; if(aDPag.ok() && daDPag.ok() && (last_data_pag < daDPag || aDPag < last_data_pag || !last_data_pag.ok())) continue;
if (all || (get_bool(B_PRTAPE) && !partita_chiusa) || (get_bool(B_PRTCHIU) && partita_chiusa)) if (all || (get_bool(B_PRTAPE) && !partita_chiusa) || (get_bool(B_PRTCHIU) && partita_chiusa))
@ -358,7 +485,24 @@ void TEsportaIva_msk::fill()
{ {
TToken_string row; TToken_string row;
const TRectype& rmovana = movana.body()[i]; const TRectype& rmovana = movana.body()[i];
const TString80 codcms = rmovana.get("CODCMS"); const TString codcms = rmovana.get("CODCMS");
if(atoi(codcms) == 37832)
bool tolla = true;
// Controllo gruppo conto e sottoconto se ho l'id lavorazione
if(lav)
{
int gruppo = atoi(rmovana.get("CODCONTO").left(3));
int conto = atoi(rmovana.get("CODCONTO").mid(3,3));
int sottoconto = atoi(rmovana.get("CODCONTO").mid(6,6));
if( (get_int(F_DAGRUPPO) != 0 && get_int(F_DAGRUPPO) > gruppo) ||
(get_int(F_AGRUPPO) != 0 && get_int(F_AGRUPPO) < gruppo) ||
(get_int(F_DACONTO) != 0 && get_int(F_DACONTO) > conto) ||
(get_int(F_ACONTO) != 0 && get_int(F_ACONTO) < conto) ||
(get_int(F_DASOTTOCONTO) != 0 && get_int(F_DASOTTOCONTO) > sottoconto) ||
(get_int(F_ASOTTOCONTO) != 0 && get_int(F_ASOTTOCONTO) < sottoconto))
continue;
}
row.add(rmoviva.get("23.DATAREG").as_string(), 0); row.add(rmoviva.get("23.DATAREG").as_string(), 0);
row.add(codcms); row.add(codcms);
@ -373,9 +517,9 @@ void TEsportaIva_msk::fill()
row.add(rmoviva.get("23.DATADOC").as_string()); row.add(rmoviva.get("23.DATADOC").as_string());
row.add(rmoviva.get("23.NUMDOC").as_string()); row.add(rmoviva.get("23.NUMDOC").as_string());
row.add(last_data_pag); row.add(last_data_pag);
row.add(rmoviva.get("25.GRUPPO").as_string()); row.add(rmovana.get("CODCONTO").left(3));
row.add(rmoviva.get("25.CONTO").as_string()); row.add(rmovana.get("CODCONTO").mid(3,3));
row.add(rmoviva.get("25.SOTTOCONTO").as_string()); row.add(rmovana.get("CODCONTO").mid(6,6));
strarr.add(row); strarr.add(row);
} }
while (rmoviva.move_next()) while (rmoviva.move_next())
@ -393,6 +537,22 @@ void TEsportaIva_msk::fill()
{ {
const TString & codcms = rmoviva.get("CODCMS").as_string(); const TString & codcms = rmoviva.get("CODCMS").as_string();
// Con quelli che non hanno delle righe effettuo il filtro con g/c/s della contabilità,
// controllo lo stesso lav perchè indica se devo farlo o meno
if(lav)
{
int gruppo = rmoviva.get("25.GRUPPO").as_int();
int conto = rmoviva.get("25.CONTO").as_int();
int sottoconto = rmoviva.get("25.SOTTOCONTO").as_int();
if( (get_int(F_DAGRUPPO) != 0 && get_int(F_DAGRUPPO) > gruppo) ||
(get_int(F_AGRUPPO) != 0 && get_int(F_AGRUPPO) < gruppo) ||
(get_int(F_DACONTO) != 0 && get_int(F_DACONTO) > conto) ||
(get_int(F_ACONTO) != 0 && get_int(F_ACONTO) < conto) ||
(get_int(F_DASOTTOCONTO) != 0 && get_int(F_DASOTTOCONTO) > sottoconto) ||
(get_int(F_ASOTTOCONTO) != 0 && get_int(F_ASOTTOCONTO) < sottoconto))
continue;
}
if (codcms.full()) if (codcms.full())
{ {
TToken_string row; TToken_string row;
@ -536,6 +696,7 @@ void TEsportaIva_app::esporta_righe_iva(const TEsportaIva_msk& m) const
//instanzio il csv recordset //instanzio il csv recordset
TEsportaIva_rec csv; TEsportaIva_rec csv;
bool lav = m.get_int(F_JOB) == 1;
bool all = m.get_bool(B_PRTAPE) && m.get_bool(B_PRTCHIU); bool all = m.get_bool(B_PRTAPE) && m.get_bool(B_PRTCHIU);
TProgress_monitor pi(rmoviva.items(), TR("Estrazione dati...")); TProgress_monitor pi(rmoviva.items(), TR("Estrazione dati..."));
for (bool ok = rmoviva.move_first(); ok && !pi.is_cancelled(); ok = rmoviva.move_next()) for (bool ok = rmoviva.move_first(); ok && !pi.is_cancelled(); ok = rmoviva.move_next())
@ -578,7 +739,22 @@ void TEsportaIva_app::esporta_righe_iva(const TEsportaIva_msk& m) const
{ {
csv.new_rec(""); csv.new_rec("");
const TRectype& rmovana = movana.body()[i]; const TRectype& rmovana = movana.body()[i];
const TString80 codcms = rmovana.get("CODCMS"); const TString80 codcms = rmovana.get("CODCMS");
// Controllo gruppo conto e sottoconto se ho l'id lavorazione
if(lav)
{
int gruppo = atoi(rmovana.get("CODCONTO").left(3));
int conto = atoi(rmovana.get("CODCONTO").mid(3,3));
int sottoconto = atoi(rmovana.get("CODCONTO").mid(6,6));
if( (m.get_int(F_DAGRUPPO) != 0 && m.get_int(F_DAGRUPPO) > gruppo) ||
(m.get_int(F_AGRUPPO) != 0 && m.get_int(F_AGRUPPO) < gruppo) ||
(m.get_int(F_DACONTO) != 0 && m.get_int(F_DACONTO) > conto) ||
(m.get_int(F_ACONTO) != 0 && m.get_int(F_ACONTO) < conto) ||
(m.get_int(F_DASOTTOCONTO) != 0 && m.get_int(F_DASOTTOCONTO) > sottoconto) ||
(m.get_int(F_ASOTTOCONTO) != 0 && m.get_int(F_ASOTTOCONTO) < sottoconto))
continue;
}
csv.set(0, rmoviva.get("23.DATAREG").as_string()); csv.set(0, rmoviva.get("23.DATAREG").as_string());
csv.set(1, codcms); csv.set(1, codcms);
@ -594,9 +770,9 @@ void TEsportaIva_app::esporta_righe_iva(const TEsportaIva_msk& m) const
csv.set(7, rmoviva.get("23.DATADOC")); csv.set(7, rmoviva.get("23.DATADOC"));
csv.set(8, rmoviva.get("23.NUMDOC")); csv.set(8, rmoviva.get("23.NUMDOC"));
csv.set(9, last_data_pag); csv.set(9, last_data_pag);
csv.set(10, rmoviva.get("25.GRUPPO")); csv.set(10, rmovana.get("CODCONTO").left(3));
csv.set(11, rmoviva.get("25.CONTO")); csv.set(11, rmovana.get("CODCONTO").mid(3,3));
csv.set(12, rmoviva.get("25.SOTTOCONTO")); csv.set(12, rmovana.get("CODCONTO").mid(6,6));
} }
while (rmoviva.move_next()) while (rmoviva.move_next())
{ {
@ -613,6 +789,22 @@ void TEsportaIva_app::esporta_righe_iva(const TEsportaIva_msk& m) const
{ {
const TString & codcms = rmoviva.get("CODCMS").as_string(); const TString & codcms = rmoviva.get("CODCMS").as_string();
// Con quelli che non hanno delle righe effettuo il filtro con g/c/s della contabilità,
// controllo lo stesso lav perchè indica se devo farlo o meno
if(lav)
{
int gruppo = rmoviva.get("25.GRUPPO").as_int();
int conto = rmoviva.get("25.CONTO").as_int();
int sottoconto = rmoviva.get("25.SOTTOCONTO").as_int();
if( (m.get_int(F_DAGRUPPO) != 0 && m.get_int(F_DAGRUPPO) > gruppo) ||
(m.get_int(F_AGRUPPO) != 0 && m.get_int(F_AGRUPPO) < gruppo) ||
(m.get_int(F_DACONTO) != 0 && m.get_int(F_DACONTO) > conto) ||
(m.get_int(F_ACONTO) != 0 && m.get_int(F_ACONTO) < conto) ||
(m.get_int(F_DASOTTOCONTO) != 0 && m.get_int(F_DASOTTOCONTO) > sottoconto) ||
(m.get_int(F_ASOTTOCONTO) != 0 && m.get_int(F_ASOTTOCONTO) < sottoconto))
continue;
}
if (codcms.full()) if (codcms.full())
{ {
csv.new_rec(""); csv.new_rec("");

View File

@ -24,16 +24,25 @@
#define F_DADATAPAG 207 #define F_DADATAPAG 207
#define F_ADATAPAG 208 #define F_ADATAPAG 208
#define F_JOB 209 #define F_JOB 209
#define B_FORNITORE 210 #define B_DAFORNITORE 210
#define F_CODCF 211 #define F_DACODCF 211
#define F_RAGSOC 212 #define F_DARAGSOC 212
#define B_GCS 213 #define B_AFORNITORE 213
#define F_GRUPPO 214 #define F_ACODCF 214
#define F_CONTO 215 #define F_ARAGSOC 215
#define F_SOTTOCONTO 216 #define B_DAGCS 216
#define B_PRTAPE 217 #define F_DAGRUPPO 217
#define B_PRTCHIU 218 #define F_DACONTO 218
#define B_SOLRITFIS 219 #define F_DASOTTOCONTO 219
#define B_SOLNONINV 220 #define B_AGCS 220
#define F_AGRUPPO 221
#define F_ACONTO 222
#define F_ASOTTOCONTO 223
#define F_DAIMPORTO 224
#define F_AIMPORTO 225
#define B_PRTAPE 226
#define B_PRTCHIU 227
#define B_SOLRITFIS 228
#define B_SOLNONINV 229
#define S_RESULT 301 #define S_RESULT 301

View File

@ -18,7 +18,7 @@ END
ENDPAGE ENDPAGE
PAGE "Trasferimento dati IVA per ATS" -1 -1 80 10 PAGE "Filtri" -1 -1 80 10
STRING F_PATH 255 45 STRING F_PATH 255 45
BEGIN BEGIN
@ -65,116 +65,219 @@ BEGIN
PROMPT 25 4 "A data Pag. " PROMPT 25 4 "A data Pag. "
END END
BOOLEAN B_FORNITORE BOOLEAN B_DAFORNITORE
BEGIN BEGIN
PROMPT 0 5 "Fornitore" PROMPT 0 5 "Da Fornitore"
END END
NUMBER F_CODCF 6 NUMBER F_DACODCF 6
BEGIN BEGIN
PROMPT 14 5 "Codice:" PROMPT 15 5 "Codice:"
USE LF_CLIFO USE LF_CLIFO
INPUT TIPOCF "F" SELECT INPUT TIPOCF "F" SELECT
INPUT CODCF F_CODCF INPUT CODCF F_DACODCF
DISPLAY "Codice" CODCF DISPLAY "Codice" CODCF
DISPLAY "Ragione Sociale@50" RAGSOC DISPLAY "Ragione Sociale@50" RAGSOC
DISPLAY "Occasionale@C" OCCAS DISPLAY "Occasionale@C" OCCAS
DISPLAY "Codice Fiscale@16" COFI DISPLAY "Codice Fiscale@16" COFI
DISPLAY "Partita IVA@15" PAIV DISPLAY "Partita IVA@15" PAIV
OUTPUT F_CODCF CODCF OUTPUT F_DACODCF CODCF
OUTPUT F_RAGSOC RAGSOC OUTPUT F_DARAGSOC RAGSOC
CHEKTYPE NORMAL CHEKTYPE NORMAL
GROUP 1 GROUP 1
FLAGS "D" FLAGS "D"
END END
STRING F_RAGSOC 50 30 STRING F_DARAGSOC 50 30
BEGIN BEGIN
PROMPT 30 5 "R.Soc: " PROMPT 31 5 "R.Soc: "
USE LF_CLIFO KEY 2 USE LF_CLIFO KEY 2
INPUT TIPOCF "F" SELECT INPUT TIPOCF "F" SELECT
INPUT RAGSOC F_RAGSOC INPUT RAGSOC F_DARAGSOC
DISPLAY "Ragione Sociale@50" RAGSOC DISPLAY "Ragione Sociale@50" RAGSOC
DISPLAY "Codice" CODCF DISPLAY "Codice" CODCF
DISPLAY "Codice Fiscale@16" COFI DISPLAY "Codice Fiscale@16" COFI
DISPLAY "Partita IVA@15" PAIV DISPLAY "Partita IVA@15" PAIV
COPY OUTPUT F_CODCF COPY OUTPUT F_DACODCF
ADD RUN CG0 -1 ADD RUN CG0 -1
GROUP 1 GROUP 1
FLAGS "D" FLAGS "D"
END END
BOOLEAN B_GCS BOOLEAN B_AFORNITORE
BEGIN BEGIN
PROMPT 0 6 "" PROMPT 0 6 "A Fornitore"
END END
NUMBER F_GRUPPO 3 NUMBER F_ACODCF 6
BEGIN BEGIN
PROMPT 3 6 "Gruppo: " PROMPT 15 6 "Codice:"
USE LF_CLIFO
INPUT TIPOCF "F" SELECT
INPUT CODCF F_ACODCF
DISPLAY "Codice" CODCF
DISPLAY "Ragione Sociale@50" RAGSOC
DISPLAY "Occasionale@C" OCCAS
DISPLAY "Codice Fiscale@16" COFI
DISPLAY "Partita IVA@15" PAIV
OUTPUT F_ACODCF CODCF
OUTPUT F_ARAGSOC RAGSOC
CHEKTYPE NORMAL
GROUP 1
FLAGS "D"
END
STRING F_ARAGSOC 50 30
BEGIN
PROMPT 31 6 "R.Soc: "
USE LF_CLIFO KEY 2
INPUT TIPOCF "F" SELECT
INPUT RAGSOC F_ARAGSOC
DISPLAY "Ragione Sociale@50" RAGSOC
DISPLAY "Codice" CODCF
DISPLAY "Codice Fiscale@16" COFI
DISPLAY "Partita IVA@15" PAIV
COPY OUTPUT F_ACODCF
ADD RUN CG0 -1
GROUP 1
FLAGS "D"
END
BOOLEAN B_DAGCS
BEGIN
PROMPT 0 7 ""
END
NUMBER F_DAGRUPPO 3
BEGIN
PROMPT 3 7 "Da Gruppo: "
USE LF_PCON SELECT (CONTO="") USE LF_PCON SELECT (CONTO="")
INPUT GRUPPO F_GRUPPO INPUT GRUPPO F_DAGRUPPO
DISPLAY "Gruppo" GRUPPO DISPLAY "Gruppo" GRUPPO
DISPLAY "Descrizione@50" DESCR DISPLAY "Descrizione@50" DESCR
OUTPUT F_GRUPPO GRUPPO OUTPUT F_DAGRUPPO GRUPPO
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
WARNING "Gruppo assente" WARNING "Gruppo assente"
FLAGS "D" FLAGS "D"
END END
NUMBER F_CONTO 3 NUMBER F_DACONTO 3
BEGIN BEGIN
PROMPT 20 6 "Conto: " PROMPT 20 7 "Conto: "
USE LF_PCON SELECT (CONTO!="")&&(SOTTOCONTO="") USE LF_PCON SELECT (CONTO!="")&&(SOTTOCONTO="")
INPUT GRUPPO F_GRUPPO INPUT GRUPPO F_DAGRUPPO
INPUT CONTO F_CONTO INPUT CONTO F_DACONTO
DISPLAY "Gruppo" GRUPPO DISPLAY "Gruppo" GRUPPO
DISPLAY "Conto" CONTO DISPLAY "Conto" CONTO
DISPLAY "Tipo" TMCF DISPLAY "Tipo" TMCF
DISPLAY "Descrizione@50" DESCR DISPLAY "Descrizione@50" DESCR
OUTPUT F_CONTO CONTO OUTPUT F_DACONTO CONTO
OUTPUT F_GRUPPO GRUPPO OUTPUT F_DAGRUPPO GRUPPO
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
WARNING "Conto assente" WARNING "Conto assente"
FLAGS "D" FLAGS "D"
END END
NUMBER F_SOTTOCONTO 6 NUMBER F_DASOTTOCONTO 6
BEGIN BEGIN
PROMPT 40 6 "Sottoconto: " PROMPT 40 7 "Sottoconto: "
USE LF_PCON SELECT (SOTTOCONTO!="") USE LF_PCON SELECT (SOTTOCONTO!="")
COPY INPUT F_CONTO COPY INPUT F_DACONTO
INPUT SOTTOCONTO F_SOTTOCONTO INPUT SOTTOCONTO F_DASOTTOCONTO
DISPLAY "Gruppo" GRUPPO DISPLAY "Gruppo" GRUPPO
DISPLAY "Conto" CONTO DISPLAY "Conto" CONTO
DISPLAY "Sottoconto" SOTTOCONTO DISPLAY "Sottoconto" SOTTOCONTO
DISPLAY "Descrizione@50" DESCR DISPLAY "Descrizione@50" DESCR
OUTPUT F_SOTTOCONTO SOTTOCONTO OUTPUT F_DASOTTOCONTO SOTTOCONTO
OUTPUT F_GRUPPO GRUPPO OUTPUT F_DAGRUPPO GRUPPO
OUTPUT F_CONTO CONTO OUTPUT F_DACONTO CONTO
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
WARNING "Sottoconto assente" WARNING "Sottoconto assente"
FLAGS "D" FLAGS "D"
END END
BOOLEAN B_AGCS
BEGIN
PROMPT 0 8 ""
END
NUMBER F_AGRUPPO 3
BEGIN
PROMPT 3 8 "A Gruppo: "
USE LF_PCON SELECT (CONTO="")
INPUT GRUPPO F_AGRUPPO
DISPLAY "Gruppo" GRUPPO
DISPLAY "Descrizione@50" DESCR
OUTPUT F_AGRUPPO GRUPPO
CHECKTYPE REQUIRED
WARNING "Gruppo assente"
FLAGS "D"
END
NUMBER F_ACONTO 3
BEGIN
PROMPT 20 8 "Conto: "
USE LF_PCON SELECT (CONTO!="")&&(SOTTOCONTO="")
INPUT GRUPPO F_AGRUPPO
INPUT CONTO F_ACONTO
DISPLAY "Gruppo" GRUPPO
DISPLAY "Conto" CONTO
DISPLAY "Tipo" TMCF
DISPLAY "Descrizione@50" DESCR
OUTPUT F_ACONTO CONTO
OUTPUT F_AGRUPPO GRUPPO
CHECKTYPE REQUIRED
WARNING "Conto assente"
FLAGS "D"
END
NUMBER F_ASOTTOCONTO 6
BEGIN
PROMPT 40 8 "Sottoconto: "
USE LF_PCON SELECT (SOTTOCONTO!="")
COPY INPUT F_ACONTO
INPUT SOTTOCONTO F_ASOTTOCONTO
DISPLAY "Gruppo" GRUPPO
DISPLAY "Conto" CONTO
DISPLAY "Sottoconto" SOTTOCONTO
DISPLAY "Descrizione@50" DESCR
OUTPUT F_ASOTTOCONTO SOTTOCONTO
OUTPUT F_AGRUPPO GRUPPO
OUTPUT F_ACONTO CONTO
CHECKTYPE REQUIRED
WARNING "Sottoconto assente"
FLAGS "D"
END
NUMBER F_DAIMPORTO 10 2
BEGIN
PROMPT 0 9 "Da Importo:"
END
NUMBER F_AIMPORTO 10 2
BEGIN
PROMPT 25 9 "A Importo:"
END
BOOLEAN B_PRTAPE BOOLEAN B_PRTAPE
BEGIN BEGIN
PROMPT 0 7 "Partita aperta" PROMPT 0 10 "Fatt. da Pagare"
END END
BOOLEAN B_PRTCHIU BOOLEAN B_PRTCHIU
BEGIN BEGIN
PROMPT 20 7 "Partita chiusa" PROMPT 20 10 "Fatt. Pagate"
END END
BOOLEAN B_SOLRITFIS BOOLEAN B_SOLRITFIS
BEGIN BEGIN
PROMPT 40 7 "Solo Ritenute Fiscali" PROMPT 40 10 "Filtra Rit. Acconto"
END END
BOOLEAN B_SOLNONINV BOOLEAN B_SOLNONINV
BEGIN BEGIN
PROMPT 70 7 "Solo doc. non inviati" PROMPT 70 10 "Escludi Pag. Inviati"
END END
@ -186,9 +289,13 @@ BEGIN
FLAGS "Z" FLAGS "Z"
END END
ENDPAGE
PAGE "Risultati" -1 -1 80 10
SPREADSHEET S_RESULT SPREADSHEET S_RESULT
BEGIN BEGIN
PROMPT 0 8 "" PROMPT 0 0 ""
ITEM "Data\nRegistrazione@10" ITEM "Data\nRegistrazione@10"
ITEM "ID Lavoro@10" ITEM "ID Lavoro@10"
ITEM "Cod.\nFornitore@8" ITEM "Cod.\nFornitore@8"