Patch level :
Files correlati : Ricompilazione Demo : [ ] Commento : Convocazioni: possibilita di selezionare mod. di convoc. e se convocare tutti quelli col punto (anche di altre sezioni); aggiunto in elenco sogg. convocati la data ultima donazione git-svn-id: svn://10.65.10.50/trunk@7780 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
758bd65930
commit
bc2a58a893
114
at/at0400.cpp
114
at/at0400.cpp
@ -46,6 +46,7 @@ class TGestioneConvocazioni: public TRelation_application
|
|||||||
TString16 _tipo; // tipo donazione
|
TString16 _tipo; // tipo donazione
|
||||||
TString16 _codsez; // codice sezione convocata
|
TString16 _codsez; // codice sezione convocata
|
||||||
TString16 _codsot; // codice sottogruppo
|
TString16 _codsot; // codice sottogruppo
|
||||||
|
TString16 _modconv; // modalita di convocazione
|
||||||
TDate _dataini;
|
TDate _dataini;
|
||||||
bool _tutti, _ritarda;
|
bool _tutti, _ritarda;
|
||||||
int _maxrit;
|
int _maxrit;
|
||||||
@ -97,7 +98,11 @@ void TGestioneConvocazioni::init_modify_mode(TMask& m)
|
|||||||
m.show(-1);
|
m.show(-1);
|
||||||
m.hide(-2);
|
m.hide(-2);
|
||||||
if (app()._inserimento)
|
if (app()._inserimento)
|
||||||
|
{
|
||||||
m.enable(-3);
|
m.enable(-3);
|
||||||
|
m.set(F_TUTTI, TRUE);
|
||||||
|
m.set(F_MODCONV, "PO");
|
||||||
|
}
|
||||||
else
|
else
|
||||||
m.disable(-3);
|
m.disable(-3);
|
||||||
}
|
}
|
||||||
@ -114,7 +119,7 @@ bool TGestioneConvocazioni::filter_func_convoc(const TRelation* rel)
|
|||||||
const bool dimesso = rel->lfile(ALIAS_CTD).get_bool("B0");
|
const bool dimesso = rel->lfile(ALIAS_CTD).get_bool("B0");
|
||||||
filtrato = (cat.not_empty() && (stato == 'I' || stato == 'F') && !dimesso && escluso.empty());
|
filtrato = (cat.not_empty() && (stato == 'I' || stato == 'F') && !dimesso && escluso.empty());
|
||||||
if (filtrato)
|
if (filtrato)
|
||||||
filtrato = ((modconv.empty()) || (modconv == "PO") || (modconv == "IN"));
|
filtrato = ((modconv.empty()) || (modconv == app()._modconv) || (modconv == "IN"));
|
||||||
if (filtrato)
|
if (filtrato)
|
||||||
{
|
{
|
||||||
filtrato = FALSE;
|
filtrato = FALSE;
|
||||||
@ -174,11 +179,10 @@ bool TGestioneConvocazioni::filter_func_convoc(const TRelation* rel)
|
|||||||
bool TGestioneConvocazioni::sezione_handler(TMask_field& f, KEY k)
|
bool TGestioneConvocazioni::sezione_handler(TMask_field& f, KEY k)
|
||||||
{
|
{
|
||||||
if (f.to_check(k))
|
if (f.to_check(k))
|
||||||
//if (f.to_check(k))
|
|
||||||
{
|
{
|
||||||
TMask& m = f.mask();
|
TMask& m = f.mask();
|
||||||
//if (m.get(F_DATAINI).empty() && (m.mode() == MODE_INS))
|
if (m.get(F_DATAINI).empty() && (m.mode() == MODE_INS))
|
||||||
if (m.mode() == MODE_INS)
|
//if (m.mode() == MODE_INS)
|
||||||
{
|
{
|
||||||
//const TString16 codsez = m.get(F_CODSEZ);
|
//const TString16 codsez = m.get(F_CODSEZ);
|
||||||
//const TString16 codsot = m.get(F_CODSOT);
|
//const TString16 codsot = m.get(F_CODSOT);
|
||||||
@ -281,13 +285,14 @@ bool TGestioneConvocazioni::esegui_handler(TMask_field& f, KEY k)
|
|||||||
{
|
{
|
||||||
if (k == K_SPACE)
|
if (k == K_SPACE)
|
||||||
{
|
{
|
||||||
|
f.disable();
|
||||||
TMask& m = f.mask();
|
TMask& m = f.mask();
|
||||||
TCursor* cur = app()._cur;
|
TCursor* cur = app()._cur;
|
||||||
app()._numero = m.get_long(F_NUMERO);
|
app()._numero = m.get_long(F_NUMERO);
|
||||||
app()._data = m.get(F_DATA);
|
app()._data = m.get(F_DATA);
|
||||||
app()._punto = m.get(F_PUNTO);
|
app()._punto = m.get(F_PUNTO);
|
||||||
//app()._tutti = m.get_bool(F_TUTTI);
|
app()._tutti = m.get_bool(F_TUTTI);
|
||||||
app()._tutti = TRUE;
|
//app()._tutti = TRUE;
|
||||||
app()._tipo = m.get(F_TIPO);
|
app()._tipo = m.get(F_TIPO);
|
||||||
app()._codsez = m.get(F_CODSEZ);
|
app()._codsez = m.get(F_CODSEZ);
|
||||||
app()._codsot = m.get(F_CODSOT);
|
app()._codsot = m.get(F_CODSOT);
|
||||||
@ -296,6 +301,7 @@ bool TGestioneConvocazioni::esegui_handler(TMask_field& f, KEY k)
|
|||||||
app()._dataini = app()._data;
|
app()._dataini = app()._data;
|
||||||
app()._ritarda = m.get_bool(F_RITARDA);
|
app()._ritarda = m.get_bool(F_RITARDA);
|
||||||
app()._maxrit = m.get_int(F_MAXRIT);
|
app()._maxrit = m.get_int(F_MAXRIT);
|
||||||
|
app()._modconv = m.get(F_MODCONV);
|
||||||
if (app()._numero == 0 || !app()._data.ok() || app()._punto.empty() || app()._tipo.empty())
|
if (app()._numero == 0 || !app()._data.ok() || app()._punto.empty() || app()._tipo.empty())
|
||||||
return f.error_box("Mancano i dati fondamentali per la convocazione");
|
return f.error_box("Mancano i dati fondamentali per la convocazione");
|
||||||
// filtro per sezione
|
// filtro per sezione
|
||||||
@ -408,57 +414,61 @@ bool TGestioneConvocazioni::esegui_handler(TMask_field& f, KEY k)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
switch (chiamata)
|
if (dataprossi<=data)
|
||||||
{
|
{
|
||||||
case 'C':
|
switch (chiamata)
|
||||||
nconv++;
|
|
||||||
break;
|
|
||||||
case 'S':
|
|
||||||
nsoll++;
|
|
||||||
break;
|
|
||||||
case 'R':
|
|
||||||
nrit++;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
if (giorni > 0)
|
|
||||||
{
|
|
||||||
datasog = NULLDATE;
|
|
||||||
int partenza;
|
|
||||||
if (datarif <= dataini)
|
|
||||||
partenza = 0;
|
|
||||||
else
|
|
||||||
partenza = (int)(datarif-dataini);
|
|
||||||
|
|
||||||
for (int r=partenza;r<=giorni;r++)
|
|
||||||
{
|
{
|
||||||
if ((numperdata[r]<quanti) && (!datasog.ok()))
|
case 'C':
|
||||||
|
nconv++;
|
||||||
|
break;
|
||||||
|
case 'S':
|
||||||
|
nsoll++;
|
||||||
|
break;
|
||||||
|
case 'R':
|
||||||
|
nrit++;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (giorni > 0)
|
||||||
|
{
|
||||||
|
datasog = NULLDATE;
|
||||||
|
int partenza;
|
||||||
|
if (datarif <= dataini)
|
||||||
|
partenza = 0;
|
||||||
|
else
|
||||||
|
partenza = (int)(datarif-dataini);
|
||||||
|
|
||||||
|
for (int r=partenza;r<=giorni;r++)
|
||||||
{
|
{
|
||||||
datasog = dataini+(long)(r);
|
if ((numperdata[r]<quanti) && (!datasog.ok()))
|
||||||
numperdata[r]++;
|
{
|
||||||
|
datasog = dataini+(long)(r);
|
||||||
|
numperdata[r]++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!datasog.ok())
|
||||||
|
{
|
||||||
|
if (dataprossi < dataini)
|
||||||
|
datasog = dataini;
|
||||||
|
else
|
||||||
|
datasog = dataprossi;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!datasog.ok())
|
TToken_string& row = s.row(r);
|
||||||
{
|
row.add(rec.get(SOG_CODICE));
|
||||||
if (dataprossi < dataini)
|
row.add(rec.get(SOG_COGNOME));
|
||||||
datasog = dataini;
|
row.add(rec.get(SOG_NOME));
|
||||||
else
|
row.add(datasog);
|
||||||
datasog = dataprossi;
|
row.add(chiamata);
|
||||||
}
|
row.add(' '); // stampato
|
||||||
|
row.add(' '); // annullato
|
||||||
|
row.add(rec.get(SOG_DATANASC));
|
||||||
|
row.add(rec.get(SOG_CATDON));
|
||||||
|
row.add(rec.get(SOG_TESSAVIS));
|
||||||
|
row.add(rec.get(SOG_CODSEZ));
|
||||||
|
row.add(rec.get(SOG_CODSOT));
|
||||||
|
row.add(rec.get(SOG_DATAULTDON));
|
||||||
|
r++;
|
||||||
}
|
}
|
||||||
TToken_string& row = s.row(r);
|
|
||||||
row.add(rec.get(SOG_CODICE));
|
|
||||||
row.add(rec.get(SOG_COGNOME));
|
|
||||||
row.add(rec.get(SOG_NOME));
|
|
||||||
row.add(datasog);
|
|
||||||
row.add(chiamata);
|
|
||||||
row.add(' '); // stampato
|
|
||||||
row.add(' '); // annullato
|
|
||||||
row.add(rec.get(SOG_DATANASC));
|
|
||||||
row.add(rec.get(SOG_CATDON));
|
|
||||||
row.add(rec.get(SOG_TESSAVIS));
|
|
||||||
row.add(rec.get(SOG_CODSEZ));
|
|
||||||
row.add(rec.get(SOG_CODSOT));
|
|
||||||
r++;
|
|
||||||
}
|
}
|
||||||
m.set(F_NUMCONV,nconv);
|
m.set(F_NUMCONV,nconv);
|
||||||
m.set(F_NUMSOLL,nsoll);
|
m.set(F_NUMSOLL,nsoll);
|
||||||
@ -505,6 +515,7 @@ bool TGestioneConvocazioni::codice_handler(TMask_field& f, KEY k)
|
|||||||
m.set(F_S_CODSEZ, sog.get(SOG_CODSEZ));
|
m.set(F_S_CODSEZ, sog.get(SOG_CODSEZ));
|
||||||
m.set(F_S_CODSOT, sog.get(SOG_CODSOT));
|
m.set(F_S_CODSOT, sog.get(SOG_CODSOT));
|
||||||
m.set(F_S_CATDON, sog.get(SOG_CATDON));
|
m.set(F_S_CATDON, sog.get(SOG_CATDON));
|
||||||
|
m.set(F_S_DATAULTDON, sog.get(SOG_DATAULTDON));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
ok = FALSE; // codice non esistente
|
ok = FALSE; // codice non esistente
|
||||||
@ -696,6 +707,7 @@ int TGestioneConvocazioni::read(TMask& m)
|
|||||||
row.add(soggetti.get(SOG_TESSAVIS));
|
row.add(soggetti.get(SOG_TESSAVIS));
|
||||||
row.add(soggetti.get(SOG_CODSEZ));
|
row.add(soggetti.get(SOG_CODSEZ));
|
||||||
row.add(soggetti.get(SOG_CODSOT));
|
row.add(soggetti.get(SOG_CODSOT));
|
||||||
|
row.add(soggetti.get(SOG_DATAULTDON));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
17
at/at0400a.h
17
at/at0400a.h
@ -14,13 +14,15 @@
|
|||||||
#define F_DENSOT 111
|
#define F_DENSOT 111
|
||||||
#define F_DATAINI 112
|
#define F_DATAINI 112
|
||||||
#define F_DATAINIGIO 113
|
#define F_DATAINIGIO 113
|
||||||
#define F_RITARDA 114
|
#define F_TUTTI 114
|
||||||
#define F_MAXRIT 115
|
#define F_RITARDA 115
|
||||||
#define F_NOTE 116
|
#define F_MAXRIT 116
|
||||||
#define F_NUMCONV 117
|
#define F_MODCONV 117
|
||||||
#define F_NUMSOLL 118
|
#define F_NOTE 118
|
||||||
#define F_NUMRIT 119
|
#define F_NUMCONV 119
|
||||||
#define F_CONVOCATI 120
|
#define F_NUMSOLL 120
|
||||||
|
#define F_NUMRIT 121
|
||||||
|
#define F_CONVOCATI 122
|
||||||
#define F_CODSEZH 151
|
#define F_CODSEZH 151
|
||||||
#define F_CODSOTH 152
|
#define F_CODSOTH 152
|
||||||
|
|
||||||
@ -39,6 +41,7 @@
|
|||||||
#define F_S_TESSAVIS 110
|
#define F_S_TESSAVIS 110
|
||||||
#define F_S_CODSEZ 111
|
#define F_S_CODSEZ 111
|
||||||
#define F_S_CODSOT 112
|
#define F_S_CODSOT 112
|
||||||
|
#define F_S_DATAULTDON 113
|
||||||
|
|
||||||
#define F_S_DENSEZ 151
|
#define F_S_DENSEZ 151
|
||||||
#define F_S_DENSOT 152
|
#define F_S_DENSOT 152
|
||||||
|
@ -51,7 +51,7 @@ ENDPAGE
|
|||||||
|
|
||||||
PAGE "Testata" -1 -1 78 20
|
PAGE "Testata" -1 -1 78 20
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 77 13
|
GROUPBOX DLG_NULL 77 15
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 0 "Opzioni per la convocazione"
|
PROMPT 1 0 "Opzioni per la convocazione"
|
||||||
END
|
END
|
||||||
@ -265,43 +265,62 @@ BEGIN
|
|||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
BOOLEAN F_TUTTI
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 10 "Convoca anche donatori di altre sezioni con questo punto prelievo"
|
||||||
|
FIELD TUTTI
|
||||||
|
END
|
||||||
|
|
||||||
BOOLEAN F_RITARDA
|
BOOLEAN F_RITARDA
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 9 "Ritardatari"
|
PROMPT 2 11 "Ritardatari"
|
||||||
FIELD RITARDA
|
FIELD RITARDA
|
||||||
GROUP 3
|
GROUP 3
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_MAXRIT 3
|
NUMBER F_MAXRIT 3
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 20 9 "Massimo ritardo in giorni "
|
PROMPT 20 11 "Massimo ritardo in giorni "
|
||||||
FIELD MAXRIT
|
FIELD MAXRIT
|
||||||
GROUP 3
|
GROUP 3
|
||||||
END
|
END
|
||||||
|
|
||||||
|
LISTBOX F_MODCONV 13
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 12 "Modalita' convoc. "
|
||||||
|
FIELD MODCONV
|
||||||
|
#include "modalita.h"
|
||||||
|
GROUP 3
|
||||||
|
END
|
||||||
|
|
||||||
STRING F_NOTE 100 50
|
STRING F_NOTE 100 50
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 10 "Note "
|
PROMPT 2 13 "Note "
|
||||||
FIELD NOTE
|
FIELD NOTE
|
||||||
END
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 77 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 15 "Risultato della convocazione"
|
||||||
|
END
|
||||||
|
|
||||||
NUMBER F_NUMCONV 4
|
NUMBER F_NUMCONV 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 11 "Numero convocati "
|
PROMPT 2 16 "Numero convocati "
|
||||||
FIELD NUMCONV
|
FIELD NUMCONV
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_NUMSOLL 4
|
NUMBER F_NUMSOLL 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 27 11 "sollecitati "
|
PROMPT 27 16 "sollecitati "
|
||||||
FIELD NUMSOLL
|
FIELD NUMSOLL
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_NUMRIT 4
|
NUMBER F_NUMRIT 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 50 11 "ritardatari "
|
PROMPT 50 16 "ritardatari "
|
||||||
FIELD NUMRIT
|
FIELD NUMRIT
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
@ -331,6 +350,7 @@ BEGIN
|
|||||||
ITEM "Tessera"
|
ITEM "Tessera"
|
||||||
ITEM "Se"
|
ITEM "Se"
|
||||||
ITEM "So"
|
ITEM "So"
|
||||||
|
ITEM "Data u.d."
|
||||||
END
|
END
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
@ -481,6 +501,12 @@ BEGIN
|
|||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
END
|
END
|
||||||
|
|
||||||
|
DATE F_S_DATAULTDON
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 5 ""
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
STRING F_S_DENSOT 25 23
|
STRING F_S_DENSOT 25 23
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 49 4 ""
|
PROMPT 49 4 ""
|
||||||
@ -493,7 +519,6 @@ BEGIN
|
|||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
//STRING F_S_DESC_CATDON 25
|
//STRING F_S_DESC_CATDON 25
|
||||||
//BEGIN
|
//BEGIN
|
||||||
// PROMPT 12 8 ""
|
// PROMPT 12 8 ""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user