Versione finale anagrafica contatti
Gestione stato abilitazioni anche con SSA remoto git-svn-id: svn://10.65.10.50/branches/R_10_00@22639 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
9f287b3844
commit
bb993a1e73
@ -455,14 +455,17 @@ bool TAttivazione_moduli::change_users_handler(TMask_field& fld, KEY key)
|
||||
{
|
||||
if (key == K_SPACE)
|
||||
{
|
||||
TDongle& d = ::dongle();
|
||||
if (d.hardware() == _dongle_ssa)
|
||||
return message_box(TR("E' necessario contattare attivazione_moduli@sirio-is.it"));
|
||||
|
||||
TMask m(TR("Utenti"), 1, 26, 7);
|
||||
m.add_number(101, 0, PR("Utenti "), 1, 1, 4, "U");
|
||||
m.add_string(102, 0, PR("Codice "), 1, 2, 8, "DU");
|
||||
|
||||
TDongle& dongle = ::dongle();
|
||||
if (dongle.type() == _user_dongle)
|
||||
if (d.type() == _user_dongle)
|
||||
{
|
||||
m.set(101, dongle.max_users());
|
||||
m.set(101, d.max_users());
|
||||
m.enable(102);
|
||||
}
|
||||
else
|
||||
@ -476,7 +479,7 @@ bool TAttivazione_moduli::change_users_handler(TMask_field& fld, KEY key)
|
||||
if (m.run() == K_ENTER)
|
||||
{
|
||||
const int utenti = m.get_int(101);
|
||||
if (dongle.type() == _user_dongle)
|
||||
if (d.type() == _user_dongle)
|
||||
{
|
||||
if (utenti > 0 && utenti < 1000)
|
||||
{
|
||||
@ -493,7 +496,7 @@ bool TAttivazione_moduli::change_users_handler(TMask_field& fld, KEY key)
|
||||
app().garble_users(utenti, str1, str2);
|
||||
if ((m.get(102) == str1) || (m.get(102) == str2))
|
||||
{
|
||||
dongle.set_max_users(utenti);
|
||||
d.set_max_users(utenti);
|
||||
fld.mask().set(F_USERS, utenti);
|
||||
}
|
||||
else
|
||||
@ -540,14 +543,18 @@ bool TAttivazione_moduli::change_assist_handler(TMask_field& fld, KEY key)
|
||||
{
|
||||
if (key == K_SPACE)
|
||||
{
|
||||
TDongle& d = ::dongle();
|
||||
|
||||
if (d.hardware() == _dongle_ssa)
|
||||
return message_box(TR("E' necessario contattare attivazione_moduli@sirio-is.it"));
|
||||
|
||||
TMask m(TR("Assistenza"), 1, 26, 9);
|
||||
m.add_number(101, 0, PR("Anno "), 1, 1, 4, "U");
|
||||
m.add_string(102, 0, PR("Codice "), 1, 2, 8, "DU");
|
||||
|
||||
TDongle& dongle = ::dongle();
|
||||
if (dongle.type() == _user_dongle)
|
||||
if (d.type() == _user_dongle)
|
||||
{
|
||||
m.set(101, dongle.year_assist());
|
||||
m.set(101, d.year_assist());
|
||||
m.enable(102);
|
||||
}
|
||||
else
|
||||
@ -561,7 +568,7 @@ bool TAttivazione_moduli::change_assist_handler(TMask_field& fld, KEY key)
|
||||
if (m.run() == K_ENTER)
|
||||
{
|
||||
word year = m.get_int(101);
|
||||
if (dongle.type() == _user_dongle)
|
||||
if (d.type() == _user_dongle)
|
||||
{
|
||||
if (year >= YEAR_MIN && year <= YEAR_MAX)
|
||||
{
|
||||
@ -578,7 +585,7 @@ bool TAttivazione_moduli::change_assist_handler(TMask_field& fld, KEY key)
|
||||
bool ok = (m.get(102) == str1) || (m.get(102) == str2);
|
||||
if (ok)
|
||||
{
|
||||
dongle.set_year_assist(year);
|
||||
d.set_year_assist(year);
|
||||
fld.mask().set(F_ASSIST, year);
|
||||
}
|
||||
else
|
||||
@ -659,10 +666,12 @@ void TAttivazione_moduli::init_mask()
|
||||
const TDate oggi(TODAY);
|
||||
const int nmod = build_sheet();
|
||||
const TDongle& d = ::dongle();
|
||||
if (d.hardware() == _dongle_hardlock)
|
||||
_msk->set_caption(TR("Attivazione HARDLOCK"));
|
||||
else
|
||||
_msk->set_caption(TR("Attivazione EUTRON"));
|
||||
switch (d.hardware())
|
||||
{
|
||||
case _dongle_hardlock: _msk->set_caption(TR("Attivazione HARDLOCK")); break;
|
||||
case _dongle_eutron : _msk->set_caption(TR("Attivazione EUTRON")); break;
|
||||
default : _msk->set_caption(TR("Attivazione SSA")); break;
|
||||
}
|
||||
|
||||
_msk->set(F_SN, d.number());
|
||||
_msk->set(F_DT, oggi);
|
||||
@ -685,7 +694,7 @@ bool TAttivazione_moduli::date_hnd(TMask_field& f, KEY k)
|
||||
const TDate oggi(TODAY);
|
||||
if (data > oggi)
|
||||
return f.error_box(FR("La data deve essere antecedente a quella di sistema"));
|
||||
|
||||
/*
|
||||
const TDate& last_update = ::dongle().last_update();
|
||||
if (data < last_update)
|
||||
return f.error_box(FR("La data deve essere successiva al %s"), last_update.string());
|
||||
@ -693,6 +702,7 @@ bool TAttivazione_moduli::date_hnd(TMask_field& f, KEY k)
|
||||
const int year_assist = ::dongle().year_assist()+1;
|
||||
if (data.year() > year_assist)
|
||||
return f.error_box(FR("La data deve essere antecedente al 31-12-%d"), year_assist);
|
||||
*/
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@ -1000,16 +1010,17 @@ bool TAttivazione_moduli::create()
|
||||
TSheet_field& sf = _msk->sfield(F_MODULI);
|
||||
sf.set_notify(k_notify);
|
||||
|
||||
const bool can_edit = serno() != 0 && d.hardware() != _dongle_ssa;
|
||||
|
||||
switch (mydongle)
|
||||
{
|
||||
case _user_dongle:
|
||||
_msk->enable(F_DT);
|
||||
_msk->set_handler(F_DT, date_hnd);
|
||||
case _developer_dongle:
|
||||
init_mask();
|
||||
_serno=_msk->get_int(F_SN);
|
||||
sf.enable_column(F_ENABLE, serno() != 0);
|
||||
sf.enable_column(F_KEY, serno() != 0);
|
||||
sf.enable_column(F_ENABLE, can_edit);
|
||||
sf.enable_column(F_KEY, can_edit);
|
||||
break;
|
||||
case _aga_dongle:
|
||||
_msk->set_handler(F_SN, serno_hnd);
|
||||
@ -1018,7 +1029,7 @@ bool TAttivazione_moduli::create()
|
||||
_serno=_msk->get_int(F_SN);
|
||||
|
||||
build_sheet(false);
|
||||
sf.enable_column(1);
|
||||
sf.enable_column(1, can_edit);
|
||||
build_key_column();
|
||||
break;
|
||||
default:
|
||||
|
@ -22,7 +22,7 @@ END
|
||||
DATE F_DT
|
||||
BEGIN
|
||||
PROMPT 54 2 "Data "
|
||||
FLAGS "AD"
|
||||
FLAGS "A"
|
||||
END
|
||||
|
||||
NUMBER F_USERS 4
|
||||
|
@ -13,10 +13,21 @@ protected:
|
||||
virtual bool user_destroy() ;
|
||||
virtual TMask* get_mask(int mode) { return _msk;}
|
||||
virtual TRelation* get_relation() const { return _rel;}
|
||||
virtual bool get_next_key(TToken_string& key);
|
||||
|
||||
public:
|
||||
};
|
||||
|
||||
bool TContact_application::get_next_key(TToken_string& key)
|
||||
{
|
||||
TRecnotype n = 1;
|
||||
TLocalisamfile& f = _rel->file();
|
||||
if (f.last() == NOERR)
|
||||
n += f.get_long("CONTACT");
|
||||
key.format("%d|%ld", F_CONTACT, n);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TContact_application::user_create()
|
||||
{
|
||||
_rel = new TRelation(LF_CONTACT) ;
|
||||
|
39
ba/ba4700a.h
39
ba/ba4700a.h
@ -1,7 +1,34 @@
|
||||
#define F_CONTACT 101
|
||||
#define F_COGNOME 102
|
||||
#define F_NOME 103
|
||||
#define F_CONTACT 101
|
||||
#define F_COGNOME 102
|
||||
#define F_NOME 103
|
||||
#define F_CODALT 104
|
||||
#define F_TITOLO 105
|
||||
|
||||
#define F_TIPOCF 111
|
||||
#define F_CODCF 112
|
||||
#define F_RAGSOC 113
|
||||
#define F_TIPOCF 111
|
||||
#define F_CODCF 112
|
||||
#define F_RAGSOC 113
|
||||
#define F_QUALIFICA 114
|
||||
|
||||
#define F_MAIL 121
|
||||
#define F_NUMTEL 122
|
||||
#define F_NUMCEL 123
|
||||
#define F_NUMFAX 124
|
||||
|
||||
#define F_STATO 131
|
||||
#define F_COMUNE 132
|
||||
#define F_DENCOM 133
|
||||
#define F_INDIRIZZO 134
|
||||
#define F_CAP 135
|
||||
#define F_LOCALITA 136
|
||||
|
||||
#define F_MAIL2 221
|
||||
#define F_NUMTEL2 222
|
||||
#define F_NUMCEL2 223
|
||||
#define F_NUMFAX2 224
|
||||
|
||||
#define F_STATO2 231
|
||||
#define F_COMUNE2 232
|
||||
#define F_DENCOM2 233
|
||||
#define F_INDIRIZZO2 234
|
||||
#define F_CAP2 235
|
||||
#define F_LOCALITA2 236
|
||||
|
262
ba/ba4700a.uml
262
ba/ba4700a.uml
@ -4,16 +4,21 @@ TOOLBAR "" 0 0 0 2
|
||||
#include <relapbar.h>
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Contatti" -1 -1 77 20
|
||||
PAGE "Ufficio" -1 -1 77 20
|
||||
|
||||
GROUPBOX DLG_NULL 76 5
|
||||
GROUPBOX DLG_NULL 76 6
|
||||
BEGIN
|
||||
PROMPT 1 0 "@bCodici"
|
||||
PROMPT 1 0 "@bContatto"
|
||||
END
|
||||
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 1 "@bCodice"
|
||||
END
|
||||
|
||||
NUMBER F_CONTACT 6
|
||||
BEGIN
|
||||
PROMPT 2 1 "Cod."
|
||||
PROMPT 2 2 ""
|
||||
USE LF_CONTACT
|
||||
INPUT CONTACT F_CONTACT
|
||||
DISPLAY "Codice" CONTACT
|
||||
@ -21,14 +26,25 @@ BEGIN
|
||||
DISPLAY "Nome@50" NOME
|
||||
DISPLAY "Alternativo@20" CODALT
|
||||
OUTPUT F_CONTACT CONTACT
|
||||
CHECKTYPE FORCED
|
||||
OUTPUT F_COGNOME COGNOME
|
||||
OUTPUT F_NOME NOME
|
||||
OUTPUT F_TIPOCF TIPOCF
|
||||
OUTPUT F_CODCF CODCF
|
||||
OUTPUT F_CODALT CODALT
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD CONTACT
|
||||
KEY 1 3
|
||||
KEY 1
|
||||
END
|
||||
|
||||
STRING F_TITOLO 20
|
||||
BEGIN
|
||||
PROMPT 15 1 "Titolo "
|
||||
FIELD TITOLO
|
||||
END
|
||||
|
||||
STRING F_COGNOME 50
|
||||
BEGIN
|
||||
PROMPT 16 1 "Cognome "
|
||||
PROMPT 15 2 "Cognome "
|
||||
USE LF_CONTACT KEY 2
|
||||
INPUT COGNOME F_COGNOME
|
||||
INPUT NOME F_NOME
|
||||
@ -36,7 +52,7 @@ BEGIN
|
||||
DISPLAY "Nome@50" NOME
|
||||
DISPLAY "Codice" CONTACT
|
||||
DISPLAY "Alternativo@20" CODALT
|
||||
OUTPUT F_CONTACT CONTACT
|
||||
COPY OUTPUT F_CONTACT
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD COGNOME
|
||||
KEY 2
|
||||
@ -44,24 +60,46 @@ END
|
||||
|
||||
STRING F_NOME 50
|
||||
BEGIN
|
||||
PROMPT 16 2 "Nome "
|
||||
PROMPT 15 3 "Nome "
|
||||
COPY ALL F_COGNOME
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD NOME
|
||||
KEY 2
|
||||
END
|
||||
|
||||
STRING F_CODALT 20
|
||||
BEGIN
|
||||
PROMPT 2 4 "Codice alternativo "
|
||||
FLAGS "U"
|
||||
USE LF_CONTACT KEY 4
|
||||
INPUT CODALT F_CODALT
|
||||
DISPLAY "Cod. Alt.@15" RICALT
|
||||
DISPLAY "Titolo@10" TITOLO
|
||||
DISPLAY "Cognome@50" COGNOME
|
||||
DISPLAY "Nome@50" NOME
|
||||
DISPLAY "Codice" CONTACT
|
||||
COPY OUTPUT F_CONTACT
|
||||
CHECKTYPE NORMAL
|
||||
KEY 4
|
||||
FIELD CODALT
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 76 6
|
||||
BEGIN
|
||||
PROMPT 1 6 "@bCliente/Fornitore"
|
||||
END
|
||||
|
||||
LIST F_TIPOCF 1 10
|
||||
BEGIN
|
||||
PROMPT 2 3 ""
|
||||
PROMPT 2 7 ""
|
||||
ITEM "C|Cliente"
|
||||
ITEM "F|Fornitore"
|
||||
KEY 3
|
||||
FIELD TIPOCF
|
||||
END
|
||||
|
||||
NUMBER F_CODCF 6
|
||||
BEGIN
|
||||
PROMPT 15 3 ""
|
||||
PROMPT 16 7 ""
|
||||
USE LF_CLIFO
|
||||
INPUT TIPOCF F_TIPOCF
|
||||
DISPLAY "Codice" CODCF
|
||||
@ -71,12 +109,12 @@ BEGIN
|
||||
DISPLAY "Partita IVA@15" PAIV
|
||||
OUTPUT F_CODCF CODCF
|
||||
CHECKTYPE NORMAL
|
||||
KEY 3
|
||||
FIELD CODCF
|
||||
END
|
||||
|
||||
STRING F_RAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 24 3 ""
|
||||
PROMPT 2 8 "Ragione sociale "
|
||||
USE LF_CLIFO KEY 2
|
||||
DISPLAY "Ragione Sociale@50" RAGSOC
|
||||
DISPLAY "Cod. Alt.@15" RICALT
|
||||
@ -87,4 +125,198 @@ BEGIN
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_QUALIFICA 20
|
||||
BEGIN
|
||||
PROMPT 45 7 "Qualifica "
|
||||
FIELD QUALIFICA
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 76 4
|
||||
BEGIN
|
||||
PROMPT 1 10 "@bUfficio"
|
||||
END
|
||||
|
||||
STRING F_MAIL 30
|
||||
BEGIN
|
||||
PROMPT 2 11 "Mail "
|
||||
FIELD MAIL
|
||||
END
|
||||
|
||||
STRING F_NUMTEL 30
|
||||
BEGIN
|
||||
PROMPT 40 11 "Tel. "
|
||||
FIELD NUMTEL
|
||||
END
|
||||
|
||||
STRING F_NUMFAX 30
|
||||
BEGIN
|
||||
PROMPT 2 12 "FAX "
|
||||
FIELD NUMFAX
|
||||
END
|
||||
|
||||
STRING F_NUMCEL 30
|
||||
BEGIN
|
||||
PROMPT 40 12 "Cell."
|
||||
FIELD NUMCEL
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 76 6
|
||||
BEGIN
|
||||
PROMPT 1 14 "@bIndirizzo"
|
||||
END
|
||||
|
||||
NUMBER F_STATO 3
|
||||
BEGIN
|
||||
PROMPT 2 15 "Stato "
|
||||
USE %STA
|
||||
INPUT CODTAB F_STATO
|
||||
DISPLAY "Codice " CODTAB
|
||||
DISPLAY "Denominazione@50" S0
|
||||
OUTPUT F_STATO CODTAB
|
||||
CHECKTYPE NORMAL
|
||||
FIELD STATO
|
||||
END
|
||||
|
||||
STRING F_COMUNE 4
|
||||
BEGIN
|
||||
PROMPT 16 15 "Comune "
|
||||
FLAGS "U"
|
||||
USE LF_COMUNI
|
||||
INPUT STATO F_STATO
|
||||
INPUT COM F_COMUNE
|
||||
DISPLAY "Stato" STATO
|
||||
DISPLAY "Codice" COM
|
||||
DISPLAY "Denominazione@50" DENCOM
|
||||
OUTPUT F_STATO STATO
|
||||
OUTPUT F_COMUNE COM
|
||||
OUTPUT F_DENCOM DENCOM
|
||||
CHECKTYPE NORMAL
|
||||
FIELD CODCOM
|
||||
END
|
||||
|
||||
STRING F_DENCOM 50
|
||||
BEGIN
|
||||
PROMPT 2 16 "Denominazione "
|
||||
USE LF_COMUNI KEY 2
|
||||
INPUT STATO F_STATO
|
||||
INPUT DENCOM F_COMUNE
|
||||
DISPLAY "Denominazione@50" DENCOM
|
||||
DISPLAY "Stato" STATO
|
||||
DISPLAY "Codice" COM
|
||||
COPY OUTPUT F_COMUNE
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_INDIRIZZO 50
|
||||
BEGIN
|
||||
PROMPT 2 17 "Indirizzo "
|
||||
FIELD INDIR
|
||||
END
|
||||
|
||||
NUMER F_CAP 5
|
||||
BEGIN
|
||||
PROMPT 2 18 "C.A.P. "
|
||||
FIELD CAP
|
||||
END
|
||||
|
||||
STRING F_LOCALITA 30
|
||||
BEGIN
|
||||
PROMPT 34 18 "Località "
|
||||
FIELD LOCALITA
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Casa" -1 -1 77 20
|
||||
|
||||
GROUPBOX DLG_NULL 76 4
|
||||
BEGIN
|
||||
PROMPT 1 1 "@bCasa"
|
||||
END
|
||||
|
||||
STRING F_MAIL2 30
|
||||
BEGIN
|
||||
PROMPT 2 2 "Mail "
|
||||
FIELD MAIL2
|
||||
END
|
||||
|
||||
STRING F_NUMTEL2 30
|
||||
BEGIN
|
||||
PROMPT 40 2 "Tel. "
|
||||
FIELD NUMTEL2
|
||||
END
|
||||
|
||||
STRING F_NUMFAX2 30
|
||||
BEGIN
|
||||
PROMPT 2 3 "FAX "
|
||||
FIELD NUMFAX2
|
||||
END
|
||||
|
||||
STRING F_NUMCEL2 30
|
||||
BEGIN
|
||||
PROMPT 40 3 "Cell."
|
||||
FIELD NUMCEL2
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 76 6
|
||||
BEGIN
|
||||
PROMPT 1 5 "@bIndirizzo di casa"
|
||||
END
|
||||
|
||||
NUMBER F_STATO2 3
|
||||
BEGIN
|
||||
PROMPT 2 6 "Stato "
|
||||
USE %STA
|
||||
INPUT CODTAB F_STATO2
|
||||
COPY DISPLAY F_STATO
|
||||
OUTPUT F_STATO2 CODTAB
|
||||
CHECKTYPE NORMAL
|
||||
FIELD STATO2
|
||||
END
|
||||
|
||||
STRING F_COMUNE2 4
|
||||
BEGIN
|
||||
PROMPT 16 6 "Comune "
|
||||
FLAGS "U"
|
||||
COPY USE F_COMUNE
|
||||
INPUT STATO F_STATO2
|
||||
INPUT COM F_COMUNE2
|
||||
COPY DISPLAY F_COMUNE
|
||||
OUTPUT F_STATO2 STATO
|
||||
OUTPUT F_COMUNE2 COM
|
||||
OUTPUT F_DENCOM2 DENCOM
|
||||
CHECKTYPE NORMAL
|
||||
FIELD CODCOM2
|
||||
END
|
||||
|
||||
STRING F_DENCOM2 50
|
||||
BEGIN
|
||||
PROMPT 2 7 "Denominazione "
|
||||
COPY USE F_DENCOM
|
||||
INPUT DENCOM F_COMUNE2
|
||||
COPY DISPLAY F_DENCOM
|
||||
COPY OUTPUT F_COMUNE2
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_INDIRIZZO2 50
|
||||
BEGIN
|
||||
PROMPT 2 8 "Indirizzo "
|
||||
FIELD INDIR2
|
||||
END
|
||||
|
||||
NUMER F_CAP2 5
|
||||
BEGIN
|
||||
PROMPT 2 9 "C.A.P. "
|
||||
FIELD CAP2
|
||||
END
|
||||
|
||||
STRING F_LOCALITA2 30
|
||||
BEGIN
|
||||
PROMPT 34 9 "Località "
|
||||
FIELD LOCALITA2
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
@ -19,14 +19,15 @@ Flags = ""
|
||||
Item_01 = "Persone fisiche", "ba4 -1 F", ""
|
||||
Item_02 = "Persone giuridiche", "ba4 -1 G", ""
|
||||
Item_03 = "Ditte", "ba4 -2", ""
|
||||
Item_04 = "Ricerca Soci", "ba5", ""
|
||||
Item_05 = "Tabelle ministeriali", [MENU_011]
|
||||
Item_06 = "Tabelle", [MENU_002]
|
||||
Item_07 = "Stampa anagrafiche", "ba6 -0", ""
|
||||
Item_08 = "Stampa tabelle", [MENU_003]
|
||||
Item_09 = "Stampa tabelle ministeriali", [MENU_012]
|
||||
Item_10 = "Stampa fogli libri bollati", "ba3 -2", "F"
|
||||
Item_11 = "Moduli aggiuntivi", <baaddon.men>
|
||||
Item_04 = "Contatti", "ba4 -6", ""
|
||||
Item_05 = "Ricerca Soci", "ba5", ""
|
||||
Item_06 = "Tabelle ministeriali", [MENU_011]
|
||||
Item_07 = "Tabelle", [MENU_002]
|
||||
Item_08 = "Stampa anagrafiche", "ba6 -0", ""
|
||||
Item_09 = "Stampa tabelle", [MENU_003]
|
||||
Item_10 = "Stampa tabelle ministeriali", [MENU_012]
|
||||
Item_11 = "Stampa fogli libri bollati", "ba3 -2", "F"
|
||||
Item_12 = "Moduli aggiuntivi", <baaddon.men>
|
||||
|
||||
[MENU_002]
|
||||
Caption = "Tabelle"
|
||||
|
Loading…
x
Reference in New Issue
Block a user