Patch level : 12.0 1152

Files correlati     : dc800000.frm df900000.frm df000000.frm ef0.exe

Commento:
La stampa distinte ri non stampava il numero, la data fatturae l'importo dell'effetto
This commit is contained in:
Alessandro Bonazzi 2022-05-23 22:46:39 +02:00
parent 63a1458045
commit 5ca3a6caea
5 changed files with 111 additions and 100 deletions

View File

@ -1,5 +1,5 @@
USE 31 USE 31
JOIN 14 INTO NPROGTR==NPROGTR JOIN 14 INTO NPROGTR==NPROGTR
JOIN 20 INTO TIPOCF=="C" CODCF==CODCF JOIN 20 INTO TIPOCF=="C" CODCF==CODCF
JOIN 17 TO 20 INTO TIPOCF==TIPOCF CODCF==CODCF JOIN 17 TO 20 INTO TIPOCF==TIPOCF CODCF==CODCF
JOIN 16 TO 17 INTO TIPOCF==TIPOCF CODCF==CODCF CODIND==CODINDEFF JOIN 16 TO 17 INTO TIPOCF==TIPOCF CODCF==CODCF CODIND==CODINDEFF
@ -85,17 +85,17 @@ END
STRING 9 11 STRING 9 11
BEGIN BEGIN
KEY "scritta titolo righe del body" KEY "scritta titolo righe del body"
PROMPT 94 7 "FATTURA NUM" PROMPT 88 7 "FATTURA NUM"
END END
STRING 10 8 STRING 10 8
BEGIN BEGIN
KEY "scritta titolo righe del body" KEY "scritta titolo righe del body"
PROMPT 111 7 "DATA FATT." PROMPT 104 7 "DATA FATT."
END END
STRING 11 7 STRING 11 7
BEGIN BEGIN
KEY "scritta titolo righe del body" KEY "scritta titolo righe del body"
PROMPT 129 7 "IMPORTO" PROMPT 135 7 "IMPORTO"
END END
STRING 12 STRING 12
BEGIN BEGIN
@ -256,10 +256,10 @@ END
STRING 35 3 STRING 35 3
BEGIN BEGIN
KEY "test sulla valuta" KEY "test sulla valuta"
PROMPT 2 8 "" PROMPT 2 8 ""
FIELD CODVAL FIELD CODVAL
FLAGS "H" FLAGS "H"
MESSAGE EMPTY ENABLE,4@|DISABLE,3@ MESSAGE EMPTY ENABLE,4@|DISABLE,3@
END END
STRING 36 17 1 STRING 36 17 1
BEGIN BEGIN
@ -267,30 +267,20 @@ KEY "cod cliente"
PROMPT 2 4 "@RCod. For: " PROMPT 2 4 "@RCod. For: "
FIELD 20->CODCF FIELD 20->CODCF
END END
SECTION RIGHE_EFFETTO 5 1 1 FILE 14 GROUP NPROGTR STRINGA 201 14 3
STRINGA 1
BEGIN BEGIN
PROMPT 92 1 "Ft. n." PROMPT 88 1 "Ft. n."
FIELD 14->NFATT MESSAGE _FATT,!NFATT
END END
DATA 2 STRINGA 202 16 3
BEGIN BEGIN
PROMPT 107 1 "del " PROMPT 104 1 "del "
FIELD 14->DATAFATT MESSAGE _FATT,!DATAFATT
END END
VALUTA 3 21 3 STRINGA 203 21 3
BEGIN BEGIN
PROMPT 124 1 "" PROMPT 121 1 ""
FIELD 14->IMPORTOVAL MESSAGE _FATT,!IMPEFF
GROUP 3
END
VALUTA 4 18
BEGIN
PROMPT 124 1 ""
FIELD 14->IMPORTO
GROUP 4
FLAGS "D"
END
END END
STRINGA 31 32 STRINGA 31 32
BEGIN BEGIN

View File

