Patch level : at 1.7 702
Files correlati : at2.exe Ricompilazione Demo : [ ] Commento : aggiutna possibiltia' di stampare sospesi per singola tipologia di donazione git-svn-id: svn://10.65.10.50/trunk@12138 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
6f88b57991
commit
8c8c3427d6
@ -52,7 +52,7 @@ class TStampaSospesi : public TPrintapp
|
||||
int _contatore, _totale;
|
||||
int _etlarghezza, _etcolonne, _etrighe, _etbordoini, _etbordofin, _netichette;
|
||||
int _caxpag, _cabordoini, _cabordofin, _ncartoline;
|
||||
bool _motivi, _pergruppo;
|
||||
bool _motivi, _pergruppo, _sosingole;
|
||||
TString16 _orario, _datacart;
|
||||
TString80 _invitoper, _data, _presso1, _presso2, _presso3, _presso4;
|
||||
TString80 _note, _intest1, _intest2, _intest3, _intest4;
|
||||
@ -329,6 +329,7 @@ void TStampaSospesi::set_page(int file, int cnt)
|
||||
bool TStampaSospesi::filter_func_sospesi(const TRelation* rel)
|
||||
{
|
||||
bool filtrato = TRUE;
|
||||
bool filtrocat = TRUE;
|
||||
TRectype recsog = rel->lfile().curr();
|
||||
// filtro per categorie
|
||||
TAssoc_array& categorie = app()._categorie;
|
||||
@ -336,6 +337,7 @@ bool TStampaSospesi::filter_func_sospesi(const TRelation* rel)
|
||||
{
|
||||
const TString16 cat = recsog.get(SOG_CATDON);
|
||||
filtrato = categorie.is_key((const char*) cat);
|
||||
filtrocat = filtrato;
|
||||
}
|
||||
if ((filtrato) && (app()._sodataini.ok()))
|
||||
{
|
||||
@ -344,7 +346,7 @@ bool TStampaSospesi::filter_func_sospesi(const TRelation* rel)
|
||||
}
|
||||
if ((filtrato) && (app()._sodatafin.ok()))
|
||||
{
|
||||
const TDate datastato = recsog.get_date(SOG_DATASTATO);
|
||||
TDate datastato = recsog.get_date(SOG_DATASTATO);
|
||||
filtrato = (datastato <= app()._sodatafin);
|
||||
}
|
||||
if ((filtrato) && (app()._dataini.ok()))
|
||||
@ -375,6 +377,58 @@ bool TStampaSospesi::filter_func_sospesi(const TRelation* rel)
|
||||
else
|
||||
filtrato = FALSE;
|
||||
}
|
||||
if (!filtrato && filtrocat && app()._sosingole)
|
||||
{
|
||||
// verifico se e' sospeso per una singola tipologia di donazione
|
||||
// Sangue intero
|
||||
filtrato = TRUE;
|
||||
if ((filtrato) && (app()._sodataini.ok()))
|
||||
{
|
||||
const TDate datastato = recsog.get_date(SOG_DATASI);
|
||||
filtrato = (datastato >= app()._sodataini);
|
||||
}
|
||||
if ((filtrato) && (app()._sodatafin.ok()))
|
||||
{
|
||||
TDate datastato = recsog.get_date(SOG_DATASI);
|
||||
filtrato = (datastato <= app()._sodatafin);
|
||||
}
|
||||
if ((filtrato) && (app()._dataini.ok()))
|
||||
{
|
||||
const TDate datapross = recsog.get_date(SOG_FINESOSSI);
|
||||
filtrato = (datapross >= app()._dataini);
|
||||
}
|
||||
if ((filtrato) && (app()._datafin.ok()))
|
||||
{
|
||||
const TDate datapross = recsog.get_date(SOG_FINESOSSI);
|
||||
filtrato = (datapross <= app()._datafin);
|
||||
}
|
||||
}
|
||||
if (!filtrato && filtrocat && app()._sosingole)
|
||||
{
|
||||
// verifico se e' sospeso per una singola tipologia di donazione
|
||||
// Aferesi
|
||||
filtrato = TRUE;
|
||||
if ((filtrato) && (app()._sodataini.ok()))
|
||||
{
|
||||
const TDate datastato = recsog.get_date(SOG_DATAAF);
|
||||
filtrato = (datastato >= app()._sodataini);
|
||||
}
|
||||
if ((filtrato) && (app()._sodatafin.ok()))
|
||||
{
|
||||
TDate datastato = recsog.get_date(SOG_DATAAF);
|
||||
filtrato = (datastato <= app()._sodatafin);
|
||||
}
|
||||
if ((filtrato) && (app()._dataini.ok()))
|
||||
{
|
||||
const TDate datapross = recsog.get_date(SOG_FINESOSAF);
|
||||
filtrato = (datapross >= app()._dataini);
|
||||
}
|
||||
if ((filtrato) && (app()._datafin.ok()))
|
||||
{
|
||||
const TDate datapross = recsog.get_date(SOG_FINESOSAF);
|
||||
filtrato = (datapross <= app()._datafin);
|
||||
}
|
||||
}
|
||||
return filtrato;
|
||||
}
|
||||
|
||||
@ -585,6 +639,7 @@ bool TStampaSospesi::set_print(int m)
|
||||
_motivo5 = _msk->get(F_MOTIVO5);
|
||||
_motivi = (_motivo1.not_empty() || _motivo2.not_empty() || _motivo3.not_empty() || _motivo4.not_empty() || _motivo5.not_empty());
|
||||
_pergruppo = _msk->get_bool(F_PERGRUPPO);
|
||||
_sosingole = _msk->get_bool(F_SOSINGOLE);
|
||||
TString256 filtro = "";
|
||||
// filtro per gruppo aziendale
|
||||
if (_pergruppo)
|
||||
@ -598,10 +653,15 @@ bool TStampaSospesi::set_print(int m)
|
||||
}
|
||||
// filtro per tipo sospensione
|
||||
_tiposo = _msk->get(F_TIPO);
|
||||
|
||||
if (_sosingole)
|
||||
filtro << "((" << SOG_STATOSI << "== \"SO\") || (" << SOG_STATOAF << "== \"SO\") || " ;
|
||||
if (_tiposo.not_empty())
|
||||
filtro << '(' << SOG_STATO << "== \"" << _tiposo << "\")";
|
||||
else
|
||||
filtro << "((TCS->S6 == \"S\") || (TCS->S6 == \"B\"))";
|
||||
filtro << "((TCS->S6 == \"S\") || (TCS->S6 == \"B\"))";
|
||||
if (_sosingole)
|
||||
filtro << ')';
|
||||
_prosstipo = _msk->get(F_PROSSTIPO);
|
||||
if (_prosstipo.not_empty())
|
||||
filtro << " && (" << SOG_PROS_STATO << "== \"" << _prosstipo << "\")";
|
||||
|
@ -41,6 +41,7 @@
|
||||
#define F_D_MOTIVO4 316
|
||||
#define F_MOTIVO5 317
|
||||
#define F_D_MOTIVO5 318
|
||||
#define F_SOSINGOLE 319
|
||||
|
||||
#define F_PERGRUPPO 401
|
||||
#define F_GRUPPOAZIE 402
|
||||
|
@ -36,7 +36,7 @@ BEGIN
|
||||
END
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Stampa soggetti sospesi" -1 -1 78 21
|
||||
PAGE "Stampa soggetti sospesi" -1 -1 78 22
|
||||
|
||||
GROUPBOX DLG_NULL 77 4
|
||||
BEGIN
|
||||
@ -280,7 +280,7 @@ BEGIN
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 77 12
|
||||
GROUPBOX DLG_NULL 77 13
|
||||
BEGIN
|
||||
PROMPT 1 10 "Opzioni per la stampa"
|
||||
END
|
||||
@ -452,16 +452,23 @@ BEGIN
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BOOLEAN F_SOSINGOLE
|
||||
BEGIN
|
||||
PROMPT 2 20 "Stampa anche sospesi su singola tipologia di donazione"
|
||||
END
|
||||
|
||||
|
||||
|
||||
BOOLEAN F_PERGRUPPO
|
||||
BEGIN
|
||||
PROMPT 2 20 "Stampa per gruppo aziendale"
|
||||
PROMPT 2 21 "Stampa per gruppo aziendale"
|
||||
MESSAGE TRUE ENABLE,F_GRUPPOAZIE|ENABLE,F_D_GRUPPOAZIE
|
||||
MESSAGE FALSE RESET,F_GRUPPOAZIE|RESET,F_D_GRUPPOAZIE|DISABLE,F_GRUPPOAZIE|DISABLE,F_D_GRUPPOAZIE
|
||||
END
|
||||
|
||||
STRING F_GRUPPOAZIE 4
|
||||
BEGIN
|
||||
PROMPT 35 20 ""
|
||||
PROMPT 35 21 ""
|
||||
FLAGS "U"
|
||||
USE GAZ
|
||||
INPUT CODTAB F_GRUPPOAZIE
|
||||
@ -476,7 +483,7 @@ END
|
||||
|
||||
STRING F_D_GRUPPOAZIE 30
|
||||
BEGIN
|
||||
PROMPT 43 20 ""
|
||||
PROMPT 43 21 ""
|
||||
FLAGS "U"
|
||||
USE GAZ KEY 2
|
||||
INPUT S0 F_D_GRUPPOAZIE
|
||||
|
Loading…
x
Reference in New Issue
Block a user