Patch level : 1.7 at

Files correlati     : at0.exe at0500a.msk
Ricompilazione Demo : [ ]
Commento            : sistemato funzionamento data di dimissione e aggiunto parametri per stampa cartoline, tessere ed etichette; modificato programma per cambio intervalli di donazione


git-svn-id: svn://10.65.10.50/trunk@11641 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
cris 2003-12-03 09:29:45 +00:00
parent d0be14a29f
commit fcd3061aa7
4 changed files with 125 additions and 28 deletions

View File

@ -2013,6 +2013,11 @@ void TGestioneSoggetti::c_reord(TSheet_field& s, TSheet_field& si)
{
mask.set(F_CATDON,catcoll);
mask.field(F_CATDON).on_key(K_TAB);
const bool dimissione = cache().get("CTD", catcoll).get_bool("B0");
const TDate datadim = mask.get_date(F_DATADIM);
const TDate datastato = mask.get_date(F_DATASTATO);
if (dimissione && datadim.empty())
mask.set(F_DATADIM, datastato);
}
// verifico la concordanza di stato soggetto e stato idoneita
TString16 statosi = mask.get(F_STATOSI);
@ -2059,6 +2064,11 @@ void TGestioneSoggetti::c_reord(TSheet_field& s, TSheet_field& si)
{
mask.set(F_CATDON,catcoll);
mask.field(F_CATDON).on_key(K_TAB);
const bool dimissione = cache().get("CTD", catcoll).get_bool("B0");
const TDate datadim = mask.get_date(F_DATADIM);
const TDate datastato = mask.get_date(F_DATASTATO);
if (dimissione && datadim.empty())
mask.set(F_DATADIM, datastato);
}
}
}

View File

@ -29,22 +29,27 @@
#define AT_ETFORM 115
#define AT_ETLARG 116
#define AT_ETCOL 117
#define AT_ETRIGHE 118
#define AT_ETBORDOINI 119
#define AT_ETBORDOFIN 120
// disabilita messaggi in giornaliero donazioni
#define AT_NOMESSAGE 118
#define AT_NOMESSAGE 121
// definizione schede
#define AT_SCHFORM 119
#define AT_SCHXPAG 120
#define AT_SCHFORM 122
#define AT_SCHXPAG 123
// definizione elenco personalizzato
#define AT_ELENCO 121
#define AT_ELENCO 124
// definizione etichette sezioni
#define AT_ETSFORM 122
#define AT_ETSLARG 123
#define AT_ETSCOL 124
#define AT_ETSFORM 125
#define AT_ETSLARG 126
#define AT_ETSCOL 127
#define AT_ETSRIGHE 128
#define AT_ETSBORDOINI 129
#define AT_ETSBORDOFIN 130
// descrizioni
#define AT_D_CATINI1 151
#define AT_D_CATFIN1 152
@ -78,16 +83,16 @@
#define AT_CAFORM 168
#define AT_CAPARAM 169
#define AT_D_CAFORM 170
// definizione cartoline altre stampe (dove previste)
#define AT_ACAFORM 171
#define AT_ACAPARAM 172
#define AT_D_ACAFORM 173
#define AT_CAPERPAG 171
#define AT_CABORDOINI 172
#define AT_CABORDOFIN 173
// definizione tessere
#define AT_TEFORM 174
#define AT_D_TEFORM 175
#define AT_TECOL 176
#define AT_TELARG 177
// nome file di stampa per convocazione via SMS
#define AT_FILESMS 176
#define AT_FILESMS 180

View File

