Correzione ai pagamenti

git-svn-id: svn://10.65.10.50/trunk@2421 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 1996-01-09 18:38:30 +00:00
parent e8813d41f0
commit 569d4f5af2
2 changed files with 8 additions and 21 deletions

View File

@ -387,7 +387,6 @@ bool BA3700_application::sheet_action(TSheet_field&, int r, KEY k)
TString news(15), newp(15), newt(1), newu(1); TString news(15), newp(15), newt(1), newu(1);
TToken_string ts(36), ns(36); TToken_string ts(36), ns(36);
bool recalc = TRUE;
switch (k) switch (k)
{ {
@ -435,7 +434,7 @@ bool BA3700_application::sheet_action(TSheet_field&, int r, KEY k)
if (k == K_ENTER) if (k == K_ENTER)
{ {
if (mod && recalc) if (mod)
{ {
// ricalcola sheet come sai fare tu // ricalcola sheet come sai fare tu
int rdiff = atoi(msk->get(F_RATE_DIFF)); int rdiff = atoi(msk->get(F_RATE_DIFF));
@ -451,20 +450,6 @@ bool BA3700_application::sheet_action(TSheet_field&, int r, KEY k)
msk->set(F_RATE_DIFF, pag->rate_differenziate() ? "1" : "2", TRUE); msk->set(F_RATE_DIFF, pag->rate_differenziate() ? "1" : "2", TRUE);
msk->set(F_MESECOMM, pag->mese_commerciale() ? "X" : ""); msk->set(F_MESECOMM, pag->mese_commerciale() ? "X" : "");
} }
if (!recalc)
{
ahiahi = P_OK;
// put data as they are
TToken_string& trw = pag->rata(r);
TToken_string srw = trw;
if (m_scad) trw.add(news,0);
if (m_perc) trw.add(newp,1);
if (m_tipo) trw.add(newt,2);
if (m_ulc) trw.add(newu,3);
// validate the payment
if ((ahiahi = pag->validate()) != P_OK)
pag->rata(r) = srw;
}
if (ahiahi) if (ahiahi)
// rimetti le righe com'erano prima // rimetti le righe com'erano prima
{ {
@ -472,16 +457,18 @@ bool BA3700_application::sheet_action(TSheet_field&, int r, KEY k)
pag->strerr(ahiahi,s); pag->strerr(ahiahi,s);
warning_box(s); warning_box(s);
shf->row(r) = (TToken_string&)(*rws)[r]; shf->row(r) = (TToken_string&)(*rws)[r];
shf->force_update(-1); shf->force_update(r);
msk->set(F_NUM_RATE, pag->n_rate()); msk->set(F_NUM_RATE, pag->n_rate());
} }
else if (recalc && mod && need_recalc) else if (mod && need_recalc)
{ {
// ridefinisci lo sheet sulla base delle nuove rate // ridefinisci lo sheet sulla base delle nuove rate
const int row = shf->selected();
pag->set_sheet(*shf); pag->set_sheet(*shf);
shf->force_update(-1); shf->force_update();
rws->destroy(); shf->select(row);
// rws->destroy();
(*rws) = shf->rows_array(); (*rws) = shf->rows_array();
} }

View File

@ -187,7 +187,7 @@ ENDMASK
PAGE "" -1 -1 78 15 PAGE "" -1 -1 78 15
NUMBER 101 4 NUMBER 101 5
BEGIN BEGIN
PROMPT 4 1 "Numero giorni " PROMPT 4 1 "Numero giorni "
END END