Patch level :

Files correlati     :
Ricompilazione Demo : [ ]
Commento            : Statistica donazione/donatori possibile ora anche per piu' tipi di donazione contemporaneamente (per problema delle PL PT PP)


git-svn-id: svn://10.65.10.50/trunk@7967 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
cris 1999-03-24 10:35:04 +00:00
parent 83f62dd9cb
commit 68647efff0
3 changed files with 149 additions and 25 deletions

View File

@ -89,7 +89,7 @@ class TStatDonGrRh : public TApplication
TLocalisamfile* _donaz;
TLocalisamfile* _atstatd;
TDate _dataini, _datafin;
TString16 _tipodon;
TString16 _tipodon1, _tipodon2, _tipodon3, _tipodon4, _tipodon5;
TAssoc_array* _colonne;
TArray _righe; // array per riepilogo donazioni
TString16 _sezini, _sotini, _sezfin, _sotfin;
@ -236,7 +236,11 @@ bool TStatDonGrRh::menu(MENU_TAG m)
{
_dataini = msk.get(F_DATAINI);
_datafin = msk.get(F_DATAFIN);
_tipodon = msk.get(F_TIPODON);
_tipodon1 = msk.get(F_TIPODON1);
_tipodon2 = msk.get(F_TIPODON2);
_tipodon3 = msk.get(F_TIPODON3);
_tipodon4 = msk.get(F_TIPODON4);
_tipodon5 = msk.get(F_TIPODON5);
_solotot = msk.get_bool(F_SOLOTOT);
_sezini = msk.get(F_SEZINI);
_sotini = msk.get(F_SOTINI);
@ -257,11 +261,20 @@ void TStatDonGrRh::crea_intestazione()
row.put(sep);
printer().setheaderline(2, row);
sep = "";
if (_tipodon.not_empty())
if (_tipodon1.not_empty())
{
sep << "Tipo ";
sep << _tipodon;
sep << _tipodon1;
}
if (_tipodon2.not_empty())
sep << ' ' << _tipodon2;
if (_tipodon3.not_empty())
sep << ' ' << _tipodon3;
if (_tipodon4.not_empty())
sep << ' ' << _tipodon4;
if (_tipodon5.not_empty())
sep << ' ' << _tipodon5;
if (_dataini.ok())
{
sep << " dal ";
@ -699,16 +712,39 @@ bool TStatDonGrRh::riepilogo()
filtro << format("(92->CODSEZ <= \"%s\")",(const char*)_sezfin);
}
// filtro per tipo donazione
if (_tipodon.not_empty())
TString256 filtrotd = "";
if (_tipodon1.not_empty())
filtrotd << format("(92->TIPODON==\"%s\")",(const char*)_tipodon1);
if (_tipodon2.not_empty())
{
if (filtro.empty())
filtro = format("(92->TIPODON==\"%s\")",(const char*)_tipodon);
else
{
if (!filtrotd.empty())
filtrotd << " || ";
filtrotd << format("(92->TIPODON==\"%s\")",(const char*)_tipodon2);
}
if (_tipodon3.not_empty())
{
if (!filtrotd.empty())
filtrotd << " || ";
filtrotd << format("(92->TIPODON==\"%s\")",(const char*)_tipodon3);
}
if (_tipodon4.not_empty())
{
if (!filtrotd.empty())
filtrotd << " || ";
filtrotd << format("(92->TIPODON==\"%s\")",(const char*)_tipodon4);
}
if (_tipodon5.not_empty())
{
if (!filtrotd.empty())
filtrotd << " || ";
filtrotd << format("(92->TIPODON==\"%s\")",(const char*)_tipodon5);
}
if (!filtrotd.empty())
{
if (!filtro.empty())
filtro << " && ";
filtro << format("(92->TIPODON==\"%s\")",(const char*)_tipodon);
}
}
filtro << '(' << filtrotd << ')';
}
_cur->setfilter((const char*) filtro, TRUE);
TString16 codsez, codsot, tipodon, sesso;
TDate datadon;

View File

