Patch level : 1.7 at

Files correlati     : at0100a.msk at0.exe at0200a.msk at05aa.msk
Ricompilazione Demo : [ ]
Commento            : aggiunta possibilita' di inserire dati complementari della donazione da giornaliero donazioni, in base a un parametro di sezione


git-svn-id: svn://10.65.10.50/trunk@12455 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
cris 2004-11-03 11:16:54 +00:00
parent 15d63b2701
commit c529c4be80
6 changed files with 96 additions and 34 deletions

View File

@ -2298,6 +2298,7 @@ BEGIN
FIELD LF_DONAZ->CC
FLAGS "U"
END
STRING F_D_PA 7
BEGIN
PROMPT 10 12 "PA "

View File

@ -50,7 +50,8 @@ class TGiornalieroDC : public TApplication
int _intsi_f1, _intsi_f2, _intsi_m, _intaf_m, _etadonne;
int _numdon1, _numdon2;
TString16 _catini1, _catfin1, _catini2, _catfin2, _motivoid;
bool _sttess2, _dataisc, _nomessage, _autoid;
bool _sttess2, _dataisc, _nomessage, _autoid, _insdaticompl;
int _cc;
protected:
@ -137,6 +138,7 @@ bool TGiornalieroDC::create()
_intsi_f2 = config.get_int("IntSI_F2");
_intsi_m = config.get_int("IntSI_M");
_intaf_m = config.get_int("IntAF_M");
_insdaticompl = config.get_bool("InsDatiCompl");
_donaz->setkey(3);
_donaz->last();
_progins = _donaz->get_long(DON_PROGINS);
@ -172,9 +174,20 @@ bool TGiornalieroDC::menu(MENU_TAG m)
add_rows_soggetti(s);
_asoggetti->destroy();
_ricerca = FALSE;
if (!_insdaticompl)
{
msk.hide(-2);
TSheet_field& s = (TSheet_field&)msk.field(F_SOGGETTI);
s.enable_column(15, _insdaticompl);
s.enable_column(16, _insdaticompl);
s.enable_column(17, _insdaticompl);
s.enable_column(18, _insdaticompl);
s.enable_column(19, _insdaticompl);
}
tasto = msk.run();
_datadon = msk.get(F_DATADON);
_tipodon = msk.get(F_TIPODON);
_cc = msk.get_int(F_CC);
_luogodon = msk.get(F_LUOGODON);
switch (tasto)
{
@ -302,6 +315,11 @@ int TGiornalieroDC::read(TSheet_field& s)
row.add(soggetti.get(SOG_CATDON));
row.add(soggetti.get(SOG_INTSI));
}
row.add(donaz.get(DON_CC));
row.add(donaz.get(DON_PA));
row.add(donaz.get(DON_HB));
row.add(donaz.get(DON_SGPT));
row.add(donaz.get(DON_PROTIDEMIA));
items++;
}
}
@ -417,6 +435,15 @@ int TGiornalieroDC::write(TSheet_field& s)
rec->put(DON_CODSEZ,sog.get(SOG_CODSEZ));
rec->put(DON_CODSOT,sog.get(SOG_CODSOT));
rec->put(DON_PROGINS,_progins);
int cc = atoi(row.get(14));
if (cc == 0)
cc = _cc;
rec->put(DON_CC, cc);
rec->put(DON_PA, row.get(15));
rec->put(DON_HB, row.get(16));
rec->put(DON_SGPT, row.get(17));
rec->put(DON_PROTIDEMIA, row.get(18));
bool insert = FALSE;
bool exist = FALSE;
@ -477,8 +504,6 @@ int TGiornalieroDC::write(TSheet_field& s)
TString16 id4 = sog.get(SOG_IDON4); // idon. 4
int intsi = sog.get_int(SOG_INTSI); // intervallo per SI
int intaf = sog.get_int(SOG_INTAF); // intervallo per AF
//id_si = ((is_idon(id1,id2,id3,id4,IDON_SI) || (statosi == "ID")) && intsi != 0); // il soggetto è idoneo SI
//id_af = ((is_idon(id1,id2,id3,id4,IDON_AF) || (statoaf == "ID")) && intaf != 0); // il soggetto è idoneo AF
id_si = ((statosi == "ID") && (intsi != 0)); // il soggetto è idoneo SI
id_af = ((statoaf == "ID") && (intaf != 0)); // il soggetto è idoneo AF
@ -603,8 +628,6 @@ int TGiornalieroDC::write(TSheet_field& s)
modstato = modstato_tcs(stato);
if (modstato == 'I' || modstato == 'F') // il soggetto è idoneo
{
//id_si = (is_idon(id1,id2,id3,id4,IDON_SI) && intsi != 0); // il soggetto è idoneo SI
//id_af = (is_idon(id1,id2,id3,id4,IDON_AF) && intaf != 0); // il soggetto è idoneo AF
id_si = ((statosi == "ID") && (intsi != 0)); // il soggetto è idoneo SI
id_af = ((statoaf == "ID") && (intaf != 0)); // il soggetto è idoneo AF

View File

@ -11,8 +11,9 @@
#define F_TIPOCON 207
#define F_DESC_TIPOCON 208
#define F_OGGI 209
#define F_CC 210
// spreadsheet
#define F_SOGGETTI 210
#define F_SOGGETTI 211
// pagina soggetti
#define F_S_CODICE 101
@ -29,17 +30,20 @@
#define F_S_CODSOT 112
#define F_S_CATDON 113
#define F_S_INTSI 114
#define F_S_CC 115
#define F_S_PA 116
#define F_S_HB 117
#define F_S_SGPT 118
#define F_S_PROTIDEMIA 119
#define F_S_DENSEZ 151
#define F_S_DENSOT 152
#define F_S_DESC_TIPOCON 153
//#define F_S_DESC_CATDON 154
#define F_S_IDON1 155
#define F_S_IDON2 156
#define F_S_IDON3 157
#define F_S_IDON4 158
//#define F_S_INTSI 159
#define F_S_INTAF 160
#define F_S_PROSSTIPO 161
#define F_S_PROSSDATA 162

View File

@ -89,6 +89,12 @@ BEGIN
GROUP 1
END
NUMBER F_CC 3
BEGIN
PROMPT 60 2 "CC "
GROUP 2
END
STRING F_LUOGODON 4
BEGIN
PROMPT 2 3 "Punto prelievo "
@ -167,6 +173,11 @@ BEGIN
ITEM "Sot."
ITEM "Cat."
ITEM "Int.SI"
ITEM "CC@3"
ITEM "PA@7"
ITEM "Hb@4"
ITEM "SGPT"
ITEM "Prot."
END
ENDPAGE
@ -207,7 +218,6 @@ BEGIN
OUTPUT F_S_CATDON CATDON
OUTPUT F_S_TESSAVIS TESSAVIS
OUTPUT F_S_INTSI INTSI
// CHECKTYPE NORMAL
ADD RUN at0 -0
END
@ -239,7 +249,6 @@ BEGIN
OUTPUT F_S_TESSAVIS TESSAVIS
OUTPUT F_S_INTSI INTSI
HELP "Cognome del soggetto"
// CHECKTYPE NORMAL
ADD RUN at0 -0
END
@ -248,7 +257,6 @@ BEGIN
PROMPT 46 2 ""
COPY ALL F_S_COGNOME
HELP "Nome del soggetto"
// CHECKTYPE NORMAL
ADD RUN at0 -0
END
@ -278,7 +286,6 @@ BEGIN
OUTPUT F_S_TESSAVIS TESSAVIS
OUTPUT F_S_INTSI INTSI
HELP "Cognome del soggetto"
// CHECKTYPE NORMAL
ADD RUN at0 -0
END
@ -291,7 +298,6 @@ BEGIN
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@30" S0
OUTPUT F_S_TIPODON CODTAB
//OUTPUT F_S_DESC_TIPODON S0
CHECKTYPE NORMAL
WARNING "Codice non presente"
HELP "Tipo donazione (se diverso da dati fissi)"
@ -316,19 +322,19 @@ BEGIN
HELP "Tipo/Esito controllo sanitario"
END
GROUPBOX DLG_NULL 77 3
GROUPBOX DLG_NULL 77 4
BEGIN
PROMPT 1 15 "Dati complementari della donazione"
PROMPT 1 15 "Dati della donazione"
END
NUMBER F_S_ETICHETTA 9
BEGIN
PROMPT 30 16 "Etichetta sacca "
PROMPT 27 16 "Etichetta sacca "
END
BOOLEAN F_S_PRIMADON
BEGIN
PROMPT 60 16 "Prima donazione"
PROMPT 55 16 "Prima donazione"
END
DATE F_S_DATADON
@ -376,10 +382,6 @@ STRING F_S_CATDON 2
BEGIN
PROMPT 60 3 "Categoria "
FLAGS "D"
// USE CTD
// INPUT CODTAB F_S_CATDON
// OUTPUT F_S_DESC_CATDON S0
// CHECKTYPE NORMAL
END
NUMBER F_S_INTSI 3 0
@ -387,19 +389,47 @@ BEGIN
PROMPT 40 12 "Sangue intero "
FLAGS "D"
END
NUMBER F_S_CC 3
BEGIN
PROMPT 2 17 "CC "
FLAGS "U"
GROUP 2
END
STRING F_S_PA 7
BEGIN
PROMPT 12 17 "PA "
GROUP 2
END
NUMBER F_S_HB 4 1
BEGIN
PROMPT 27 17 "Hb "
FLAGS "U"
GROUP 2
END
NUMBER F_S_SGPT 3
BEGIN
PROMPT 40 17 "SGPT "
FLAGS "U"
GROUP 2
END
NUMBER F_S_PROTIDEMIA 3 1
BEGIN
PROMPT 55 17 "Protidemia "
FLAGS "U"
GROUP 2
END
STRING F_S_DESC_TIPOCON 25
BEGIN
PROMPT 23 7 ""
FLAGS "D"
END
//STRING F_S_DESC_CATDON 25 15
//BEGIN
// PROMPT 61 3 ""
// FLAGS "D"
//END
TEXT DLG_NULL
BEGIN
PROMPT 2 8 "Se idoneita': tipi donazione ammessi"
@ -470,12 +500,6 @@ BEGIN
PROMPT 2 12 " intervalli"
END
//NUMBER F_S_INTSI 3 0
//BEGIN
// PROMPT 29 12 "Sangue intero "
// FLAGS "U"
//END
NUMBER F_S_INTAF 3 0
BEGIN
PROMPT 59 12 "Aferesi "

View File

@ -19,12 +19,15 @@
#define AT_STAMPA80 109 // stampa 80 colonne (dove prevista)
//intervalli di donazione per idoneita' automatiche
#define AT_ETADONNE 110 // limite di et per intervalli primo caso (eta' fertile)
#define AT_ETADONNE 110 // limite di eta' per intervalli primo caso (eta' fertile)
#define AT_INTSI_F1 111 // intervallo SI per femmine prima fascia
#define AT_INTSI_F2 112 // intervallo SI per femmine seconda fascia
#define AT_INTSI_M 113 // intervallo SI per maschi
#define AT_INTAF_M 114 // intervallo AF per tutti
// inserimento veloce donazioni
#define AT_INSDATICOMPL 190 // inserimento mdati complementari donazione in ins. veloce (cc, pa, hp, sgpt, protidemia)
// definizione etichette soggetti
#define AT_ETFORM 115
#define AT_ETLARG 116

View File

@ -192,6 +192,13 @@ BEGIN
FIELD CtrlPass
END
BOOLEAN AT_INSDATICOMPL
BEGIN
PROMPT 2 20 "Abilita dati complementari della donazione in ins. veloce"
HELP "Permette l'inserimento dei dati complementari della donazione nel programma di ins. veloce"
FIELD InsDatiCompl
END
STRING AT_D_CATINI1 40
BEGIN
PROMPT 30 2 ""