Patch level :
Files correlati : Ricompilazione Demo : [ ] Commento : git-svn-id: svn://10.65.10.50/trunk@19873 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
c36629f744
commit
5c5563fd88
@ -554,6 +554,25 @@ void TStampaIscritti::crea_intestazione()
|
||||
|
||||
bool TStampaIscritti::user_create()
|
||||
{
|
||||
//lettura della configurazione
|
||||
TConfig config(CONFIG_STUDIO);
|
||||
TString16 etformato = config.get("EtFormato");
|
||||
//crea il form di stampa
|
||||
if (!controlla_esistenza_form(etformato, "ate10x36"))
|
||||
return false;
|
||||
_form_eti = new TEti_iscritti_form(etformato);
|
||||
|
||||
_etlarghezza = config.get_int("EtLarghezza");
|
||||
_etcolonne = config.get_int("EtColonne");
|
||||
|
||||
//file di appoggio
|
||||
TFilename iscrname, iscrtrr;
|
||||
if (!controlla_esistenza_trr("at2600", iscrname, iscrtrr))
|
||||
return false;
|
||||
|
||||
_fileiscr = new TExternisamfile(iscrname, iscrtrr, false);
|
||||
|
||||
//relazione
|
||||
_rel = new TRelation(LF_SOGGETTI);
|
||||
_rel->add("CTD", "CODTAB==CATDON",1,0,ALIAS_CTD);
|
||||
_rel->add(LF_SEZIONI, "CODSEZ==CODSEZ|CODSOT==CODSOT");
|
||||
@ -561,25 +580,11 @@ bool TStampaIscritti::user_create()
|
||||
_rel->add("GAZ", "CODTAB==GRUPPOAZIE",1,0,ALIAS_GAZ);
|
||||
_rel->add(LF_COMUNI, "COM==DOM_CODCOM",1,0,ALIAS_COMDOM);
|
||||
add_cursor(new TSorted_cursor(_rel,"SOG_CODSEZ|SOG_CODSOT","",3));
|
||||
|
||||
//maschera
|
||||
_msk = new TMask("at2600a");
|
||||
TConfig config(CONFIG_STUDIO);
|
||||
TString16 etformato = config.get("EtFormato");
|
||||
_etlarghezza = config.get_int("EtLarghezza");
|
||||
_etcolonne = config.get_int("EtColonne");
|
||||
_form_eti = new TEti_iscritti_form(etformato);
|
||||
|
||||
TFilename iscrname = "iscritti";
|
||||
iscrname.ext("dbf");
|
||||
TFilename iscrtrr = "iscritti";
|
||||
iscrtrr.ext("trr");
|
||||
if (!iscrtrr.custom_path())
|
||||
{
|
||||
iscrtrr = "recdesc/iscritti";
|
||||
iscrtrr.ext("trr");
|
||||
}
|
||||
|
||||
_fileiscr = new TExternisamfile(iscrname, iscrtrr, FALSE);
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TStampaIscritti::user_destroy()
|
||||
@ -588,7 +593,7 @@ bool TStampaIscritti::user_destroy()
|
||||
delete _form_eti;
|
||||
delete _msk;
|
||||
delete _rel;
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
int at2600(int argc, char* argv[])
|
||||
|
117
at/at2700.cpp
117
at/at2700.cpp
@ -1245,7 +1245,71 @@ void TStampaPerCategorie::crea_intestazione()
|
||||
}
|
||||
|
||||
bool TStampaPerCategorie::user_create()
|
||||
{
|
||||
{
|
||||
//controllo e caricamento dati dalla configurazione
|
||||
TConfig config(CONFIG_STUDIO);
|
||||
//etichette
|
||||
TString16 etformato = config.get("EtFormato");
|
||||
if (!controlla_esistenza_form(etformato, "ate10x36"))
|
||||
return false;
|
||||
_form_eti = new TEti_percat_form(etformato);
|
||||
_etlarghezza = config.get_int("EtLarghezza");
|
||||
_etcolonne = config.get_int("EtColonne");
|
||||
_etrighe = config.get_int("EtRighe");
|
||||
_etbordoini = config.get_int("EtBordoIni");
|
||||
_etbordofin = config.get_int("EtBordoFin");
|
||||
|
||||
//etichette notiziario
|
||||
TString16 etnformato = config.get("EtNFormato");
|
||||
if (!controlla_esistenza_form(etnformato, "ate10x36"))
|
||||
return false;
|
||||
_form_neti = new TEti_percat_form(etnformato);
|
||||
_stampa80 = config.get_bool("Stampa80");
|
||||
_etictot = config.get_bool("EticTot");
|
||||
|
||||
//cartoline
|
||||
TString16 caformato = config.get("CaFormato");
|
||||
if (!controlla_esistenza_form(caformato, "atcarto1"))
|
||||
return false;
|
||||
_form_car = new TEti_percat_form(caformato);
|
||||
|
||||
//schede
|
||||
TString16 schformato = config.get("SchFormato");
|
||||
if (!controlla_esistenza_form(schformato, "at_pagin"))
|
||||
return false;
|
||||
_form_sch = new TEti_percat_form(schformato);
|
||||
_schxpag = config.get_int("SchXPag");
|
||||
|
||||
//elenco
|
||||
TString16 performato = config.get("ElencoFormato");
|
||||
if (!controlla_esistenza_form(performato, "atrubrsa"))
|
||||
return false;
|
||||
_form_per = new TEti_percat_form(performato);
|
||||
|
||||
_lenpage = printer().formlen();
|
||||
|
||||
|
||||
|
||||
//attenzione: i files at2700a e at2700b, se si desiderano personalizzati, richiedono il tracciato record modificato..
|
||||
//..in Custom; questo perchè le varie sezioni possono volere campi diversi; il max dei campi è quello che si trova..
|
||||
//..nei trr ufficiali; la gestione dei campi mancanti è fatta dalla filepers_put() al momento della scrittura vera..
|
||||
//..e propria dei files
|
||||
//stampa indirizzi su file
|
||||
TFilename filename, filetrr;
|
||||
if (!controlla_esistenza_trr("at2700a", filename, filetrr))
|
||||
return false;
|
||||
|
||||
_file = new TExternisamfile(filename, filetrr, false);
|
||||
|
||||
//stampa file personalizzato
|
||||
TFilename persname, perstrr;
|
||||
if (!controlla_esistenza_trr("at2700b", persname, perstrr))
|
||||
return false;
|
||||
|
||||
_filepers = new TExternisamfile(persname, perstrr, false);
|
||||
|
||||
|
||||
//relazione e cursore
|
||||
_rel = new TRelation(LF_SOGGETTI);
|
||||
_rel->add(LF_DONAZ, "CODICE==CODICE", 1);
|
||||
_rel->add(LF_BENEM, "CODICE==CODICE", 1);
|
||||
@ -1269,57 +1333,10 @@ bool TStampaPerCategorie::user_create()
|
||||
_sbenemerenze = new TRecord_array(LF_BENEM,BEN_PROGBEN);
|
||||
_sfamiglia = new TRecord_array(LF_FAMIGLIE,FAM_PROGFAM);
|
||||
add_cursor(new TSorted_cursor(_rel,"SOG_CODSEZ|SOG_CODSOT","",3));
|
||||
|
||||
//maschera
|
||||
_msk = new TMask("at2700a");
|
||||
|
||||
//attenzione: i files at2700a e at2700b, se si desiderano personalizzati, richiedono il tracciato record modificato..
|
||||
//..in Custom; questo perchè le varie sezioni possono volere campi diversi; il max dei campi è quello che si trova..
|
||||
//..nei trr ufficiali; la gestione dei campi mancanti è fatta dalla filepers_put() al momento della scrittura vera..
|
||||
//..e propria dei files
|
||||
//stampa indirizzi su file
|
||||
TFilename filename = "at2700a";
|
||||
filename.ext("dbf");
|
||||
TFilename filetrr = "at2700a";
|
||||
filetrr.ext("trr");
|
||||
if (!filetrr.custom_path() && !filetrr.exist())
|
||||
return error_box("Manca il file %s sia in custom che nella cartella del programma. Impossibile proseguire!", (const char*)filetrr);
|
||||
|
||||
_file = new TExternisamfile(filename, filetrr, false);
|
||||
|
||||
//stampa file personalizzato
|
||||
TFilename namepers = "at2700b";
|
||||
namepers.ext("dbf");
|
||||
TFilename perstrr = "at2700b";
|
||||
perstrr.ext("trr");
|
||||
if (!perstrr.custom_path() && !perstrr.exist())
|
||||
return error_box("Manca il file %s sia in custom che nella cartella del programma. Impossibile proseguire!", (const char*)perstrr);
|
||||
|
||||
_filepers = new TExternisamfile(namepers, perstrr, false);
|
||||
|
||||
|
||||
TConfig config(CONFIG_STUDIO);
|
||||
|
||||
TString16 etformato = config.get("EtFormato");
|
||||
_etlarghezza = config.get_int("EtLarghezza");
|
||||
_etcolonne = config.get_int("EtColonne");
|
||||
_etrighe = config.get_int("EtRighe");
|
||||
_etbordoini = config.get_int("EtBordoIni");
|
||||
_etbordofin = config.get_int("EtBordoFin");
|
||||
_form_eti = new TEti_percat_form(etformato);
|
||||
|
||||
TString16 etnformato = config.get("EtNFormato");
|
||||
_etnlarghezza = config.get_int("EtNLarghezza");
|
||||
_etncolonne = config.get_int("EtNColonne");
|
||||
_form_neti = new TEti_percat_form(etnformato);
|
||||
_stampa80 = config.get_bool("Stampa80");
|
||||
_etictot = config.get_bool("EticTot");
|
||||
_form_car = new TEti_percat_form("ATCARTO1");
|
||||
TString16 schformato = config.get("SchFormato");
|
||||
_schxpag = config.get_int("SchXPag");
|
||||
_form_sch = new TEti_percat_form(schformato);
|
||||
TString16 performato = config.get("ElencoFormato");
|
||||
_form_per = new TEti_percat_form(performato);
|
||||
_lenpage = printer().formlen();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -596,30 +596,41 @@ void TFrequenza::crea_intestazione()
|
||||
|
||||
bool TFrequenza::user_create()
|
||||
{
|
||||
//configurazione
|
||||
TConfig config(CONFIG_STUDIO);
|
||||
//etichette
|
||||
TString16 etformato = config.get("EtFormato");
|
||||
if (!controlla_esistenza_form(etformato, "ate10x36"))
|
||||
return false;
|
||||
_form_eti = new TEti_freq_form(etformato);
|
||||
_etlarghezza = config.get_int("EtLarghezza");
|
||||
_etcolonne = config.get_int("EtColonne");
|
||||
_stampa80 = config.get_bool("Stampa80");
|
||||
|
||||
//lettera
|
||||
_form_let = new TEti_freq_form("ATLETTER");
|
||||
|
||||
//files
|
||||
_donaz = new TLocalisamfile(LF_DONAZ);
|
||||
_sdonazioni = new TRecord_array(LF_DONAZ,DON_PROGDON);
|
||||
|
||||
//file di appoggio
|
||||
TFilename freqname, freqtrr;
|
||||
if (!controlla_esistenza_trr("at2900", freqname, freqtrr))
|
||||
return false;
|
||||
|
||||
_file = new TExternisamfile(freqname, freqtrr, false);
|
||||
|
||||
//relazione
|
||||
_rel = new TRelation(LF_SOGGETTI);
|
||||
_rel->add("TCS", "CODTAB==STATO",1,0,ALIAS_TCS);
|
||||
_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");
|
||||
add_cursor(new TSorted_cursor(_rel, "", "", 3));
|
||||
_msk = new TMask("at2900a");
|
||||
_donaz = new TLocalisamfile(LF_DONAZ);
|
||||
_sdonazioni = new TRecord_array(LF_DONAZ,DON_PROGDON);
|
||||
TConfig config(CONFIG_STUDIO);
|
||||
TString16 etformato = config.get("EtFormato");
|
||||
_etlarghezza = config.get_int("EtLarghezza");
|
||||
_etcolonne = config.get_int("EtColonne");
|
||||
_form_eti = new TEti_freq_form(etformato);
|
||||
_stampa80 = config.get_bool("Stampa80");
|
||||
_form_let = new TEti_freq_form("ATLETTER");
|
||||
TFilename freqname = "at2900";
|
||||
freqname.ext("dbf");
|
||||
TFilename freqtrr = "at2900";
|
||||
freqtrr.ext("trr");
|
||||
if (!freqtrr.custom_path() && !freqtrr.exist())
|
||||
return error_box("Manca il file %s sia in custom che nella cartella del programma. Impossibile proseguire!", (const char*)freqtrr);
|
||||
|
||||
_file = new TExternisamfile(freqname, freqtrr, FALSE);
|
||||
//maschera
|
||||
_msk = new TMask("at2900a");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -633,7 +644,7 @@ bool TFrequenza::user_destroy()
|
||||
delete _file;
|
||||
delete _msk;
|
||||
delete _rel;
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
int at2900(int argc, char* argv[])
|
||||
|
@ -6,10 +6,11 @@
|
||||
#include "soggetti.h"
|
||||
#include "sezioni.h"
|
||||
|
||||
#include "atlib.h"
|
||||
#include "at7.h"
|
||||
#include "at7200a.h"
|
||||
|
||||
#include "at7100.h"
|
||||
|
||||
#define ALIAS_COMDOM 501
|
||||
#define ALIAS_COMNAS 500
|
||||
#define ALIAS_LCP 100
|
||||
@ -357,15 +358,18 @@ bool TStampaTessereS::user_create()
|
||||
//controlla se esistono i form di stampa; se non ci sono è inutile proseguire
|
||||
TConfig config(CONFIG_STUDIO);
|
||||
TString16 teformato = config.get("TeFormato");
|
||||
if (teformato.blank())
|
||||
return error_box("Non è indicato nella configurazione di sezione il formato della tessera. Impossibile proseguire!");
|
||||
TFilename form_tessera = teformato;
|
||||
form_tessera.ext("frm");
|
||||
if (!form_tessera.custom_path() && !form_tessera.exist())
|
||||
return error_box("Manca il file %s sia in custom che nella cartella del programma. Impossibile proseguire!", (const char*)form_tessera);
|
||||
//crea il form di stampa
|
||||
if (!controlla_esistenza_form(teformato, "attesser"))
|
||||
return false;
|
||||
_form_pag = new TTessereS_form(teformato);
|
||||
|
||||
_numdon2 = config.get_int("NumDon2");
|
||||
_catini2 = config.get("CatIni2");
|
||||
_catfin2 = config.get("CatFin2");
|
||||
_sttess2 = config.get_bool("StTess2");
|
||||
_tecolonne = config.get_int("TeColonne");
|
||||
_telarghezza = config.get_int("TeLarghezza");
|
||||
|
||||
//filtro per avere i dati da stampare
|
||||
_sogtmp = new TIsamtempfile(LF_SOGGETTI,NULL,TRUE,TRUE);
|
||||
_rel = new TRelation(_sogtmp);
|
||||
@ -378,15 +382,7 @@ bool TStampaTessereS::user_create()
|
||||
//cursore ordinamento per sezione+sottogruppo+cognome+nome
|
||||
_cur = add_cursor(new TCursor(_rel, "", 3));
|
||||
|
||||
//roba della configurazione di sezione
|
||||
_numdon2 = config.get_int("NumDon2");
|
||||
_catini2 = config.get("CatIni2");
|
||||
_catfin2 = config.get("CatFin2");
|
||||
_sttess2 = config.get_bool("StTess2");
|
||||
_tecolonne = config.get_int("TeColonne");
|
||||
_telarghezza = config.get_int("TeLarghezza");
|
||||
|
||||
//roba della maschera
|
||||
//maschera
|
||||
_msk = new TMask("at7200a");
|
||||
TSheet_field& ss = (TSheet_field&)_msk->field(F_SOGGETTI);
|
||||
add_rows_soggetti(ss,50);
|
||||
|
@ -18,6 +18,8 @@ void ido_reord(TRectype& soggetto, TRecord_array* idoneita);
|
||||
void don_datepross(TRectype& soggetto);
|
||||
void calcola_donazioni_lib(TRectype& soggetto, TRecord_array* donazioni);
|
||||
bool configura_stampante(TPrinter& p, const char* configurazione, const char* tipostampa);
|
||||
bool controlla_esistenza_form(TString& frm_name, const TString& default_frm_name);
|
||||
bool controlla_esistenza_trr(const char* name, TFilename& filename, TFilename& trrname);
|
||||
|
||||
class TSoggetto : public TRectype
|
||||
{
|
||||
|
@ -506,4 +506,33 @@ bool configura_stampante(TPrinter& p, const char* configurazione, const char* ti
|
||||
message_box(messaggio);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//metodo per il controllo della corretta configurazione del formato di stampa (etichette,cartoline,tessere ecc.) in configurazione..
|
||||
//..sezione e della effettiva esistenza del .frm indicato
|
||||
bool controlla_esistenza_form(TString& frm_name, const TString& default_frm_name)
|
||||
{
|
||||
//se non trova un formato indicato nel config usa quello di default
|
||||
if (frm_name.blank())
|
||||
frm_name = default_frm_name;
|
||||
//controlla se il file .frm esiste davvero
|
||||
TFilename frm_file = frm_name;
|
||||
frm_file.ext("frm");
|
||||
if (!frm_file.custom_path() || !frm_file.exist())
|
||||
return error_box("Manca il file %s sia in custom che nella cartella del programma. Impossibile proseguire!", (const char*)frm_file);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
//metodo per il controllo della esistenza dei tracciati record dei file di appoggio dell'AVIS
|
||||
bool controlla_esistenza_trr(const char* name, TFilename& filename, TFilename& trrname)
|
||||
{
|
||||
filename = name;
|
||||
filename.ext("dbf");
|
||||
trrname = name;
|
||||
trrname.ext("trr");
|
||||
if (!trrname.custom_path() || !trrname.exist())
|
||||
return error_box("Manca il file %s sia in custom che nella cartella del programma. Impossibile proseguire!", (const char*)trrname);
|
||||
|
||||
return true;
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
1001
|
||||
18
|
||||
COGNOME|1|25|0|Cognome
|
||||
NOME|1|25|0|Nome
|
||||
DATANASC|5|8|0|Data di nascita
|
||||
CATDON|1|2|0|Categoria donatori
|
||||
CODSEZ|1|2|0|Codice sezione
|
||||
CODSOT|1|2|0|Codice sottogruppo
|
||||
SEZIONE|1|50|0|Denominazione sezione/sottog.
|
||||
SESSO|1|1|0|Sesso m/f
|
||||
INDIRIZZO|1|30|0|Indirizzo
|
||||
CAP|1|5|0|Cap,
|
||||
COMUNE|1|50|0|Localita/comune
|
||||
PROVINCIA|1|2|0|Provincia
|
||||
LOCALITA|1|50|0|CAP, Localita, Prov.
|
||||
TELABI|1|14|0|Telefono abitazione
|
||||
TELLAV|1|14|0|Telefono lavoro
|
||||
TELALT|1|14|0|Telefono altro
|
||||
DATAULTDON|5|8|0|Data ultima donazione
|
||||
TOTDON|2|3|0|Totale donazioni
|
||||
1
|
||||
COGNOME+NOME+DATANASC|X
|
Loading…
x
Reference in New Issue
Block a user