From c529c4be80c7b3411ed65a0592f63595323ddd11 Mon Sep 17 00:00:00 2001 From: cris Date: Wed, 3 Nov 2004 11:16:54 +0000 Subject: [PATCH] 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 --- at/at0100a.uml | 1 + at/at0200.cpp | 33 ++++++++++++++++++---- at/at0200a.h | 10 +++++-- at/at0200a.uml | 74 +++++++++++++++++++++++++++++++++----------------- at/at0500a.h | 5 +++- at/at0500a.uml | 7 +++++ 6 files changed, 96 insertions(+), 34 deletions(-) diff --git a/at/at0100a.uml b/at/at0100a.uml index a3da64478..2c9d263a9 100755 --- a/at/at0100a.uml +++ b/at/at0100a.uml @@ -2298,6 +2298,7 @@ BEGIN FIELD LF_DONAZ->CC FLAGS "U" END + STRING F_D_PA 7 BEGIN PROMPT 10 12 "PA " diff --git a/at/at0200.cpp b/at/at0200.cpp index 3d1ca1b2b..568140f30 100755 --- a/at/at0200.cpp +++ b/at/at0200.cpp @@ -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 diff --git a/at/at0200a.h b/at/at0200a.h index 8d84ed91f..73c7f118a 100755 --- a/at/at0200a.h +++ b/at/at0200a.h @@ -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 diff --git a/at/at0200a.uml b/at/at0200a.uml index a4411871a..08c37e1ae 100755 --- a/at/at0200a.uml +++ b/at/at0200a.uml @@ -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 " diff --git a/at/at0500a.h b/at/at0500a.h index 23e79e8e1..5f3672cea 100755 --- a/at/at0500a.h +++ b/at/at0500a.h @@ -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 diff --git a/at/at0500a.uml b/at/at0500a.uml index 43f5c59ad..31582e6e7 100755 --- a/at/at0500a.uml +++ b/at/at0500a.uml @@ -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 ""