Aggiunte segnalazioni di errore da non ricalcolo, eliminato ricalcolo

ricorsivo in interattivo


git-svn-id: svn://10.65.10.50/trunk@829 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
villa 1995-01-05 12:44:53 +00:00
parent a23ef0bbc4
commit 0b11a22a09
3 changed files with 42 additions and 13 deletions

View File

@ -52,10 +52,16 @@ bool TLiquidazione_app::recalc_all()
else if (!(_lim->get_bool("B0"))) need_refresh = TRUE;
}
if (need_refresh)
{
if (_is_interactive)
{
if (yesno_box("Alcuni mesi precedenti non risultano ricalcolati. E' "
"consigliabile il ricalcolo. Si desidera eseguirlo?"))
_recalc = ever;
}
else _recalc = needed;
}
}
if (_recalc == ever)
{

View File

@ -386,10 +386,17 @@ real TLiquidazione_app::credito_prec(int month)
{
bool ok = look_lim(previous_month(month));
if (!ok || !_lim->get_bool("B0"))
{
if (_recalc != needed)
{
describe_error("Ricalcolo non eseguito: possibili errori credito precedente","ALL");
}
else
{
update_firm(previous_month(month), FALSE);
look_lim(previous_month(month));
}
}
// toglie il rimborso chiesto
c = _lim->get_real("R0") + _lim->get_real("R1");
// e le eventuali rettifiche
@ -422,11 +429,18 @@ real TLiquidazione_app::credito_costo_prec(int month, const char* codatt)
{
bool ok = look_lim(previous_month(month));
if (!ok || !_lim->get_bool("B0"))
{
if (_recalc != needed)
{
describe_error("Ricalcolo non eseguito: possibili errori credito di costo","ALL");
}
else
{
// Super Prassi a questo punto vorrebbe una update_firm
update_att(previous_month(month), codatt, FALSE);
look_lim(previous_month(month));
}
}
// qui il rimborso non c'e'
c = _lim->get_real("R2");
}

View File

@ -55,6 +55,14 @@ void TLiquidazione_app::zero_plafond (int month, const char* codatt)
// si ricalcola tutto
if (!look_ppa(previous_month(month),codatt,jj))
// mazza che bella chiamata ricorsiva
{
if (_recalc != needed)
{
describe_error("Progressivi plafond non ricalcolati per "
"i mesi precedenti: possibili errori",
codatt);
}
else
{
if (!update_att(previous_month(month),codatt, FALSE))
describe_error("Progressivi plafond non ricalcolati per "
@ -62,6 +70,7 @@ void TLiquidazione_app::zero_plafond (int month, const char* codatt)
codatt);
look_ppa(previous_month(month),codatt,jj);
}
}
r = _ppa_r->get_real("R2") -
_ppa_r->get_real("R0") -
_ppa_r->get_real("R1");