Patch level : 10.0

Files correlati     : pd6292
Ricompilazione Demo : [ ]
Commento            :
Non considerare più pagamenti e note credito dopo la data limite operazione


git-svn-id: svn://10.65.10.50/branches/R_10_00@22600 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2012-03-06 15:45:03 +00:00
parent 3ff004b4e8
commit 609bf2257b

View File

@ -97,7 +97,7 @@ class TProspettoScadenze : public TPrintapp
_nsinfasce;
TString _anno,_numdoc,_protiva,_datadoc,_codval, _codvalsel,
_cod, _cod_pre, _des, _des_pre;
TDate _limop, _limscad, _datas, _limbf; // Data limite operazione, data limite scaduto e data di stampa
TDate _limop, _limscaduto, _datas, _limbf; // Data limite operazione, data limite scaduto e data di stampa
int _gcr, // Giorni per Calcolo Rischio (valido solo per stampa clienti)
_sfasce,
_nsfasce;
@ -204,7 +204,7 @@ void TProspettoScadenze::compute_antic(TPartita& p, const TDate & datalim)
const char * field = (_stvaluta && rp.in_valuta() ? PART_IMPORTOVAL : PART_IMPORTO);
const TDate & d = rp.get_date(PART_DATAPAG);
if (d > _limscad)
if (d > _limscaduto)
{
if (_nsinfasce)
{
@ -245,9 +245,9 @@ void TProspettoScadenze::compute_antic(TPartita& p, const TDate & datalim)
update_totals(1, esposto, s, ns); // ...Generale
}
void TProspettoScadenze::compute_unassigned(TPartita& p, const TDate & datalim)
void TProspettoScadenze::compute_unassigned(TPartita& p, const TDate& datalim)
{
TRecord_array& ra = p.unassigned();
const TRecord_array& ra = p.unassigned();
_uns = _unsnc = _unsesp = ZERO;
_unsdscd = datalim;
@ -255,25 +255,26 @@ void TProspettoScadenze::compute_unassigned(TPartita& p, const TDate & datalim)
{
const TRectype& rec = ra.row(r);
const TRiga_partite& sum = p.riga(rec.get_int(PAGSCA_NRIGP));
const char * field = (_stvaluta && sum.in_valuta() ? PAGSCA_IMPORTOVAL : PAGSCA_IMPORTO);
const TDate & datascad = sum.get_date(PART_DATAPAG);
if ((datascad <= datalim))
const char* field = (_stvaluta && sum.in_valuta()) ? PAGSCA_IMPORTOVAL : PAGSCA_IMPORTO;
const TDate datascad = sum.get_date(PART_DATAPAG);
const int tm = sum.get_int(PART_TIPOMOV);
if (datascad <= datalim)
{
_unsdscd = datascad;
if (sum.get_int(PART_TIPOMOV) == 2) // Is it a credit note ?
if (tm == 2) // Is it a credit note ?
_unsnc += rec.get_real(field);
else
_uns += rec.get_real(field);
}
/* NON CONSIDERARE MOVIMENTI DOPO LA DATA LIMITE
else
{
if (sum.get_int(PART_TIPOMOV) == 2) // Is it a credit note ?
if (tm == 2) // Is it a credit note ?
_unsesp -= rec.get_real(field);
else
_unsesp += rec.get_real(field);
}
*/
}
}
@ -353,7 +354,7 @@ void TProspettoScadenze::compute_all(TPartita& p, TBill& bill)
if (prima_riga_pagamento > -1 && prima_riga_pagamento == pp)
data_pag = d; // Se e' il primo pagamento(in ordine di data) di questa rata
// prende la data di scadenza relativa.
if (data_pag > _limbf && data_pag <= _limscad)
if (data_pag > _limbf && data_pag <= _limscaduto)
bf += TImporto(sez,pg.get_real(field));
}
}
@ -389,7 +390,7 @@ void TProspettoScadenze::compute_all(TPartita& p, TBill& bill)
if (rscd == ZERO) // Se le scadenze sono a zero, vuol dire che sono state stornate
res = ZERO; // da qualche nota di credito o non assegnato percio' non si ha residuo
if (d > _limscad)
if (d > _limscaduto)
{
if (_nsinfasce)
{
@ -543,7 +544,7 @@ bool TProspettoScadenze::preprocess_page(int file, int counter)
real res = - _uns - _unsnc;
if (d > _limscad)
if (d > _limscaduto)
{
if (_nsinfasce)
{
@ -616,8 +617,8 @@ bool TProspettoScadenze::open_print()
_gcr = _m->get_int(F_GIORNI);
_datas = _m->get_date(F_DATASTAMPA);
_limop = _m->get_date(F_DATAOPERAZIONE);
_limscad = _m->get_date(F_DATASCADUTO);
_limbf = _limscad - (long)_gcr; // Limite inferiore per le scadenze a Buon Fine.
_limscaduto = _m->get_date(F_DATASCADUTO);
_limbf = _limscaduto - (long)_gcr; // Limite inferiore per le scadenze a Buon Fine.
_sinfasce = _m->get_bool(F_SCADINFASCE);
_nsinfasce = _m->get_bool(F_ASCADINFASCE);
_s_date.destroy();
@ -630,13 +631,13 @@ bool TProspettoScadenze::open_print()
for (int j = 0; j < _sfasce; j++)
{
TDate & d = (TDate &)_s_date[j];
d = _limscad;
d = _limscaduto;
d.addmonth(-_slimiti[j]);
}
for (int k = 0; k < _nsfasce; k++)
{
TDate & d = (TDate &)_ns_date[k];
d = _limscad;
d = _limscaduto;
d.addmonth(_nslimiti[k]);
}
_anno.cut(0);_numdoc.cut(0);_protiva.cut(0);_datadoc.cut(0);
@ -956,8 +957,8 @@ void TProspettoScadenze::print_totali_rows(int nriga, bool what)
}
pos += 13;
const real diff = v._sl - (tot - v._es);
if (diff != ZERO)
real diff = v._sl - (tot - v._es); diff.round(3);
if (!diff.is_zero())
{
print_real(value, diff);
rw << format("@%dg%13s", pos, (const char*) value);
@ -1087,7 +1088,7 @@ void TProspettoScadenze::print_header()
s = ditte.get(NDT_RAGSOC);
TString datas = _datas.string();
TString limop = _limop.string();
TString limscad = _limscad.string();
TString limscad = _limscaduto.string();
TString s1;
if (_stvaluta)
@ -1174,15 +1175,14 @@ int TProspettoScadenze::calc_last_column()
// Setta le righe dell'intestazione
{
int pos = 112;
if (_sinfasce)
pos += _sfasce * 13;
else
pos += 13;
if (_nsinfasce)
pos = pos + _nsfasce * 13;
else
pos += 13;
if (_sinfasce)
pos += _sfasce * 13;
else
pos += 13;
if (_nsinfasce)
pos = pos + _nsfasce * 13;
else
pos += 13;
return pos;
}