From 3fec1502548d1ee20dcd410bafe493a6eaf239ef Mon Sep 17 00:00:00 2001 From: cris Date: Wed, 3 May 2000 10:10:05 +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=20di=20stampare=20solo=20o=20escludere=20gli=20apparte?= =?UTF-8?q?nenti=20a=20gruppi=20aziendali?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn://10.65.10.50/trunk@8973 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- at/at4400.cpp | 29 +++++++++++++++++++++++++++-- at/at4400a.h | 1 + at/at4400a.uml | 11 ++++++++++- 3 files changed, 38 insertions(+), 3 deletions(-) diff --git a/at/at4400.cpp b/at/at4400.cpp index 4d89bc958..40ed4ec40 100755 --- a/at/at4400.cpp +++ b/at/at4400.cpp @@ -49,6 +49,7 @@ class TConvocazioniPerPunto : public TPrintapp TDate _data_stampa; TDate _dataini, _datafin; bool _aggiorna, _persezione, _tutti; + char _gruppiaz; TString16 _punto,_tipo, _ordina; TString16 _codsez, _codsot, _sezini,_sotini, _sezfin,_sotfin; TString16 _orario, _datacart; @@ -140,6 +141,7 @@ void TConvocazioniPerPunto::set_page(int file, int cnt) { if (current_cursor()->pos()items()) { + preprocess_page(file, cnt); force_setpage(TRUE); corpo.update(); for (word i = 0; i < corpo.height(); i++) @@ -153,7 +155,7 @@ void TConvocazioniPerPunto::set_page(int file, int cnt) riga1.insert(formato,0); set_row(i+1,riga1); } - if (r < _etcolonne) + if (r < _etcolonne) ++(*current_cursor()); } } @@ -410,6 +412,7 @@ bool TConvocazioniPerPunto::set_print(int m) _datafin = _msk->get(F_DATAFIN); _punto = _msk->get(F_PUNTO); _tipo = _msk->get(F_TIPO); + _gruppiaz = _msk->get(F_SCELTAGRUPPI)[0]; _aggiorna = _msk->get_bool(F_AGGIORNA); _persezione = _msk->get_bool(F_PERSEZIONE); _tutti = (_msk->get(F_TUTTI)[0] == 'T'); @@ -479,6 +482,17 @@ bool TConvocazioniPerPunto::set_print(int m) else filtro << format("(90->CODSEZ <= \"%s\")",(const char*)_sezfin); } + if (_gruppiaz == 'S') // solo appartenenti a gruppi aziendali + { + filtro << " && "; + filtro << format("(90->GRUPPOAZIE != \"\")"); + } + else + if (_gruppiaz == 'E') // escludi gli appartenenti a gruppi aziendali + { + filtro << " && "; + filtro << format("(90->GRUPPOAZIE == \"\")"); + } // filtro per data TRectype da(LF_RCONVOC); TRectype a (LF_RCONVOC); @@ -546,9 +560,18 @@ void TConvocazioniPerPunto::crea_intestazione() } sep.center_just(); set_header(3, "@0g%s", (const char*) sep); + sep = ""; char ora[16]; _strtime(ora); set_header(3,"@0g%8s", ora); + if (_gruppiaz == 'S') + sep << "SOLO APPARTENENTI A GRUPPI AZIENDALI"; + else + if (_gruppiaz == 'E') + sep << "ESCLUSI GLI APPARTENENTI A GRUPPI AZIENDALI"; + sep.center_just(); + set_header(4, "@0g%s", (const char*) sep); + sep = ""; if (_tipostampa==sintetico) { set_header(5,"@0gCognome e nome@36gCat.@40gTessera@48gSe/So@54gUltima donaz.@68gData cart.@79gTipo@84gData conv.@95gData pr."); @@ -579,10 +602,12 @@ bool TConvocazioniPerPunto::user_create() _msk = new TMask("at4400a"); TConfig config(CONFIG_STUDIO); TString16 etformato = config.get("EtFormato"); + TString16 caformato = config.get("CaFormato"); _etlarghezza = config.get_int("EtLarghezza"); _etcolonne = config.get_int("EtColonne"); _form_eti = new TStConvoc_form(etformato); - _form_car = new TStConvoc_form("ATCARTO1"); + //_form_car = new TStConvoc_form("ATCARTO1"); + _form_car = new TStConvoc_form(caformato); return TRUE; } diff --git a/at/at4400a.h b/at/at4400a.h index 279331d88..d0504832b 100755 --- a/at/at4400a.h +++ b/at/at4400a.h @@ -24,6 +24,7 @@ #define F_TUTTI 117 #define F_AGGIORNA 118 +#define F_SCELTAGRUPPI 119 #define F_SINTETICO 151 #define F_COMPLETO 152 diff --git a/at/at4400a.uml b/at/at4400a.uml index be3cb4c6d..523ffe9a7 100755 --- a/at/at4400a.uml +++ b/at/at4400a.uml @@ -226,9 +226,18 @@ BEGIN ITEM "T|Tutte le convocazioni" END +LISTBOX F_SCELTAGRUPPI 37 +BEGIN + PROMPT 2 13 "Opzioni per gruppi aziendali " + FLAGS "U" + ITEM "N|Nessuna selezione sui gruppi az." + ITEM "S|Stampa solo appartenenti a gruppi az." + ITEM "E|Escludi chi appartiene a gruppi az." +END + BOOLEAN F_PERSEZIONE BEGIN - PROMPT 2 13 "Stampa suddivisa per sezione" + PROMPT 2 14 "Stampa suddivisa per sezione" HELP "Indicare se si vuole la stampa suddivisa per sezione di appartenenza" END