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;
TStConvoc_form* _form_eti;
TStConvoc_form* _form_car;
TAssoc_array _categorie;
int _cur;
TParagraph_string _cognome_nome, _dencom;
TDate _data_stampa;
@ -60,7 +61,7 @@ class TConvocazioniPerPunto : public TPrintapp
int _contxsez, _contxdata, _contatore;
int _etlarghezza, _etcolonne;
//static bool filter_func_stconvoc(const TRelation* rel);
static bool filter_func_perpunto(const TRelation* rel);
protected:
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(); }
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()
{
TMask msk("at4100b");
@ -505,6 +520,29 @@ bool TConvocazioniPerPunto::set_print(int m)
a.put(RCV_DATACONV, _datafin);
_cur = add_cursor(new TSorted_cursor(_rel, (const char*) chiave,"", 2, &da, &a));
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 = "**";
_codsot = "**";
_dataatt = NULLDATE;

View File

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