Patch level : at
Files correlati : Ricompilazione Demo : [ ] Commento : riorganizzazione storica avis git-svn-id: svn://10.65.10.50/trunk@10590 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
3558de0dc4
commit
c060240c84
10
at/at5.cpp
10
at/at5.cpp
@ -4,7 +4,7 @@
|
||||
|
||||
#include "at5.h"
|
||||
|
||||
#define usage "Error - usage : %s -[0|1|2|3|4|5|7]"
|
||||
#define usage "Error - usage : %s -[0|1|2|3|4]"
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
@ -19,14 +19,10 @@ int main(int argc, char** argv)
|
||||
rt = at5200(argc, argv); break;
|
||||
case 2:
|
||||
rt = at5300(argc, argv); break;
|
||||
case 3:
|
||||
rt = at5400(argc, argv); break;
|
||||
//case 3:
|
||||
//rt = at5400(argc, argv); break;
|
||||
case 4:
|
||||
rt = at5500(argc, argv); break;
|
||||
case 5:
|
||||
rt = at5600(argc, argv); break;
|
||||
case 7:
|
||||
rt = at5800(argc, argv); break;
|
||||
default:
|
||||
error_box(usage, argv[0]) ; rt = 1; break;
|
||||
}
|
||||
|
6
at/at5.h
6
at/at5.h
@ -1,13 +1,11 @@
|
||||
#ifndef __AT5_H
|
||||
#define __AT5_H
|
||||
|
||||
int at5100(int argc, char* argv[]); // parametri
|
||||
int at5100(int argc, char* argv[]); // stampa di controllo controlli sanitari
|
||||
int at5200(int argc, char* argv[]); // situazione sanitaria
|
||||
int at5300(int argc, char* argv[]); // turni per controlli
|
||||
int at5400(int argc, char* argv[]); // riordina donazioni
|
||||
//int at5400(int argc, char* argv[]); // stampa di controllo donazioni
|
||||
int at5500(int argc, char* argv[]); // stampa scadenze per controlli
|
||||
int at5600(int argc, char* argv[]); // stampa soggetti per consenso
|
||||
int at5800(int argc, char* argv[]); // eliminazione convocazioni
|
||||
|
||||
#endif // __AT5_H
|
||||
|
||||
|
300
at/at5100.cpp
300
at/at5100.cpp
@ -1,15 +1,301 @@
|
||||
#include <confapp.h>
|
||||
#include <form.h>
|
||||
#include <mask.h>
|
||||
#include <printapp.h>
|
||||
#include <utility.h>
|
||||
|
||||
class ATParametriSezione : public TConfig_application
|
||||
#include "contsan.h"
|
||||
#include "soggetti.h"
|
||||
#include "sezioni.h"
|
||||
|
||||
#include "at5.h"
|
||||
#include "at5100a.h"
|
||||
|
||||
#define ALIAS_TCS 200
|
||||
|
||||
class TControlloControlli : public TPrintapp
|
||||
{
|
||||
TRelation* _rel;
|
||||
TMask* _msk;
|
||||
int _counter;
|
||||
int _cur;
|
||||
TDate _dataold, _dataini, _datafin;
|
||||
TString16 _tipocon, _sezold;
|
||||
TString16 _sezini, _sotini, _tipostampa, _ordinamento;
|
||||
|
||||
TParagraph_string _cognome_nome;
|
||||
|
||||
protected:
|
||||
virtual bool user_create();
|
||||
virtual bool user_destroy();
|
||||
virtual bool set_print(int m);
|
||||
virtual void set_page(int file, int cnt);
|
||||
virtual bool preprocess_page(int file, int counter);
|
||||
|
||||
public:
|
||||
ATParametriSezione() : TConfig_application(CONFIG_STUDIO) {}
|
||||
virtual ~ATParametriSezione() {}
|
||||
void crea_intestazione();
|
||||
void header_stampa(const TDate data, const TString16 sezione, const TString16 sottog);
|
||||
TMask& app_mask() { return *_msk; }
|
||||
TControlloControlli() : _cognome_nome("",35) {}
|
||||
};
|
||||
|
||||
int at5100 (int argc, char* argv[])
|
||||
HIDDEN inline TControlloControlli& app() { return (TControlloControlli&) main_app(); }
|
||||
|
||||
void TControlloControlli::set_page(int file, int cnt)
|
||||
{
|
||||
ATParametriSezione appc;
|
||||
appc.run(argc, argv, "Parametri Sezione");
|
||||
set_row(1,"@0g#D" , &_counter);
|
||||
set_row(1,"@7g@pn" , FLD(LF_SOGGETTI,SOG_CODICE,"########"));
|
||||
set_row(1,"@16g@S" , FLD(LF_SOGGETTI,SOG_TESSAVIS));
|
||||
set_row(1,"@24g#a" , &_cognome_nome);
|
||||
set_row(1,"@60g@ld" , FLD(LF_SOGGETTI,SOG_DATANASC));
|
||||
set_row(1,"@71g@S" , FLD(LF_SOGGETTI,SOG_CODSEZ));
|
||||
set_row(1,"@74g@S" , FLD(LF_SOGGETTI,SOG_CODSOT));
|
||||
set_row(1,"@77g@ld" , FLD(LF_CONTSAN,CON_DATACON));
|
||||
set_row(1,"@88g@S" , FLD(LF_CONTSAN,CON_TIPOCON));
|
||||
set_row(1,"@91g@S" , FLD(LF_CONTSAN,CON_IDON1));
|
||||
set_row(1,"@94g@S" , FLD(LF_CONTSAN,CON_IDON2));
|
||||
set_row(1,"@97g@S" , FLD(LF_CONTSAN,CON_IDON3));
|
||||
set_row(1,"@100g@S" , FLD(LF_CONTSAN,CON_IDON4));
|
||||
set_row(1,"@103g@pn" , FLD(LF_CONTSAN,CON_INTSI,"###"));
|
||||
set_row(1,"@107g@pn" , FLD(LF_CONTSAN,CON_INTAF,"###"));
|
||||
set_row(1,"@111g@S" , FLD(LF_CONTSAN,CON_PROSSTIPO));
|
||||
set_row(1,"@114g@ld" , FLD(LF_CONTSAN,CON_PROSSDATA));
|
||||
set_row(1,"@125g@S" , FLD(LF_CONTSAN,CON_MOTIVO));
|
||||
set_row(2,"@60g@S" , FLD(LF_CONTSAN,CON_RESPONSAB));
|
||||
}
|
||||
|
||||
bool TControlloControlli::preprocess_page(int file, int counter)
|
||||
{
|
||||
// contatore soggetti stampati
|
||||
// per ora non c'è
|
||||
TString80 nome = current_cursor()->curr(LF_SOGGETTI).get(SOG_COGNOME);
|
||||
nome << " ";
|
||||
nome << current_cursor()->curr(LF_SOGGETTI).get(SOG_NOME);
|
||||
_cognome_nome = nome;
|
||||
|
||||
// salto pagina se cambio punto di rottura
|
||||
switch (_tipostampa[0])
|
||||
{
|
||||
case 'D':
|
||||
{
|
||||
const TDate datanew = current_cursor()->curr().get(CON_DATACON);
|
||||
if (datanew != _dataold )
|
||||
{
|
||||
if (_dataold.ok())
|
||||
printer().formfeed();
|
||||
_dataold = datanew;
|
||||
header_stampa(datanew,"","");
|
||||
_counter = 0;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'S':
|
||||
{
|
||||
TString16 sezione = current_cursor()->curr(LF_SOGGETTI).get(SOG_CODSEZ);
|
||||
TString16 sottog = current_cursor()->curr(LF_SOGGETTI).get(SOG_CODSOT);
|
||||
TString16 seznew = "";
|
||||
seznew << sezione;
|
||||
seznew << '/';
|
||||
seznew << sottog;
|
||||
if (seznew != _sezold )
|
||||
{
|
||||
if (_sezold != "****")
|
||||
printer().formfeed();
|
||||
_sezold = seznew;
|
||||
header_stampa(NULLDATE,sezione,sottog);
|
||||
_counter = 0;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
_counter++;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void TControlloControlli::header_stampa(const TDate data, const TString16 sezione, const TString16 sottog)
|
||||
{
|
||||
TString intestazione(132);
|
||||
intestazione = "STAMPA CONTROLLI SANITARI ";
|
||||
switch (_tipostampa[0])
|
||||
{
|
||||
case 'D':
|
||||
{
|
||||
intestazione << "PER DATA ";
|
||||
intestazione << data;
|
||||
}
|
||||
break;
|
||||
case 'S':
|
||||
{
|
||||
intestazione << "PER SEZIONE ";
|
||||
intestazione << sezione;
|
||||
if (sottog.not_empty())
|
||||
{
|
||||
intestazione << "/";
|
||||
intestazione << sottog;
|
||||
}
|
||||
TLocalisamfile sez(LF_SEZIONI);
|
||||
sez.setkey(1);
|
||||
TRectype& recsez = sez.curr();
|
||||
recsez.zero();
|
||||
recsez.put(SEZ_CODSEZ, sezione);
|
||||
recsez.put(SEZ_CODSOT, sottog);
|
||||
if (sez.read() == NOERR)
|
||||
{
|
||||
intestazione << " ";
|
||||
intestazione << recsez.get(SEZ_DENSEZ);
|
||||
TString80 densot = recsez.get(SEZ_DENSOT);
|
||||
if (densot.not_empty())
|
||||
{
|
||||
intestazione << "/";
|
||||
intestazione << densot;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
intestazione.center_just();
|
||||
set_header(1,"@0g%s", (const char*) intestazione);
|
||||
intestazione = "Pag. @#";
|
||||
set_header(1, "@120g%s", (const char*) intestazione);
|
||||
return;
|
||||
}
|
||||
|
||||
bool TControlloControlli::set_print(int m)
|
||||
{
|
||||
KEY tasto;
|
||||
tasto = _msk->run();
|
||||
if (tasto == K_ENTER)
|
||||
{
|
||||
_sezini = _msk->get(F_SEZINI);
|
||||
_sotini = _msk->get(F_SOTINI);
|
||||
_dataini = _msk->get_date(F_DATAINI);
|
||||
_datafin = _msk->get_date(F_DATAFIN);
|
||||
_tipocon = _msk->get(F_TIPOCON);
|
||||
|
||||
_tipostampa = _msk->get(F_TIPOSTAMPA);
|
||||
_ordinamento = _msk->get(F_ORDINAMENTO);
|
||||
TString80 chiave = "";
|
||||
switch (_tipostampa[0])
|
||||
{
|
||||
case 'D':
|
||||
chiave = "93->DATACON|";
|
||||
break;
|
||||
case 'S':
|
||||
chiave = "90->CODSEZ|90->CODSOT|93->DATACON|";
|
||||
break;
|
||||
}
|
||||
switch (_ordinamento[0])
|
||||
{
|
||||
case 'C':
|
||||
chiave << "UPPER(90->COGNOME)|UPPER(90->NOME)";
|
||||
break;
|
||||
}
|
||||
TString80 filtro = "";
|
||||
// filtro per tipo controlli
|
||||
if (_tipocon.not_empty())
|
||||
filtro = format("(TIPOCON == \"%s\")",(const char*)_tipocon);
|
||||
// filtro per sezione/sottogruppo
|
||||
if (_sezini.not_empty())
|
||||
{
|
||||
if (filtro.empty())
|
||||
filtro = format("(90->CODSEZ == \"%s\")",(const char*)_sezini);
|
||||
else
|
||||
{
|
||||
filtro << " && ";
|
||||
filtro << format("(90->CODSEZ == \"%s\")",(const char*)_sezini);
|
||||
}
|
||||
if (_sotini.not_empty())
|
||||
{
|
||||
if (filtro.empty())
|
||||
filtro = format("(90->CODSOT == \"%s\")",(const char*)_sotini);
|
||||
else
|
||||
{
|
||||
filtro << " && ";
|
||||
filtro << format("(90->CODSOT == \"%s\")",(const char*)_sotini);
|
||||
}
|
||||
}
|
||||
}
|
||||
// filtro per data
|
||||
TRectype da(LF_CONTSAN);
|
||||
TRectype a (LF_CONTSAN);
|
||||
if (_dataini.ok())
|
||||
da.put(CON_DATACON, _dataini);
|
||||
if (_datafin.ok())
|
||||
a.put(CON_DATACON, _datafin);
|
||||
_cur = add_cursor(new TSorted_cursor(_rel, (const char*) chiave, "", 2, &da, &a));
|
||||
current_cursor()->setfilter((const char*) filtro, TRUE);
|
||||
_counter = 0;
|
||||
_dataold = NULLDATE;
|
||||
_sezold = "****";
|
||||
reset_files();
|
||||
add_file(LF_CONTSAN);
|
||||
reset_print();
|
||||
crea_intestazione();
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void TControlloControlli::crea_intestazione()
|
||||
{
|
||||
reset_header();
|
||||
TString sep(132);
|
||||
sep = "Selezioni stampa: ";
|
||||
if (_sezini.not_empty())
|
||||
{
|
||||
sep << "Sez. ";
|
||||
sep << _sezini;
|
||||
if (_sotini.not_empty())
|
||||
{
|
||||
sep << "/";
|
||||
sep << _sotini;
|
||||
}
|
||||
sep << "; ";
|
||||
}
|
||||
if (_dataini.ok())
|
||||
{
|
||||
sep << "Dal ";
|
||||
sep << _dataini.string();
|
||||
}
|
||||
if (_datafin.ok())
|
||||
{
|
||||
sep << " Al ";
|
||||
sep << _datafin.string();
|
||||
}
|
||||
if (_dataini.ok() || _datafin.ok())
|
||||
sep << "; ";
|
||||
if (_tipocon.not_empty())
|
||||
{
|
||||
sep << "Tipo ";
|
||||
sep << _tipocon;
|
||||
sep << "; ";
|
||||
}
|
||||
sep.center_just();
|
||||
set_header(2,"@0g%s", (const char*) sep);
|
||||
set_header(3,"@0gProg.@7gCodice@16gTessera@24gCognome e nome@60gNato il@71gSe/So@77gData con/tipo@91gIdoneita'@103g SI AF@111gPross.tipo@125gMot.");
|
||||
set_header(4,"@60gResponsabile");
|
||||
set_header(5,"@0g------@7g--------@16g-------@24g-----------------------------------@60g----------@71g-----@77g----------@88g--@91g-- -- -- --@103g--- ---@111g-- ----------@125g----");
|
||||
}
|
||||
|
||||
bool TControlloControlli::user_create()
|
||||
{
|
||||
_rel = new TRelation(LF_CONTSAN);
|
||||
_rel->add(LF_SOGGETTI, "CODICE==CODICE");
|
||||
_rel->add("TCS", "CODTAB==TIPOCON",1,0,ALIAS_TCS);
|
||||
_msk = new TMask("at5100a");
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool TControlloControlli::user_destroy()
|
||||
{
|
||||
delete _msk;
|
||||
delete _rel;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
int at5100(int argc, char* argv[])
|
||||
{
|
||||
TControlloControlli a;
|
||||
a.run(argc, argv, "Stampa di controllo controlli sanitari");
|
||||
return 0;
|
||||
}
|
||||
|
550
at/at5100a.uml
550
at/at5100a.uml
@ -1,460 +1,180 @@
|
||||
#include "at5100a.h"
|
||||
|
||||
/* toolbar */
|
||||
TOOLBAR "" 0 20 0 2
|
||||
PAGE "Stampa di controllo controlli sanitari" -1 -1 78 20
|
||||
|
||||
BUTTON DLG_OK 10 2
|
||||
GROUPBOX DLG_NULL 77 4
|
||||
BEGIN
|
||||
PROMPT -12 -1 ""
|
||||
PROMPT 1 1 "Scelta sezione/sottogruppo"
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 10 2
|
||||
STRING F_SEZINI 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
PROMPT 2 2 "Sezione "
|
||||
FLAGS "U"
|
||||
USE LF_SEZIONI
|
||||
INPUT CODSEZ F_SEZINI
|
||||
INPUT CODSOT F_SOTINI
|
||||
DISPLAY "Cod.sez" CODSEZ
|
||||
DISPLAY "Cod.sot." CODSOT
|
||||
DISPLAY "Sezione@25" DENSEZ
|
||||
DISPLAY "Sottogruppo@25" DENSOT
|
||||
OUTPUT F_SEZINI CODSEZ
|
||||
OUTPUT F_D_SEZINI DENSEZ
|
||||
OUTPUT F_SOTINI CODSOT
|
||||
OUTPUT F_D_SOTINI DENSOT
|
||||
CHECKTYPE SEARCH
|
||||
HELP "Codice sezione da stampare"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
STRING F_D_SEZINI 25
|
||||
BEGIN
|
||||
PROMPT 20 2 ""
|
||||
FLAGS "U"
|
||||
USE LF_SEZIONI KEY 2
|
||||
INPUT DENSEZ F_D_SEZINI
|
||||
DISPLAY "Sezione@25" DENSEZ
|
||||
DISPLAY "Sottogruppo@25" DENSOT
|
||||
DISPLAY "Cod.sez" CODSEZ
|
||||
DISPLAY "Cod.sot." CODSOT
|
||||
COPY OUTPUT F_SEZINI
|
||||
CHECKTYPE NORMAL
|
||||
HELP "Sezione da stampare"
|
||||
END
|
||||
|
||||
PAGE "Automatismi" -1 -1 78 20
|
||||
STRING F_SOTINI 2
|
||||
BEGIN
|
||||
PROMPT 2 3 "Sottogruppo "
|
||||
COPY ALL F_SEZINI
|
||||
CHECKTYPE SEARCH
|
||||
HELP "Codice sottogruppo da stampare"
|
||||
END
|
||||
|
||||
STRING F_D_SOTINI 25
|
||||
BEGIN
|
||||
PROMPT 20 3 ""
|
||||
FLAGS "U"
|
||||
COPY USE F_D_SEZINI
|
||||
INPUT DENSEZ F_D_SEZINI
|
||||
INPUT DENSOT F_D_SOTINI
|
||||
COPY DISPLAY F_D_SEZINI
|
||||
COPY OUTPUT F_D_SEZINI
|
||||
CHECKTYPE NORMAL
|
||||
HELP "Sottogruppo da cui partire"
|
||||
END
|
||||
|
||||
//STRING F_SEZFIN 2
|
||||
//BEGIN
|
||||
// PROMPT 41 2 "A "
|
||||
// FLAGS "U"
|
||||
// USE LF_SEZIONI
|
||||
// INPUT CODSEZ F_SEZFIN
|
||||
// INPUT CODSOT F_SOTFIN
|
||||
// DISPLAY "Cod.sez" CODSEZ
|
||||
// DISPLAY "Cod.sot." CODSOT
|
||||
// DISPLAY "Sezione@25" DENSEZ
|
||||
// DISPLAY "Sottogruppo@25" DENSOT
|
||||
// OUTPUT F_SEZFIN CODSEZ
|
||||
// OUTPUT F_D_SEZFIN DENSEZ
|
||||
// OUTPUT F_SOTFIN CODSOT
|
||||
// OUTPUT F_D_SOTFIN DENSOT
|
||||
// CHECKTYPE SEARCH
|
||||
// HELP "Codice sezione finale"
|
||||
//END
|
||||
|
||||
//STRING F_D_SEZFIN 25
|
||||
//BEGIN
|
||||
// PROMPT 49 2 ""
|
||||
// FLAGS "U"
|
||||
// USE LF_SEZIONI KEY 2
|
||||
// INPUT DENSEZ F_D_SEZFIN
|
||||
// DISPLAY "Sezione@25" DENSEZ
|
||||
// DISPLAY "Sottogruppo@25" DENSOT
|
||||
// DISPLAY "Cod.sez" CODSEZ
|
||||
// DISPLAY "Cod.sot." CODSOT
|
||||
// COPY OUTPUT F_SEZFIN
|
||||
// CHECKTYPE NORMAL
|
||||
// HELP "Sezione finale"
|
||||
//END
|
||||
|
||||
//STRING F_SOTFIN 2
|
||||
//BEGIN
|
||||
// PROMPT 41 3 " "
|
||||
// COPY ALL F_SEZFIN
|
||||
// CHECKTYPE SEARCH
|
||||
// HELP "Codice sottogruppo finale"
|
||||
//END
|
||||
|
||||
//STRING F_D_SOTFIN 25
|
||||
//BEGIN
|
||||
// PROMPT 49 3 ""
|
||||
// FLAGS "U"
|
||||
// COPY USE F_D_SEZFIN
|
||||
// INPUT DENSEZ F_D_SEZFIN
|
||||
// INPUT DENSOT F_D_SOTFIN
|
||||
// COPY DISPLAY F_D_SEZFIN
|
||||
// COPY OUTPUT F_D_SEZFIN
|
||||
// CHECKTYPE NORMAL
|
||||
// HELP "Sottogruppo finale"
|
||||
//END
|
||||
|
||||
GROUPBOX DLG_NULL 77 5
|
||||
BEGIN
|
||||
PROMPT 1 0 "Primo passaggio di categoria"
|
||||
PROMPT 1 5 "Selezione dati per la stampa"
|
||||
END
|
||||
|
||||
NUMBER AT_NUMDON1 3
|
||||
DATA F_DATAINI
|
||||
BEGIN
|
||||
PROMPT 2 1 "Donazioni necessarie "
|
||||
HELP "Numero donazioni necessarie per il passaggio"
|
||||
FIELD NumDon1
|
||||
PROMPT 2 6 "Controlli dal "
|
||||
END
|
||||
|
||||
STRING AT_CATINI1 2
|
||||
DATA F_DATAFIN
|
||||
BEGIN
|
||||
PROMPT 2 2 "Categoria di partenza "
|
||||
HELP "Categoria di partenza per il passaggio (possibile vuota)"
|
||||
USE CTD
|
||||
INPUT CODTAB[1,2] AT_CATINI1
|
||||
DISPLAY "Cat." CODTAB[1,2]
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT AT_CATINI1 CODTAB[1,2]
|
||||
OUTPUT AT_D_CATINI1 S0
|
||||
FIELD CatIni1
|
||||
CHECKTYPE NORMAL
|
||||
PROMPT 30 6 "al "
|
||||
END
|
||||
|
||||
STRING AT_CATFIN1 2
|
||||
STRING F_TIPOCON 2
|
||||
BEGIN
|
||||
PROMPT 2 3 "Categoria di arrivo "
|
||||
HELP "Categoria di arrivo per il passaggio (possibile vuota)"
|
||||
USE CTD
|
||||
INPUT CODTAB[1,2] AT_CATFIN1
|
||||
DISPLAY "Cat." CODTAB[1,2]
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT AT_CATFIN1 CODTAB[1,2]
|
||||
OUTPUT AT_D_CATFIN1 S0
|
||||
FIELD CatFin1
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 77 5
|
||||
BEGIN
|
||||
PROMPT 1 5 "Secondo passaggio di categoria"
|
||||
END
|
||||
|
||||
NUMBER AT_NUMDON2 3
|
||||
BEGIN
|
||||
PROMPT 2 6 "Donazioni necessarie "
|
||||
HELP "Numero donazioni necessarie per il passaggio"
|
||||
FIELD NumDon2
|
||||
END
|
||||
|
||||
BOOLEAN AT_STTESS2
|
||||
BEGIN
|
||||
PROMPT 30 6 "Passaggio con stampa tessera"
|
||||
HELP "Eseguire il cambio di categoria al momento della stampa tessera"
|
||||
FIELD StTess2
|
||||
END
|
||||
|
||||
STRING AT_CATINI2 2
|
||||
BEGIN
|
||||
PROMPT 2 7 "Categoria di partenza "
|
||||
HELP "Categoria di partenza per il passaggio (possibile vuota)"
|
||||
USE CTD
|
||||
INPUT CODTAB[1,2] AT_CATINI2
|
||||
DISPLAY "Cat." CODTAB[1,2]
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT AT_CATINI2 CODTAB[1,2]
|
||||
OUTPUT AT_D_CATINI2 S0
|
||||
FIELD CatIni2
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING AT_CATFIN2 2
|
||||
BEGIN
|
||||
PROMPT 2 8 "Categoria di arrivo "
|
||||
HELP "Categoria di arrivo per il passaggio (possibile vuota)"
|
||||
USE CTD
|
||||
INPUT CODTAB[1,2] AT_CATFIN2
|
||||
DISPLAY "Cat." CODTAB[1,2]
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT AT_CATFIN2 CODTAB[1,2]
|
||||
OUTPUT AT_D_CATFIN2 S0
|
||||
FIELD CatFin2
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 77 5
|
||||
BEGIN
|
||||
PROMPT 1 10 "Intervalli di donazione nelle idoneita' automatiche"
|
||||
END
|
||||
|
||||
NUMBER AT_ETADONNE 3
|
||||
BEGIN
|
||||
PROMPT 2 11 "Eta' per la suddivisione delle donne in due fasce "
|
||||
FIELD EtaDonne
|
||||
END
|
||||
|
||||
NUMBER AT_INTSI_F1 3
|
||||
BEGIN
|
||||
PROMPT 2 12 "Intervallo SI per femmine 1ø fascia "
|
||||
FIELD IntSI_F1
|
||||
END
|
||||
|
||||
NUMBER AT_INTSI_F2 3
|
||||
BEGIN
|
||||
PROMPT 2 13 "Intervallo SI per femmine 2ø fascia "
|
||||
FIELD IntSI_F2
|
||||
END
|
||||
|
||||
|
||||
NUMBER AT_INTSI_M 3
|
||||
BEGIN
|
||||
PROMPT 45 12 "Intervallo SI per maschi "
|
||||
FIELD IntSI_M
|
||||
END
|
||||
|
||||
NUMBER AT_INTAF_M 3
|
||||
BEGIN
|
||||
PROMPT 45 13 "Intervallo AF per tutti "
|
||||
FIELD IntAF_M
|
||||
END
|
||||
|
||||
BOOLEAN AT_DATAISC
|
||||
BEGIN
|
||||
PROMPT 2 16 "Data iscrizione (se vuota) uguale a data prima donazione"
|
||||
HELP "Data iscrizione automaticamente uguale alla data prima donazione, se vuota"
|
||||
FIELD DataIsc
|
||||
END
|
||||
|
||||
BOOLEAN AT_NOMESSAGE
|
||||
BEGIN
|
||||
PROMPT 2 17 "Disabilita messaggi in giornaliero donazioni"
|
||||
HELP "Disabilita i messaggi di attenzione in giornaliero donazioni"
|
||||
FIELD NoMessage
|
||||
END
|
||||
|
||||
BOOLEAN AT_AUTOID
|
||||
BEGIN
|
||||
PROMPT 2 18 "Idoneita' automatica"
|
||||
HELP "Idoneita' automatica in giornaliero donazioni"
|
||||
FIELD AutoId
|
||||
MESSAGE TRUE ENABLE,AT_MOTIVOID
|
||||
MESSAGE FALSE RESET,AT_MOTIVOID|DISABLE,AT_MOTIVOID
|
||||
END
|
||||
|
||||
STRING AT_MOTIVOID 4
|
||||
BEGIN
|
||||
PROMPT 30 18 "Motivo "
|
||||
FIELD MotivoId
|
||||
PROMPT 2 7 "Tipo controllo "
|
||||
FLAGS "U"
|
||||
USE MTC
|
||||
INPUT CODTAB AT_MOTIVOID
|
||||
USE TCS
|
||||
INPUT CODTAB F_TIPOCON
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT AT_MOTIVOID CODTAB
|
||||
OUTPUT AT_D_MOTIVOID S0
|
||||
DISPLAY "Descrizione@30" S0
|
||||
OUTPUT F_TIPOCON CODTAB
|
||||
OUTPUT F_D_TIPOCON S0
|
||||
CHECKTYPE NORMAL
|
||||
WARNING "Codice motivo non presente"
|
||||
HELP "Motivo del controllo sanitario"
|
||||
WARNING "Codice non presente"
|
||||
END
|
||||
|
||||
STRING AT_D_MOTIVOID 25
|
||||
STRING F_D_TIPOCON 30
|
||||
BEGIN
|
||||
PROMPT 45 18 ""
|
||||
PROMPT 26 7 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BOOLEAN AT_CTRLPASS
|
||||
RADIOBUTTON F_TIPOSTAMPA 25
|
||||
BEGIN
|
||||
PROMPT 2 19 "Accesso ai controlli sanitari con password"
|
||||
HELP "Permette l'inserimento ai controlli sanitari solo con password"
|
||||
FIELD CtrlPass
|
||||
PROMPT 1 10 "Stampa per "
|
||||
ITEM "D|Data controllo"
|
||||
ITEM "S|Sezione/Sottogruppo"
|
||||
END
|
||||
|
||||
STRING AT_D_CATINI1 40
|
||||
RADIOBUTTON F_ORDINAMENTO 25
|
||||
BEGIN
|
||||
PROMPT 30 2 ""
|
||||
FLAGS "D"
|
||||
PROMPT 40 10 "Ordinamento per "
|
||||
ITEM "C|Cognome e nome"
|
||||
ITEM "D|Data controllo"
|
||||
END
|
||||
|
||||
STRING AT_D_CATFIN1 40
|
||||
BUTTON DLG_OK 9 2
|
||||
BEGIN
|
||||
PROMPT 30 3 ""
|
||||
FLAGS "D"
|
||||
PROMPT -12 -1 ""
|
||||
END
|
||||
|
||||
STRING AT_D_CATINI2 40
|
||||
BUTTON DLG_QUIT 9 2
|
||||
BEGIN
|
||||
PROMPT 30 7 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING AT_D_CATFIN2 40
|
||||
BEGIN
|
||||
PROMPT 30 8 ""
|
||||
FLAGS "D"
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Etichette" -1 -1 78 20
|
||||
|
||||
GROUPBOX DLG_NULL 77 4
|
||||
BEGIN
|
||||
PROMPT 1 0 "Etichette soggetti"
|
||||
END
|
||||
|
||||
STRING AT_ETFORM 8
|
||||
BEGIN
|
||||
PROMPT 2 1 "Formato "
|
||||
FIELD EtFormato
|
||||
USE LF_FORM
|
||||
INPUT TIPOPROF AT_ETFORM
|
||||
DISPLAY "Formato@8" TIPOPROF
|
||||
DISPLAY "Descrizione@50" DESC
|
||||
OUTPUT AT_ETFORM TIPOPROF
|
||||
OUTPUT AT_D_ETFORM DESC
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
STRING AT_D_ETFORM 50
|
||||
BEGIN
|
||||
PROMPT 23 1 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER AT_ETLARG 3
|
||||
BEGIN
|
||||
PROMPT 2 2 "Larghezza "
|
||||
FIELD EtLarghezza
|
||||
END
|
||||
|
||||
NUMBER AT_ETCOL 1
|
||||
BEGIN
|
||||
PROMPT 20 2 "Colonne "
|
||||
FIELD EtColonne
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 77 4
|
||||
BEGIN
|
||||
PROMPT 1 4 "Etichette per notiziario"
|
||||
END
|
||||
|
||||
STRING AT_NETFORM 8
|
||||
BEGIN
|
||||
PROMPT 2 5 "Formato "
|
||||
FIELD EtNFormato
|
||||
USE LF_FORM
|
||||
INPUT TIPOPROF AT_NETFORM
|
||||
DISPLAY "Formato@8" TIPOPROF
|
||||
DISPLAY "Descrizione@50" DESC
|
||||
OUTPUT AT_NETFORM TIPOPROF
|
||||
OUTPUT AT_D_NETFORM DESC
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
STRING AT_D_NETFORM 50
|
||||
BEGIN
|
||||
PROMPT 23 5 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER AT_NETLARG 3
|
||||
BEGIN
|
||||
PROMPT 2 6 "Larghezza "
|
||||
FIELD EtNLarghezza
|
||||
END
|
||||
|
||||
NUMBER AT_NETCOL 1
|
||||
BEGIN
|
||||
PROMPT 20 6 "Colonne "
|
||||
FIELD EtNColonne
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 77 4
|
||||
BEGIN
|
||||
PROMPT 1 8 "Etichette sezioni"
|
||||
END
|
||||
|
||||
STRING AT_ETSFORM 8
|
||||
BEGIN
|
||||
PROMPT 2 9 "Formato "
|
||||
FIELD EtSFormato
|
||||
USE LF_FORM
|
||||
INPUT TIPOPROF AT_ETSFORM
|
||||
DISPLAY "Formato@8" TIPOPROF
|
||||
DISPLAY "Descrizione@50" DESC
|
||||
OUTPUT AT_ETSFORM TIPOPROF
|
||||
OUTPUT AT_D_ETSFORM DESC
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
STRING AT_D_ETSFORM 50
|
||||
BEGIN
|
||||
PROMPT 23 9 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER AT_ETSLARG 3
|
||||
BEGIN
|
||||
PROMPT 2 10 "Larghezza "
|
||||
FIELD EtSLarghezza
|
||||
END
|
||||
|
||||
NUMBER AT_ETSCOL 1
|
||||
BEGIN
|
||||
PROMPT 20 10 "Colonne "
|
||||
FIELD EtSColonne
|
||||
END
|
||||
|
||||
BOOLEAN AT_ETICTOT
|
||||
BEGIN
|
||||
PROMPT 2 13 "Stampa totale etichette stampate"
|
||||
HELP "Stampa una riga di totale etichette stampate in fondo alla stampa"
|
||||
FIELD EticTot
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Altre stampe" -1 -1 78 20
|
||||
|
||||
GROUPBOX DLG_NULL 77 4
|
||||
BEGIN
|
||||
PROMPT 1 0 "Scheda soggetti"
|
||||
END
|
||||
|
||||
STRING AT_SCHFORM 8
|
||||
BEGIN
|
||||
PROMPT 2 1 "Formato "
|
||||
FIELD SchFormato
|
||||
USE LF_FORM
|
||||
INPUT TIPOPROF AT_SCHFORM
|
||||
DISPLAY "Formato@8" TIPOPROF
|
||||
DISPLAY "Descrizione@50" DESC
|
||||
OUTPUT AT_SCHFORM TIPOPROF
|
||||
OUTPUT AT_D_SCHFORM DESC
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
STRING AT_D_SCHFORM 50
|
||||
BEGIN
|
||||
PROMPT 23 1 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER AT_SCHXPAG 1
|
||||
BEGIN
|
||||
PROMPT 2 2 "Numero schede per pagina "
|
||||
FIELD SchXPag
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 77 3
|
||||
BEGIN
|
||||
PROMPT 1 4 "Elenco personalizzato"
|
||||
END
|
||||
|
||||
STRING AT_ELENCO 8
|
||||
BEGIN
|
||||
PROMPT 2 5 "Formato "
|
||||
FIELD ElencoFormato
|
||||
USE LF_FORM
|
||||
INPUT TIPOPROF AT_ELENCO
|
||||
DISPLAY "Formato@8" TIPOPROF
|
||||
DISPLAY "Descrizione@50" DESC
|
||||
OUTPUT AT_ELENCO TIPOPROF
|
||||
OUTPUT AT_D_ELENCO DESC
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
STRING AT_D_ELENCO 50
|
||||
BEGIN
|
||||
PROMPT 23 5 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 77 4
|
||||
BEGIN
|
||||
PROMPT 1 7 "Cartoline per donazione"
|
||||
END
|
||||
|
||||
STRING AT_CAFORM 8
|
||||
BEGIN
|
||||
PROMPT 2 8 "Formato "
|
||||
FIELD CaFormato
|
||||
USE LF_FORM
|
||||
INPUT TIPOPROF AT_CAFORM
|
||||
DISPLAY "Formato@8" TIPOPROF
|
||||
DISPLAY "Descrizione@50" DESC
|
||||
OUTPUT AT_CAFORM TIPOPROF
|
||||
OUTPUT AT_D_CAFORM DESC
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
BOOLEAN AT_CAPARAM
|
||||
BEGIN
|
||||
PROMPT 2 9 "Richiesta parametri per stampa cartolina "
|
||||
HELP "Chiede all'utente i dati da stampare sulla cartolina di convocazione"
|
||||
FIELD CaParametri
|
||||
END
|
||||
|
||||
STRING AT_D_CAFORM 50
|
||||
BEGIN
|
||||
PROMPT 23 8 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 77 3
|
||||
BEGIN
|
||||
PROMPT 1 11 "Tessere"
|
||||
END
|
||||
|
||||
STRING AT_TEFORM 8
|
||||
BEGIN
|
||||
PROMPT 2 12 "Formato "
|
||||
FIELD TeFormato
|
||||
USE LF_FORM
|
||||
INPUT TIPOPROF AT_TEFORM
|
||||
DISPLAY "Formato@8" TIPOPROF
|
||||
DISPLAY "Descrizione@50" DESC
|
||||
OUTPUT AT_TEFORM TIPOPROF
|
||||
OUTPUT AT_D_TEFORM DESC
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
STRING AT_D_TEFORM 50
|
||||
BEGIN
|
||||
PROMPT 23 12 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BOOLEAN AT_STAMPA80
|
||||
BEGIN
|
||||
PROMPT 2 15 "Stampa elenchi a 80 colonne dove previsto"
|
||||
HELP "Stampa gli elenchi con il formato 80 colonne dove previsto"
|
||||
FIELD Stampa80
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
126
at/at5400.cpp
126
at/at5400.cpp
@ -1,126 +0,0 @@
|
||||
#include <applicat.h>
|
||||
#include <recarray.h>
|
||||
#include <relation.h>
|
||||
#include <tabutil.h>
|
||||
#include <utility.h>
|
||||
#include "atlib.h"
|
||||
|
||||
#include "at5.h"
|
||||
|
||||
#include "soggetti.h"
|
||||
#include "donaz.h"
|
||||
#include "contsan.h"
|
||||
#include "idoneita.h"
|
||||
|
||||
class TRiordinaSog : public TApplication
|
||||
{
|
||||
TLocalisamfile* _soggetti;
|
||||
TLocalisamfile* _donaz;
|
||||
TLocalisamfile* _contsan;
|
||||
TLocalisamfile* _idoneita;
|
||||
TRecord_array* _sdonazioni;
|
||||
TRecord_array* _scontrolli;
|
||||
TRecord_array* _sidoneita;
|
||||
|
||||
protected:
|
||||
virtual bool create();
|
||||
virtual bool destroy();
|
||||
public:
|
||||
TRiordinaSog() {}
|
||||
virtual ~TRiordinaSog() {}
|
||||
};
|
||||
|
||||
bool TRiordinaSog::create()
|
||||
{
|
||||
TApplication::create();
|
||||
|
||||
if (argc() < 3)
|
||||
return error_box("Specificare il codice del soggetto");
|
||||
long codsog = atol(argv(2));
|
||||
_soggetti = new TLocalisamfile(LF_SOGGETTI);
|
||||
_donaz = new TLocalisamfile(LF_DONAZ);
|
||||
_contsan = new TLocalisamfile(LF_CONTSAN);
|
||||
_idoneita = new TLocalisamfile(LF_IDONEITA);
|
||||
_sdonazioni = new TRecord_array(LF_DONAZ,DON_PROGDON);
|
||||
_scontrolli = new TRecord_array(LF_CONTSAN,CON_PROGCON);
|
||||
_sidoneita = new TRecord_array(LF_IDONEITA,IDO_PROGIDO);
|
||||
TConfig config(CONFIG_STUDIO);
|
||||
const int numdon1 = config.get_int("NumDon1");
|
||||
const int numdon2 = config.get_int("NumDon2");
|
||||
TString16 catini1 = config.get("CatIni1");
|
||||
TString16 catfin1 = config.get("CatFin1");
|
||||
TString16 catini2 = config.get("CatIni2");
|
||||
TString16 catfin2 = config.get("CatFin2");
|
||||
const bool sttess2 = config.get_bool("StTess2");
|
||||
const bool dataisc = config.get_bool("DataIsc");
|
||||
const int etadonne = config.get_int("EtaDonne");
|
||||
const int intsi_f1 = config.get_int("IntSI_F1");
|
||||
const int intsi_f2 = config.get_int("IntSI_F2");
|
||||
const int intsi_m = config.get_int("IntSI_M");
|
||||
const int intaf_m = config.get_int("IntAF_M");
|
||||
TRectype soggetto(LF_SOGGETTI);
|
||||
_soggetti->put(SOG_CODICE, codsog);
|
||||
if (_soggetti->read() == NOERR)
|
||||
{
|
||||
TRectype& sog = _soggetti->curr();
|
||||
TRectype* key = new TRectype(LF_DONAZ);
|
||||
key->put(DON_CODICE, codsog);
|
||||
int err = _sdonazioni->read(key);
|
||||
if (err == NOERR)
|
||||
{
|
||||
calcola_donazioni_lib(sog, _sdonazioni);
|
||||
_soggetti->rewrite();
|
||||
}
|
||||
TTable ctd("CTD");
|
||||
TString16 catdon = sog.get(SOG_CATDON);
|
||||
const int totdon = sog.get_int(SOG_TOTDON);
|
||||
ctd.put("CODTAB",catdon);
|
||||
if (ctd.read() == NOERR)
|
||||
{
|
||||
bool dimissione = ctd.get_bool("B0");
|
||||
if (dimissione)
|
||||
{
|
||||
sog.put(SOG_CATDON,ctd.get("S6"));
|
||||
if (ctd.get("S6").not_empty())
|
||||
catdon = ctd.get("S6");
|
||||
}
|
||||
if ((catdon == catini1 || catini1.empty()) && (totdon==numdon1) && catfin1.not_empty())
|
||||
sog.put(SOG_CATDON, catfin1);
|
||||
if ((catdon == catini2 || catini2.empty()) && (totdon>=numdon2) && catfin2.not_empty() && (!sttess2 || dimissione))
|
||||
sog.put(SOG_CATDON, catfin2);
|
||||
}
|
||||
TDate dataiscsog = sog.get_date(SOG_DATAISC);
|
||||
if (!dataiscsog.ok() && dataisc)
|
||||
{
|
||||
if (!sog.get_date(SOG_DATAPRISI) == NULLDATE)
|
||||
sog.put(SOG_DATAISC,sog.get(SOG_DATAPRISI));
|
||||
else
|
||||
{
|
||||
const TRectype& riga = _sdonazioni->row(1);
|
||||
sog.put(SOG_DATAISC,riga.get(DON_DATADON));
|
||||
}
|
||||
}
|
||||
_soggetti->rewrite();
|
||||
}
|
||||
stop_run();
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool TRiordinaSog::destroy()
|
||||
{
|
||||
delete _sidoneita;
|
||||
delete _scontrolli;
|
||||
delete _sdonazioni;
|
||||
delete _idoneita;
|
||||
delete _contsan;
|
||||
delete _donaz;
|
||||
delete _soggetti;
|
||||
return TApplication::destroy();
|
||||
}
|
||||
|
||||
int at5400(int argc, char* argv[])
|
||||
{
|
||||
TRiordinaSog a;
|
||||
a.run(argc, argv, "Riordina donazioni soggetto");
|
||||
return 0;
|
||||
}
|
@ -1,78 +0,0 @@
|
||||
#include <applicat.h>
|
||||
#include <mask.h>
|
||||
#include <relation.h>
|
||||
#include <tabutil.h>
|
||||
#include <progind.h>
|
||||
#include <recarray.h>
|
||||
|
||||
#include "at5.h"
|
||||
#include "at5800a.h"
|
||||
|
||||
// nomi dei campi
|
||||
#include "soggetti.h"
|
||||
#include "convoc.h"
|
||||
#include "rconvoc.h"
|
||||
|
||||
|
||||
class TEliminazioneConv: public TSkeleton_application
|
||||
{
|
||||
TRelation* _rel;
|
||||
TMask* _msk;
|
||||
TLocalisamfile* _rconvoc;
|
||||
TLocalisamfile* _soggetti;
|
||||
TDate _dataini, _datafin;
|
||||
|
||||
protected:
|
||||
virtual bool create(void);
|
||||
virtual void main_loop();
|
||||
virtual bool destroy(void) ;
|
||||
|
||||
public:
|
||||
const TMask& msk() const { return *_msk; }
|
||||
|
||||
TEliminazioneConv() {}
|
||||
virtual ~TEliminazioneConv() {}
|
||||
};
|
||||
|
||||
// restituisce un riferimento all' applicazione
|
||||
inline TEliminazioneConv& app() { return (TEliminazioneConv&) main_app();}
|
||||
|
||||
bool TEliminazioneConv::create()
|
||||
{
|
||||
_msk = new TMask("at5800a");
|
||||
_rel = new TRelation(LF_RCONVOC);
|
||||
_rel->add(LF_SOGGETTI, "CODICE==CODICE");
|
||||
_rel->add(LF_CONVOC, "NUMERO==NUMERO");
|
||||
return TSkeleton_application::create();
|
||||
}
|
||||
|
||||
// distruzione dell'applicazione
|
||||
bool TEliminazioneConv::destroy()
|
||||
{
|
||||
delete _rel;
|
||||
delete _msk;
|
||||
return TSkeleton_application::destroy();
|
||||
}
|
||||
|
||||
// carica la maschera
|
||||
void TEliminazioneConv::main_loop()
|
||||
{
|
||||
KEY key = K_ENTER;
|
||||
while (key != K_QUIT)
|
||||
{
|
||||
key = _msk->run();
|
||||
if (key == K_ENTER)
|
||||
{
|
||||
TDate dataini = _msk->get_date(F_DATAINI);
|
||||
TDate datafin = _msk->get_date(F_DATAFIN);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int at5800(int argc, char* argv[])
|
||||
{
|
||||
TEliminazioneConv a ;
|
||||
a.run(argc, argv, "Eliminazione convocazioni");
|
||||
return 0;
|
||||
}
|
||||
|
@ -1,6 +0,0 @@
|
||||
// eliminazione convocazioni
|
||||
// definizione campi per maschera di selezione
|
||||
|
||||
#define F_DATAINI 101
|
||||
#define F_DATAFIN 102
|
||||
#define F_NONELIMULTIMA 103
|
@ -1,42 +0,0 @@
|
||||
#include "at5800a.h"
|
||||
TOOLBAR "" 0 20 0 2
|
||||
BUTTON DLG_OK 9 2
|
||||
BEGIN
|
||||
PROMPT -12 -11 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 9 2
|
||||
BEGIN
|
||||
PROMPT -22 -11 ""
|
||||
END
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Eliminazione convocazioni" -1 -1 78 20
|
||||
|
||||
GROUPBOX DLG_NULL 77 4
|
||||
BEGIN
|
||||
PROMPT 1 1 "Opzioni per l'eliminazione"
|
||||
END
|
||||
|
||||
DATE F_DATAINI
|
||||
BEGIN
|
||||
PROMPT 2 2 "Convocazioni dal "
|
||||
CHECKTYPE REQUIRED
|
||||
HELP "Data iniziale"
|
||||
END
|
||||
|
||||
DATE F_DATAFIN
|
||||
BEGIN
|
||||
PROMPT 32 2 "al "
|
||||
CHECKTYPE REQUIRED
|
||||
HELP "Data finale"
|
||||
END
|
||||
|
||||
BOOLEAN F_NONELIMULTIMA
|
||||
BEGIN
|
||||
PROMPT 2 4 "Non eliminare l'ultima convocazione del soggetto"
|
||||
HELP "Se flaggato, non verra' eliminata l'ultima convocazione del soggetto anche se rientra nell'intervallo di date"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
ENDMASK
|
Loading…
x
Reference in New Issue
Block a user