Patch level :

Files correlati     :
Ricompilazione Demo : [ ]
Commento            : possibilitá si scegliere fino a 10 tipi di controlli, tolto controllo inutile stringa.()


git-svn-id: svn://10.65.10.50/trunk@9230 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
cris 2000-10-10 08:19:16 +00:00
parent e48ce4d365
commit 0509c50bab
3 changed files with 257 additions and 34 deletions

View File

@ -46,12 +46,11 @@ class TTurniControlli : public TPrintapp
TLocalisamfile* _contsan; TLocalisamfile* _contsan;
TRecord_array* _scontrolli; TRecord_array* _scontrolli;
TEti_turnicon_form* _form_eti; TEti_turnicon_form* _form_eti;
TAssoc_array _categorie; TAssoc_array _categorie, _tipicon;
int _cur; int _cur;
int _contatore, _totale; int _contatore, _totale;
TDate _data_stampa; TDate _data_stampa;
TString16 _codsez, _codsot; TString16 _codsez, _codsot;
TString16 _tipo1, _tipo2;
bool _maifatto; bool _maifatto;
TDate _primadel, _dataini, _datafin; TDate _primadel, _dataini, _datafin;
TParagraph_string _cognome_nome, _rigastampa, _dencom; TParagraph_string _cognome_nome, _rigastampa, _dencom;
@ -102,13 +101,13 @@ void TTurniControlli::fine_stampa()
{ {
if (_totale != _contatore) if (_totale != _contatore)
{ {
set_footer(3,"TOTALE SOGGETTI SBLOCCATI %d", _totale); set_footer(3,"TOTALE SOGGETTI STAMPATI %d", _totale);
printer().formfeed(); printer().formfeed();
} }
} }
else else
{ {
set_footer(3,"NON CI SONO SOGGETTI SOSPESI DA SBLOCCARE"); set_footer(3,"NON CI SONO SOGGETTI DA STAMPARE");
printer().formfeed(); printer().formfeed();
} }
reset_footer(); reset_footer();
@ -122,7 +121,7 @@ void TTurniControlli::footer_sezione()
TString sep(80); TString sep(80);
sep.fill('-'); sep.fill('-');
set_footer(2, (const char *) sep); 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(); printer().formfeed();
reset_footer(); reset_footer();
} }
@ -167,7 +166,7 @@ bool TTurniControlli::preprocess_page(int file, int counter)
localita << current_cursor()->curr(LF_COMUNI).get(COM_DENCOM); localita << current_cursor()->curr(LF_COMUNI).get(COM_DENCOM);
localita.trim(); localita.trim();
_dencom = localita; _dencom = localita;
TDate data1(NULLDATE); TDate data(NULLDATE);
TRectype* key = new TRectype(LF_CONTSAN); TRectype* key = new TRectype(LF_CONTSAN);
long codice = recsog.get_long(SOG_CODICE); long codice = recsog.get_long(SOG_CODICE);
key->put(CON_CODICE, codice); key->put(CON_CODICE, codice);
@ -177,13 +176,14 @@ bool TTurniControlli::preprocess_page(int file, int counter)
const TRectype& riga = _scontrolli->row(r); const TRectype& riga = _scontrolli->row(r);
TString16 tipocon = riga.get(CON_TIPOCON); TString16 tipocon = riga.get(CON_TIPOCON);
TDate datacon = riga.get(CON_DATACON); TDate datacon = riga.get(CON_DATACON);
if ((tipocon == _tipo1 && _tipo1.not_empty()) || (tipocon == _tipo2 && _tipo2.not_empty())) //if ((tipocon == _tipo1 && _tipo1.not_empty()) || (tipocon == _tipo2 && _tipo2.not_empty()))
data1 = datacon; if (_tipicon.is_key((const char*)tipocon))
data = datacon;
} }
TString80 rigastampa; TString80 rigastampa;
rigastampa = ""; rigastampa = "";
if (data1.ok()) if (data.ok())
rigastampa << "@72g"<<data1; rigastampa << "@72g"<<data;
else else
rigastampa << "@72g"<<"mai effettuato"; rigastampa << "@72g"<<"mai effettuato";
_rigastampa = rigastampa; _rigastampa = rigastampa;
@ -285,7 +285,8 @@ bool TTurniControlli::filter_func_turnicon(const TRelation* rel)
{ {
const TRectype& riga = app()._scontrolli->row(r); const TRectype& riga = app()._scontrolli->row(r);
TString16 tipocon = riga.get(CON_TIPOCON); 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; fatto = TRUE;
if (app()._primadel.ok()) if (app()._primadel.ok())
@ -315,7 +316,7 @@ void TTurniControlli::header_sezione(const TString16 codsez, const TString16 cod
intestazione << codsot; intestazione << codsot;
intestazione << " "; intestazione << " ";
intestazione << densez; intestazione << densez;
if ((densot.ok())&& (densot.not_empty())) if (densot.not_empty())
{ {
intestazione << "/"; intestazione << "/";
intestazione << densot; intestazione << densot;
@ -343,8 +344,38 @@ bool TTurniControlli::set_print(int)
} }
if (_tipostampa != undefined) if (_tipostampa != undefined)
{ {
_tipo1 = _msk->get(F_TIPO1); _tipicon.destroy();
_tipo2 = _msk->get(F_TIPO2); 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); _maifatto = _msk->get_bool(F_MAIFATTO);
_primadel = _msk->get_date(F_PRIMADEL); _primadel = _msk->get_date(F_PRIMADEL);
_dataini = _msk->get_date(F_DATAINI); _dataini = _msk->get_date(F_DATAINI);
@ -386,12 +417,15 @@ bool TTurniControlli::set_print(int)
void TTurniControlli::crea_intestazione() void TTurniControlli::crea_intestazione()
{ {
char* tc;
reset_header(); reset_header();
TString sep(132); TString sep(132);
sep = "STAMPA TURNI PER CONTROLLI SANITARI "; sep = "STAMPA TURNI PER CONTROLLI SANITARI ";
sep << _tipo1; for (tc = (char*)_tipicon.first_item(); tc != NULL; tc = (char*) _tipicon.succ_item())
sep << " "; {
sep << _tipo2; sep << _tipicon.get_hashobj()->key();
sep << " ";
}
if (_maifatto) if (_maifatto)
sep << " - mai effettuato"; sep << " - mai effettuato";
if (_primadel.ok()) if (_primadel.ok())

View File

@ -27,10 +27,26 @@
#define F_D_TIPO1 302 #define F_D_TIPO1 302
#define F_TIPO2 303 #define F_TIPO2 303
#define F_D_TIPO2 304 #define F_D_TIPO2 304
#define F_MAIFATTO 305 #define F_TIPO3 305
#define F_PRIMADEL 306 #define F_D_TIPO3 306
#define F_DATAINI 307 #define F_TIPO4 307
#define F_DATAFIN 308 #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_ELENCO 401
#define F_ETICHETTE 402 #define F_ETICHETTE 402

View File

@ -2,19 +2,19 @@
TOOLBAR "" 0 20 0 2 TOOLBAR "" 0 20 0 2
BUTTON F_ELENCO 9 2 BUTTON F_ELENCO 10 2
BEGIN BEGIN
PROMPT -13 -11 "E~lenco" PROMPT -13 -11 "E~lenco"
MESSAGE EXIT,F_ELENCO MESSAGE EXIT,F_ELENCO
END END
BUTTON F_ETICHETTE 9 2 BUTTON F_ETICHETTE 10 2
BEGIN BEGIN
PROMPT -23 -11 "~Etichette" PROMPT -23 -11 "~Etichette"
MESSAGE EXIT,F_ETICHETTE MESSAGE EXIT,F_ETICHETTE
END END
BUTTON DLG_QUIT 9 2 BUTTON DLG_QUIT 10 2
BEGIN BEGIN
PROMPT -33 -11 "" PROMPT -33 -11 ""
END END
@ -265,14 +265,19 @@ BEGIN
FLAGS "D" FLAGS "D"
END END
GROUPBOX DLG_NULL 77 7 GROUPBOX DLG_NULL 77 11
BEGIN BEGIN
PROMPT 1 10 "Opzioni per la stampa" PROMPT 1 10 "Opzioni per la stampa"
END END
TEXT DLG_NULL
BEGIN
PROMPT 2 11 "Tipi/Esiti controlli sanitari"
END
STRING F_TIPO1 2 STRING F_TIPO1 2
BEGIN BEGIN
PROMPT 2 11 "Tipo/Esito " PROMPT 2 12 ""
FLAGS "U" FLAGS "U"
USE TCS USE TCS
INPUT CODTAB F_TIPO1 INPUT CODTAB F_TIPO1
@ -287,13 +292,13 @@ END
STRING F_D_TIPO1 30 STRING F_D_TIPO1 30
BEGIN BEGIN
PROMPT 20 11 "" PROMPT 8 12 ""
FLAGS "D" FLAGS "D"
END END
STRING F_TIPO2 2 STRING F_TIPO2 2
BEGIN BEGIN
PROMPT 2 12 "Tipo/Esito " PROMPT 2 13 ""
FLAGS "U" FLAGS "U"
USE TCS USE TCS
INPUT CODTAB F_TIPO2 INPUT CODTAB F_TIPO2
@ -308,28 +313,196 @@ END
STRING F_D_TIPO2 30 STRING F_D_TIPO2 30
BEGIN 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" FLAGS "D"
END END
BOOLEAN F_MAIFATTO BOOLEAN F_MAIFATTO
BEGIN 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 END
DATE F_PRIMADEL DATE F_PRIMADEL
BEGIN 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 END
DATE F_DATAINI DATE F_DATAINI
BEGIN BEGIN
PROMPT 2 15 "Solo soggetti nati dal " PROMPT 2 19 "Solo soggetti nati dal "
END END
DATE F_DATAFIN DATE F_DATAFIN
BEGIN BEGIN
PROMPT 38 15 "al " PROMPT 38 19 "al "
END END
ENDPAGE ENDPAGE