Patch level : 12.0 no-patch

Files correlati     : 
Commento            : 
- Aggiunto filtro per gruppo - conto - sottoconto
- Aggiunto filtro data pagamento
- Aggiunto totale documento

git-svn-id: svn://10.65.10.50/branches/R_10_00@23732 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
mtollari 2017-04-12 13:39:06 +00:00
parent af5e8a78fa
commit 7251853d9f
3 changed files with 213 additions and 68 deletions

View File

@ -51,22 +51,41 @@ bool TEsportaIva_msk::on_field_event(TOperable_field& o, TField_event e, long jo
createName();
break;
case B_FORNITORE:
if(get_bool(B_FORNITORE))
if(e != fe_init)
{
enable(F_CODCF);
enable(F_RAGSOC);
if(get_bool(B_FORNITORE))
{
enable(F_CODCF);
enable(F_RAGSOC);
}
else
{
disable(F_CODCF);
disable(F_RAGSOC);
set(F_CODCF, "");
set(F_RAGSOC, "");
createName();
}
}
break;
case B_GCS:
if(get_bool(B_GCS))
{
enable(F_GRUPPO);
enable(F_CONTO);
enable(F_SOTTOCONTO);
}
else
{
disable(F_CODCF);
disable(F_RAGSOC);
set(F_CODCF, "");
set(F_RAGSOC, "");
createName();
disable(F_GRUPPO);
disable(F_CONTO);
disable(F_SOTTOCONTO);
set(F_GRUPPO, "");
set(F_CONTO, "");
set(F_SOTTOCONTO, "");
}
break;
case B_PRTAPE:
case B_PRTCHIU:
if(e == fe_init)
{
set(B_PRTAPE, "X");
@ -130,11 +149,11 @@ TISAM_recordset TEsportaIva_msk::createRecset() const
daDReg = TDate(01,01,1990);
}
TDate daDFatt = get_date(F_DADATAFATT), aDFatt = get_date(F_ADATAFATT);
if(!aDFatt.ok())
if(!aDFatt.ok() && daDFatt.ok()) // Sistemo le date solo se mi ha messo il filtro complementare
{
aDFatt = TDate(TODAY);
}
if(!daDFatt.ok())
if(!daDFatt.ok() && aDFatt.ok())
{
daDFatt = TDate(01,01,1990);
}
@ -162,6 +181,22 @@ TISAM_recordset TEsportaIva_msk::createRecset() const
query << "&&(23.CODCF=#CODCF)";
}
if(get_bool(B_GCS))
{
if(get_int(F_GRUPPO) > 0)
{
query << "&&(25.GRUPPO=#GRUPPO)";
if(get_int(F_CONTO) > 0)
{
query << "&&(25.CONTO=#CONTO)";
if(get_int(F_SOTTOCONTO) > 0)
{
query << "&&(25.SOTTOCONTO=#SOTTOCONTO)";
}
}
}
}
query << "\n";
query << "JOIN MOV INTO NUMREG==NUMREG\n"
@ -180,11 +215,28 @@ TISAM_recordset TEsportaIva_msk::createRecset() const
recset.set_var("#DADATAFATT", daDFatt);
recset.set_var("#ADATAFATT", aDFatt);
}
if(get_bool(B_FORNITORE))
{
recset.set_var("#CODCF", get(F_CODCF));
}
if(get_bool(B_GCS))
{
if(get_int(F_GRUPPO) > 0)
{
recset.set_var("#GRUPPO", get(F_GRUPPO));
if(get_int(F_CONTO) > 0)
{
recset.set_var("#CONTO", get(F_CONTO));
if(get_int(F_SOTTOCONTO) > 0)
{
recset.set_var("#SOTTOCONTO", get(F_SOTTOCONTO));
}
}
}
}
return recset;
}
@ -270,7 +322,17 @@ void TEsportaIva_msk::fill()
// Da fare sempre o last_data_pag non viene valorizzato
bool partita_chiusa = test_partita(numreg, last_data_pag, dataTest);
//if(!datadoc && (last_data_pag < get_date(F_DADATA) || get_date(F_ADATA) < last_data_pag || !last_data_pag.ok())) continue;
TDate daDPag = get_date(F_DADATAPAG), aDPag = get_date(F_ADATAPAG);
if(!aDPag.ok() && daDPag.ok()) // Sistemo le date solo se mi ha messo il filtro complementare
{
aDPag = TDate(TODAY);
}
if(!daDPag.ok() && aDPag.ok())
{
daDPag = TDate(01,01,1990);
}
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))
{
@ -296,8 +358,9 @@ void TEsportaIva_msk::fill()
char sez = rmovana.get_char("SEZIONE");
TImporto importo(sez, rmovana.get_real("IMPORTO"));
importo.normalize('D');
row.add(importo.valore());
row.add(importo.valore());
row.add(rmoviva.get("23.RITFIS").as_real());
row.add(rmoviva.get("23.TOTDOC").as_real());
row.add(rmoviva.get("23.DATADOC").as_string());
row.add(rmoviva.get("23.NUMDOC").as_string());
row.add(last_data_pag);
@ -330,6 +393,7 @@ void TEsportaIva_msk::fill()
row.add(rmoviva.get("20.RAGSOC").as_string());
row.add(rmoviva.get(RMI_IMPONIBILE).as_real());
row.add(rmoviva.get("23.RITFIS").as_real());
row.add(rmoviva.get("23.TOTDOC").as_real());
row.add(rmoviva.get("23.DATADOC").as_string());
row.add(rmoviva.get("23.NUMDOC").as_string());
row.add(last_data_pag);
@ -350,6 +414,7 @@ void TEsportaIva_msk::fill()
row.add(rmoviva.get("20.RAGSOC").as_string());
row.add(rmoviva.get(RMI_IMPONIBILE).as_real());
row.add(rmoviva.get("23.RITFIS").as_real());
row.add(rmoviva.get("23.TOTDOC").as_real());
row.add(rmoviva.get("23.DATADOC").as_string());
row.add(rmoviva.get("23.NUMDOC").as_string());
row.add(last_data_pag);
@ -477,7 +542,17 @@ void TEsportaIva_app::esporta_righe_iva(const TEsportaIva_msk& m) const
// Da fare sempre o last_data_pag non viene valorizzato
bool partita_chiusa = test_partita(numreg, last_data_pag, dataTest);
//if(!datadoc && last_data_pag < m.get_date(F_DADATA) && m.get_date(F_ADATA) < last_data_pag) continue;
TDate daDPag = m.get_date(F_DADATAPAG), aDPag = m.get_date(F_ADATAPAG);
if(!aDPag.ok() && daDPag.ok()) // Sistemo le date solo se mi ha messo il filtro complementare
{
aDPag = TDate(TODAY);
}
if(!daDPag.ok() && aDPag.ok())
{
daDPag = TDate(01,01,1990);
}
if(aDPag.ok() && daDPag.ok() && (last_data_pag < daDPag || aDPag < last_data_pag || !last_data_pag.ok())) continue;
if (all || (m.get_bool(B_PRTAPE) && !partita_chiusa) || (m.get_bool(B_PRTCHIU) && partita_chiusa))
{
@ -504,13 +579,15 @@ void TEsportaIva_app::esporta_righe_iva(const TEsportaIva_msk& m) const
TImporto importo(sez, rmovana.get_real("IMPORTO"));
importo.normalize('D');
csv.set(4, importo.valore());
csv.set(5, rmoviva.get("23.RITFIS").as_real());
csv.set(6, rmoviva.get("23.DATADOC"));
csv.set(7, rmoviva.get("23.NUMDOC"));
csv.set(8, last_data_pag);
csv.set(9, rmoviva.get("25.GRUPPO"));
csv.set(10, rmoviva.get("25.CONTO"));
csv.set(11, rmoviva.get("25.SOTTOCONTO"));
csv.set(6, rmoviva.get("23.TOTDOC").as_real());
csv.set(7, rmoviva.get("23.DATADOC"));
csv.set(8, rmoviva.get("23.NUMDOC"));
csv.set(9, last_data_pag);
csv.set(10, rmoviva.get("25.GRUPPO"));
csv.set(11, rmoviva.get("25.CONTO"));
csv.set(12, rmoviva.get("25.SOTTOCONTO"));
}
while (rmoviva.move_next())
{
@ -536,12 +613,13 @@ void TEsportaIva_app::esporta_righe_iva(const TEsportaIva_msk& m) const
csv.set(3, rmoviva.get("20.RAGSOC"));
csv.set(4, rmoviva.get(RMI_IMPONIBILE).as_real());
csv.set(5, rmoviva.get("23.RITFIS").as_real());
csv.set(6, rmoviva.get("23.DATADOC"));
csv.set(7, rmoviva.get("23.NUMDOC"));
csv.set(8, last_data_pag);
csv.set(9, rmoviva.get("25.GRUPPO"));
csv.set(10, rmoviva.get("25.CONTO"));
csv.set(11, rmoviva.get("25.SOTTOCONTO"));
csv.set(6, rmoviva.get("23.TOTDOC").as_real());
csv.set(7, rmoviva.get("23.DATADOC"));
csv.set(8, rmoviva.get("23.NUMDOC"));
csv.set(9, last_data_pag);
csv.set(10, rmoviva.get("25.GRUPPO"));
csv.set(11, rmoviva.get("25.CONTO"));
csv.set(12, rmoviva.get("25.SOTTOCONTO"));
}
}
}
@ -555,12 +633,13 @@ void TEsportaIva_app::esporta_righe_iva(const TEsportaIva_msk& m) const
csv.set(3, rmoviva.get("20.RAGSOC"));
csv.set(4, rmoviva.get(RMI_IMPONIBILE).as_real());
csv.set(5, rmoviva.get("23.RITFIS").as_real());
csv.set(6, rmoviva.get("23.DATADOC"));
csv.set(7, rmoviva.get("23.NUMDOC"));
csv.set(8, last_data_pag);
csv.set(9, rmoviva.get("25.GRUPPO"));
csv.set(10, rmoviva.get("25.CONTO"));
csv.set(11, rmoviva.get("25.SOTTOCONTO"));
csv.set(6, rmoviva.get("23.TOTDOC").as_real());
csv.set(7, rmoviva.get("23.DATADOC"));
csv.set(8, rmoviva.get("23.NUMDOC"));
csv.set(9, last_data_pag);
csv.set(10, rmoviva.get("25.GRUPPO"));
csv.set(11, rmoviva.get("25.CONTO"));
csv.set(12, rmoviva.get("25.SOTTOCONTO"));
}
}
}

