Denormalizzazione codoice concessione e rimozione degli "slock"inanagrafiche
git-svn-id: svn://10.65.10.50/trunk@1248 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
9fd3b7e10a
commit
d87a2cfd29
@ -17,6 +17,7 @@
|
||||
class TPersone_app : public TRelation_application
|
||||
{
|
||||
char _tip_ana ;
|
||||
bool _reset_uff_conc;
|
||||
TString16 _cod_ana ;
|
||||
TMask* _msk[2] ;
|
||||
TRelation* _rel[2];
|
||||
@ -50,8 +51,9 @@ public:
|
||||
const char* cod_ana() { return _cod_ana;}
|
||||
char tip_ana() { return _tip_ana;}
|
||||
virtual bool force_cursor_usage() const { return TRUE;}
|
||||
void set_reset_uff_conc(bool reset) { _reset_uff_conc = reset; }
|
||||
|
||||
TPersone_app(char ta) { set_tip_ana(ta); }
|
||||
TPersone_app(char ta) : _reset_uff_conc(FALSE) { set_tip_ana(ta); }
|
||||
virtual ~TPersone_app() {}
|
||||
};
|
||||
|
||||
@ -84,16 +86,16 @@ bool TPersone_app::ba4200_handler(TMask& m, KEY k)
|
||||
TMessage msg(cmd2name(cmd), MSG_FS, (const char*) body);
|
||||
|
||||
msg.send();
|
||||
TLocalisamfile& d = app.get_relation()->lfile();
|
||||
// TLocalisamfile& d = app.get_relation()->lfile();
|
||||
|
||||
d.setkey(1);
|
||||
d.zero();
|
||||
d.put(N_TIPOA, app.ana_fis() ? "F" : "G");
|
||||
d.put(N_CODANAGR, m.get(FLD_CODANAGR));
|
||||
d.read(_isequal, _unlock) ;
|
||||
// d.setkey(1);
|
||||
// d.zero();
|
||||
// d.put(N_TIPOA, app.ana_fis() ? "F" : "G");
|
||||
// d.put(N_CODANAGR, m.get(FLD_CODANAGR));
|
||||
// d.read(_isequal, _unlock) ;
|
||||
TExternal_app a(cmd);
|
||||
a.run();
|
||||
d.read(_iscurr, _lock) ;
|
||||
// d.read(_iscurr, _lock) ;
|
||||
m.set_focus();
|
||||
return FALSE;
|
||||
}
|
||||
@ -267,9 +269,10 @@ bool gest_uff_imp(TMask_field& f, KEY key)
|
||||
cod_com = msk.get(giuridica ? FLD_AG2_COMRES : FLD_AF1_COMRES) ;
|
||||
|
||||
if (cod_com.empty())
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
|
||||
TLocalisamfile comuni(LF_COMUNI);
|
||||
|
||||
TLocalisamfile comuni(LF_COMUNI) ;
|
||||
comuni.setkey(1) ;
|
||||
comuni.zero() ;
|
||||
comuni.put(N_COM, cod_com );
|
||||
@ -287,7 +290,11 @@ bool gest_uff_imp(TMask_field& f, KEY key)
|
||||
if (s.empty()) s = comuni.get(N_IVA3) ;
|
||||
msk.set(F_UFFIVA, s) ; msk.field(F_UFFIVA).on_key(K_TAB);
|
||||
msk.set(F_UFFREG, comuni.get("UFFREG")); msk.field(F_UFFREG).on_key(K_TAB);
|
||||
msk.set(F_UFFCONC, comuni.get("UFFCONC")); msk.field(F_UFFCONC).on_key(K_TAB);
|
||||
if (msk.get(F_UFFCONC).empty() || msk.is_running())
|
||||
{
|
||||
msk.set(F_UFFCONC, comuni.get("UFFCONC"));
|
||||
msk.field(F_UFFCONC).on_key(K_TAB);
|
||||
}
|
||||
msk.set(F_UFFSERV, comuni.get("UFFCSERV")); msk.field(F_UFFSERV).on_key(K_TAB);
|
||||
|
||||
msk.set(F_CODCONTR_EP, comuni.get("UFFESPROV").mid(1, 2));
|
||||
@ -297,6 +304,34 @@ bool gest_uff_imp(TMask_field& f, KEY key)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
// Handler dell'ufficio concessione
|
||||
bool uff_conc(TMask_field& f, KEY key)
|
||||
{
|
||||
if (f.mask().query_mode())
|
||||
return TRUE;
|
||||
|
||||
if (key == K_ENTER)
|
||||
{
|
||||
TMask& msk = f.mask() ;
|
||||
TPersone_app& app = (TPersone_app&)main_app();
|
||||
const bool giuridica = app.ana_giu();
|
||||
TString16 cod_com(msk.get(giuridica ? FLD_AG1_COMRF : FLD_AF2_COMRF));
|
||||
|
||||
if (cod_com.empty())
|
||||
cod_com = msk.get(giuridica ? FLD_AG2_COMRES : FLD_AF1_COMRES) ;
|
||||
|
||||
if (cod_com.not_empty())
|
||||
{
|
||||
TLocalisamfile comuni(LF_COMUNI);
|
||||
|
||||
comuni.setkey(1) ;
|
||||
comuni.zero() ;
|
||||
comuni.put(N_COM, cod_com );
|
||||
app.set_reset_uff_conc(comuni.read() == NOERR && msk.get(F_UFFCONC) == comuni.get("UFFCONC"));
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
bool no_dup_fis(TMask_field& f, KEY key)
|
||||
{
|
||||
if (f.mask().query_mode() || !f.to_check(key)) return TRUE;
|
||||
@ -397,6 +432,7 @@ TMask* TPersone_app::get_mask(int mode)
|
||||
_msk[MSKF]->set_handler(FLD_AF2_COMCORR, clear_cap);
|
||||
_msk[MSKF]->set_handler(FLD_AF1_PAIV, no_dup_iva_f);
|
||||
_msk[MSKF]->set_handler(FLD_AF1_COFI, no_dup_fis);
|
||||
_msk[MSKF]->set_handler(F_UFFCONC, uff_conc);
|
||||
_msk[MSKF]->set_handler(ba4200_handler);
|
||||
}
|
||||
else
|
||||
@ -409,6 +445,7 @@ TMask* TPersone_app::get_mask(int mode)
|
||||
_msk[MSKG]->set_handler(FLD_AG2_COMCORR, clear_cap);
|
||||
_msk[MSKG]->set_handler(FLD_AG1_COFI, no_dup_fis);
|
||||
_msk[MSKG]->set_handler(FLD_AG1_PAIV, no_dup_iva_g);
|
||||
_msk[MSKG]->set_handler(F_UFFCONC, uff_conc);
|
||||
_msk[MSKG]->set_handler(ba4200_handler);
|
||||
}
|
||||
return _msk[tip_msk()];
|
||||
@ -496,6 +533,11 @@ int TPersone_app::write(const TMask& m)
|
||||
TRelation *r = get_relation();
|
||||
m.autosave(r);
|
||||
set_cod_ana(r->lfile().get(N_CODANAGR));
|
||||
if (_reset_uff_conc)
|
||||
{
|
||||
_reset_uff_conc = FALSE;
|
||||
r->lfile().zero("UFFCONC");
|
||||
}
|
||||
manual_save(m);
|
||||
return r->write();
|
||||
}
|
||||
@ -506,6 +548,11 @@ int TPersone_app::rewrite(const TMask& m)
|
||||
TRelation *r = get_relation();
|
||||
|
||||
m.autosave(r);
|
||||
if (_reset_uff_conc)
|
||||
{
|
||||
_reset_uff_conc = FALSE;
|
||||
r->lfile().zero("UFFCONC");
|
||||
}
|
||||
manual_save(m);
|
||||
return r->rewrite();
|
||||
}
|
||||
|
@ -378,5 +378,6 @@
|
||||
#define F_VARDF 407
|
||||
#define F_DVARDF 408
|
||||
#define F_STATORES 409
|
||||
#define F_LOCCORR 410
|
||||
|
||||
#endif // __BA4200_H
|
||||
|
@ -491,7 +491,7 @@ BEGIN
|
||||
GROUP 3
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 76 6
|
||||
GROUPBOX DLG_NULL 76 7
|
||||
BEGIN
|
||||
PROMPT 0 5 "Corrispondenza"
|
||||
END
|
||||
@ -513,9 +513,16 @@ BEGIN
|
||||
VALIDATE EMPTYCOPY_FUNC FLD_AF1_CIVRES
|
||||
END
|
||||
|
||||
STRING F_LOCCORR 35
|
||||
BEGIN
|
||||
PROMPT 2 7 "Localita' "
|
||||
FIELD LF_ANAG->LOCCORR
|
||||
HELP "Localita' in cui spedire la corrispondenza"
|
||||
END
|
||||
|
||||
NUMBER FLD_AF2_STATOCORR 3
|
||||
BEGIN
|
||||
PROMPT 2 7 "Comune : Stato "
|
||||
PROMPT 2 8 "Comune : Stato "
|
||||
FIELD LF_ANAG->STATOCORR
|
||||
FLAGS "Z"
|
||||
COPY USE F_STATO
|
||||
@ -529,7 +536,7 @@ END
|
||||
|
||||
STRING FLD_AF2_COMCORR 4
|
||||
BEGIN
|
||||
PROMPT 9 8 ": Codice "
|
||||
PROMPT 9 9 ": Codice "
|
||||
FIELD LF_ANAG->COMCORR
|
||||
FLAGS "U"
|
||||
COPY USE FLD_AF1_COMNASC
|
||||
@ -549,21 +556,21 @@ END
|
||||
|
||||
STRING FLD_AF2_COMCORR_COMUNI_PROVCOM 5
|
||||
BEGIN
|
||||
PROMPT 38 8 "Provincia "
|
||||
PROMPT 38 9 "Provincia "
|
||||
FLAGS "D"
|
||||
VALIDATE EMPTYCOPY_FUNC FLD_AF1_COMRES_COMUNI_PROVCOM
|
||||
END
|
||||
|
||||
STRING FLD_AF2_CAPCORR 5
|
||||
BEGIN
|
||||
PROMPT 56 8 "CAP "
|
||||
PROMPT 56 9 "CAP "
|
||||
FIELD LF_ANAG->CAPCORR
|
||||
HELP "CAP del comune al quale spedire la corrispondenza"
|
||||
END
|
||||
|
||||
STRING FLD_AF2_COMCORR_COMUNI_DENCOM 50
|
||||
BEGIN
|
||||
PROMPT 9 9 ": Denom. "
|
||||
PROMPT 9 10 ": Denom. "
|
||||
HELP "Nome del comune al quale spedire la corrispondenza"
|
||||
COPY USE FLD_AF1_COMRES_COMUNI_DENCOM
|
||||
INPUT DENCOM FLD_AF2_COMCORR_COMUNI_DENCOM
|
||||
@ -1058,9 +1065,12 @@ END
|
||||
NUMBER F_UFFCONC 3
|
||||
BEGIN
|
||||
PROMPT 1 11 "Concessioni "
|
||||
FLAGS "DGZ"
|
||||
USE %UCC
|
||||
FLAGS "Z"
|
||||
USE %UCC
|
||||
FIELD LF_ANAG->UFFCONC
|
||||
INPUT CODTAB F_UFFCONC
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Denominazione@50" S0
|
||||
OUTPUT F_UFFCONC CODTAB
|
||||
OUTPUT F_DENUFFCONC S0
|
||||
CHECKTYPE NORMAL
|
||||
|
@ -237,7 +237,7 @@ BEGIN
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Stato@50" S0
|
||||
OUTPUT F_STATORES CODTAB
|
||||
HELP "Codice dello stato a cui mandare la corrispondenza"
|
||||
HELP "Codice dello stato di residenza"
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
@ -423,7 +423,7 @@ BEGIN
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 75 6
|
||||
GROUPBOX DLG_NULL 75 7
|
||||
BEGIN
|
||||
PROMPT 0 4 "Corrispondenza"
|
||||
END
|
||||
@ -445,9 +445,16 @@ BEGIN
|
||||
VALIDATE EMPTYCOPY_FUNC FLD_AG2_CIVRES
|
||||
END
|
||||
|
||||
STRING F_LOCCORR 35
|
||||
BEGIN
|
||||
PROMPT 2 6 "Localita' "
|
||||
FIELD LF_ANAG->LOCCORR
|
||||
HELP "Localita' in cui spedire la corrispondenza"
|
||||
END
|
||||
|
||||
NUMBER FLD_AG2_STATOCORR 3
|
||||
BEGIN
|
||||
PROMPT 2 6 "Comune : Stato "
|
||||
PROMPT 2 7 "Comune : Stato "
|
||||
FIELD LF_ANAG->STATOCORR
|
||||
FLAGS "Z"
|
||||
USE %STA
|
||||
@ -461,7 +468,7 @@ END
|
||||
|
||||
STRING FLD_AG2_COMCORR 4
|
||||
BEGIN
|
||||
PROMPT 9 7 ": Codice "
|
||||
PROMPT 9 8 ": Codice "
|
||||
FIELD LF_ANAG->COMCORR
|
||||
FLAGS "U"
|
||||
COPY USE FLD_AG2_COMRES
|
||||
@ -481,21 +488,21 @@ END
|
||||
|
||||
STRING FLD_AG2_COMCORR_COMUNI_PROVCOM 5
|
||||
BEGIN
|
||||
PROMPT 38 7 "Provincia "
|
||||
PROMPT 38 8 "Provincia "
|
||||
FLAGS "D"
|
||||
VALIDATE EMPTYCOPY_FUNC FLD_AG2_COMRES_COMUNI_PROVCOM
|
||||
END
|
||||
|
||||
STRING FLD_AG2_CAPCORR 5
|
||||
BEGIN
|
||||
PROMPT 56 7 "CAP "
|
||||
PROMPT 56 8 "CAP "
|
||||
FIELD LF_ANAG->CAPCORR
|
||||
HELP "CAP al quale spedire la corrispondenza"
|
||||
END
|
||||
|
||||
STRING FLD_AG2_COMCORR_COMUNI_DENCOM 50
|
||||
BEGIN
|
||||
PROMPT 9 8 ": Denom. "
|
||||
PROMPT 9 9 ": Denom. "
|
||||
HELP "Nome del comune a cui mandare la corrispondenza"
|
||||
COPY USE FLD_AG2_COMRES_COMUNI_DENCOM
|
||||
INPUT DENCOM FLD_AG2_COMCORR_COMUNI_DENCOM
|
||||
@ -511,47 +518,47 @@ END
|
||||
|
||||
GROUPBOX DLG_NULL 75 5
|
||||
BEGIN
|
||||
PROMPT 0 10 "Telefoni"
|
||||
PROMPT 0 11 "Telefoni"
|
||||
END
|
||||
|
||||
STRING FLD_AG2_PTELRF 10
|
||||
BEGIN
|
||||
PROMPT 2 11 "Telefono : Prefisso "
|
||||
PROMPT 2 12 "Telefono : Prefisso "
|
||||
FIELD LF_ANAG->PTELRF
|
||||
HELP "Prefisso telefonico della persona giuridica"
|
||||
END
|
||||
|
||||
STRING FLD_AG2_TELRF 30
|
||||
BEGIN
|
||||
PROMPT 35 11 "Numero "
|
||||
PROMPT 35 12 "Numero "
|
||||
FIELD LF_ANAG->TELRF
|
||||
HELP "Numero di telefono della persona giuridica"
|
||||
END
|
||||
|
||||
STRING FLD_AG2_PFAXRF 10
|
||||
BEGIN
|
||||
PROMPT 2 12 "Telefax : Prefisso "
|
||||
PROMPT 2 13 "Telefax : Prefisso "
|
||||
FIELD LF_ANAG->PFAXRF
|
||||
HELP "Prefisso del fax della persona giuridica"
|
||||
END
|
||||
|
||||
STRING FLD_AG2_FAXRF 30
|
||||
BEGIN
|
||||
PROMPT 35 12 "Numero "
|
||||
PROMPT 35 13 "Numero "
|
||||
FIELD LF_ANAG->FAXRF
|
||||
HELP "Numero di telefono della persona giuridica"
|
||||
END
|
||||
|
||||
STRING FLD_AG2_PTLEXRF 10
|
||||
BEGIN
|
||||
PROMPT 2 13 "Telex : Prefisso "
|
||||
PROMPT 2 14 "Telex : Prefisso "
|
||||
FIELD LF_ANAG->PTLEXRF
|
||||
HELP "Prefisso del telex della persona giuridica"
|
||||
END
|
||||
|
||||
STRING FLD_AG2_TLEXRF 30
|
||||
BEGIN
|
||||
PROMPT 35 13 "Numero "
|
||||
PROMPT 35 14 "Numero "
|
||||
FIELD LF_ANAG->TLEXRFX
|
||||
HELP "Numero del telex della perosna giuridica"
|
||||
END
|
||||
@ -1183,6 +1190,8 @@ BEGIN
|
||||
PROMPT 1 10 "Registro "
|
||||
USE %URE
|
||||
INPUT CODTAB F_UFFREG
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Denominazione@50" S0
|
||||
OUTPUT F_UFFREG CODTAB
|
||||
OUTPUT F_DENUFFREG S0
|
||||
CHECKTYPE NORMAL
|
||||
@ -1198,7 +1207,8 @@ END
|
||||
NUMBER F_UFFCONC 3
|
||||
BEGIN
|
||||
PROMPT 1 11 "Concessioni "
|
||||
FLAGS "DRZG"
|
||||
FLAGS "Z"
|
||||
FIELD LF_ANAG->UFFCONC
|
||||
USE %UCC
|
||||
INPUT CODTAB F_UFFCONC
|
||||
OUTPUT F_UFFCONC CODTAB
|
||||
|
@ -128,7 +128,7 @@ bool ba4300_handler(TMask& m, KEY k)
|
||||
if (appname.not_empty())
|
||||
{
|
||||
TString body(16);
|
||||
TLocalisamfile& d = app.get_relation()->lfile();
|
||||
// TLocalisamfile& d = app.get_relation()->lfile();
|
||||
|
||||
if (fldbrowse)
|
||||
body << fldbrowse << "|";
|
||||
@ -143,16 +143,16 @@ bool ba4300_handler(TMask& m, KEY k)
|
||||
TMailbox mb;
|
||||
mb.send(msg);
|
||||
}
|
||||
d.setkey(1);
|
||||
d.zero();
|
||||
d.put("CODDITTA", m.get(FLD_GD1_CODDITTA));
|
||||
d.read(_isequal, _unlock) ;
|
||||
// d.setkey(1);
|
||||
// d.zero();
|
||||
// d.put("CODDITTA", m.get(FLD_GD1_CODDITTA));
|
||||
// d.read(_isequal, _unlock) ;
|
||||
TExternal_app a(appname);
|
||||
const long oldditta = main_app().get_firm();
|
||||
if (k == K_F8) main_app().set_firm(m.get_long(FLD_GD1_CODDITTA));
|
||||
a.run();
|
||||
if (k == K_F8) main_app().set_firm(oldditta);
|
||||
d.read(_iscurr, _lock) ;
|
||||
// d.read(_iscurr, _lock) ;
|
||||
m.set_focus();
|
||||
return FALSE;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user