@ -85,17 +85,17 @@ END
STRING 9 11 STRING 9 11
BEGIN BEGIN
KEY "scritta titolo righe del body" KEY "scritta titolo righe del body"
PROMPT 94 7 "FATTURA NUM" PROMPT 88 7 "FATTURA NUM"
END END
STRING 10 8 STRING 10 8
BEGIN BEGIN
KEY "scritta titolo righe del body" KEY "scritta titolo righe del body"
PROMPT 111 7 "DATA FATT." PROMPT 104 7 "DATA FATT."
END END
STRING 11 7 STRING 11 7
BEGIN BEGIN
KEY "scritta titolo righe del body" KEY "scritta titolo righe del body"
PROMPT 129 7 "IMPORTO" PROMPT 135 7 "IMPORTO"
END END
STRING 12 STRING 12
BEGIN BEGIN
@ -279,30 +279,20 @@ KEY "CIG"
PROMPT 25 5 "CIG " PROMPT 25 5 "CIG "
FIELD CIG FIELD CIG
END END
SECTION RIGHE_EFFETTO 5 1 1 FILE 14 GROUP NPROGTR STRINGA 201 14 3
STRINGA 1
BEGIN BEGIN
PROMPT 92 1 "Ft. n." PROMPT 88 1 "Ft. n."
FIELD 14->NFATT MESSAGE _FATT,!NFATT
END END
DATA 2 STRINGA 202 16 3
BEGIN BEGIN
PROMPT 107 1 "del " PROMPT 104 1 "del "
FIELD 14->DATAFATT MESSAGE _FATT,!DATAFATT
END END
VALUTA 3 21 3 STRINGA 203 21 3
BEGIN BEGIN
PROMPT 124 1 "" PROMPT 121 1 ""
FIELD 14->IMPORTOVAL MESSAGE _FATT,!IMPEFF
GROUP 3
END
VALUTA 4 18
BEGIN
PROMPT 124 1 ""
FIELD 14->IMPORTO
GROUP 4
FLAGS "D"
END
END END
STRINGA 31 32 STRINGA 31 32
BEGIN BEGIN

View File

@ -99,19 +99,19 @@ END
STRING 9 11 STRING 9 11
BEGIN BEGIN
KEY "scritta titolo righe del body" KEY "scritta titolo righe del body"
PROMPT 94 7 "FATTURA NUM" PROMPT 88 7 "FATTURA NUM"
END END
STRING 10 8 STRING 10 8
BEGIN BEGIN
KEY "scritta titolo righe del body" KEY "scritta titolo righe del body"
PROMPT 111 7 "DATA FATT." PROMPT 104 7 "DATA FATT."
END END
STRING 11 7 STRING 11 7
BEGIN BEGIN
KEY "scritta titolo righe del body" KEY "scritta titolo righe del body"
PROMPT 129 7 "IMPORTO" PROMPT 135 7 "IMPORTO"
END END
STRING 12 STRING 12
@ -323,35 +323,20 @@ BEGIN
PROMPT 25 5 "CIG " PROMPT 25 5 "CIG "
FIELD CIG FIELD CIG
END END
STRINGA 201 14 3
SECTION RIGHE_EFFETTO 5 1 1 FILE 14 GROUP NPROGTR BEGIN
STRINGA 1 PROMPT 88 1 "Ft. n."
BEGIN MESSAGE _FATT,!NFATT
PROMPT 92 1 "Ft. n." END
FIELD 14->NFATT STRINGA 202 16 3
END BEGIN
PROMPT 104 1 "del "
DATA 2 MESSAGE _FATT,!DATAFATT
BEGIN END
PROMPT 107 1 "del " STRINGA 203 21 3
FIELD 14->DATAFATT BEGIN
END PROMPT 121 1 ""
MESSAGE _FATT,!IMPEFF
VALUTA 3 21 3
BEGIN
PROMPT 124 1 ""
FIELD 14->IMPORTOVAL
GROUP 3
END
VALUTA 4 18
BEGIN
PROMPT 124 1 ""
FIELD 14->IMPORTO
GROUP 4
FLAGS "D"
END
END END
STRINGA 31 32 STRINGA 31 32
BEGIN BEGIN

View File