View File

@ -1,30 +1,39 @@
//campi maschera ps0713800a
/* Sheet */
#define A_DATAREG 101
#define A_IDLAVORO 102
#define A_CODF 103
#define A_RAGSOC 104
#define A_IMPORTO 105
#define A_RITFIS 106
#define A_DATADOC 107
#define A_NUMDOC 108
#define A_DATAPAG 109
#define A_GRUPPO 110
#define A_CONTO 111
#define A_SOTTOCONTO 112
#define A_TOTALE 107
#define A_DATADOC 108
#define A_NUMDOC 109
#define A_DATAPAG 110
#define A_GRUPPO 111
#define A_CONTO 112
#define A_SOTTOCONTO 113
/* Maschera */
#define F_PATH 201
#define F_NAME 202
#define F_DADATAREG 203
#define F_ADATAREG 204
#define F_DADATAFATT 205
#define F_ADATAFATT 206
#define F_JOB 207
#define B_FORNITORE 208
#define F_CODCF 209
#define F_RAGSOC 210
#define B_PRTAPE 211
#define B_PRTCHIU 212
#define B_SOLRITFIS 213
#define B_SOLNONINV 214
#define F_DADATAPAG 207
#define F_ADATAPAG 208
#define F_JOB 209
#define B_FORNITORE 210
#define F_CODCF 211
#define F_RAGSOC 212
#define B_GCS 213
#define F_GRUPPO 214
#define F_CONTO 215
#define F_SOTTOCONTO 216
#define B_PRTAPE 217
#define B_PRTCHIU 218
#define B_SOLRITFIS 219
#define B_SOLNONINV 220
#define S_RESULT 301

