Visualizzazione si spera che funzione

git-svn-id: svn://10.65.10.50/trunk@1771 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
villa 1995-09-01 09:08:52 +00:00
parent 3359cbd129
commit 0fd04df32e

View File

@ -366,13 +366,21 @@ bool Visliq_app::sel_mese_sh1 (TMask_field& f, KEY k)
app().vis_one(month);
TMask& sm = sh.sheet_mask();
app().set_liq_rows(sh);
// TBC controllare se sono i dati giusti in tt
sm.field(102).set(tt.get(1));
sm.field(103).set(tt.get(2));
sm.field(104).set(tt.get(3));
sm.field(105).set(tt.get(4));
sm.field(106).set(tt.get(5));
if (sm.is_running())
{
// TBC controllare se sono i dati giusti in tt
sm.field(102).set(tt.get(1));
sm.field(103).set(tt.get(2));
sm.field(104).set(tt.get(3));
sm.field(105).set(tt.get(4));
sm.field(106).set(tt.get(5));
}
sh.row(sel) = tt;
sh.force_update(sel);
if (app().look_del(month,1))
{
@ -419,6 +427,7 @@ bool Visliq_app::sel_mese_sh2 (TMask_field& f, KEY k)
app().vis_one(month);
TMask& sv = sh.sheet_mask();
app().set_vers_rows(sh);
if (app().look_del(month, sel == (sh.items() - 1) ? 7 : 1))
{
@ -684,9 +693,25 @@ bool Visliq_app::vis_one(int m)
l_mod = TRUE;
}
if (msk.field(F_RIMBORSO).dirty())
{
rimborso = n_rimborso;
l_mod = TRUE;
{
bool ok = TRUE;
if (!n_rimborso.is_zero())
{
// check diritto
if (!_lim->get_bool("B2"))
ok = yesno_box("Non risulta diritto al rimborso per il mese %d. Si desidera "
"confermare ugualmente?", m);
}
if (ok)
{
rimborso = n_rimborso;
l_mod = TRUE;
}
else
{
msk.field(F_RIMBORSO).set(rimborso.string());
msk.field(F_RIMBORSO).set_dirty(FALSE);
}
}
if (msk.field(F_DESCR1).dirty())
{
@ -1207,15 +1232,18 @@ void Visliq_app::write_general(TMask& m)
int step = _freqviva == "M" ? 1 : 3;
bool carry = TRUE;
bool was_lim;
TMask& shm = sh.sheet_mask();
TMask& svm = sv.sheet_mask();
for (int i = step; i < 13; i += step)
{
// this is a true bordel
int row = (i/step) - 1;
bool lfrommask = sh.selected() == row && (sh.sheet_mask().is_running() || _from_one);
bool lfrommask = sh.selected() == row && (shm.is_running() || _from_one);
bool vfrommask = sv.selected() == (i == 12 ? row + 1 : row) &&
sv.sheet_mask().is_running();
svm.is_running();
TToken_string& tt_lo = (TToken_string&)_liq_rows[row];
TToken_string& tt_ln = sh.row(row);
@ -1223,11 +1251,11 @@ void Visliq_app::write_general(TMask& m)
// risolve menata del dettaglio si'/no
if (lfrommask)
{
tt_ln.add(sh.sheet_mask().get(102),1);
tt_ln.add(sh.sheet_mask().get(103),2);
tt_ln.add(sh.sheet_mask().get(104),3);
tt_ln.add(sh.sheet_mask().get(105),4);
tt_ln.add(sh.sheet_mask().get(106),5);
tt_ln.add(shm.get(102),1);
tt_ln.add(shm.get(103),2);
tt_ln.add(shm.get(104),3);
tt_ln.add(shm.get(105),4);
tt_ln.add(shm.get(106),5);
}
// saltare una riga se dicembre (riga 11 == acconto)
@ -1236,11 +1264,11 @@ void Visliq_app::write_general(TMask& m)
if (vfrommask)
{
tt_vn.add(sv.sheet_mask().get(102),1);
tt_vn.add(sv.sheet_mask().get(103),2);
tt_vn.add(sv.sheet_mask().get(104),3);
tt_vn.add(sv.sheet_mask().get(105),4);
tt_vn.add(sv.sheet_mask().get(106),5);
tt_vn.add(svm.get(102),1);
tt_vn.add(svm.get(103),2);
tt_vn.add(svm.get(104),3);
tt_vn.add(svm.get(105),4);
tt_vn.add(svm.get(106),5);
}
// traduci contenuto righe in real pila
@ -1360,6 +1388,8 @@ void Visliq_app::write_general(TMask& m)
// scrivi
_lim->put("R5",nrett);
tt_lo.add(nrett.string(), 4);
tt_lo.add(nrett.sign() > 0 ? "D" : (nrett.is_zero() ? "" : "C"), 5);
// elimina descrixioni se nuove rett. sono 0
if (nrett.is_zero())
@ -1427,6 +1457,7 @@ void Visliq_app::write_general(TMask& m)
risl += nrimb;
// scrivi
_lim->put("R1", nrimb);
tt_lo.add(nrimb.string(), 3);
}
}
_lam->put("R2", newcred);
@ -1474,19 +1505,22 @@ if (was_lim)
tt_ln.add(abs(_lim->get_real("R5")).string(),4);
tt_ln.add(sr5 == 0 ? "" : (sr5 > 0 ? "D" : "C"),5);
sh.force_update(row);
// sh.force_update(row);
}
_from_one = FALSE;
} // for mese liq. (riga sheet)
// Rileggi array righe vecchie
_vers_rows = sv.rows_array();
_liq_rows = sh.rows_array();
sh.force_update();
if (shm.is_running())
sh.force_update(sh.selected());
// Rileggi array righe vecchie
set_vers_rows(sv);
set_liq_rows(sh);
// m.dirty() deve ritornare FALSE
m.field(F_CREDPREC).set_dirty(FALSE);
m.field(F_VISLIQ1).set_dirty(FALSE);
m.field(F_VISLIQ2).set_dirty(FALSE);
// m.dirty() deve ritornare FALSE
m.field(F_CREDPREC).set_dirty(FALSE);
m.field(F_VISLIQ1).set_dirty(FALSE);
m.field(F_VISLIQ2).set_dirty(FALSE);
}