Patch level : 1.7 avis
Files correlati : at2.exe at2900a.msk Ricompilazione Demo : [ ] Commento : Soggetti per frequenza: possibilitá di stampare su file .dbf (per Bolzano) git-svn-id: svn://10.65.10.50/trunk@9999 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
ed0c57a4f3
commit
01b8b2ed85
@ -13,10 +13,11 @@
|
||||
#include "at2900a.h"
|
||||
#include "atlib.h"
|
||||
|
||||
#define ALIAS_LCP 100
|
||||
#define ALIAS_LCPDOM 100
|
||||
#define ALIAS_TCS 200
|
||||
#define ALIAS_COMDOM 501 // comune di domicilio
|
||||
|
||||
enum ts { undefined = 0, elenco = 1, etichette = 2 };
|
||||
enum ts { undefined = 0, elenco = 1, etichette = 2, stampasufile = 3 };
|
||||
|
||||
// definizione form per etichette
|
||||
class TEti_freq_form : public TForm
|
||||
@ -39,6 +40,7 @@ class TFrequenza : public TPrintapp
|
||||
TRelation* _rel;
|
||||
TMask* _msk;
|
||||
TLocalisamfile* _donaz;
|
||||
TExternisamfile* _file;
|
||||
TRecord_array* _sdonazioni;
|
||||
TEti_freq_form* _form_eti;
|
||||
TAssoc_array _categorie;
|
||||
@ -245,9 +247,9 @@ void TFrequenza::header_sezione(const TString16 codsez, const TString16 codsot)
|
||||
|
||||
bool TFrequenza::preprocess_page(int file, int counter)
|
||||
{
|
||||
TRectype recsog = current_cursor()->curr();
|
||||
if (_tipostampa == elenco)
|
||||
{
|
||||
TRectype recsog = current_cursor()->curr();
|
||||
int numdon = 0;
|
||||
TDate dataultdon(NULLDATE);
|
||||
if (_ctrltotale)
|
||||
@ -290,7 +292,7 @@ bool TFrequenza::preprocess_page(int file, int counter)
|
||||
localita << ' ';
|
||||
if (recsog.get(SOG_DOM_CODLOC).not_empty())
|
||||
{
|
||||
localita << current_cursor()->curr(-ALIAS_LCP).get("S0");
|
||||
localita << current_cursor()->curr(-ALIAS_LCPDOM).get("S0");
|
||||
localita << " - ";
|
||||
}
|
||||
localita << current_cursor()->curr(LF_COMUNI).get(COM_DENCOM);
|
||||
@ -314,6 +316,28 @@ bool TFrequenza::preprocess_page(int file, int counter)
|
||||
if (_tipostampa==etichette)
|
||||
if (printer().rows_left() < _form_eti->get_body().height())
|
||||
printer().formfeed();
|
||||
if (_tipostampa==stampasufile)
|
||||
{
|
||||
_file->zero();
|
||||
_file->put("CODICE",recsog.get(SOG_CODICE));
|
||||
_file->put("COGNOME",recsog.get(SOG_COGNOME));
|
||||
_file->put("NOME",recsog.get(SOG_NOME));
|
||||
_file->put("SPOSATA",recsog.get(SOG_COGNOME_SP));
|
||||
_file->put("INDIRIZZO",recsog.get(SOG_DOM_INDIR));
|
||||
_file->put("PRESSO",recsog.get(SOG_DOM_DISTRI));
|
||||
TString80 localita = "";
|
||||
localita << recsog.get(SOG_DOM_CAP);
|
||||
localita << ' ';
|
||||
if (recsog.get(SOG_DOM_CODLOC).not_empty())
|
||||
localita << current_cursor()->curr(-ALIAS_LCPDOM).get("S0");
|
||||
else
|
||||
localita << current_cursor()->curr(LF_COMUNI).get(COM_DENCOM);
|
||||
localita << ' ' << current_cursor()->curr(LF_COMUNI).get(COM_PROVCOM);
|
||||
localita.trim();
|
||||
_file->put("LOCALITA",localita);
|
||||
_file->write();
|
||||
do_events();
|
||||
}
|
||||
_contatore++;
|
||||
_totale++;
|
||||
return TRUE;
|
||||
@ -381,6 +405,13 @@ bool TFrequenza::set_print(int m)
|
||||
case F_ETICHETTE:
|
||||
_tipostampa = (configura_stampante(p, "AT_ETICHETTE", "etichette")) ? etichette : undefined;
|
||||
break;
|
||||
case F_FILE:
|
||||
{
|
||||
_tipostampa=stampasufile;
|
||||
if (yesno_box("Azzerare il contenuto del file prima dell'elaborazione?"))
|
||||
_file->zap();
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (_tipostampa != undefined)
|
||||
{
|
||||
@ -505,11 +536,12 @@ bool TFrequenza::user_create()
|
||||
{
|
||||
_rel = new TRelation(LF_SOGGETTI);
|
||||
_rel->add("TCS", "CODTAB==STATO",1,0,ALIAS_TCS);
|
||||
_rel->add("LCP", "CODTAB==DOM_CODLOC",1,0,ALIAS_LCP);
|
||||
_rel->add("LCP", "CODTAB==DOM_CODLOC",1,0,ALIAS_LCPDOM);
|
||||
_rel->add(LF_COMUNI, "COM==DOM_CODCOM");
|
||||
_rel->add(LF_SEZIONI, "CODSEZ==CODSEZ|CODSOT==CODSOT");
|
||||
_cur = add_cursor(new TCursor(_rel, "", 3));
|
||||
_msk = new TMask("at2900a");
|
||||
_file = new TExternisamfile("$file");
|
||||
_donaz = new TLocalisamfile(LF_DONAZ);
|
||||
_sdonazioni = new TRecord_array(LF_DONAZ,DON_PROGDON);
|
||||
TConfig config(CONFIG_STUDIO);
|
||||
@ -526,6 +558,7 @@ bool TFrequenza::user_destroy()
|
||||
delete _form_eti;
|
||||
delete _sdonazioni;
|
||||
delete _donaz;
|
||||
delete _file;
|
||||
delete _msk;
|
||||
delete _rel;
|
||||
return TRUE;
|
||||
|
@ -40,3 +40,4 @@
|
||||
|
||||
#define F_ELENCO 401
|
||||
#define F_ETICHETTE 402
|
||||
#define F_FILE 403
|
||||
|
@ -4,16 +4,22 @@ TOOLBAR "" 0 20 0 2
|
||||
|
||||
BUTTON F_ELENCO 9 2
|
||||
BEGIN
|
||||
PROMPT -13 -11 "E~lenco"
|
||||
PROMPT -14 -11 "E~lenco"
|
||||
MESSAGE EXIT,F_ELENCO
|
||||
END
|
||||
|
||||
BUTTON F_ETICHETTE 9 2
|
||||
BEGIN
|
||||
PROMPT -23 -11 "~Etichette"
|
||||
PROMPT -24 -11 "~Etichette"
|
||||
MESSAGE EXIT,F_ETICHETTE
|
||||
END
|
||||
|
||||
BUTTON F_FILE 10 2
|
||||
BEGIN
|
||||
PROMPT -34 -11 "~File"
|
||||
MESSAGE EXIT,F_FILE
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 9 2
|
||||
BEGIN
|
||||
PROMPT -33 -11 ""
|
||||
|
Loading…
x
Reference in New Issue
Block a user