Patch level : at

Files correlati     : at4.exe e maschere
Ricompilazione Demo : [ ]
Commento            : aggiunto supperto per creare file SMS per vodafone (manca solo la scelta in at43)


git-svn-id: svn://10.65.10.50/trunk@11272 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
cris 2003-06-24 08:49:29 +00:00
parent 8b7a226994
commit 9fc2426c75
8 changed files with 114 additions and 31 deletions

View File

@ -31,7 +31,7 @@
#define IDON_SI "SI" #define IDON_SI "SI"
#define IDON_AF "AF" #define IDON_AF "AF"
enum ts { undefined = 0, elenco = 1, completo = 2, etichette = 3, cartoline = 4, personale = 5 }; enum ts { undefined = 0, elenco = 1, completo = 2, etichette = 3, cartoline = 4, sms = 5, personale = 6 };
// definizione form per etichette // definizione form per etichette
class TScadenze_form : public TForm class TScadenze_form : public TForm
@ -58,7 +58,7 @@ class TStampaScadenze : public TPrintapp
TScadenze_form* _form_car; TScadenze_form* _form_car;
TScadenze_form* _form_per; TScadenze_form* _form_per;
TAssoc_array _categorie; TAssoc_array _categorie;
TParagraph_string _cognome_nome, _dencom, _giopredon; TParagraph_string _cognome_nome, _dencom, _giopredon, _telefono, _dataconv;
TDate _data_stampa; TDate _data_stampa;
TDate _dataini, _datafin, _dataultid; TDate _dataini, _datafin, _dataultid;
int _intminconv; int _intminconv;
@ -91,7 +91,7 @@ public:
void header_sezione(const TString16 codsez, const TString16 codsot); void header_sezione(const TString16 codsez, const TString16 codsot);
void dati_sezione(const TString16 codsez, const TString16 codsot); void dati_sezione(const TString16 codsez, const TString16 codsot);
TMask& app_mask() { return *_msk; } TMask& app_mask() { return *_msk; }
TStampaScadenze() : _data_stampa(TODAY), _cognome_nome("",25), _dencom("",25), _giopredon("",10) {} TStampaScadenze() : _data_stampa(TODAY), _cognome_nome("",25), _dencom("",25), _giopredon("",10), _telefono("",20), _dataconv("",10) {}
}; };
HIDDEN inline TStampaScadenze& app() { return (TStampaScadenze&) main_app(); } HIDDEN inline TStampaScadenze& app() { return (TStampaScadenze&) main_app(); }
@ -373,6 +373,13 @@ void TStampaScadenze::set_page(int file, int cnt)
//corpo.update_and_print(TRUE); //corpo.update_and_print(TRUE);
} }
break; break;
case sms:
{
set_row(1,"@0g#a,", &_cognome_nome);
set_row(1,"@50g#a,", &_telefono);
set_row(1,"@70g#a", &_dataconv);
}
break;
} }
} }
@ -494,17 +501,35 @@ bool TStampaScadenze::filter_func_scadenze(const TRelation* rel)
bool TStampaScadenze::preprocess_page(int file, int counter) bool TStampaScadenze::preprocess_page(int file, int counter)
{ {
TRectype& recsog = current_cursor()->curr(); TRectype& recsog = current_cursor()->curr();
TString80 nome = recsog.get(SOG_COGNOME);
nome << " ";
nome << recsog.get(SOG_NOME);
nome << " ";
nome << recsog.get(SOG_COGNOME_SP);
_cognome_nome = nome;
if (_tipostampa==sms)
{
TString& telalt = (TString&) recsog.get(SOG_TELALT);
telalt.trim();
if (telalt.empty() || telalt[0] == '0' || telalt.len() < 9)
{
telalt = (TString&) recsog.get(SOG_TELLAV);
telalt.trim();
if (telalt.empty() || telalt[0] == '0' || telalt.len() < 9)
{
telalt = (TString&) recsog.get(SOG_TELABI);
telalt.trim();
if (telalt.empty() || telalt[0] == '0' || telalt.len() < 9)
return FALSE;
}
}
_dataconv = _datafin.string();
_telefono = telalt;
}
if (_tipostampa==elenco || _tipostampa==completo || _tipostampa==personale) if (_tipostampa==elenco || _tipostampa==completo || _tipostampa==personale)
{ {
TRectype& recsog = current_cursor()->curr();
const TString16 codsez = recsog.get(SOG_CODSEZ); const TString16 codsez = recsog.get(SOG_CODSEZ);
const TString16 codsot = recsog.get(SOG_CODSOT); const TString16 codsot = recsog.get(SOG_CODSOT);
TString80 nome = recsog.get(SOG_COGNOME);
nome << " ";
nome << recsog.get(SOG_NOME);
nome << " ";
nome << recsog.get(SOG_COGNOME_SP);
_cognome_nome = nome;
TString256 localita = ""; TString256 localita = "";
localita = recsog.get(SOG_DOM_CAP); localita = recsog.get(SOG_DOM_CAP);
localita << ' '; localita << ' ';
@ -637,6 +662,9 @@ bool TStampaScadenze::set_print(int m)
case F_CARTOLINE: case F_CARTOLINE:
_tipostampa = (configura_stampante(p, "AT_CARTOLINE", "cartoline")) ? dati_cartoline() : undefined; _tipostampa = (configura_stampante(p, "AT_CARTOLINE", "cartoline")) ? dati_cartoline() : undefined;
break; break;
case F_SMS:
_tipostampa = (configura_stampante(p, "AT_SMS", "invio SMS")) ? sms : undefined;
break;
} }
if (_tipostampa != undefined) if (_tipostampa != undefined)
{ {

View File

@ -53,3 +53,4 @@
#define F_PERSONALE 403 #define F_PERSONALE 403
#define F_ETICHETTE 404 #define F_ETICHETTE 404
#define F_CARTOLINE 405 #define F_CARTOLINE 405
#define F_SMS 406

View File

@ -4,38 +4,44 @@ TOOLBAR "" 0 -2 0 -2
BUTTON F_ELENCO 9 2 BUTTON F_ELENCO 9 2
BEGIN BEGIN
PROMPT -16 -11 "E~lenco" PROMPT -17 -11 "E~lenco"
MESSAGE EXIT,F_ELENCO MESSAGE EXIT,F_ELENCO
END END
BUTTON F_COMPLETO 9 2 BUTTON F_COMPLETO 9 2
BEGIN BEGIN
PROMPT -26 -11 "~Completo" PROMPT -27 -11 "~Completo"
MESSAGE EXIT,F_COMPLETO MESSAGE EXIT,F_COMPLETO
END END
BUTTON F_PERSONALE 9 2 BUTTON F_PERSONALE 9 2
BEGIN BEGIN
PROMPT -36 -11 "~Personale" PROMPT -37 -11 "~Personale"
MESSAGE EXIT,F_PERSONALE MESSAGE EXIT,F_PERSONALE
END END
BUTTON F_ETICHETTE 9 2 BUTTON F_ETICHETTE 9 2
BEGIN BEGIN
PROMPT -46 -11 "~Etichette" PROMPT -47 -11 "~Etichette"
MESSAGE EXIT,F_ETICHETTE MESSAGE EXIT,F_ETICHETTE
END END
BUTTON F_CARTOLINE 9 2 BUTTON F_CARTOLINE 9 2
BEGIN BEGIN
PROMPT -56 -11 "C~artoline" PROMPT -57 -11 "C~artoline"
MESSAGE EXIT,F_CARTOLINE MESSAGE EXIT,F_CARTOLINE
END END
BUTTON F_SMS 9 2
BEGIN
PROMPT -67 -11 "~SMS"
MESSAGE EXIT,F_SMS
END
BUTTON DLG_QUIT 9 2 BUTTON DLG_QUIT 9 2
BEGIN BEGIN
PROMPT -66 -11 "" PROMPT -77 -11 ""
END END
ENDPAGE ENDPAGE

View File

@ -14,7 +14,7 @@
#define ALIAS_TCS 200 #define ALIAS_TCS 200
#define IDON_SI "SI" #define IDON_SI "SI"
enum ts { undefined = 0, elenco = 1, etichette = 2 }; enum ts { undefined = 0, elenco = 1, etichette = 2, sms = 3 };
// definizione form per etichette // definizione form per etichette
class TUrgenze_form : public TForm class TUrgenze_form : public TForm
@ -151,6 +151,14 @@ void TStampaUrgenze::set_page(int file, int cnt)
set_row(3,""); set_row(3,"");
} }
break; break;
case sms:
{
set_row(1,"@0g@S,", FLD(LF_SOGGETTI,SOG_TELALT));
set_row(1,"@16g@S,", FLD(LF_SOGGETTI,SOG_COGNOME));
set_row(1,"@43g@S,", FLD(LF_SOGGETTI,SOG_NOME));
set_row(1,"@70g@ld", FLD(LF_SOGGETTI,SOG_DATANASC));
}
break;
} }
} }
@ -227,10 +235,16 @@ bool TStampaUrgenze::filter_func_urgenze(const TRelation* rel)
} }
bool TStampaUrgenze::preprocess_page(int file, int counter) bool TStampaUrgenze::preprocess_page(int file, int counter)
{ {
TRectype& recsog = current_cursor()->curr();
if (_tipostampa==sms)
{
TString& telalt = (TString&) recsog.get(SOG_TELALT);
if (telalt.empty())
return FALSE;
}
if (_tipostampa == elenco) if (_tipostampa == elenco)
{ {
TRectype& recsog = current_cursor()->curr();
TString80 nome = recsog.get(SOG_COGNOME); TString80 nome = recsog.get(SOG_COGNOME);
nome << " "; nome << " ";
nome << recsog.get(SOG_NOME); nome << recsog.get(SOG_NOME);
@ -352,7 +366,10 @@ bool TStampaUrgenze::set_print(int)
break; break;
case F_ETICHETTE: case F_ETICHETTE:
_tipostampa = (configura_stampante(p, "AT_ETICHETTE", "etichette")) ? etichette : undefined; _tipostampa = (configura_stampante(p, "AT_ETICHETTE", "etichette")) ? etichette : undefined;
break; break;
case F_SMS:
_tipostampa = (configura_stampante(p, "AT_SMS", "invio SMS")) ? sms : undefined;
break;
} }
if (_tipostampa != undefined) if (_tipostampa != undefined)
{ {

View File

@ -37,3 +37,4 @@
#define F_ELENCO 401 #define F_ELENCO 401
#define F_ETICHETTE 402 #define F_ETICHETTE 402
#define F_SMS 403

View File

@ -4,19 +4,25 @@ TOOLBAR "" 0 20 0 2
BUTTON F_ELENCO 9 2 BUTTON F_ELENCO 9 2
BEGIN BEGIN
PROMPT -13 -11 "E~lenco" PROMPT -14 -11 "E~lenco"
MESSAGE EXIT,F_ELENCO MESSAGE EXIT,F_ELENCO
END END
BUTTON F_ETICHETTE 9 2 BUTTON F_ETICHETTE 9 2
BEGIN BEGIN
PROMPT -23 -11 "~Etichette" PROMPT -24 -11 "~Etichette"
MESSAGE EXIT,F_ETICHETTE MESSAGE EXIT,F_ETICHETTE
END END
BUTTON F_SMS 9 2
BEGIN
PROMPT -34 -11 "~SMS"
MESSAGE EXIT,F_SMS
END
BUTTON DLG_QUIT 9 2 BUTTON DLG_QUIT 9 2
BEGIN BEGIN
PROMPT -33 -11 "" PROMPT -44 -11 ""
END END
ENDPAGE ENDPAGE

View File

@ -19,7 +19,7 @@
#define STATO_IDONEO 'I' // IDONEITA' #define STATO_IDONEO 'I' // IDONEITA'
#define STATO_FINESO 'F' // FINE SOSPENSIONE #define STATO_FINESO 'F' // FINE SOSPENSIONE
// tpi di stampa // tpi di stampa
enum ts { undefined = 0, elencocon = 1, elencorit = 2, etichette = 3, cartoline = 4 }; enum ts { undefined = 0, elencocon = 1, elencorit = 2, etichette = 3, cartoline = 4, sms = 5 };
// definizione form per etichette e cartoline // definizione form per etichette e cartoline
class TConv_form : public TForm class TConv_form : public TForm
@ -106,8 +106,11 @@ ts TStampaConvocazioni::dati_cartoline()
} }
void TStampaConvocazioni::set_page(int file, int cnt) void TStampaConvocazioni::set_page(int file, int cnt)
{ {
if (_tipostampa==elencocon || _tipostampa==elencorit) switch (_tipostampa)
{
case elencocon:
case elencorit:
{ {
reset_row(1); reset_row(1);
reset_row(2); reset_row(2);
@ -135,7 +138,8 @@ void TStampaConvocazioni::set_page(int file, int cnt)
set_row(2,"@96g@S", FLD(LF_SOGGETTI,SOG_TELLAV)); set_row(2,"@96g@S", FLD(LF_SOGGETTI,SOG_TELLAV));
set_row(3,""); set_row(3,"");
} }
if (_tipostampa==etichette) break;
case etichette:
{ {
TPrint_section& corpo = _form_eti->get_body(); TPrint_section& corpo = _form_eti->get_body();
for (int r=1;r<=_etcolonne;r++) for (int r=1;r<=_etcolonne;r++)
@ -159,8 +163,9 @@ void TStampaConvocazioni::set_page(int file, int cnt)
++(*current_cursor()); ++(*current_cursor());
} }
} }
} }
if (_tipostampa==cartoline) break;
case cartoline:
{ {
TPrint_section& corpo = _form_car->get_body(); TPrint_section& corpo = _form_car->get_body();
const TString16 codsez = current_cursor()->curr().get(SOG_CODSEZ); const TString16 codsez = current_cursor()->curr().get(SOG_CODSEZ);
@ -207,6 +212,16 @@ void TStampaConvocazioni::set_page(int file, int cnt)
force_setpage(TRUE); // serve perchè alla prossima etichetta rifaccia la setpage force_setpage(TRUE); // serve perchè alla prossima etichetta rifaccia la setpage
// altrimenti stampa sempre la stessa etichetta // altrimenti stampa sempre la stessa etichetta
} }
break;
case sms:
{
set_row(1,"@0g@S,", FLD(LF_SOGGETTI,SOG_TELALT));
set_row(1,"@16g@S,", FLD(LF_SOGGETTI,SOG_COGNOME));
set_row(1,"@43g@S,", FLD(LF_SOGGETTI,SOG_NOME));
set_row(1,"@70g@ld", FLD(LF_SOGGETTI,SOG_DATANASC));
}
break;
}
} }
void TStampaConvocazioni::header_sezione(const TString16 codsez, const TString16 codsot) void TStampaConvocazioni::header_sezione(const TString16 codsez, const TString16 codsot)
@ -334,9 +349,15 @@ print_action TStampaConvocazioni::postprocess_print(int file, int counter)
bool TStampaConvocazioni::preprocess_page(int file, int counter) bool TStampaConvocazioni::preprocess_page(int file, int counter)
{ {
TRectype& recsog = current_cursor()->curr();
if (_tipostampa==sms)
{
TString& telalt = (TString&) recsog.get(SOG_TELALT);
if (telalt.empty())
return FALSE;
}
if (_tipostampa==elencocon || _tipostampa==elencorit) if (_tipostampa==elencocon || _tipostampa==elencorit)
{ {
TRectype& recsog = current_cursor()->curr();
const TString16 codsez = recsog.get(SOG_CODSEZ); const TString16 codsez = recsog.get(SOG_CODSEZ);
const TString16 codsot = recsog.get(SOG_CODSOT); const TString16 codsot = recsog.get(SOG_CODSOT);
TString80 nome = recsog.get(SOG_COGNOME); TString80 nome = recsog.get(SOG_COGNOME);
@ -360,7 +381,6 @@ bool TStampaConvocazioni::preprocess_page(int file, int counter)
if (_tipostampa==etichette) if (_tipostampa==etichette)
if (printer().rows_left() < _form_eti->get_body().height()) if (printer().rows_left() < _form_eti->get_body().height())
printer().formfeed(); printer().formfeed();
TRectype& recsog = current_cursor()->curr();
TString80 nome = recsog.get(SOG_COGNOME); TString80 nome = recsog.get(SOG_COGNOME);
nome << " "; nome << " ";
nome << recsog.get(SOG_NOME); nome << recsog.get(SOG_NOME);
@ -457,6 +477,9 @@ bool TStampaConvocazioni::set_print(int)
case F_CARTOLINE: case F_CARTOLINE:
_tipostampa = (configura_stampante(p, "AT_CARTOLINE", "cartoline")) ? dati_cartoline() : undefined; _tipostampa = (configura_stampante(p, "AT_CARTOLINE", "cartoline")) ? dati_cartoline() : undefined;
break; break;
case F_SMS:
_tipostampa = (configura_stampante(p, "AT_SMS", "invio SMS")) ? sms : undefined;
break;
} }
if (_tipostampa != undefined) if (_tipostampa != undefined)
{ {

View File

@ -17,3 +17,4 @@
#define F_ELENCORIT 402 #define F_ELENCORIT 402
#define F_ETICHETTE 403 #define F_ETICHETTE 403
#define F_CARTOLINE 404 #define F_CARTOLINE 404
#define F_SMS 405