Patch level :
Files correlati : Ricompilazione Demo : [ ] Commento : Visualizza messaggio anche se inserisco una donaziione con data <= ultima donazione del soggetto git-svn-id: svn://10.65.10.50/trunk@7965 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
a6b2a85c00
commit
5a42e7550c
@ -343,7 +343,6 @@ int TGiornalieroDC::write(TSheet_field& s)
|
|||||||
{
|
{
|
||||||
TRectype* recc = new TRectype(LF_CONTSAN);
|
TRectype* recc = new TRectype(LF_CONTSAN);
|
||||||
recc->put(CON_CODICE, row.get(0));
|
recc->put(CON_CODICE, row.get(0));
|
||||||
//recc->put(CON_DATACON, _datadon);
|
|
||||||
recc->put(CON_DATACON, datadonazione);
|
recc->put(CON_DATACON, datadonazione);
|
||||||
recc->put(CON_TIPOCON, tipocon);
|
recc->put(CON_TIPOCON, tipocon);
|
||||||
if (modstato_tcs(tipocon) == 'I')
|
if (modstato_tcs(tipocon) == 'I')
|
||||||
@ -459,15 +458,8 @@ int TGiornalieroDC::write(TSheet_field& s)
|
|||||||
}
|
}
|
||||||
if (!exist)
|
if (!exist)
|
||||||
{
|
{
|
||||||
//if (insert)
|
err = _sdonazioni->write(TRUE);
|
||||||
//{
|
|
||||||
//err = _sdonazioni->row(_sdonazioni->rows()).write(*_donaz);
|
|
||||||
//}
|
|
||||||
//else
|
|
||||||
err = _sdonazioni->write(TRUE);
|
|
||||||
|
|
||||||
// controllo se è idoneo
|
// controllo se è idoneo
|
||||||
|
|
||||||
bool ctrlsi = FALSE; //devo controllare se è idoneo SI
|
bool ctrlsi = FALSE; //devo controllare se è idoneo SI
|
||||||
bool ctrlaf = FALSE; //devo controllare se è idoneo AF
|
bool ctrlaf = FALSE; //devo controllare se è idoneo AF
|
||||||
bool id_si = FALSE; // il soggetto è idoneo per si?
|
bool id_si = FALSE; // il soggetto è idoneo per si?
|
||||||
@ -687,12 +679,9 @@ int TGiornalieroDC::write(TSheet_field& s)
|
|||||||
const int zeroconv = 0;
|
const int zeroconv = 0;
|
||||||
sog.put(SOG_NUMCONV, zeroconv);
|
sog.put(SOG_NUMCONV, zeroconv);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// controllo la sua categoria
|
// controllo la sua categoria
|
||||||
// se dimesso diventa della categoria collegata
|
// se dimesso diventa della categoria collegata
|
||||||
// se non c'e' la categoria collegata ???
|
// se non c'e' la categoria collegata ???
|
||||||
|
|
||||||
TTable ctd("CTD");
|
TTable ctd("CTD");
|
||||||
TString16 catdon = sog.get(SOG_CATDON);
|
TString16 catdon = sog.get(SOG_CATDON);
|
||||||
ctd.put("CODTAB",catdon);
|
ctd.put("CODTAB",catdon);
|
||||||
@ -722,7 +711,6 @@ int TGiornalieroDC::write(TSheet_field& s)
|
|||||||
sog.put(SOG_DATAISC,riga.get(DON_DATADON));
|
sog.put(SOG_DATAISC,riga.get(DON_DATADON));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// aggiorno data e utente ultimo aggiornamento
|
// aggiorno data e utente ultimo aggiornamento
|
||||||
const TDate oggi(TODAY);
|
const TDate oggi(TODAY);
|
||||||
sog.put(SOG_DATAULTAGG,oggi);
|
sog.put(SOG_DATAULTAGG,oggi);
|
||||||
@ -738,9 +726,7 @@ int TGiornalieroDC::write(TSheet_field& s)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
delete pi;
|
delete pi;
|
||||||
|
|
||||||
return NOERR;
|
return NOERR;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -761,12 +747,11 @@ bool TGiornalieroDC::soggetti_notify(TSheet_field& s, int r, KEY k)
|
|||||||
case K_INS:
|
case K_INS:
|
||||||
// richiesta inserimento riga
|
// richiesta inserimento riga
|
||||||
if (app()._ricerca)
|
if (app()._ricerca)
|
||||||
{
|
|
||||||
ok = s.error_box("Fase di ricerca: impossibile inserire donazioni");
|
ok = s.error_box("Fase di ricerca: impossibile inserire donazioni");
|
||||||
//ok = FALSE;
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case K_DEL:
|
case K_DEL:
|
||||||
|
// richiesta cancellazione riga
|
||||||
|
break;
|
||||||
case K_CTRL+K_DEL:
|
case K_CTRL+K_DEL:
|
||||||
// avvenuta cancellazione riga
|
// avvenuta cancellazione riga
|
||||||
break;
|
break;
|
||||||
@ -803,6 +788,7 @@ bool TGiornalieroDC::soggetti_notify(TSheet_field& s, int r, KEY k)
|
|||||||
const long codsog = row.get_long(0);
|
const long codsog = row.get_long(0);
|
||||||
const long etichetta = row.get_long(6);
|
const long etichetta = row.get_long(6);
|
||||||
if (codsog != 0)
|
if (codsog != 0)
|
||||||
|
{
|
||||||
for (int i=s.items()-1; i>=0; i--)
|
for (int i=s.items()-1; i>=0; i--)
|
||||||
{
|
{
|
||||||
if (i != r)
|
if (i != r)
|
||||||
@ -836,12 +822,12 @@ bool TGiornalieroDC::soggetti_notify(TSheet_field& s, int r, KEY k)
|
|||||||
if ((etichetta==etic) && (anno==datadon.year())) return s.sheet_mask().field(F_S_ETICHETTA).error_box("Etichetta sacca gia' inserita");
|
if ((etichetta==etic) && (anno==datadon.year())) return s.sheet_mask().field(F_S_ETICHETTA).error_box("Etichetta sacca gia' inserita");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
const char* cognome = row.get(1);
|
const char* cognome = row.get(1);
|
||||||
if ((cognome != NULL) && (cognome != "\0"))
|
if ((cognome != NULL) && (cognome != "\0"))
|
||||||
s.sheet_mask().field(F_S_NOME).set_focusdirty();
|
s.sheet_mask().field(F_S_NOME).set_focusdirty();
|
||||||
//s.set_focus_cell(r,2);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -886,67 +872,9 @@ bool TGiornalieroDC::codice_handler(TMask_field& f, KEY k)
|
|||||||
m.set(F_S_CODSEZ, sog.get(SOG_CODSEZ));
|
m.set(F_S_CODSEZ, sog.get(SOG_CODSEZ));
|
||||||
m.set(F_S_CODSOT, sog.get(SOG_CODSOT));
|
m.set(F_S_CODSOT, sog.get(SOG_CODSOT));
|
||||||
m.set(F_S_CATDON, sog.get(SOG_CATDON));
|
m.set(F_S_CATDON, sog.get(SOG_CATDON));
|
||||||
/*
|
|
||||||
if (!(app()._ricerca))
|
|
||||||
{
|
|
||||||
const int totdon = sog.get_int(SOG_TOTDON);
|
|
||||||
if (totdon == 0)
|
|
||||||
m.set(F_S_PRIMADON, 'X');
|
|
||||||
if (!app()._nomessage)
|
|
||||||
{
|
|
||||||
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(NULLDATE);
|
|
||||||
TString16 tipodon = app().get_mask().get(F_TIPODON);
|
|
||||||
TDate datadon = app().get_mask().get_date(F_DATADON);
|
|
||||||
if (is_donaz(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 > datadon)
|
|
||||||
messaggio << "Il soggetto ha donato prima della scadenza del " << datapros.string() << "\n";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
messaggio << "Stato soggetto " << stato << " non compatibile con la donazione\n";
|
|
||||||
TTable tcs("TCS");
|
|
||||||
tcs.put("CODTAB",stato);
|
|
||||||
if (tcs.read() == NOERR)
|
|
||||||
{
|
|
||||||
if (tcs.get("S7").empty())
|
|
||||||
messaggio << "Verificare la situazione del soggetto";
|
|
||||||
else
|
|
||||||
messaggio << "Cambio stato automatico";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
ok = FALSE; // codice non esistente
|
ok = FALSE; // codice non esistente
|
||||||
//if (messaggio.not_empty() && !app()._ricerca && !app()._nomessage)
|
|
||||||
// warning_box(messaggio);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return ok;
|
return ok;
|
||||||
@ -969,15 +897,6 @@ bool TGiornalieroDC::tipodon_handler(TMask_field& f, KEY k)
|
|||||||
int err = sog.read();
|
int err = sog.read();
|
||||||
if (err == NOERR)
|
if (err == NOERR)
|
||||||
{
|
{
|
||||||
/*
|
|
||||||
m.set(F_S_COGNOME, sog.get(SOG_COGNOME));
|
|
||||||
m.set(F_S_NOME, sog.get(SOG_NOME));
|
|
||||||
m.set(F_S_DATANASC, sog.get(SOG_DATANASC));
|
|
||||||
m.set(F_S_TESSAVIS, sog.get(SOG_TESSAVIS));
|
|
||||||
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));
|
|
||||||
*/
|
|
||||||
if (!(app()._ricerca))
|
if (!(app()._ricerca))
|
||||||
{
|
{
|
||||||
const int totdon = sog.get_int(SOG_TOTDON);
|
const int totdon = sog.get_int(SOG_TOTDON);
|
||||||
@ -1038,13 +957,17 @@ bool TGiornalieroDC::tipodon_handler(TMask_field& f, KEY k)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
if (datadon == dataultdon)
|
||||||
|
messaggio << "Donazione gia' inserita per il soggetto";
|
||||||
|
else
|
||||||
|
messaggio << "Attenzione: donazione precedente all'ultima donazione del soggetto";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
ok = FALSE; // codice non esistente
|
ok = FALSE; // codice non esistente
|
||||||
if (messaggio.not_empty() && !app()._ricerca && !app()._nomessage)
|
if (messaggio.not_empty() && !app()._ricerca && !app()._nomessage)
|
||||||
//f.message_box(messaggio);
|
|
||||||
warning_box(messaggio);
|
warning_box(messaggio);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user