@ -252,10 +252,29 @@ END
NUMBER AT_ETCOL 1
BEGIN
PROMPT 20 2 "Colonne "
PROMPT 17 2 "Colonne "
FIELD EtColonne
END
NUMBER AT_ETRIGHE 2
BEGIN
PROMPT 28 2 "Righe "
FIELD EtRighe
END
NUMBER AT_ETBORDOINI 1
BEGIN
PROMPT 38 2 "Bordo iniz. "
FIELD EtBordoIni
END
NUMBER AT_ETBORDOFIN 1
BEGIN
PROMPT 53 2 "Bordo fin. "
FIELD EtBordoFin
END
GROUPBOX DLG_NULL 77 4
BEGIN
PROMPT 1 4 "Etichette per notiziario"
@ -297,6 +316,7 @@ BEGIN
PROMPT 1 8 "Etichette sezioni"
END
STRING AT_ETSFORM 8
BEGIN
PROMPT 2 9 "Formato "
@ -324,10 +344,28 @@ END
NUMBER AT_ETSCOL 1
BEGIN
PROMPT 20 10 "Colonne "
PROMPT 17 10 "Colonne "
FIELD EtSColonne
END
NUMBER AT_ETSRIGHE 2
BEGIN
PROMPT 28 10 "Righe "
FIELD EtSRighe
END
NUMBER AT_ETSBORDOINI 1
BEGIN
PROMPT 38 10 "Bordo iniz. "
FIELD EtSBordoIni
END
NUMBER AT_ETSBORDOFIN 1
BEGIN
PROMPT 53 10 "Bordo fin. "
FIELD EtSBordoFin
END
BOOLEAN AT_ETICTOT
BEGIN
PROMPT 2 13 "Stampa totale etichette stampate"
@ -393,7 +431,7 @@ BEGIN
FLAGS "D"
END
GROUPBOX DLG_NULL 77 4
GROUPBOX DLG_NULL 77 5
BEGIN
PROMPT 1 7 "Cartoline per donazione"
END
@ -411,9 +449,30 @@ BEGIN
CHECKTYPE SEARCH
END
NUMERO AT_CAPERPAG 1
BEGIN
PROMPT 2 9 "Num. car. per pag. "
HELP "Numero cartoline per pagina per le stampe su foglio A4"
FIELD CaPerPag
END
NUMERO AT_CABORDOINI 1
BEGIN
PROMPT 25 9 "Righe bordo superiore "
HELP "Righe non stampabili a inizio modulo"
FIELD CaBordoIni
END
NUMERO AT_CABORDOFIN 1
BEGIN
PROMPT 50 9 "Righe bordo inferiore "
HELP "Righe non stampabili a fine modulo"
FIELD CaBordoFin
END
BOOLEAN AT_CAPARAM
BEGIN
PROMPT 2 9 "Richiesta parametri per stampa cartolina "
PROMPT 2 10 "Richiesta parametri per stampa cartolina "
HELP "Chiede all'utente i dati da stampare sulla cartolina di convocazione"
FIELD CaParametri
END
@ -424,14 +483,14 @@ BEGIN
FLAGS "D"
END
GROUPBOX DLG_NULL 77 3
GROUPBOX DLG_NULL 77 4
BEGIN
PROMPT 1 11 "Tessere"
PROMPT 1 12 "Tessere"
END
STRING AT_TEFORM 8
BEGIN
PROMPT 2 12 "Formato "
PROMPT 2 13 "Formato "
FIELD TeFormato
USE LF_FORM
INPUT TIPOPROF AT_TEFORM
@ -444,20 +503,32 @@ END
STRING AT_D_TEFORM 50
BEGIN
PROMPT 23 12 ""
PROMPT 23 13 ""
FLAGS "D"
END
NUMBER AT_TELARG 3
BEGIN
PROMPT 2 14 "Larghezza "
FIELD TeLarghezza
END
NUMBER AT_TECOL 1
BEGIN
PROMPT 17 14 "Colonne "
FIELD TeColonne
END
BOOLEAN AT_STAMPA80
BEGIN
PROMPT 2 15 "Stampa elenchi a 80 colonne dove previsto"
PROMPT 2 16 "Stampa elenchi a 80 colonne dove previsto"
HELP "Stampa gli elenchi con il formato 80 colonne dove previsto"
FIELD Stampa80
END
STRING AT_FILESMS 50
BEGIN
PROMPT 2 17 "File per invio SMS "
PROMPT 2 18 "File per invio SMS "
HELP "Indicare percorso completo e nome file da utilizzare per la stampa convocazioni via SMS"
FIELD FileSMS
END

View File

@ -42,9 +42,14 @@ bool TIntSI::preprocess_page(int file, int counter)
bool rewrite = FALSE;
TRectype& recsog = current_cursor()->curr();
const int intsi = recsog.get_int(SOG_INTSI);
if (intsi == 110 || intsi == 120)
if (intsi == 110 || intsi == 120 || intsi == 180 || intsi == 320 || intsi == 360)
{
recsog.put(SOG_INTSI, 100);
if (intsi == 110 || intsi == 120)
recsog.put(SOG_INTSI, 100);
if (intsi == 180)
recsog.put(SOG_INTSI, 160);
if (intsi == 320 || intsi == 360)
recsog.put(SOG_INTSI, 330);
const long codice = recsog.get_long(SOG_CODICE);
TRectype* keyc = new TRectype(LF_CONTSAN);
keyc->put(CON_CODICE, codice);
@ -60,6 +65,12 @@ bool TIntSI::preprocess_page(int file, int counter)
int intsi = riga.get_int(CON_INTSI);
if (intsi == 110 || intsi == 120)
riga.put(CON_INTSI, 100);
if (intsi == 180)
riga.put(CON_INTSI, 160);
if (intsi == 320)
riga.put(CON_INTSI, 330);
if (intsi == 360)
riga.put(CON_INTSI, 330);
}
/*
for (int r=1; r<=_sidoneita->rows(); r++)
@ -106,11 +117,11 @@ bool TIntSI::set_print(int)
TRectype a(LF_SOGGETTI);
da.zero();
a.zero();
TString16 codsez = "19";
TString16 codsez = "10";
da.put(SOG_CODSEZ, codsez);
a.put(SOG_CODSEZ, codsez);
current_cursor()->setregion(da,a);
current_cursor()->setfilter(format("SESSO == '1'"));
//current_cursor()->setfilter(format("SESSO == '1'"));
reset_files();
add_file(LF_SOGGETTI);
reset_print();