Patch level : avis

Files correlati     : at4.exe at4400a.msk
Ricompilazione Demo : [ ]
Commento            : stampa convoc. su punto: aggiunta scelta categorie e ordinamento per data convocazione


git-svn-id: svn://10.65.10.50/trunk@10701 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
cris 2002-12-20 12:28:34 +00:00
parent 050a846edd
commit 0b7d48e469
2 changed files with 50 additions and 12 deletions

View File

@ -44,6 +44,7 @@ class TConvocazioniPerPunto : public TPrintapp
TMask* _msk; TMask* _msk;
TStConvoc_form* _form_eti; TStConvoc_form* _form_eti;
TStConvoc_form* _form_car; TStConvoc_form* _form_car;
TAssoc_array _categorie;
int _cur; int _cur;
TParagraph_string _cognome_nome, _dencom; TParagraph_string _cognome_nome, _dencom;
TDate _data_stampa; TDate _data_stampa;
@ -60,7 +61,7 @@ class TConvocazioniPerPunto : public TPrintapp
int _contxsez, _contxdata, _contatore; int _contxsez, _contxdata, _contatore;
int _etlarghezza, _etcolonne; int _etlarghezza, _etcolonne;
//static bool filter_func_stconvoc(const TRelation* rel); static bool filter_func_perpunto(const TRelation* rel);
protected: protected:
virtual bool user_create(); virtual bool user_create();
@ -89,6 +90,20 @@ TCursor* TStConvoc_form::cursor() const { return app().current_cursor(); }
TRelation* TStConvoc_form::relation() const { return cursor()->relation(); } TRelation* TStConvoc_form::relation() const { return cursor()->relation(); }
bool TConvocazioniPerPunto::filter_func_perpunto(const TRelation* rel)
{
bool filtrato = TRUE;
TLocalisamfile& sog = rel->lfile(LF_SOGGETTI);
// filtro per categorie
TAssoc_array& categorie = app()._categorie;
if (categorie.items() != 0)
{
const TString16 cat = sog.get(SOG_CATDON);
filtrato = categorie.is_key((const char*) cat);
}
return filtrato;
}
ts TConvocazioniPerPunto::dati_cartoline() ts TConvocazioniPerPunto::dati_cartoline()
{ {
TMask msk("at4100b"); TMask msk("at4100b");
@ -505,6 +520,29 @@ bool TConvocazioniPerPunto::set_print(int m)
a.put(RCV_DATACONV, _datafin); a.put(RCV_DATACONV, _datafin);
_cur = add_cursor(new TSorted_cursor(_rel, (const char*) chiave,"", 2, &da, &a)); _cur = add_cursor(new TSorted_cursor(_rel, (const char*) chiave,"", 2, &da, &a));
current_cursor()->setfilter((const char*) filtro, TRUE); current_cursor()->setfilter((const char*) filtro, TRUE);
// filtro per categorie
// filtro per categorie
_categorie.destroy();
const TString16 catpri = _msk->get(F_CAT1);
const TString16 catsec = _msk->get(F_CAT2);
const TString16 catter = _msk->get(F_CAT3);
const TString16 catqua = _msk->get(F_CAT4);
const TString16 catqui = _msk->get(F_CAT5);
const TString16 catses = _msk->get(F_CAT6);
if (catpri.not_empty())
_categorie.add((const char*) catpri);
if (catsec.not_empty())
_categorie.add((const char*) catsec);
if (catter.not_empty())
_categorie.add((const char*) catter);
if (catqua.not_empty())
_categorie.add((const char*) catqua);
if (catqui.not_empty())
_categorie.add((const char*) catqui);
if (catses.not_empty())
_categorie.add((const char*) catses);
current_cursor()->set_filterfunction(filter_func_perpunto);
_codsez = "**"; _codsez = "**";
_codsot = "**"; _codsot = "**";
_dataatt = NULLDATE; _dataatt = NULLDATE;

View File

@ -283,7 +283,7 @@ BEGIN
FLAGS "D" FLAGS "D"
END END
GROUPBOX DLG_NULL 77 13 GROUPBOX DLG_NULL 77 12
BEGIN BEGIN
PROMPT 1 9 "Opzioni per la stampa convocazioni" PROMPT 1 9 "Opzioni per la stampa convocazioni"
END END
@ -295,12 +295,12 @@ END
DATE F_DATAFIN DATE F_DATAFIN
BEGIN BEGIN
PROMPT 2 11 "Data finale " PROMPT 32 10 "Data finale "
END END
STRING F_PUNTO 4 STRING F_PUNTO 4
BEGIN BEGIN
PROMPT 2 12 "Punto prelievo " PROMPT 2 11 "Punto prelievo "
FLAGS "U" FLAGS "U"
USE LDN USE LDN
INPUT CODTAB F_PUNTO INPUT CODTAB F_PUNTO
@ -314,13 +314,13 @@ END
STRING F_D_PUNTO 50 STRING F_D_PUNTO 50
BEGIN BEGIN
PROMPT 25 12 "" PROMPT 25 11 ""
FLAGS "D" FLAGS "D"
END END
STRING F_TIPO 2 STRING F_TIPO 2
BEGIN BEGIN
PROMPT 2 13 "Tipo donazione " PROMPT 2 12 "Tipo donazione "
FLAGS "U" FLAGS "U"
USE TDN USE TDN
INPUT CODTAB F_TIPO INPUT CODTAB F_TIPO
@ -333,13 +333,13 @@ END
STRING F_D_TIPO 25 STRING F_D_TIPO 25
BEGIN BEGIN
PROMPT 23 13 "" PROMPT 23 12 ""
FLAGS "D" FLAGS "D"
END END
LISTBOX F_ORDINA 24 LISTBOX F_ORDINA 24
BEGIN BEGIN
PROMPT 2 14 "Ordinamento " PROMPT 2 13 "Ordinamento "
FLAGS "U" FLAGS "U"
ITEM "A|Sez./Sott.+Alfabetico" ITEM "A|Sez./Sott.+Alfabetico"
MESSAGE ENABLE,F_PERSEZIONE MESSAGE ENABLE,F_PERSEZIONE
@ -354,14 +354,14 @@ END
RADIOBUTTON F_TUTTI 75 RADIOBUTTON F_TUTTI 75
BEGIN BEGIN
FLAG "Z" FLAG "Z"
PROMPT 2 15 "Stampa" PROMPT 2 14 "Stampa"
ITEM "S|Convocazioni non stampate" ITEM "S|Convocazioni non stampate"
ITEM "T|Tutte le convocazioni" ITEM "T|Tutte le convocazioni"
END END
LISTBOX F_SCELTAGRUPPI 37 LISTBOX F_SCELTAGRUPPI 37
BEGIN BEGIN
PROMPT 2 18 "Opzioni per gruppi aziendali " PROMPT 2 17 "Opzioni per gruppi aziendali "
FLAGS "U" FLAGS "U"
ITEM "N|Nessuna selezione sui gruppi az." ITEM "N|Nessuna selezione sui gruppi az."
ITEM "S|Stampa solo appartenenti a gruppi az." ITEM "S|Stampa solo appartenenti a gruppi az."
@ -370,13 +370,13 @@ END
BOOLEAN F_PERSEZIONE BOOLEAN F_PERSEZIONE
BEGIN BEGIN
PROMPT 2 19 "Stampa suddivisa per sezione" PROMPT 2 18 "Stampa suddivisa per sezione"
HELP "Indicare se si vuole la stampa suddivisa per sezione di appartenenza" HELP "Indicare se si vuole la stampa suddivisa per sezione di appartenenza"
END END
BOOLEAN F_AGGIORNA BOOLEAN F_AGGIORNA
BEGIN BEGIN
PROMPT 2 20 "Aggiorna campo convocazione stampata" PROMPT 2 19 "Aggiorna campo convocazione stampata"
END END
ENDPAGE ENDPAGE