Patch level : 12.0 384
Files correlati : tf Commento : - Sistemata maschera tf0500 - Corretta esportazione e chiamata programma .jar tf0500 - Tolti campi non utilizzati, aggiunta profilo, sistemata maschera per tf0200 - Sistemati bug tf0200, (programma ancora non finito) git-svn-id: svn://10.65.10.50/branches/R_10_00@23768 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
54367a0d01
commit
05deed15ae
@ -45,6 +45,7 @@ const TRectype getLIA(int anno)
|
|||||||
TString key; key << format("%05d", prefix().firm().codice()) << anno; // %05d Crea un numero di 5 cifre partendo dal codice e mettendoci 0 davanti
|
TString key; key << format("%05d", prefix().firm().codice()) << anno; // %05d Crea un numero di 5 cifre partendo dal codice e mettendoci 0 davanti
|
||||||
return cache().get("%LIA", key);
|
return cache().get("%LIA", key);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Ritorna il record valido richiesto di tabcom.VER
|
// Ritorna il record valido richiesto di tabcom.VER
|
||||||
const TRectype getVER(int anno, int mese)
|
const TRectype getVER(int anno, int mese)
|
||||||
{
|
{
|
||||||
@ -77,7 +78,7 @@ const TRectype getVER(int anno, int mese)
|
|||||||
return rowRet;
|
return rowRet;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Scopiazzata brutalmente da cg4304.cpp
|
// Scopiazzata brutalmente da cg4304.cpp, aggiunto controllo indetraibilità per le imposte, non devono essere prese in considerazione se indetraibili
|
||||||
int calc_inc_diff(int anno, int mese, int tipoiva, real& imponibile_diff, real& imposta_diff, real& imponibile_xcas, real& imposta_xcas)
|
int calc_inc_diff(int anno, int mese, int tipoiva, real& imponibile_diff, real& imposta_diff, real& imponibile_xcas, real& imposta_xcas)
|
||||||
{
|
{
|
||||||
CHECKD(tipoiva == 1 || tipoiva == 2, "Bad tipo iva:", tipoiva);
|
CHECKD(tipoiva == 1 || tipoiva == 2, "Bad tipo iva:", tipoiva);
|
||||||
@ -102,15 +103,23 @@ int calc_inc_diff(int anno, int mese, int tipoiva, real& imponibile_diff, real&
|
|||||||
const int tipodiff = rec.get_int("TIPODIFF");
|
const int tipodiff = rec.get_int("TIPODIFF");
|
||||||
switch (tipodiff)
|
switch (tipodiff)
|
||||||
{
|
{
|
||||||
case 1: imponibile_diff += imp; imposta_diff += iva; break;
|
case 1:
|
||||||
case 2: imponibile_xcas += imp; imposta_xcas += iva; break;
|
imponibile_diff += imp;
|
||||||
|
if(!rec.get_bool("INDETR"))
|
||||||
|
imposta_diff += iva;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
imponibile_xcas += imp;
|
||||||
|
if(!rec.get_bool("INDETR"))
|
||||||
|
imposta_xcas += iva;
|
||||||
|
break;
|
||||||
default: break;
|
default: break;
|
||||||
}
|
}
|
||||||
flag |= tipodiff;
|
flag |= tipodiff;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tipoiva == 2)
|
if (tipoiva == 2 && !rec.get_bool("INDETR"))
|
||||||
{
|
{
|
||||||
real perc_prorata;
|
real perc_prorata;
|
||||||
|
|
||||||
@ -140,6 +149,12 @@ int calc_inc_diff(int anno, int mese, int tipoiva, real& imponibile_diff, real&
|
|||||||
return flag;
|
return flag;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int getTipoReg(int anno, TString codReg)
|
||||||
|
{
|
||||||
|
TString key; key << anno << codReg;
|
||||||
|
return stoi(cache().get("REG", key, "I0"));
|
||||||
|
}
|
||||||
|
|
||||||
/* Da errori in allocazione TArray
|
/* Da errori in allocazione TArray
|
||||||
const TISAM_recordset getCurIvaXCassa(TDate data_da, TDate data_a, TString codreg_att)
|
const TISAM_recordset getCurIvaXCassa(TDate data_da, TDate data_a, TString codreg_att)
|
||||||
{
|
{
|
||||||
@ -192,14 +207,32 @@ bool ComLiqPerIva_mask::on_field_event(TOperable_field& o, TField_event e, long
|
|||||||
disable(F_MESE);
|
disable(F_MESE);
|
||||||
enable(F_TRIMESTRE);
|
enable(F_TRIMESTRE);
|
||||||
}
|
}
|
||||||
// Abilito i campi a schiena
|
}
|
||||||
for(int i = F_SUBFORNITURE; i <= F_VEREFF; i++)
|
else if(e == fe_init)
|
||||||
|
{
|
||||||
|
// Per trovare un valore tento per 5 anni di vedere se c'è una liquidazione aperta, così da valorizzare tutta la roba
|
||||||
|
int year = TDate(TODAY).year();
|
||||||
|
for(int i = year; i >= year - 5; i--)
|
||||||
{
|
{
|
||||||
enable(i);
|
TString cod = get(F_CODDITTA);
|
||||||
if(i >= CAMPI_CON_BOOLEAN)
|
cod << i;
|
||||||
|
if(cache().get("%LIA", cod).empty()) continue;
|
||||||
|
|
||||||
|
// Trovato
|
||||||
|
set(F_ANNO, i);
|
||||||
|
if(cache().get("%LIA", cod, "S7") == "M")
|
||||||
{
|
{
|
||||||
//enable(i + 50); Anche disabilitati funzionano
|
mensile = true;
|
||||||
|
enable(F_MESE);
|
||||||
|
disable(F_TRIMESTRE);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
mensile = false;
|
||||||
|
disable(F_MESE);
|
||||||
|
enable(F_TRIMESTRE);
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -226,12 +259,12 @@ bool ComLiqPerIva_mask::on_field_event(TOperable_field& o, TField_event e, long
|
|||||||
break;
|
break;
|
||||||
case DLG_EMAIL:
|
case DLG_EMAIL:
|
||||||
// Richiamo il programma di invio
|
// Richiamo il programma di invio
|
||||||
// TExternal_application app;
|
// TExternal_application app;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(o.dlg() >= CAMPI_CON_BOOLEAN && e == fe_modify) // Se l'utente modifica manualmente uno dei campi calcolati da Campo flaggo il DB
|
if(o.dlg() >= CAMPI_CON_BOOLEAN && o.dlg() <= F_IMPNOVER && e == fe_modify) // Se l'utente modifica manualmente uno dei campi calcolati da Campo flaggo il DB
|
||||||
{
|
{
|
||||||
set(o.dlg() + 50, "X");
|
set(o.dlg() + 50, "X");
|
||||||
}
|
}
|
||||||
@ -254,15 +287,18 @@ bool ComLiqPerIva_mask::on_field_event(TOperable_field& o, TField_event e, long
|
|||||||
if((ivaes - ivadet) >= ZERO)
|
if((ivaes - ivadet) >= ZERO)
|
||||||
{
|
{
|
||||||
set(F_IVADOV, ivaes - ivadet);
|
set(F_IVADOV, ivaes - ivadet);
|
||||||
|
set(B_IVADOV, "X");
|
||||||
set(F_IVADOVC, ZERO);
|
set(F_IVADOVC, ZERO);
|
||||||
|
set(B_IVADOVC, "");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
set(F_IVADOV, ZERO);
|
set(F_IVADOV, ZERO);
|
||||||
|
set(B_IVADOV, "");
|
||||||
set(F_IVADOVC, (ivaes - ivadet) * -UNO);
|
set(F_IVADOVC, (ivaes - ivadet) * -UNO);
|
||||||
|
set(B_IVADOVC, "X");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// IVA da versare VS a credito
|
// IVA da versare VS a credito
|
||||||
case F_IVADOV :
|
case F_IVADOV :
|
||||||
case F_DEBPREC :
|
case F_DEBPREC :
|
||||||
@ -280,14 +316,19 @@ bool ComLiqPerIva_mask::on_field_event(TOperable_field& o, TField_event e, long
|
|||||||
if(debito - credito >= ZERO)
|
if(debito - credito >= ZERO)
|
||||||
{
|
{
|
||||||
set(F_IVAVER, debito - credito);
|
set(F_IVAVER, debito - credito);
|
||||||
|
set(B_IVAVER, "X");
|
||||||
set(F_IVAVERC, ZERO);
|
set(F_IVAVERC, ZERO);
|
||||||
|
set(B_IVAVERC, "");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
set(F_IVAVER, ZERO);
|
set(F_IVAVER, ZERO);
|
||||||
|
set(B_IVAVER, "");
|
||||||
set(F_IVAVERC, credito - debito);
|
set(F_IVAVERC, credito - debito);
|
||||||
|
set(B_IVAVERC, "X");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
@ -300,8 +341,8 @@ void ComLiqPerIva_mask::extractinator() // Per gli amici GTFO
|
|||||||
* I dati da prelevare saranno in PRM, LIM e %LIA
|
* I dati da prelevare saranno in PRM, LIM e %LIA
|
||||||
* In PRM e LIM troverò le informazioni suddivise per mese, mentre in %LIA ho l'anno di liquidazione
|
* In PRM e LIM troverò le informazioni suddivise per mese, mentre in %LIA ho l'anno di liquidazione
|
||||||
*/
|
*/
|
||||||
int start = mensile ? get_int(F_MESE) : get_int(F_TRIMESTRE) * 3;
|
int start = mensile ? get_int(F_MESE) : (((get_int(F_TRIMESTRE) - 1) * 3) + 1);
|
||||||
int end = mensile ? start : start + 3;
|
int end = mensile ? start : start + 2;
|
||||||
int anno = get_int(F_ANNO);
|
int anno = get_int(F_ANNO);
|
||||||
|
|
||||||
// Valori da calcolare
|
// Valori da calcolare
|
||||||
@ -332,8 +373,8 @@ void ComLiqPerIva_mask::extractinator() // Per gli amici GTFO
|
|||||||
real ivaverc = ZERO;
|
real ivaverc = ZERO;
|
||||||
|
|
||||||
// Costanti
|
// Costanti
|
||||||
const TString codreg_att = "VEN";
|
static const int reg_att = 1;
|
||||||
const TString codreg_pas = "ACQ";
|
static const int reg_pas = 2;
|
||||||
|
|
||||||
for(; start <= end; start++)
|
for(; start <= end; start++)
|
||||||
{
|
{
|
||||||
@ -351,6 +392,7 @@ void ComLiqPerIva_mask::extractinator() // Per gli amici GTFO
|
|||||||
// Controllo che la liquidazione è stata effettuata
|
// Controllo che la liquidazione è stata effettuata
|
||||||
if(rowLim.empty())
|
if(rowLim.empty())
|
||||||
{
|
{
|
||||||
|
message_box("Errore LIM");
|
||||||
error_box("Attenzione non è stata calcolata la liquidazione del periodo corrente");
|
error_box("Attenzione non è stata calcolata la liquidazione del periodo corrente");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -366,97 +408,48 @@ void ComLiqPerIva_mask::extractinator() // Per gli amici GTFO
|
|||||||
TRectype to(rprm.curr()); to.put("COD" , "PRM");to.put("CODTAB", anno);
|
TRectype to(rprm.curr()); to.put("COD" , "PRM");to.put("CODTAB", anno);
|
||||||
|
|
||||||
TCursor curPrm(&rprm, "", 1, &from, &to);
|
TCursor curPrm(&rprm, "", 1, &from, &to);
|
||||||
|
|
||||||
|
|
||||||
for(curPrm = 0; curPrm.pos() < curPrm.items(); ++curPrm)
|
for(curPrm = 0; curPrm.pos() < curPrm.items(); ++curPrm)
|
||||||
{
|
{
|
||||||
TRectype rowPrm = curPrm.curr();
|
TRectype rowPrm = curPrm.curr();
|
||||||
// Controllo il mese
|
// Controllo il mese
|
||||||
TString codtab = rowPrm.get("CODTAB");
|
TString codtab = rowPrm.get("CODTAB");
|
||||||
int app = stoi(rowPrm.get("CODTAB").sub(13,15));
|
int app = stoi(rowPrm.get("CODTAB").sub(13,15)); // Da togliere
|
||||||
if(stoi(rowPrm.get("CODTAB").sub(13,15)) != start) continue;
|
if(stoi(rowPrm.get("CODTAB").sub(13,15)) != start) continue;
|
||||||
|
|
||||||
// Verifico su che registro mi trovo
|
// Verifico su che registro mi trovo
|
||||||
if(rowPrm.get("CODTAB").sub(10,13) == codreg_att)
|
int tiporeg = getTipoReg(anno, rowPrm.get("CODTAB").sub(10,13));
|
||||||
|
if(tiporeg == reg_att)
|
||||||
{
|
{
|
||||||
totopatt = totopatt + rowPrm.get_real("R0");
|
totopatt = totopatt + rowPrm.get_real("R0");
|
||||||
}
|
}
|
||||||
else if(rowPrm.get("CODTAB").sub(10,13) == codreg_pas)
|
else if(tiporeg == reg_pas)
|
||||||
{
|
{
|
||||||
totoppas = totoppas + rowPrm.get_real("R0");
|
totoppas = totoppas + rowPrm.get_real("R0");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
real appReal = ZERO;
|
|
||||||
|
|
||||||
// IVA esigibile
|
|
||||||
TToken_string tokenPrec = rowLim.get("S0");
|
|
||||||
tokenPrec.get(0, appReal);
|
|
||||||
ivaes = ivaes + appReal;
|
|
||||||
|
|
||||||
// IVA detraibile
|
|
||||||
appReal = ZERO; // Nel dubbio azzero
|
|
||||||
tokenPrec.get(1, appReal);
|
|
||||||
ivadet = ivadet + appReal;
|
|
||||||
|
|
||||||
// Se ha attiva l'IVA x cassa
|
// Se ha attiva l'IVA x cassa
|
||||||
if(gestione_IVAxCassa(data_da))
|
if(gestione_IVAxCassa(data_da))
|
||||||
{
|
{
|
||||||
static TRelation rreg(LF_TAB);
|
|
||||||
TRectype fromReg(rprm.curr()); fromReg.put("COD", "REG");fromReg.put("CODTAB", anno);
|
|
||||||
TRectype toReg(rprm.curr()); toReg.put("COD" , "REG"); toReg.put("CODTAB", anno);
|
|
||||||
|
|
||||||
// Questo codice è stato preso da print_IVAxCassa in cg4400.cpp
|
|
||||||
TString query = "USE IVADIFF SELECT (BETWEEN(DATAREGP,#DAL,#AL))&&(MOV.REG=#REG)&&(STR((MESELIQ<13)&&(TIPOMOV>2)&&(MOV.TOTDOC!=0)&&(IMPOSTA!=0)&&NUM(INDETR!='X')))";
|
|
||||||
query << "\nBY DATAREGP DATAREG NUMPRO";
|
|
||||||
query << "\nJOIN MOV INTO NUMREG==NUMREG";
|
|
||||||
query << "\nJOIN CLIFO TO MOV INTO TIPOCF==TIPO CODCF==CODCF";
|
|
||||||
|
|
||||||
TCursor curReg(&rreg, "", 1, &fromReg, &toReg);
|
|
||||||
for(curReg = 0; curReg.pos() < curReg.items(); ++curReg)
|
|
||||||
{
|
|
||||||
TRectype rowReg = curReg.curr();
|
|
||||||
|
|
||||||
// Siamo su un registro non IVA
|
|
||||||
int tipo_registro = rowReg.get_int("I0");
|
|
||||||
if(tipo_registro > 2) continue;
|
|
||||||
|
|
||||||
TISAM_recordset id(query);
|
|
||||||
id.set_var("#DAL", data_da);
|
|
||||||
id.set_var("#AL", data_a);
|
|
||||||
id.set_var("#REG", rowReg.get("CODTAB").sub(4));
|
|
||||||
|
|
||||||
const TRectype& rec = id.cursor()->curr();
|
|
||||||
for (bool ok = id.move_first(); ok; ok = id.move_next())
|
|
||||||
{
|
|
||||||
if(tipo_registro == 1) // Vendite
|
|
||||||
{
|
|
||||||
totopattxc = totopattxc + rec.get_real("IMPOSTA");
|
|
||||||
}
|
|
||||||
else // Acquisti
|
|
||||||
{
|
|
||||||
totoppasxc = totoppasxc + rec.get_real("IMPOSTA");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// IVA esigibile
|
// IVA esigibile
|
||||||
TToken_string tokenPrec = rowLim.get("S0");
|
|
||||||
tokenPrec.get(0, ivaes);
|
|
||||||
|
|
||||||
real imponibile_diff, imposta_diff, imponibile_xcas, imposta_xcas;
|
real imponibile_diff, imposta_diff, imponibile_xcas, imposta_xcas;
|
||||||
calc_inc_diff(anno, start, 1, imponibile_diff, imposta_diff, imponibile_xcas, imposta_xcas);
|
imponibile_diff = imposta_diff = imponibile_xcas = imposta_xcas = ZERO;
|
||||||
|
// 1 = Vendite
|
||||||
|
calc_inc_diff(anno, start, reg_att, imponibile_diff, imposta_diff, imponibile_xcas, imposta_xcas);
|
||||||
|
totopattxc = totopattxc + imponibile_xcas;
|
||||||
|
ivaesxc = ivaesxc + imposta_xcas;
|
||||||
|
ivaesdiff = ivaesdiff + imposta_xcas;
|
||||||
|
|
||||||
// IVA detraibile
|
// IVA detraibile
|
||||||
tokenPrec.get(1, ivadet);
|
imponibile_diff = imposta_diff = imponibile_xcas = imposta_xcas = ZERO;
|
||||||
calc_inc_diff(anno, start, 2, imponibile_diff, imposta_diff, imponibile_xcas, imposta_xcas);
|
// 2 = Acquisti
|
||||||
|
calc_inc_diff(anno, start, reg_pas, imponibile_diff, imposta_diff, imponibile_xcas, imposta_xcas);
|
||||||
|
totoppasxc = totoppasxc + imponibile_xcas;
|
||||||
|
ivadetxc = ivadetxc + imposta_xcas;
|
||||||
|
ivadetdiff = ivadetdiff + imposta_xcas;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Resto *****************************************************************************************************/
|
/** Resto *****************************************************************************************************/
|
||||||
|
|
||||||
ivaes = ivaes + rowLim.get_real("R13");
|
ivaes = ivaes + rowLim.get_real("R13");
|
||||||
ivadet = ivadet + rowLim.get_real("R12");
|
ivadet = ivadet + rowLim.get_real("R12");
|
||||||
|
|
||||||
@ -469,9 +462,13 @@ void ComLiqPerIva_mask::extractinator() // Per gli amici GTFO
|
|||||||
|
|
||||||
debprec = debprec + rowLim.get_real("S2");
|
debprec = debprec + rowLim.get_real("S2");
|
||||||
|
|
||||||
appReal = ZERO;
|
real appReal = ZERO;
|
||||||
|
|
||||||
// Credito periodo precedente
|
// Credito periodo precedente
|
||||||
|
TToken_string tokenPrec = rowLim.get("S0");
|
||||||
|
real app1 = ZERO, app2 = ZERO;
|
||||||
|
tokenPrec.get(0, app1);
|
||||||
|
tokenPrec.get(1, app2);
|
||||||
tokenPrec.get(2, appReal);
|
tokenPrec.get(2, appReal);
|
||||||
creprec = creprec + appReal;
|
creprec = creprec + appReal;
|
||||||
|
|
||||||
@ -487,6 +484,7 @@ void ComLiqPerIva_mask::extractinator() // Per gli amici GTFO
|
|||||||
TRectype rowVer = getVER(anno, start);
|
TRectype rowVer = getVER(anno, start);
|
||||||
if(rowVer.empty() || rowVer.get_real("R5") == ZERO)
|
if(rowVer.empty() || rowVer.get_real("R5") == ZERO)
|
||||||
{
|
{
|
||||||
|
message_box("Errore VER");
|
||||||
error_box("Non è stata valorizzato correttamente il campo \"Periodico\" in \"Versamenti ed interessi IVA\"");
|
error_box("Non è stata valorizzato correttamente il campo \"Periodico\" in \"Versamenti ed interessi IVA\"");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -547,7 +545,7 @@ void ComLiqPerIva_mask::extractinator() // Per gli amici GTFO
|
|||||||
set(F_VEREFF, vereff);
|
set(F_VEREFF, vereff);
|
||||||
|
|
||||||
// Azzero i booleani
|
// Azzero i booleani
|
||||||
for(int i = B_TOTOPATT; i <= B_VEREFF; i++)
|
for(int i = B_TOTOPATT; i <= B_CRESPEC; i++)
|
||||||
{
|
{
|
||||||
set(i, "");
|
set(i, "");
|
||||||
}
|
}
|
||||||
|
@ -29,8 +29,8 @@
|
|||||||
#define F_RETTIFICHE 129
|
#define F_RETTIFICHE 129
|
||||||
#define F_VARIMP 130
|
#define F_VARIMP 130
|
||||||
#define F_RIMBORSI 131
|
#define F_RIMBORSI 131
|
||||||
#define F_IMPNOVER 132
|
#define F_CRESPEC 132
|
||||||
#define F_CRESPEC 133
|
#define F_IMPNOVER 133
|
||||||
#define F_VEREFF 134
|
#define F_VEREFF 134
|
||||||
|
|
||||||
|
|
||||||
@ -59,6 +59,4 @@
|
|||||||
#define B_RETTIFICHE 179
|
#define B_RETTIFICHE 179
|
||||||
#define B_VARIMP 180
|
#define B_VARIMP 180
|
||||||
#define B_RIMBORSI 181
|
#define B_RIMBORSI 181
|
||||||
#define B_IMPNOVER 182
|
#define B_CRESPEC 182
|
||||||
#define B_CRESPEC 183
|
|
||||||
#define B_VEREFF 184
|
|
@ -35,7 +35,6 @@ BEGIN
|
|||||||
OUTPUT F_CODDITTA CODDITTA
|
OUTPUT F_CODDITTA CODDITTA
|
||||||
OUTPUT F_RAGSOC RAGSOC
|
OUTPUT F_RAGSOC RAGSOC
|
||||||
CHECKTYPE REQUIRED
|
CHECKTYPE REQUIRED
|
||||||
KEY 1
|
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_RAGSOC 50
|
STRING F_RAGSOC 50
|
||||||
@ -72,7 +71,7 @@ END
|
|||||||
|
|
||||||
NUMBER F_MESE 2
|
NUMBER F_MESE 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 20 2 "Mese "
|
PROMPT 24 2 "Mese "
|
||||||
SHEET " |Mese@30"
|
SHEET " |Mese@30"
|
||||||
INPUT F_MESE
|
INPUT F_MESE
|
||||||
OUTPUT F_MESE
|
OUTPUT F_MESE
|
||||||
@ -94,11 +93,12 @@ BEGIN
|
|||||||
FLAGS ""
|
FLAGS ""
|
||||||
KEY 1
|
KEY 1
|
||||||
FIELD MESE
|
FIELD MESE
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_TRIMESTRE 2
|
NUMBER F_TRIMESTRE 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 40 2 "Trimestre "
|
PROMPT 50 2 "Trimestre "
|
||||||
SHEET " |Trimestre@30"
|
SHEET " |Trimestre@30"
|
||||||
INPUT F_TRIMESTRE
|
INPUT F_TRIMESTRE
|
||||||
OUTPUT F_TRIMESTRE
|
OUTPUT F_TRIMESTRE
|
||||||
@ -108,30 +108,30 @@ BEGIN
|
|||||||
ITEM "3|Terzo"
|
ITEM "3|Terzo"
|
||||||
ITEM "4|Quarto"
|
ITEM "4|Quarto"
|
||||||
HELP "Trimestre dichiarazione, lasciare vuoto per inserirne uno nuovo"
|
HELP "Trimestre dichiarazione, lasciare vuoto per inserirne uno nuovo"
|
||||||
KEY 1
|
|
||||||
FLAGS ""
|
FLAGS ""
|
||||||
FIELD TRIMESTRE
|
FIELD TRIMESTRE
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN F_SUBFORNITURE
|
BOOLEAN F_SUBFORNITURE
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 3 "Subforniture"
|
PROMPT 1 3 "Subforniture"
|
||||||
FIELD SUBFOR
|
FIELD SUBFOR
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_EVECC 1
|
NUMBER F_EVECC 1
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 24 3 "Eventi eccezionali "
|
PROMPT 24 3 "Eventi eccezionali "
|
||||||
FIELD EVECC
|
FIELD EVECC
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
NUMBER F_TOTOPATT 16 2
|
NUMBER F_TOTOPATT 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 4 "Totale op. attive "
|
PROMPT 1 4 "Totale op. attive "
|
||||||
FIELD TOTOPATT
|
FIELD TOTOPATT
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_TOTOPATT
|
BOOLEAN B_TOTOPATT
|
||||||
@ -145,7 +145,7 @@ NUMBER F_TOTOPATTXC 16 2
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 5 "Totale op. attive x c."
|
PROMPT 1 5 "Totale op. attive x c."
|
||||||
FIELD TOTOPATTXC
|
FIELD TOTOPATTXC
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_TOTOPATTXC
|
BOOLEAN B_TOTOPATTXC
|
||||||
@ -157,353 +157,341 @@ END
|
|||||||
|
|
||||||
NUMBER F_TOTOPPAS 16 2
|
NUMBER F_TOTOPPAS 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 6 "Totale op. passive "
|
PROMPT 50 4 "Totale op. passive "
|
||||||
FIELD TOTOPPAS
|
FIELD TOTOPPAS
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_TOTOPPAS
|
BOOLEAN B_TOTOPPAS
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 6 ""
|
PROMPT 94 4 ""
|
||||||
FIELD BTOTOPPAS
|
FIELD BTOTOPPAS
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_TOTOPPASXC 16 2
|
NUMBER F_TOTOPPASXC 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 7 "Totale op. passive x c."
|
PROMPT 50 5 "Totale op. passive x c."
|
||||||
FIELD TOTOPPASXC
|
FIELD TOTOPPASXC
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_TOTOPPASXC
|
BOOLEAN B_TOTOPPASXC
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 7 ""
|
PROMPT 94 5 ""
|
||||||
FIELD BTOTOPPASX
|
FIELD BTOTOPPASX
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_IVAES 16 2
|
NUMBER F_IVAES 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 8 "IVA esigibile "
|
PROMPT 1 6 "IVA esigibile "
|
||||||
FIELD IVAES
|
FIELD IVAES
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_IVAES
|
BOOLEAN B_IVAES
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 8 ""
|
PROMPT 45 6 ""
|
||||||
FIELD BIVAES
|
FIELD BIVAES
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_IVAESXC 16 2
|
NUMBER F_IVAESXC 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 9 "IVA esigibile x c. "
|
PROMPT 1 7 "IVA esigibile x c. "
|
||||||
FIELD IVAESXC
|
FIELD IVAESXC
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_IVAESXC
|
BOOLEAN B_IVAESXC
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 9 ""
|
PROMPT 45 7 ""
|
||||||
FIELD BIVAESXC
|
FIELD BIVAESXC
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_IVAESDIFF 16 2
|
NUMBER F_IVAESDIFF 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 10 "IVA esigibile diff "
|
PROMPT 1 8 "IVA esigibile diff "
|
||||||
FIELD IVAESDIFF
|
FIELD IVAESDIFF
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_IVAESDIFF
|
BOOLEAN B_IVAESDIFF
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 10 ""
|
PROMPT 45 8 ""
|
||||||
FIELD BIVAESDIFF
|
FIELD BIVAESDIFF
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_IVADET 16 2
|
NUMBER F_IVADET 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 11 "IVA detratta "
|
PROMPT 50 6 "IVA detratta "
|
||||||
FIELD IVADET
|
FIELD IVADET
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_IVADET
|
BOOLEAN B_IVADET
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 11 ""
|
PROMPT 94 6 ""
|
||||||
FIELD BIVADET
|
FIELD BIVADET
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_IVADETXC 16 2
|
NUMBER F_IVADETXC 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 12 "IVA detratta x c. "
|
PROMPT 50 7 "IVA detratta x c. "
|
||||||
FIELD IVADETXC
|
FIELD IVADETXC
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_IVADETXC
|
BOOLEAN B_IVADETXC
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 12 ""
|
PROMPT 94 7 ""
|
||||||
FIELD BIVADETXC
|
FIELD BIVADETXC
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_IVADETDIFF 16 2
|
NUMBER F_IVADETDIFF 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 13 "IVA detratta diff "
|
PROMPT 50 8 "IVA detratta diff "
|
||||||
FIELD IVADETDIFF
|
FIELD IVADETDIFF
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_IVADETDIFF
|
BOOLEAN B_IVADETDIFF
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 13 ""
|
PROMPT 94 8 ""
|
||||||
FIELD BIVADETDIF
|
FIELD BIVADETDIF
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_IVADOV 16 2
|
NUMBER F_IVADOV 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 14 "IVA dovuta "
|
PROMPT 1 10 "IVA dovuta "
|
||||||
FIELD IVADOV
|
FIELD IVADOV
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_IVADOV
|
BOOLEAN B_IVADOV
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 14 ""
|
PROMPT 45 10 ""
|
||||||
FIELD BIVADOV
|
FIELD BIVADOV
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_IVADOVC 16 2
|
NUMBER F_IVADOVC 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 50 14 "o a credito"
|
PROMPT 50 10 "o a credito "
|
||||||
FIELD IVADOVC
|
FIELD IVADOVC
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_IVADOVC
|
BOOLEAN B_IVADOVC
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 80 14 ""
|
PROMPT 94 10 ""
|
||||||
FIELD BIVADOVC
|
FIELD BIVADOVC
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_DEBPREC 16 2
|
NUMBER F_DEBPREC 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 15 "Debito precedente "
|
PROMPT 1 12 "Debito precedente "
|
||||||
FIELD DEBPREC
|
FIELD DEBPREC
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_DEBPREC
|
BOOLEAN B_DEBPREC
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 15 ""
|
PROMPT 45 12 ""
|
||||||
FIELD BDEBPREC
|
FIELD BDEBPREC
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_CREPREC 16 2
|
NUMBER F_CREPREC 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 16 "Credito precedente "
|
PROMPT 50 12 "Credito precedente "
|
||||||
FIELD CREPREC
|
FIELD CREPREC
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_CREPREC
|
BOOLEAN B_CREPREC
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 16 ""
|
PROMPT 94 12 ""
|
||||||
FIELD BCREPREC
|
FIELD BCREPREC
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
NUMBER F_INTLIQTRI 16 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 13 "Interessi liq. trim. "
|
||||||
|
FIELD INTLIQTRI
|
||||||
|
FLAGS ""
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN B_INTLIQTRI
|
||||||
|
BEGIN
|
||||||
|
PROMPT 45 13 ""
|
||||||
|
FIELD BINTLIQTRI
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
NUMBER F_CREAPREC 16 2
|
NUMBER F_CREAPREC 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 17 "Credito anno precedente"
|
PROMPT 50 13 "Credito anno precedente"
|
||||||
FIELD CREAPREC
|
FIELD CREAPREC
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_CREAPREC
|
BOOLEAN B_CREAPREC
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 17 ""
|
PROMPT 94 13 ""
|
||||||
FIELD BCREAPREC
|
FIELD BCREAPREC
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
NUMBER F_ACCDOV 16 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 14 "Acconto dovuto "
|
||||||
|
FIELD ACCDOV
|
||||||
|
FLAGS ""
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN B_ACCDOV
|
||||||
|
BEGIN
|
||||||
|
PROMPT 45 14 ""
|
||||||
|
FIELD BACCDOV
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
NUMBER F_VEAUE 16 2
|
NUMBER F_VEAUE 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 18 "Versamenti auto UE "
|
PROMPT 50 14 "Versamenti auto UE "
|
||||||
FIELD VEAUE
|
FIELD VEAUE
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_VEAUE
|
BOOLEAN B_VEAUE
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 18 ""
|
PROMPT 94 14 ""
|
||||||
FIELD BVEAUE
|
FIELD BVEAUE
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_CREIMP 16 2
|
NUMBER F_CREIMP 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 19 "Crediti di imposta "
|
PROMPT 50 15 "Crediti di imposta "
|
||||||
FIELD CREIMP
|
FIELD CREIMP
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_CREIMP
|
BOOLEAN B_CREIMP
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 19 ""
|
PROMPT 94 15 ""
|
||||||
FIELD BCREIMP
|
FIELD BCREIMP
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_INTLIQTRI 16 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT 1 20 "Interessi liq. trim. "
|
|
||||||
FIELD INTLIQTRI
|
|
||||||
FLAGS "D"
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN B_INTLIQTRI
|
|
||||||
BEGIN
|
|
||||||
PROMPT 45 20 ""
|
|
||||||
FIELD BINTLIQTRI
|
|
||||||
FLAGS "D"
|
|
||||||
END
|
|
||||||
|
|
||||||
NUMBER F_ACCDOV 16 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT 1 21 "Acconto dovuto "
|
|
||||||
FIELD ACCDOV
|
|
||||||
FLAGS "D"
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN B_ACCDOV
|
|
||||||
BEGIN
|
|
||||||
PROMPT 45 21 ""
|
|
||||||
FIELD BACCDOV
|
|
||||||
FLAGS "D"
|
|
||||||
END
|
|
||||||
|
|
||||||
NUMBER F_IVAVER 16 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT 1 22 "IVA da versare "
|
|
||||||
FIELD IVAVER
|
|
||||||
FLAGS "D"
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN B_IVAVER
|
|
||||||
BEGIN
|
|
||||||
PROMPT 45 22 ""
|
|
||||||
FIELD BIVAVER
|
|
||||||
FLAGS "D"
|
|
||||||
END
|
|
||||||
|
|
||||||
NUMBER F_IVAVERC 16 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT 50 22 "o a credito"
|
|
||||||
FIELD IVAVERC
|
|
||||||
FLAGS "D"
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN B_IVAVERC
|
|
||||||
BEGIN
|
|
||||||
PROMPT 80 22 ""
|
|
||||||
FIELD BIVAVERC
|
|
||||||
FLAGS "D"
|
|
||||||
END
|
|
||||||
|
|
||||||
NUMBER F_RETTIFICHE 16 2
|
NUMBER F_RETTIFICHE 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 23 "Rettifiche "
|
PROMPT 1 16 "Rettifiche "
|
||||||
FIELD RETTIFICHE
|
FIELD RETTIFICHE
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_RETTIFICHE
|
BOOLEAN B_RETTIFICHE
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 23 ""
|
PROMPT 45 16 ""
|
||||||
FIELD BRETTIFICH
|
FIELD BRETTIFICH
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_VARIMP 16 2
|
NUMBER F_VARIMP 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 24 "Variazioni d'imposta "
|
PROMPT 50 16 "Variazioni d'imposta "
|
||||||
FIELD VARIMP
|
FIELD VARIMP
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_VARIMP
|
BOOLEAN B_VARIMP
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 24 ""
|
PROMPT 94 16 ""
|
||||||
FIELD BVARIMP
|
FIELD BVARIMP
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_RIMBORSI 16 2
|
NUMBER F_RIMBORSI 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 25 "Rimborsi "
|
PROMPT 1 17 "Rimborsi "
|
||||||
FIELD RIMBORSI
|
FIELD RIMBORSI
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_RIMBORSI
|
BOOLEAN B_RIMBORSI
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 25 ""
|
PROMPT 45 17 ""
|
||||||
FIELD BRIMBORSI
|
FIELD BRIMBORSI
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_IMPNOVER 16 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT 1 26 "Imposta non versata "
|
|
||||||
FIELD IMPNOVER
|
|
||||||
FLAGS "D"
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN B_IMPNOVER
|
|
||||||
BEGIN
|
|
||||||
PROMPT 45 26 ""
|
|
||||||
FIELD BIMPNOVER
|
|
||||||
FLAGS "D"
|
|
||||||
END
|
|
||||||
|
|
||||||
NUMBER F_CRESPEC 16 2
|
NUMBER F_CRESPEC 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 27 "Crediti speciali "
|
PROMPT 50 17 "Crediti speciali "
|
||||||
FIELD CRESPEC
|
FIELD CRESPEC
|
||||||
FLAGS "D"
|
FLAGS ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_CRESPEC
|
BOOLEAN B_CRESPEC
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 27 ""
|
PROMPT 94 17 ""
|
||||||
FIELD BCRESPEC
|
FIELD BCRESPEC
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_VEREFF 16 2
|
NUMBER F_IVAVER 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 28 "Versamenti effettuati "
|
PROMPT 1 19 "IVA da versare "
|
||||||
FIELD VEREFF
|
FIELD IVAVER
|
||||||
|
FLAGS ""
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN B_IVAVER
|
||||||
|
BEGIN
|
||||||
|
PROMPT 45 19 ""
|
||||||
|
FIELD BIVAVER
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN B_VEREFF
|
NUMBER F_IVAVERC 16 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 28 ""
|
PROMPT 50 19 "o a credito "
|
||||||
FIELD BVEREFF
|
FIELD IVAVERC
|
||||||
|
FLAGS ""
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN B_IVAVERC
|
||||||
|
BEGIN
|
||||||
|
PROMPT 94 19 ""
|
||||||
|
FIELD BIVAVERC
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
/* Campi non visualizzati ma che vengono salvati lo stesso! */
|
||||||
|
|
||||||
|
NUMBER F_IMPNOVER 1 1
|
||||||
|
BEGIN
|
||||||
|
PROMPT 50 19 "Imposta non versata"
|
||||||
|
FIELD IMPNOVER
|
||||||
|
FLAGS "H"
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_VEREFF 1 1
|
||||||
|
BEGIN
|
||||||
|
PROMPT 50 19 "Versamenti effettuati"
|
||||||
|
FIELD VEREFF
|
||||||
|
FLAGS "H"
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
ENDMASK
|
ENDMASK
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
#include <utility.h> // get_iva_sirio()
|
#include <utility.h> // get_iva_sirio()
|
||||||
|
|
||||||
#define TIPO_FILE "DF"
|
#define TIPO_FILE "DF"
|
||||||
#define TFBASE "tf"
|
#define TFBASE "ModuliSirio"
|
||||||
|
|
||||||
#define CODICE_FORNITURA "IVP17"
|
#define CODICE_FORNITURA "IVP17"
|
||||||
|
|
||||||
@ -56,6 +56,7 @@ class TIvaSend_msk : public TAutomask
|
|||||||
bool mese;
|
bool mese;
|
||||||
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:
|
||||||
|
bool checkVariables();
|
||||||
bool isMese() { return mese; }
|
bool isMese() { return mese; }
|
||||||
TIvaSend_msk() : TAutomask("tf0500a"){}
|
TIvaSend_msk() : TAutomask("tf0500a"){}
|
||||||
};
|
};
|
||||||
@ -123,31 +124,57 @@ bool TIvaSend_msk::on_field_event(TOperable_field& o, TField_event e, long jolly
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case F_DAMESE:
|
||||||
|
if(e == fe_modify)
|
||||||
|
set(F_AMESE, get_int(F_DAMESE)+2);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TIvaSend_msk::checkVariables()
|
||||||
|
{
|
||||||
|
if(get(F_ANNO).empty())
|
||||||
|
{
|
||||||
|
error_box("Inserire un anno di liquidazione");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if((mese && get(F_DAMESE).empty() && get(F_AMESE).empty()) || (!mese && get(F_DATRIMESTRE).empty() && get(F_ATRIMESTRE).empty()))
|
||||||
|
{
|
||||||
|
error_box("Inserisci un periodo");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if((mese && (get_int(F_DAMESE) > get_int(F_AMESE))) || (!mese &&(get_int(F_DATRIMESTRE) > get_int(F_ATRIMESTRE))))
|
||||||
|
{
|
||||||
|
error_box("Date immesse non corrette");
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
class TIvaSend_app : public TSkeleton_application
|
class TIvaSend_app : public TSkeleton_application
|
||||||
{
|
{
|
||||||
void generateNSend(TIvaSend_msk& msk) { generate(msk); send(); }
|
void generateNSend(TIvaSend_msk& msk) { generate(msk) && send(); }
|
||||||
void generate(TIvaSend_msk& msk);
|
bool generate(TIvaSend_msk& msk);
|
||||||
TToken_string getTestata(TIvaSend_msk& msk);
|
TToken_string getTestata(TIvaSend_msk& msk);
|
||||||
void send();
|
bool send();
|
||||||
public:
|
public:
|
||||||
virtual void main_loop();
|
virtual void main_loop();
|
||||||
};
|
};
|
||||||
|
|
||||||
void TIvaSend_app::generate(TIvaSend_msk& msk)
|
|
||||||
|
|
||||||
|
bool TIvaSend_app::generate(TIvaSend_msk& msk)
|
||||||
{
|
{
|
||||||
|
if(!msk.checkVariables())
|
||||||
|
return false;
|
||||||
ofstream file;
|
ofstream file;
|
||||||
TFilename path(msk.get(F_PATH));
|
TFilename path(msk.get(F_PATH));
|
||||||
|
|
||||||
TRectype rowLim = getLim(msk.get_int(F_ANNO), msk.isMese() ? msk.get_int(F_DAMESE) : msk.get_int(F_DATRIMESTRE) * 3);
|
TRectype rowLim = getLim(msk.get_int(F_ANNO), msk.isMese() ? msk.get_int(F_DAMESE) : (((msk.get_int(F_DATRIMESTRE) - 1) * 3) + 1));
|
||||||
|
|
||||||
TRectype rowLiq = getLiq(msk.get_int(F_ANNO), msk.isMese() ? msk.get_int(F_DAMESE) : msk.get_int(F_DATRIMESTRE) * 3);
|
|
||||||
|
|
||||||
// Decido di utilizzare I10 come numero progressivo di trasmissione
|
// Decido di utilizzare I10 come numero progressivo di trasmissione
|
||||||
int prog = rowLim.get_int("I10"); prog++;
|
int prog = rowLim.get_int("I14"); prog++;
|
||||||
|
|
||||||
TString nomeFile; nomeFile << "IT" << getAnagDitta().get("PAIV") << TIPO_FILE << prog << ".csv";
|
TString nomeFile; nomeFile << "IT" << getAnagDitta().get("PAIV") << TIPO_FILE << prog << ".csv";
|
||||||
|
|
||||||
@ -159,10 +186,12 @@ void TIvaSend_app::generate(TIvaSend_msk& msk)
|
|||||||
|
|
||||||
TToken_string testata(getTestata(msk));
|
TToken_string testata(getTestata(msk));
|
||||||
|
|
||||||
int start = msk.isMese() ? msk.get_int(F_DAMESE) : msk.get_int(F_DATRIMESTRE);
|
int start = msk.isMese() ? msk.get_int(F_DAMESE) : (((msk.get_int(F_DATRIMESTRE) - 1) * 3) + 1);
|
||||||
int end = msk.isMese() ? msk.get_int(F_AMESE) : msk.get_int(F_ATRIMESTRE);
|
int end = msk.isMese() ? msk.get_int(F_AMESE) : (((msk.get_int(F_ATRIMESTRE) - 1) * 3) + 1);
|
||||||
for(; start <= end; start++)
|
for(; start <= end; start++)
|
||||||
{
|
{
|
||||||
|
rowLim = getLim(msk.get_int(F_ANNO), start); // rowLim viene già usata sopra
|
||||||
|
TRectype rowLiq = getLiq(msk.get_int(F_ANNO), start);
|
||||||
|
|
||||||
TToken_string riga(testata);
|
TToken_string riga(testata);
|
||||||
if(msk.isMese())
|
if(msk.isMese())
|
||||||
@ -213,8 +242,9 @@ void TIvaSend_app::generate(TIvaSend_msk& msk)
|
|||||||
if(rowLim.rewrite(TLocalisamfile(LF_TAB)) != NOERR)
|
if(rowLim.rewrite(TLocalisamfile(LF_TAB)) != NOERR)
|
||||||
{
|
{
|
||||||
error_box("Errore aggiornamento progressivo");
|
error_box("Errore aggiornamento progressivo");
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
TToken_string TIvaSend_app::getTestata(TIvaSend_msk& msk)
|
TToken_string TIvaSend_app::getTestata(TIvaSend_msk& msk)
|
||||||
@ -245,10 +275,10 @@ TToken_string TIvaSend_app::getTestata(TIvaSend_msk& msk)
|
|||||||
return testata;
|
return testata;
|
||||||
}
|
}
|
||||||
|
|
||||||
void TIvaSend_app::send()
|
bool TIvaSend_app::send()
|
||||||
{
|
{
|
||||||
TFilename tmp;
|
TFilename tmp;
|
||||||
tmp = TFBASE"\\SiaggTFCAMPO.jar";
|
tmp = TFBASE"\\ModuliSirio.jar";
|
||||||
tmp.make_absolute_path();
|
tmp.make_absolute_path();
|
||||||
|
|
||||||
DIRECTORY old_dir; xvt_fsys_get_dir(&old_dir);
|
DIRECTORY old_dir; xvt_fsys_get_dir(&old_dir);
|
||||||
@ -256,11 +286,15 @@ void TIvaSend_app::send()
|
|||||||
xvt_fsys_set_dir(&new_dir);
|
xvt_fsys_set_dir(&new_dir);
|
||||||
const bool good = goto_url(tmp);
|
const bool good = goto_url(tmp);
|
||||||
if (good)
|
if (good)
|
||||||
xvt_sys_sleep(3000);
|
{
|
||||||
|
xvt_sys_sleep(3000);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
error_box(FR("Impossibile eseguire Java -jar %s"), (const char*)tmp);
|
error_box(FR("Impossibile eseguire Java -jar %s"), (const char*)tmp);
|
||||||
|
}
|
||||||
xvt_fsys_set_dir(&old_dir);
|
xvt_fsys_set_dir(&old_dir);
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void TIvaSend_app::main_loop()
|
void TIvaSend_app::main_loop()
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#include "tf0500a.h"
|
#include "tf0500a.h"
|
||||||
|
|
||||||
TOOLBAR "topbar" 0 0 0 2
|
TOOLBAR "topbar" 0 0 0 2
|
||||||
|
|
||||||
#include <elabar.h>
|
#include <elabar.h>
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
@ -25,7 +26,6 @@ BEGIN
|
|||||||
OUTPUT F_CODDITTA CODDITTA
|
OUTPUT F_CODDITTA CODDITTA
|
||||||
OUTPUT F_RAGSOC RAGSOC
|
OUTPUT F_RAGSOC RAGSOC
|
||||||
CHECKTYPE REQUIRED
|
CHECKTYPE REQUIRED
|
||||||
KEY 1
|
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_RAGSOC 50
|
STRING F_RAGSOC 50
|
||||||
@ -33,7 +33,7 @@ BEGIN
|
|||||||
PROMPT 20 2 ""
|
PROMPT 20 2 ""
|
||||||
USE LF_NDITTE KEY 2
|
USE LF_NDITTE KEY 2
|
||||||
INPUT RAGSOC F_RAGSOC
|
INPUT RAGSOC F_RAGSOC
|
||||||
DISPLAY "Ragione Sociale@60" RAGSOC
|
DISPLAY "Ragione Sociale@60" RAGSOC
|
||||||
DISPLAY "Codice" CODDITTA
|
DISPLAY "Codice" CODDITTA
|
||||||
COPY OUTPUT F_CODDITTA
|
COPY OUTPUT F_CODDITTA
|
||||||
CHECKTYPE REQUIRED
|
CHECKTYPE REQUIRED
|
||||||
@ -51,7 +51,7 @@ BEGIN
|
|||||||
OUTPUT F_ANNO ANNO
|
OUTPUT F_ANNO ANNO
|
||||||
OUTPUT F_DAMESE MESE
|
OUTPUT F_DAMESE MESE
|
||||||
OUTPUT F_DATRIMESTRE TRIMESTRE
|
OUTPUT F_DATRIMESTRE TRIMESTRE
|
||||||
CHECKTYPE REQUIRED
|
OUTPUT F_ATRIMESTRE TRIMESTRE
|
||||||
FLAGS ""
|
FLAGS ""
|
||||||
WARNING "Inserire un anno di liquidazione"
|
WARNING "Inserire un anno di liquidazione"
|
||||||
END
|
END
|
||||||
@ -60,6 +60,8 @@ NUMBER F_DAMESE 2
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 20 3 "Da mese "
|
PROMPT 20 3 "Da mese "
|
||||||
SHEET " |Mese@30"
|
SHEET " |Mese@30"
|
||||||
|
INPUT F_DAMESE
|
||||||
|
OUTPUT F_DAMESE
|
||||||
ITEM "|"
|
ITEM "|"
|
||||||
ITEM "1|Gennaio"
|
ITEM "1|Gennaio"
|
||||||
ITEM "2|Febbraio"
|
ITEM "2|Febbraio"
|
||||||
@ -82,6 +84,8 @@ NUMBER F_AMESE 2
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 40 3 "A mese "
|
PROMPT 40 3 "A mese "
|
||||||
SHEET " |Mese@30"
|
SHEET " |Mese@30"
|
||||||
|
INPUT F_AMESE
|
||||||
|
OUTPUT F_AMESE
|
||||||
ITEM "|"
|
ITEM "|"
|
||||||
ITEM "1|Gennaio"
|
ITEM "1|Gennaio"
|
||||||
ITEM "2|Febbraio"
|
ITEM "2|Febbraio"
|
||||||
@ -104,6 +108,8 @@ NUMBER F_DATRIMESTRE 2
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 20 4 "Da trimestre "
|
PROMPT 20 4 "Da trimestre "
|
||||||
SHEET " |Trimestre@30"
|
SHEET " |Trimestre@30"
|
||||||
|
INPUT F_DATRIMESTRE
|
||||||
|
OUTPUT F_DATRIMESTRE
|
||||||
ITEM "|"
|
ITEM "|"
|
||||||
ITEM "1|Primo"
|
ITEM "1|Primo"
|
||||||
ITEM "2|Secondo"
|
ITEM "2|Secondo"
|
||||||
@ -117,6 +123,8 @@ NUMBER F_ATRIMESTRE 2
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 40 4 "A trimestre "
|
PROMPT 40 4 "A trimestre "
|
||||||
SHEET " |Trimestre@30"
|
SHEET " |Trimestre@30"
|
||||||
|
INPUT F_ATRIMESTRE
|
||||||
|
OUTPUT F_ATRIMESTRE
|
||||||
ITEM "|"
|
ITEM "|"
|
||||||
ITEM "1|Primo"
|
ITEM "1|Primo"
|
||||||
ITEM "2|Secondo"
|
ITEM "2|Secondo"
|
||||||
@ -126,5 +134,12 @@ BEGIN
|
|||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
STRING DLG_PROFILE 256
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 -1 "Profilo "
|
||||||
|
PSELECT
|
||||||
|
FLAGS "H"
|
||||||
|
END
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
ENDMASK
|
ENDMASK
|
@ -1,8 +1,8 @@
|
|||||||
[TFMENU_001]
|
[TFMENU_001]
|
||||||
Caption = "Trasferimento Fatture"
|
Caption = "Trasferimento Fatture"
|
||||||
Picture = <ve01>
|
Picture = <cg01>
|
||||||
Module = tf
|
Module = 50
|
||||||
Flags = "F"
|
Flags = ""
|
||||||
//Item_01 = "Trasferimento Fatture", "tf0 -0", "F"
|
//Item_01 = "Trasferimento Fatture", "tf0 -0", ""
|
||||||
Item_02 = "Liquidazione IVA Periodica", "tf0 -1", "F"
|
Item_02 = "Liquidazione IVA Periodica", "tf0 -1", ""
|
||||||
Item_03 = "Invio Liquidazione IVA Periodica", "tf -4", "F"
|
Item_03 = "Invio Liquidazione IVA Periodica", "tf0 -4", ""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user