Patch level :10.0 90
Files correlati :sc2.exe Ricompilazione Demo : [ ] Commento : 0000853: ultima colonna stampa scadenzario Descrizione il cliente Presscolor/sig.Vito segnala che l'ultima colonna della stampa scadenzario (sc2.exe -1) visualizza delle cifre strane tipo 62 ,00. Allego esempio visto che l'errore viene trascinato sul txt. 0000854: stampa scadenzario Descrizione il cliente prescolor nella persona del simpaticissimo sig. Vito richiede nella stampa dello scadenzario (sc2.exe -1) che a suo dire gli spazi tra le colonne sono troppi, visto che non siamo più in lire ma in euro potremmo ridurli e sfruttare quel che avanza per separare la tipologia di pagamento rimessa diretta e bonifico git-svn-id: svn://10.65.10.50/trunk@16881 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
00f78921b2
commit
ee4d80f519
@ -24,9 +24,10 @@ struct _LinearTotal : public TObject // Oggetto base per gli elementi di tlg, t
|
||||
_ip, // Importo pagato
|
||||
_rd, // Rimesse dirette
|
||||
_ri, // Ri.ba/Tratte
|
||||
_bo, // Bonifici
|
||||
_al; // Altri
|
||||
virtual TObject* dup() const { return new _LinearTotal(*this); }
|
||||
_LinearTotal() {_is = 0.0; _ip = 0.0; _rd = 0.0; _ri = 0.0; _al = 0.0; }
|
||||
_LinearTotal() {_is = 0.0; _ip = 0.0; _rd = 0.0; _ri = 0.0; _bo = 0.0; _al = 0.0; }
|
||||
};
|
||||
|
||||
enum tipo_st {nessuno=0, tutti=1, clienti=2, fornitori=3, altri=4};
|
||||
@ -47,8 +48,8 @@ class TStampaScadenzario : public TPrintapp
|
||||
TString _last_ban, _desc_ban; // Banca correntemente in corso di raggruppamento
|
||||
TPString *_descrizione,*_ragsoc,*_des_conto; // Descrizione (da LF_PARTITE), ragione sociale (da LF_CLIFO)
|
||||
// Descrizione conto (da LF_PCON)
|
||||
TString _imp_scad,_imp_pag,_rimdir,_riba,_altri, // Valori calcolati in preprocess_page: rimesse dirette, Ri.ba e altri
|
||||
_cur_gr_s, _cur_co_s, _cur_codcf_s; // _imp_scad e _imp_pag vengono anch'essi calcolati in preprocess_page.
|
||||
TString _imp_scad,_imp_pag,_rimdir,_riba,_altri,_bonifico, // Valori calcolati in preprocess_page: rimesse dirette, Ri.ba e altri
|
||||
_cur_gr_s, _cur_co_s, _cur_codcf_s; // _imp_scad e _imp_pag vengono anch'essi calcolati in preprocess_page.
|
||||
TDate _datai, _dataf, _datas, // Data inizio, fine e stampa
|
||||
_cur_data; // Data di scadenza riferita al record corrente
|
||||
long _cur_codcf; // Cli/Fo riferito al record corrente
|
||||
@ -204,7 +205,7 @@ HIDDEN void print_real(TString& dest, const real& num, const char* val)
|
||||
{
|
||||
const TCurrency cur(num, val);
|
||||
dest = cur.string(TRUE);
|
||||
dest.right_just(18);
|
||||
dest.right_just(15);
|
||||
}
|
||||
|
||||
bool TStampaScadenzario::filter_func(const TRelation *r)
|
||||
@ -297,6 +298,9 @@ void TStampaScadenzario::check_add_key_to_tl(tipo_pe p, int t)
|
||||
case 3:
|
||||
xtotal._ri += _w_imp_res;
|
||||
break;
|
||||
case 9:
|
||||
xtotal._bo += _w_imp_res;
|
||||
break;
|
||||
default:
|
||||
xtotal._al += _w_imp_res;
|
||||
break;
|
||||
@ -638,9 +642,10 @@ bool TStampaScadenzario::preprocess_page(int file, int counter)
|
||||
|
||||
_annopart.format("%d",annop);
|
||||
_annopart.ltrim(2);
|
||||
_rimdir="";
|
||||
_riba="";
|
||||
_altri="";
|
||||
_rimdir = "";
|
||||
_riba = "";
|
||||
_bonifico = "";
|
||||
_altri = "";
|
||||
_imp_pag = "";
|
||||
|
||||
const bool print_in_valuta = _stvaluta && is_true_value(_codval);
|
||||
@ -660,25 +665,28 @@ bool TStampaScadenzario::preprocess_page(int file, int counter)
|
||||
case 3:
|
||||
print_real(_riba, _w_imp_res, print_in_valuta ? _codval : EMPTY_STRING);
|
||||
break;
|
||||
default: // Altri
|
||||
case 9: // Bonifici
|
||||
print_real(_bonifico, _w_imp_res, print_in_valuta ? _codval : EMPTY_STRING);
|
||||
break;
|
||||
default: // Altri
|
||||
print_real(_altri, _w_imp_res, print_in_valuta ? _codval : EMPTY_STRING);
|
||||
break;
|
||||
}
|
||||
} //if (file == LF_SCADENZE && !_end_printed)...
|
||||
|
||||
if (file==LF_CLIFO)
|
||||
if (file == LF_CLIFO)
|
||||
{
|
||||
TString80 xxx(current_cursor()->curr(LF_CLIFO).get(CLI_RAGSOC));
|
||||
*_ragsoc = xxx.strip_double_spaces();
|
||||
}
|
||||
if (file ==LF_PCON)
|
||||
if (file == LF_PCON)
|
||||
*_des_conto = current_cursor()->curr(LF_PCON).get(PCN_DESCR);
|
||||
|
||||
// Se l'ordinamento principale e' per data scadenza stampa il totale del giorno e del mese
|
||||
if (_ordata && !_end_printed)
|
||||
if ((file == LF_SCADENZE && _tipost == tutti) ||
|
||||
(file == LF_PCON && _tipost == altri) ||
|
||||
(file ==LF_CLIFO && (_tipost == clienti || _tipost == fornitori)))
|
||||
(file == LF_CLIFO && (_tipost == clienti || _tipost == fornitori)))
|
||||
{
|
||||
bool date_changed = false;
|
||||
if (_cur_data.ok())
|
||||
@ -1180,8 +1188,8 @@ void TStampaScadenzario::print_header()
|
||||
set_header(soh++, (const char *) rw);
|
||||
set_header(soh++,FR("@28gRif.@38gData@47gData@77gCd/Tp@91g%s"),(const char*)s1);
|
||||
set_header(soh++,FR("Codice@9gRagione sociale@28gpartita@38gscadenza@47gRegistr."
|
||||
"@56gDescrizione@77gPag.@86gRata@91g%s@97gVal."
|
||||
"@106gImp. in sca.@125gImp. pagati@144gRimesse dir.@163gRi.ba./Tratte@189gAltri@195gBlocc."), (const char*)s2);
|
||||
"@56gDescrizione@77gPag.@86gRata@91g%s@96gVal."
|
||||
"@103gImp. in sca.@119gImp. pagati@135gRimesse dir.@151gRi.ba./Tratte@171gBonifici@190gAltri@197gBlc"), (const char*)s2);
|
||||
set_header(soh++,FR("@28gData e Nr doc. @46gProt. IVA"));
|
||||
set_header(soh++,(const char *)rw);
|
||||
break;
|
||||
@ -1207,9 +1215,8 @@ void TStampaScadenzario::print_header()
|
||||
set_header(soh++, (const char *) rw);
|
||||
set_header(soh++,FR("@33gRif.@43gData@53gData@82gCd/Tp"));
|
||||
set_header(soh++,FR("Gr. Co. So.@16gDescrizione@33gpartita@43gscadenza@53gRegistr."
|
||||
"@61gDescrizione@82gPag.@89gRata@97gVal."
|
||||
"@106gImp. in sca.@125gImp. pagati@144gRimesse dir.@163gRi.ba./Tratte@189gAltri@195gBlocc."));
|
||||
|
||||
"@61gDescrizione@82gPag.@89gRata@96gVal."
|
||||
"@103gImp. in sca.@119gImp. pagati@135gRimesse dir.@151gRi.ba./Tratte@171gBonifici@190gAltri@197gBlc"));
|
||||
set_header(soh++,FR("@36gData e Nr doc. @54gProt. IVA"));
|
||||
|
||||
set_header(soh++,(const char *)rw);
|
||||
@ -1238,13 +1245,14 @@ void TStampaScadenzario::set_page_clifo(int nriga)
|
||||
set_row(nriga,"@86g@4n",FLD(LF_SCADENZE,SCAD_NRATA));
|
||||
if (_tipost == fornitori)
|
||||
set_row(nriga,"@91g@5pn",FLD(LF_SCADENZE,SCAD_CODABIPR,"@@@@@"));
|
||||
set_row(nriga,"@97g#t", &_codval);
|
||||
set_row(nriga,"@101g#18t",&_imp_scad);
|
||||
set_row(nriga,"@120g#18t",&_imp_pag);
|
||||
set_row(nriga,"@139g#18t",&_rimdir); // rimesse dirette
|
||||
set_row(nriga,"@158g#18t",&_riba); // Ri.ba. / tratte
|
||||
set_row(nriga,"@177g#18t",&_altri); // Altri tipi di pagamento
|
||||
set_row(nriga,"@197g@1s",FLD(LF_SCADENZE,SCAD_BLOCCATA));
|
||||
set_row(nriga,"@96g#t", &_codval);
|
||||
set_row(nriga,"@100g#15t",&_imp_scad);
|
||||
set_row(nriga,"@116g#15t",&_imp_pag);
|
||||
set_row(nriga,"@132g#15t",&_rimdir); // rimesse dirette
|
||||
set_row(nriga,"@148g#15t",&_riba); // Ri.ba. / tratte
|
||||
set_row(nriga,"@164g#15t",&_bonifico); // Bonifico
|
||||
set_row(nriga,"@180g#15t",&_altri); // Altri tipi di pagamento
|
||||
set_row(nriga,"@198g@1s",FLD(LF_SCADENZE,SCAD_BLOCCATA));
|
||||
nriga++;
|
||||
set_row(nriga,"@31g#t",&_datadoc);
|
||||
set_row(nriga,"@40g#t",&_numdoc);
|
||||
@ -1264,13 +1272,14 @@ void TStampaScadenzario::set_page_pcon(int nriga)
|
||||
set_row(nriga,"@61g#a",_descrizione);
|
||||
set_row(nriga,"@82g@4,rs/@1n@89g@4n",FLD(LF_SCADENZE,SCAD_CODPAG),FLD(LF_SCADENZE,SCAD_TIPOPAG),
|
||||
FLD(LF_SCADENZE,SCAD_NRATA));
|
||||
set_row(nriga,"@97g#t", &_codval);
|
||||
set_row(nriga,"@101g#18t",&_imp_scad);
|
||||
set_row(nriga,"@120g#18t",&_imp_pag);
|
||||
set_row(nriga,"@139g#18t",&_rimdir); // rimesse dirette
|
||||
set_row(nriga,"@158g#18t",&_riba); // Ri.ba. / tratte
|
||||
set_row(nriga,"@177g#18t",&_altri); // Altri tipi di pagamento
|
||||
set_row(nriga,"@197g@1s",FLD(LF_SCADENZE,SCAD_BLOCCATA));
|
||||
set_row(nriga,"@96g#t", &_codval);
|
||||
set_row(nriga,"@100g#15t",&_imp_scad);
|
||||
set_row(nriga,"@116g#15t",&_imp_pag);
|
||||
set_row(nriga,"@132g#15t",&_rimdir); // rimesse dirette
|
||||
set_row(nriga,"@148g#15t",&_riba); // Ri.ba. / tratte
|
||||
set_row(nriga,"@164g#15t",&_bonifico); // Bonifico
|
||||
set_row(nriga,"@180g#15t",&_altri); // Altri tipi di pagamento
|
||||
set_row(nriga,"@198g@1s",FLD(LF_SCADENZE,SCAD_BLOCCATA));
|
||||
nriga++;
|
||||
set_row(nriga,"@36g#t@45g#t@54g#-5t",&_datadoc,&_numdoc,&_protiva);
|
||||
}
|
||||
@ -1303,7 +1312,7 @@ void TStampaScadenzario::print_rows_riepilogo(int& nriga, bool type, TAssoc_arra
|
||||
|
||||
t.get_keys(as);
|
||||
as.sort();
|
||||
for (int i=0; i < items; i++)
|
||||
for (int i = 0; i < items; i++)
|
||||
{
|
||||
const TString& k = as.row(i);
|
||||
real& v = (real&)t[k];
|
||||
@ -1371,7 +1380,7 @@ void TStampaScadenzario::print_riepilogo(int &nriga, bool type)
|
||||
const int items = totali.items();
|
||||
|
||||
TString val, value;
|
||||
for (int i=0; i < items; i++)
|
||||
for (int i = 0; i < items; i++)
|
||||
{
|
||||
val = as.row(i);
|
||||
const bool stampa_in_valuta = _stvaluta && is_true_value(val);
|
||||
@ -1420,14 +1429,14 @@ void TStampaScadenzario::print_rows_totali(int &nriga, tipo_pe p)
|
||||
as.sort();
|
||||
|
||||
TString k, value;
|
||||
for (int i=0; i < items; i++)
|
||||
for (int i = 0; i < items; i++)
|
||||
{
|
||||
k = as.row(i); // Chiave di ordinamento(valuta)
|
||||
const bool stampa_in_valuta = _stvaluta && is_true_value(k);
|
||||
_LinearTotal& v = (_LinearTotal&)xassoc[k];
|
||||
|
||||
if (is_true_value(k))
|
||||
set_row(nriga,"@97g%3s",(const char*)k);
|
||||
set_row(nriga,"@96g%3s",(const char*)k);
|
||||
|
||||
if (!stampa_in_valuta)
|
||||
k.cut(0);
|
||||
@ -1435,28 +1444,33 @@ void TStampaScadenzario::print_rows_totali(int &nriga, tipo_pe p)
|
||||
print_real(value, v._is, k);
|
||||
|
||||
if (v._is != ZERO)
|
||||
set_row(nriga,"@101g%18s",(const char*) value);
|
||||
set_row(nriga,"@100g%15s",(const char*) value);
|
||||
|
||||
print_real(value, v._ip, k);
|
||||
|
||||
if (v._ip != ZERO)
|
||||
set_row(nriga,"@120g%18s",(const char*) value);
|
||||
set_row(nriga,"@116g%15s",(const char*) value);
|
||||
|
||||
print_real(value, v._rd, k);
|
||||
|
||||
if (v._rd != ZERO)
|
||||
set_row(nriga,"@139g%18s",(const char*) value);
|
||||
set_row(nriga,"@132g%15s",(const char*) value);
|
||||
|
||||
print_real(value, v._ri, k);
|
||||
|
||||
if (v._ri != ZERO)
|
||||
set_row(nriga,"@158g%18s",(const char*) value);
|
||||
set_row(nriga,"@148g%15s",(const char*) value);
|
||||
|
||||
print_real(value, v._bo, k);
|
||||
|
||||
if (v._bo != ZERO)
|
||||
set_row(nriga,"@164g%15s",(const char*) value);
|
||||
|
||||
print_real(value, v._al, k);
|
||||
|
||||
if (v._al != ZERO)
|
||||
set_row(nriga,"@177g%18s",(const char*) value);
|
||||
|
||||
set_row(nriga,"@180g%15s",(const char*) value);
|
||||
|
||||
set_row(++nriga,"");
|
||||
}
|
||||
set_row(++nriga,"");
|
||||
|
Loading…
x
Reference in New Issue
Block a user