From 0509c50babfbb0923a0e928aebc4aef38cb875df Mon Sep 17 00:00:00 2001 From: cris Date: Tue, 10 Oct 2000 08:19:16 +0000 Subject: [PATCH] =?UTF-8?q?Patch=20level=20=20=20=20=20=20=20=20=20:=20Fil?= =?UTF-8?q?es=20correlati=20=20=20=20=20:=20Ricompilazione=20Demo=20:=20[?= =?UTF-8?q?=20]=20Commento=20=20=20=20=20=20=20=20=20=20=20=20:=20possibil?= =?UTF-8?q?it=C3=A1=20si=20scegliere=20fino=20a=2010=20tipi=20di=20control?= =?UTF-8?q?li,=20tolto=20controllo=20inutile=20stringa.()?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn://10.65.10.50/trunk@9230 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- at/at5300.cpp | 70 +++++++++++++----- at/at5300a.h | 24 +++++- at/at5300a.uml | 197 ++++++++++++++++++++++++++++++++++++++++++++++--- 3 files changed, 257 insertions(+), 34 deletions(-) diff --git a/at/at5300.cpp b/at/at5300.cpp index 5c59bfc01..ae35c2353 100755 --- a/at/at5300.cpp +++ b/at/at5300.cpp @@ -46,12 +46,11 @@ class TTurniControlli : public TPrintapp TLocalisamfile* _contsan; TRecord_array* _scontrolli; TEti_turnicon_form* _form_eti; - TAssoc_array _categorie; + TAssoc_array _categorie, _tipicon; int _cur; int _contatore, _totale; TDate _data_stampa; TString16 _codsez, _codsot; - TString16 _tipo1, _tipo2; bool _maifatto; TDate _primadel, _dataini, _datafin; TParagraph_string _cognome_nome, _rigastampa, _dencom; @@ -102,13 +101,13 @@ void TTurniControlli::fine_stampa() { if (_totale != _contatore) { - set_footer(3,"TOTALE SOGGETTI SBLOCCATI %d", _totale); + set_footer(3,"TOTALE SOGGETTI STAMPATI %d", _totale); printer().formfeed(); } } else { - set_footer(3,"NON CI SONO SOGGETTI SOSPESI DA SBLOCCARE"); + set_footer(3,"NON CI SONO SOGGETTI DA STAMPARE"); printer().formfeed(); } reset_footer(); @@ -122,7 +121,7 @@ void TTurniControlli::footer_sezione() TString sep(80); sep.fill('-'); set_footer(2, (const char *) sep); - set_footer(3,"TOTALE SOGGETTI STAMPATI %d", _contatore); + set_footer(3,"TOTALE SOGGETTI PER SEZIONE %d", _contatore); printer().formfeed(); reset_footer(); } @@ -167,7 +166,7 @@ bool TTurniControlli::preprocess_page(int file, int counter) localita << current_cursor()->curr(LF_COMUNI).get(COM_DENCOM); localita.trim(); _dencom = localita; - TDate data1(NULLDATE); + TDate data(NULLDATE); TRectype* key = new TRectype(LF_CONTSAN); long codice = recsog.get_long(SOG_CODICE); key->put(CON_CODICE, codice); @@ -177,13 +176,14 @@ bool TTurniControlli::preprocess_page(int file, int counter) const TRectype& riga = _scontrolli->row(r); TString16 tipocon = riga.get(CON_TIPOCON); TDate datacon = riga.get(CON_DATACON); - if ((tipocon == _tipo1 && _tipo1.not_empty()) || (tipocon == _tipo2 && _tipo2.not_empty())) - data1 = datacon; + //if ((tipocon == _tipo1 && _tipo1.not_empty()) || (tipocon == _tipo2 && _tipo2.not_empty())) + if (_tipicon.is_key((const char*)tipocon)) + data = datacon; } TString80 rigastampa; rigastampa = ""; - if (data1.ok()) - rigastampa << "@72g"<row(r); TString16 tipocon = riga.get(CON_TIPOCON); - if ((tipocon == app()._tipo1) || (tipocon == app()._tipo2)) + //if ((tipocon == app()._tipo1) || (tipocon == app()._tipo2)) + if (app()._tipicon.is_key((const char*) tipocon)); { fatto = TRUE; if (app()._primadel.ok()) @@ -315,7 +316,7 @@ void TTurniControlli::header_sezione(const TString16 codsez, const TString16 cod intestazione << codsot; intestazione << " "; intestazione << densez; - if ((densot.ok())&& (densot.not_empty())) + if (densot.not_empty()) { intestazione << "/"; intestazione << densot; @@ -343,8 +344,38 @@ bool TTurniControlli::set_print(int) } if (_tipostampa != undefined) { - _tipo1 = _msk->get(F_TIPO1); - _tipo2 = _msk->get(F_TIPO2); + _tipicon.destroy(); + TString16 tipo; + tipo = _msk->get(F_TIPO1); + if (tipo.not_empty()) + _tipicon.add((const char*) tipo); + tipo = _msk->get(F_TIPO2); + if (tipo.not_empty()) + _tipicon.add((const char*) tipo); + tipo = _msk->get(F_TIPO3); + if (tipo.not_empty()) + _tipicon.add((const char*) tipo); + tipo = _msk->get(F_TIPO4); + if (tipo.not_empty()) + _tipicon.add((const char*) tipo); + tipo = _msk->get(F_TIPO5); + if (tipo.not_empty()) + _tipicon.add((const char*) tipo); + tipo = _msk->get(F_TIPO6); + if (tipo.not_empty()) + _tipicon.add((const char*) tipo); + tipo = _msk->get(F_TIPO7); + if (tipo.not_empty()) + _tipicon.add((const char*) tipo); + tipo = _msk->get(F_TIPO8); + if (tipo.not_empty()) + _tipicon.add((const char*) tipo); + tipo = _msk->get(F_TIPO9); + if (tipo.not_empty()) + _tipicon.add((const char*) tipo); + tipo = _msk->get(F_TIPO10); + if (tipo.not_empty()) + _tipicon.add((const char*) tipo); _maifatto = _msk->get_bool(F_MAIFATTO); _primadel = _msk->get_date(F_PRIMADEL); _dataini = _msk->get_date(F_DATAINI); @@ -385,13 +416,16 @@ bool TTurniControlli::set_print(int) } void TTurniControlli::crea_intestazione() -{ +{ + char* tc; reset_header(); TString sep(132); sep = "STAMPA TURNI PER CONTROLLI SANITARI "; - sep << _tipo1; - sep << " "; - sep << _tipo2; + for (tc = (char*)_tipicon.first_item(); tc != NULL; tc = (char*) _tipicon.succ_item()) + { + sep << _tipicon.get_hashobj()->key(); + sep << " "; + } if (_maifatto) sep << " - mai effettuato"; if (_primadel.ok()) diff --git a/at/at5300a.h b/at/at5300a.h index 9e83b67f4..3a0e42733 100755 --- a/at/at5300a.h +++ b/at/at5300a.h @@ -27,10 +27,26 @@ #define F_D_TIPO1 302 #define F_TIPO2 303 #define F_D_TIPO2 304 -#define F_MAIFATTO 305 -#define F_PRIMADEL 306 -#define F_DATAINI 307 -#define F_DATAFIN 308 +#define F_TIPO3 305 +#define F_D_TIPO3 306 +#define F_TIPO4 307 +#define F_D_TIPO4 308 +#define F_TIPO5 309 +#define F_D_TIPO5 310 +#define F_TIPO6 311 +#define F_D_TIPO6 312 +#define F_TIPO7 313 +#define F_D_TIPO7 314 +#define F_TIPO8 315 +#define F_D_TIPO8 316 +#define F_TIPO9 317 +#define F_D_TIPO9 318 +#define F_TIPO10 319 +#define F_D_TIPO10 320 +#define F_MAIFATTO 321 +#define F_PRIMADEL 322 +#define F_DATAINI 323 +#define F_DATAFIN 324 #define F_ELENCO 401 #define F_ETICHETTE 402 diff --git a/at/at5300a.uml b/at/at5300a.uml index 791122740..9642d94a3 100755 --- a/at/at5300a.uml +++ b/at/at5300a.uml @@ -2,19 +2,19 @@ TOOLBAR "" 0 20 0 2 -BUTTON F_ELENCO 9 2 +BUTTON F_ELENCO 10 2 BEGIN PROMPT -13 -11 "E~lenco" MESSAGE EXIT,F_ELENCO END -BUTTON F_ETICHETTE 9 2 +BUTTON F_ETICHETTE 10 2 BEGIN PROMPT -23 -11 "~Etichette" MESSAGE EXIT,F_ETICHETTE END -BUTTON DLG_QUIT 9 2 +BUTTON DLG_QUIT 10 2 BEGIN PROMPT -33 -11 "" END @@ -265,14 +265,19 @@ BEGIN FLAGS "D" END -GROUPBOX DLG_NULL 77 7 +GROUPBOX DLG_NULL 77 11 BEGIN PROMPT 1 10 "Opzioni per la stampa" END +TEXT DLG_NULL +BEGIN + PROMPT 2 11 "Tipi/Esiti controlli sanitari" +END + STRING F_TIPO1 2 BEGIN - PROMPT 2 11 "Tipo/Esito " + PROMPT 2 12 "" FLAGS "U" USE TCS INPUT CODTAB F_TIPO1 @@ -287,13 +292,13 @@ END STRING F_D_TIPO1 30 BEGIN - PROMPT 20 11 "" + PROMPT 8 12 "" FLAGS "D" END STRING F_TIPO2 2 BEGIN - PROMPT 2 12 "Tipo/Esito " + PROMPT 2 13 "" FLAGS "U" USE TCS INPUT CODTAB F_TIPO2 @@ -308,28 +313,196 @@ END STRING F_D_TIPO2 30 BEGIN - PROMPT 20 12 "" + PROMPT 8 13 "" + FLAGS "D" +END + +STRING F_TIPO3 2 +BEGIN + PROMPT 2 14 "" + FLAGS "U" + USE TCS + INPUT CODTAB F_TIPO3 + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@30" S0 + OUTPUT F_TIPO3 CODTAB + OUTPUT F_D_TIPO3 S0 + CHECKTYPE NORMAL + WARNING "Codice non presente" + HELP "Tipo/Esito controllo sanitario" +END + +STRING F_D_TIPO3 30 +BEGIN + PROMPT 8 14 "" + FLAGS "D" +END + +STRING F_TIPO4 2 +BEGIN + PROMPT 2 15 "" + FLAGS "U" + USE TCS + INPUT CODTAB F_TIPO4 + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@30" S0 + OUTPUT F_TIPO4 CODTAB + OUTPUT F_D_TIPO4 S0 + CHECKTYPE NORMAL + WARNING "Codice non presente" + HELP "Tipo/Esito controllo sanitario" +END + +STRING F_D_TIPO4 30 +BEGIN + PROMPT 8 15 "" + FLAGS "D" +END + +STRING F_TIPO5 2 +BEGIN + PROMPT 2 16 "" + FLAGS "U" + USE TCS + INPUT CODTAB F_TIPO5 + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@30" S0 + OUTPUT F_TIPO5 CODTAB + OUTPUT F_D_TIPO5 S0 + CHECKTYPE NORMAL + WARNING "Codice non presente" + HELP "Tipo/Esito controllo sanitario" +END + +STRING F_D_TIPO5 30 +BEGIN + PROMPT 8 16 "" + FLAGS "D" +END + +STRING F_TIPO6 2 +BEGIN + PROMPT 40 12 "" + FLAGS "U" + USE TCS + INPUT CODTAB F_TIPO6 + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@30" S0 + OUTPUT F_TIPO6 CODTAB + OUTPUT F_D_TIPO6 S0 + CHECKTYPE NORMAL + WARNING "Codice non presente" + HELP "Tipo/Esito controllo sanitario" +END + +STRING F_D_TIPO6 30 +BEGIN + PROMPT 46 12 "" + FLAGS "D" +END + +STRING F_TIPO7 2 +BEGIN + PROMPT 40 13 "" + FLAGS "U" + USE TCS + INPUT CODTAB F_TIPO7 + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@30" S0 + OUTPUT F_TIPO7 CODTAB + OUTPUT F_D_TIPO7 S0 + CHECKTYPE NORMAL + WARNING "Codice non presente" + HELP "Tipo/Esito controllo sanitario" +END + +STRING F_D_TIPO7 30 +BEGIN + PROMPT 46 13 "" + FLAGS "D" +END + +STRING F_TIPO8 2 +BEGIN + PROMPT 40 14 "" + FLAGS "U" + USE TCS + INPUT CODTAB F_TIPO8 + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@30" S0 + OUTPUT F_TIPO8 CODTAB + OUTPUT F_D_TIPO8 S0 + CHECKTYPE NORMAL + WARNING "Codice non presente" + HELP "Tipo/Esito controllo sanitario" +END + +STRING F_D_TIPO8 30 +BEGIN + PROMPT 46 14 "" + FLAGS "D" +END + +STRING F_TIPO9 2 +BEGIN + PROMPT 40 15 "" + FLAGS "U" + USE TCS + INPUT CODTAB F_TIPO9 + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@30" S0 + OUTPUT F_TIPO9 CODTAB + OUTPUT F_D_TIPO9 S0 + CHECKTYPE NORMAL + WARNING "Codice non presente" + HELP "Tipo/Esito controllo sanitario" +END + +STRING F_D_TIPO9 30 +BEGIN + PROMPT 46 15 "" + FLAGS "D" +END + +STRING F_TIPO10 2 +BEGIN + PROMPT 40 16 "" + FLAGS "U" + USE TCS + INPUT CODTAB F_TIPO10 + DISPLAY "Codice" CODTAB + DISPLAY "Descrizione@30" S0 + OUTPUT F_TIPO10 CODTAB + OUTPUT F_D_TIPO10 S0 + CHECKTYPE NORMAL + WARNING "Codice non presente" + HELP "Tipo/Esito controllo sanitario" +END + +STRING F_D_TIPO10 30 +BEGIN + PROMPT 46 16 "" FLAGS "D" END BOOLEAN F_MAIFATTO BEGIN - PROMPT 2 13 "Includi chi non ha mai effettuato i controlli scelti" + PROMPT 2 17 "Includi chi non ha mai effettuato i controlli scelti" END DATE F_PRIMADEL BEGIN - PROMPT 2 14 "Includi chi ha fatto gli ultimi controlli scelti prima del " + PROMPT 2 18 "Includi chi ha fatto gli ultimi controlli scelti prima del " END DATE F_DATAINI BEGIN - PROMPT 2 15 "Solo soggetti nati dal " + PROMPT 2 19 "Solo soggetti nati dal " END DATE F_DATAFIN BEGIN - PROMPT 38 15 "al " + PROMPT 38 19 "al " END ENDPAGE