Corretti messaggi per donatori non idonei,
tolta la possiblita' di fare una ricerca senza aver inserito la data donazione git-svn-id: svn://10.65.10.50/trunk@6137 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
f09acd10d1
commit
6bc8a90848
@ -16,6 +16,7 @@
|
||||
|
||||
// nomi campi maschera
|
||||
#include "at0200a.h"
|
||||
#include "atlib.h"
|
||||
|
||||
// nomi dei campi
|
||||
#include "soggetti.h"
|
||||
@ -24,8 +25,6 @@
|
||||
#include "idoneita.h"
|
||||
#include "rconvoc.h"
|
||||
|
||||
#include "atlib.h"
|
||||
|
||||
#define ALIAS_CTD 700
|
||||
|
||||
class TGiornalieroDC : public TApplication
|
||||
@ -158,7 +157,6 @@ bool TGiornalieroDC::menu(MENU_TAG m)
|
||||
if (s.items() == 0)
|
||||
add_rows_soggetti(s);
|
||||
_asoggetti->destroy();
|
||||
//msk.set(F_DATADON,oggi);
|
||||
_ricerca = FALSE;
|
||||
tasto = msk.run();
|
||||
_datadon = msk.get(F_DATADON);
|
||||
@ -172,8 +170,13 @@ bool TGiornalieroDC::menu(MENU_TAG m)
|
||||
if (yesno_box("Registrare le modifiche?"))
|
||||
TGiornalieroDC::write(s);
|
||||
_modified = FALSE;
|
||||
_ricerca = TRUE;
|
||||
TGiornalieroDC::read(s);
|
||||
if (_datadon.ok())
|
||||
{
|
||||
_ricerca = TRUE;
|
||||
TGiornalieroDC::read(s);
|
||||
}
|
||||
else
|
||||
message_box("Inserire almeno la data donazione per effettuare la ricerca");
|
||||
}
|
||||
break;
|
||||
|
||||
@ -667,6 +670,8 @@ bool TGiornalieroDC::soggetti_notify(TSheet_field& s, int r, KEY k)
|
||||
if (codsog == row.get_long(0))
|
||||
return s.sheet_mask().field(F_S_CODICE).error_box("Soggetto gia' inserito");
|
||||
else
|
||||
{
|
||||
// controllo sull'etichetta
|
||||
if (etichetta != 0)
|
||||
{
|
||||
if (etichetta == row.get_long(5))
|
||||
@ -686,6 +691,7 @@ bool TGiornalieroDC::soggetti_notify(TSheet_field& s, int r, KEY k)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -718,7 +724,8 @@ bool TGiornalieroDC::codice_handler(TMask_field& f, KEY k)
|
||||
{
|
||||
bool ok = TRUE;
|
||||
if (f.to_check(k))
|
||||
{
|
||||
{
|
||||
TString256 messaggio = "";
|
||||
TMask& m = f.mask();
|
||||
long codsog = m.get_long(F_S_CODICE);
|
||||
if (codsog != 0)
|
||||
@ -737,13 +744,50 @@ bool TGiornalieroDC::codice_handler(TMask_field& f, KEY k)
|
||||
m.set(F_S_CODSEZ, sog.get(SOG_CODSEZ));
|
||||
m.set(F_S_CODSOT, sog.get(SOG_CODSOT));
|
||||
m.set(F_S_CATDON, sog.get(SOG_CATDON));
|
||||
const int totdon = sog.get_int(SOG_TOTDON);
|
||||
if (totdon == 0)
|
||||
m.set(F_S_PRIMADON, 'X');
|
||||
if (!(app()._ricerca))
|
||||
{
|
||||
const int totdon = sog.get_int(SOG_TOTDON);
|
||||
if (totdon == 0)
|
||||
m.set(F_S_PRIMADON, 'X');
|
||||
TTable ctd("CTD");
|
||||
ctd.zero();
|
||||
ctd.put("CODTAB", sog.get(SOG_CATDON));
|
||||
if (ctd.read() == NOERR)
|
||||
{
|
||||
bool dimissione = ctd.get_bool("B0");
|
||||
if (dimissione)
|
||||
{
|
||||
TString16 catcoll = ctd.get("S6");
|
||||
if (catcoll.empty())
|
||||
messaggio << "Soggetto dimesso senza categoria collegata\n";
|
||||
else
|
||||
messaggio << "Soggetto dimesso, cambio categoria automatico\n";
|
||||
}
|
||||
}
|
||||
TString16 stato = sog.get(SOG_STATO);
|
||||
char modstato = modstato_tcs(stato);
|
||||
if (modstato == 'I' || modstato == 'F') // il soggetto è idoneo
|
||||
{
|
||||
TDate datapros;
|
||||
if (is_donaz(app()._tipodon,IDON_SI))
|
||||
datapros = sog.get_date(SOG_DATAPROSSI);
|
||||
else
|
||||
datapros = sog.get_date(SOG_DATAPROSAF);
|
||||
if (datapros.empty())
|
||||
messaggio << "Soggetto non idoneo al tipo donazione\n";
|
||||
else
|
||||
if (datapros > app()._datadon)
|
||||
messaggio << "Il soggetto ha donato prima della scadenza\n";
|
||||
}
|
||||
else
|
||||
messaggio << "Stato soggetto non compatibile con la donazione\n";
|
||||
}
|
||||
}
|
||||
else
|
||||
ok = FALSE; // codice non esistente
|
||||
}
|
||||
if (messaggio.not_empty() && !app()._ricerca)
|
||||
f.message_box(messaggio);
|
||||
}
|
||||
return ok;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user