View File

@ -20,20 +20,12 @@ ENDPAGE
PAGE "Trasferimento dati IVA per ATS" -1 -1 80 10
STRING DLG_PROFILE 50
BEGIN
PROMPT 9 -12 "Profilo "
PSELECT
FLAGS "H"
END
STRING F_PATH 255 45
BEGIN
PROMPT 0 1 "Cartella "
DSELECT
CHECKTYPE REQUIRED
FLAGS "M"
FIELD PATH
END
STRING F_NAME 30
@ -41,41 +33,46 @@ BEGIN
PROMPT 60 1 "File "
FLAGS "D"
CHECKTYPE NORMAL
FIELD NAME
END
DATE F_DADATAREG
BEGIN
PROMPT 0 2 "Da data Reg. "
FIELD ADATA
END
DATE F_ADATAREG
BEGIN
PROMPT 25 2 "A data Reg. "
FIELD ADATA
END
DATE F_DADATAFATT
BEGIN
PROMPT 0 3 "Da data Fatt."
FIELD ADATA
END
DATE F_ADATAFATT
BEGIN
PROMPT 25 3 "A data Fatt."
FIELD ADATA
END
DATE F_DADATAPAG
BEGIN
PROMPT 0 4 "Da data Pag. "
END
DATE F_ADATAPAG
BEGIN
PROMPT 25 4 "A data Pag. "
END
BOOLEAN B_FORNITORE
BEGIN
PROMPT 0 4 "Fornitore"
PROMPT 0 5 "Fornitore"
END
NUMBER F_CODCF 6
BEGIN
PROMPT 14 4 "Codice:"
PROMPT 14 5 "Codice:"
USE LF_CLIFO
INPUT TIPOCF "F" SELECT
INPUT CODCF F_CODCF
@ -93,7 +90,7 @@ END
STRING F_RAGSOC 50 30
BEGIN
PROMPT 30 4 "R.Soc: "
PROMPT 30 5 "R.Soc: "
USE LF_CLIFO KEY 2
INPUT TIPOCF "F" SELECT
INPUT RAGSOC F_RAGSOC
@ -107,24 +104,77 @@ BEGIN
FLAGS "D"
END
BOOLEAN B_GCS
BEGIN
PROMPT 0 6 ""
END
NUMBER F_GRUPPO 3
BEGIN
PROMPT 3 6 "Gruppo: "
USE LF_PCON SELECT (CONTO="")
INPUT GRUPPO F_GRUPPO
DISPLAY "Gruppo" GRUPPO
DISPLAY "Descrizione@50" DESCR
OUTPUT F_GRUPPO GRUPPO
CHECKTYPE REQUIRED
WARNING "Gruppo assente"
FLAGS "D"
END
NUMBER F_CONTO 3
BEGIN
PROMPT 20 6 "Conto: "
USE LF_PCON SELECT (CONTO!="")&&(SOTTOCONTO="")
INPUT GRUPPO F_GRUPPO
INPUT CONTO F_CONTO
DISPLAY "Gruppo" GRUPPO
DISPLAY "Conto" CONTO
DISPLAY "Tipo" TMCF
DISPLAY "Descrizione@50" DESCR
OUTPUT F_CONTO CONTO
OUTPUT F_GRUPPO GRUPPO
CHECKTYPE REQUIRED
WARNING "Conto assente"
FLAGS "D"
END
NUMBER F_SOTTOCONTO 6
BEGIN
PROMPT 40 6 "Sottoconto: "
USE LF_PCON SELECT (SOTTOCONTO!="")
COPY INPUT F_CONTO
INPUT SOTTOCONTO F_SOTTOCONTO
DISPLAY "Gruppo" GRUPPO
DISPLAY "Conto" CONTO
DISPLAY "Sottoconto" SOTTOCONTO
DISPLAY "Descrizione@50" DESCR
OUTPUT F_SOTTOCONTO SOTTOCONTO
OUTPUT F_GRUPPO GRUPPO
OUTPUT F_CONTO CONTO
CHECKTYPE REQUIRED
WARNING "Sottoconto assente"
FLAGS "D"
END
BOOLEAN B_PRTAPE
BEGIN
PROMPT 0 5 "Partita aperta"
PROMPT 0 7 "Partita aperta"
END
BOOLEAN B_PRTCHIU
BEGIN
PROMPT 20 5 "Partita chiusa"
PROMPT 20 7 "Partita chiusa"
END
BOOLEAN B_SOLRITFIS
BEGIN
PROMPT 40 5 "Solo Ritenute Fiscali"
PROMPT 40 7 "Solo Ritenute Fiscali"
END
BOOLEAN B_SOLNONINV
BEGIN
PROMPT 70 5 "Solo doc. non inviati"
PROMPT 70 7 "Solo doc. non inviati"
END
@ -138,13 +188,14 @@ END
SPREADSHEET S_RESULT
BEGIN
PROMPT 0 6 ""
PROMPT 0 8 ""
ITEM "Data\nRegistrazione@10"
ITEM "ID Lavoro@10"
ITEM "Cod.\nFornitore@8"
ITEM "Rag. Soc.@30"
ITEM "Importo@10"
ITEM "Rit.Fis@10"
ITEM "Totale@10"
ITEM "Data\ndocumento@10"
ITEM "Numero\ndocumento@10"
ITEM "Data pagamento@10"
@ -195,6 +246,12 @@ BEGIN
FLAGS "D"
END
NUMBER A_TOTALE 18 3
BEGIN
PROMPT 1 0 "Totale Documento"
FLAGS "D"
END
DATE A_DATADOC
BEGIN
PROMPT 1 0 "Data Documento"