@ -10,8 +10,16 @@
#define F_SOTFIN 107
#define F_D_SOTFIN 108
#define F_DATAINI 301
#define F_DATAFIN 302
#define F_TIPODON 303
#define F_D_TIPODON 304
#define F_SOLOTOT 305
#define F_DATAINI 301
#define F_DATAFIN 302
#define F_TIPODON1 303
#define F_TIPODON2 304
#define F_TIPODON3 305
#define F_TIPODON4 306
#define F_TIPODON5 307
#define F_D_TIPODON1 308
#define F_D_TIPODON2 309
#define F_D_TIPODON3 310
#define F_D_TIPODON4 311
#define F_D_TIPODON5 312
#define F_SOLOTOT 316

View File

@ -1,6 +1,6 @@
#include "at3600a.h"
PAGE "Statistica donazioni/donatori" -1 -1 78 12
PAGE "Statistica donazioni/donatori" -1 -1 78 16
GROUPBOX DLG_NULL 77 4
BEGIN
@ -117,7 +117,7 @@ BEGIN
HELP "Sottogruppo finale"
END
GROUPBOX DLG_NULL 77 5
GROUPBOX DLG_NULL 77 9
BEGIN
PROMPT 1 5 "Opzioni per la statistica"
END
@ -134,29 +134,109 @@ BEGIN
HELP "Data finale"
END
STRING F_TIPODON 2
STRING F_TIPODON1 2
BEGIN
PROMPT 2 7 "Tipo donazioni "
FLAGS "U"
USE TDN
INPUT CODTAB F_TIPODON
INPUT CODTAB F_TIPODON1
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@30" S0
OUTPUT F_TIPODON CODTAB
OUTPUT F_D_TIPODON S0
OUTPUT F_TIPODON1 CODTAB
OUTPUT F_D_TIPODON1 S0
CHECKTYPE NORMAL
WARNING "Codice non presente"
END
STRING F_D_TIPODON 30
STRING F_D_TIPODON1 30
BEGIN
PROMPT 23 7 ""
FLAGS "D"
END
STRING F_TIPODON2 2
BEGIN
PROMPT 2 8 " "
FLAGS "U"
USE TDN
INPUT CODTAB F_TIPODON2
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@30" S0
OUTPUT F_TIPODON2 CODTAB
OUTPUT F_D_TIPODON2 S0
CHECKTYPE NORMAL
WARNING "Codice non presente"
END
STRING F_D_TIPODON2 30
BEGIN
PROMPT 23 8 ""
FLAGS "D"
END
STRING F_TIPODON3 2
BEGIN
PROMPT 2 9 " "
FLAGS "U"
USE TDN
INPUT CODTAB F_TIPODON3
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@30" S0
OUTPUT F_TIPODON3 CODTAB
OUTPUT F_D_TIPODON3 S0
CHECKTYPE NORMAL
WARNING "Codice non presente"
END
STRING F_D_TIPODON3 30
BEGIN
PROMPT 23 9 ""
FLAGS "D"
END
STRING F_TIPODON4 2
BEGIN
PROMPT 2 10 " "
FLAGS "U"
USE TDN
INPUT CODTAB F_TIPODON4
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@30" S0
OUTPUT F_TIPODON4 CODTAB
OUTPUT F_D_TIPODON4 S0
CHECKTYPE NORMAL
WARNING "Codice non presente"
END
STRING F_D_TIPODON4 30
BEGIN
PROMPT 23 10 ""
FLAGS "D"
END
STRING F_TIPODON5 2
BEGIN
PROMPT 2 11 " "
FLAGS "U"
USE TDN
INPUT CODTAB F_TIPODON5
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@30" S0
OUTPUT F_TIPODON5 CODTAB
OUTPUT F_D_TIPODON5 S0
CHECKTYPE NORMAL
WARNING "Codice non presente"
END
STRING F_D_TIPODON5 30
BEGIN
PROMPT 23 11 ""
FLAGS "D"
END
BOOLEAN F_SOLOTOT
BEGIN
PROMPT 2 8 "Stampa solo totale finale (non stampa il dettaglio per sezione)"
PROMPT 2 12 "Stampa solo totale finale (non stampa il dettaglio per sezione)"
END
BUTTON DLG_OK 9 2