@ -222,7 +222,8 @@ TToken_string& TEffetto::dati_fatt(long num, const bool valuta, TToken_string& d
{ {
dati.add(righe_eff.get(REFF_NFATT));//prende il numero dati.add(righe_eff.get(REFF_NFATT));//prende il numero
dati.add(righe_eff.get(REFF_DATAFATT));//prende la data dati.add(righe_eff.get(REFF_DATAFATT));//prende la data
dati.add(righe_eff.get(valuta ? REFF_IMPFATTVAL : REFF_IMPFATT));//prende l'importo dati.add(righe_eff.get(valuta ? REFF_IMPFATTVAL : REFF_IMPFATT));//prende l'importo
dati.add(righe_eff.get(valuta ? REFF_IMPORTOVAL : REFF_IMPORTO));//prende l'importo scadenza
righe_eff.next();// passa alla riga successiva righe_eff.next();// passa alla riga successiva
} }
return dati; return dati;

View File

@ -729,8 +729,13 @@ bool TRiba_form::validate(TForm_item &cf, TToken_string &s)
long num = effetto.numero(); long num = effetto.numero();
const bool in_valuta = effetto.in_valuta(); const bool in_valuta = effetto.in_valuta();
bool condition = (effetto.fatt());//TRUE se effetto non raggruppato bool condition = (effetto.fatt());//TRUE se effetto non raggruppato
TToken_string dati; effetto.dati_fatt(num, in_valuta, dati); TToken_string dati;
effetto.dati_fatt(num, in_valuta, dati);
const int elem = dati.items();
TString in(s.get()); TString in(s.get());
if (in[0]=='!') if (in[0]=='!')
{ {
in.ltrim(1); in.ltrim(1);
@ -745,16 +750,13 @@ bool TRiba_form::validate(TForm_item &cf, TToken_string &s)
// "!DATIFATT" stampa numero e data fattura delle fatture a cui si riferisce l'effetto // "!DATIFATT" stampa numero e data fattura delle fatture a cui si riferisce l'effetto
if (in == "DATIFATT") if (in == "DATIFATT")
{ {
int elem = dati.items();
TString descfatt;
for (int i = 0; i < elem; i+=3) for (int i = 0; i < elem; i+=3)
{ {
descfatt << dati.get(i); valore << dati.get(i);
descfatt << ' '; valore << ' ';
descfatt << dati.get(i+1); valore << dati.get(i+1);
descfatt << '\n'; valore << '\n';
} }
cf.set(descfatt);
} }
// "!IMPFATT" se 1 sola fattura ne stampa l' importo // "!IMPFATT" se 1 sola fattura ne stampa l' importo
if (in == "IMPFATT") if (in == "IMPFATT")
@ -762,11 +764,10 @@ bool TRiba_form::validate(TForm_item &cf, TToken_string &s)
if (condition) if (condition)
{ {
const real importo(dati.get(2)); const real importo(dati.get(2));
cf.set(importo.string()); valore << importo.string();
} }
} }
} }
valore = cf.get();
cf.put_paragraph(valore); cf.put_paragraph(valore);
return true; return true;
} }
@ -975,7 +976,10 @@ bool TDistinta_form::validate(TForm_item &cf, TToken_string &s)
// "!DATI" numero e data fattura // "!DATI" numero e data fattura
TEffetto effetto(cursor()->file().curr()); //= eff.curr(); TEffetto effetto(cursor()->file().curr()); //= eff.curr();
long num = effetto.numero(); long num = effetto.numero();
TToken_string dati; effetto.dati_fatt(num, FALSE, dati); TToken_string dati;
effetto.dati_fatt(num, FALSE, dati);
const int elem = dati.items(); const int elem = dati.items();
TString80 in(s.get()); // prende il primo parametro, il codice del messaggio TString80 in(s.get()); // prende il primo parametro, il codice del messaggio
if (in[0]=='!') if (in[0]=='!')
@ -984,18 +988,59 @@ bool TDistinta_form::validate(TForm_item &cf, TToken_string &s)
// "!DATIFATT" stampa numero e data fattura delle fatture a cui si riferisce l'effetto // "!DATIFATT" stampa numero e data fattura delle fatture a cui si riferisce l'effetto
if (in == "DATIFATT") if (in == "DATIFATT")
{ {
TString descfatt; for (int i = 0; i < elem; i += 4)
for (int i = 0; i < elem; i+=3)
{ {
descfatt << dati.get(i); if (valore.full())
descfatt << ' '; valore << '\n';
descfatt << dati.get(i+1); valore << dati.get(i);
descfatt << '\n'; valore << ' ';
valore << dati.get(i+1);
} }
cf.set(descfatt);
} }
} }
valore = cf.get(); if (in == "NFATT")
{
for (int i = 0; i < elem; i += 4)
{
if (valore.full())
valore << '\n';
valore << dati.get(i);
}
}
if (in == "DATAFATT")
{
for (int i = 0; i < elem; i += 4)
{
if (valore.full())
valore << '\n';
valore << dati.get(i + 1);
}
}
// "!IMPFATT" se 1 sola fattura ne stampa l' importo
if (in == "IMPFATT")
{
for (int i = 0; i < elem; i += 4)
{
const real importo(dati.get(i + 2));
if (valore.full())
valore << '\n';
valore << importo.stringa(cf.width(), 2);
}
}
// "!IMPFATT" se 1 sola fattura ne stampa l' importo
if (in == "IMPEFF")
{
for (int i = 0; i < elem; i += 4)
{
const real importo(dati.get(i + 3));
if (valore.full())
valore << '\n';
valore << importo.stringa(cf.width(), 2);
}
}
cf.put_paragraph(valore); cf.put_paragraph(valore);
return (TRUE); return (TRUE);
} }