Patch level : at 1.7 702

Files correlati     : at8.exe
Ricompilazione Demo : [ ]
Commento            : varie sull'aggiornamento da appoggio


git-svn-id: svn://10.65.10.50/trunk@12145 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
cris 2004-06-03 11:02:18 +00:00
parent c7769f18f1
commit 185562c39b

View File

@ -119,6 +119,8 @@ static int compare_date(const TObject** o1, const TObject** o2)
bool TReconstruction::menu(MENU_TAG m)
{
bool _calcolacat = FALSE;
KEY tasto = _msk->run();
if (tasto == K_ENTER)
{
@ -140,53 +142,66 @@ bool TReconstruction::menu(MENU_TAG m)
const long codsog = f.get_long("CODICE");
recsog.zero();
recsog.put(SOG_CODICE, codsog);
if (recsog.read(_rel->lfile())==NOERR)
if (recsog.read(_rel->lfile()) == NOERR)
{
TRectype* keyd = new TRectype(LF_DONAZ);
keyd->put(DON_CODICE, codsog);
int err = _sdonazioni->read(keyd);
if (_sdonazioni->rows()>0)
{
calcola_donazioni_lib(recsog, _sdonazioni);
_sdonazioni->rewrite();
recsog.rewrite(_rel->lfile());
}
//if (err == NOERR)
//{
if (_sdonazioni->rows()>0)
{
calcola_donazioni_lib(recsog, _sdonazioni);
_sdonazioni->rewrite();
recsog.rewrite(_rel->lfile());
}
//}
//else
// return error_box("Errore in donazioni, codice %ld", codsog);
TRectype* key = new TRectype(LF_IDONEITA);
key->put(IDO_CODICE, recsog.get(SOG_CODICE));
_sidoneita->read(key);
_sidoneita->sort(compare_date);
_sidoneita->rewrite();
TRectype* keyc = new TRectype(LF_CONTSAN);
keyc->put(CON_CODICE, recsog.get(SOG_CODICE));
_scontrolli->read(keyc);
if (_scontrolli->rows()>0 || _sidoneita->rows()>0)
{
con_reord(recsog,_scontrolli,_sidoneita);
recsog.rewrite(_rel->lfile());
}
TTable ctd("CTD");
TString16 catdon = recsog.get(SOG_CATDON);
const int totdon = recsog.get_int(SOG_TOTDON);
ctd.put("CODTAB",catdon);
if (ctd.read() == NOERR)
{
bool dimissione = ctd.get_bool("B0");
if (dimissione)
err = _sidoneita->read(key);
//if (err == NOERR)
//{
_sidoneita->sort(compare_date);
_sidoneita->rewrite();
TRectype* keyc = new TRectype(LF_CONTSAN);
keyc->put(CON_CODICE, recsog.get(SOG_CODICE));
_scontrolli->read(keyc);
if (_scontrolli->rows()>0 || _sidoneita->rows()>0)
{
recsog.put(SOG_CATDON,ctd.get("S6"));
if (ctd.get("S6").not_empty())
catdon = ctd.get("S6");
con_reord(recsog,_scontrolli,_sidoneita);
recsog.rewrite(_rel->lfile());
}
if ((catdon == _catini1 || _catini1.empty()) && (totdon>=_numdon1) && _catfin1.not_empty())
//}
//else
// return error_box("Errore in idoneita, codice %ld", codsog);
if (_calcolacat)
{
TTable ctd("CTD");
TString16 catdon = recsog.get(SOG_CATDON);
const int totdon = recsog.get_int(SOG_TOTDON);
ctd.put("CODTAB",catdon);
if (ctd.read() == NOERR)
{
recsog.put(SOG_CATDON, _catfin1);
catdon = _catfin1;
}
const bool tstampata = recsog.get_bool(SOG_T_STAMPATA);
if ((catdon == _catini2 || _catini2.empty()) && (totdon>=_numdon2) && _catfin2.not_empty() && (!_sttess2 || tstampata))
{
recsog.put(SOG_CATDON, _catfin2);
catdon = _catfin2;
bool dimissione = ctd.get_bool("B0");
if (dimissione)
{
recsog.put(SOG_CATDON,ctd.get("S6"));
if (ctd.get("S6").not_empty())
catdon = ctd.get("S6");
}
if ((catdon == _catini1 || _catini1.empty()) && (totdon>=_numdon1) && _catfin1.not_empty())
{
recsog.put(SOG_CATDON, _catfin1);
catdon = _catfin1;
}
const bool tstampata = recsog.get_bool(SOG_T_STAMPATA);
if ((catdon == _catini2 || _catini2.empty()) && (totdon>=_numdon2) && _catfin2.not_empty() && (!_sttess2 || tstampata))
{
recsog.put(SOG_CATDON, _catfin2);
catdon = _catfin2;
}
}
}
TDate dataiscsog = recsog.get_date(SOG_DATAISC);