Aggiunta codici regione
git-svn-id: svn://10.65.10.50/trunk@2683 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
78687433cb
commit
2994f22df3
121
ba/ba4100.cpp
121
ba/ba4100.cpp
@ -4,54 +4,29 @@
|
||||
#include <lffiles.h>
|
||||
#include "ba4.h"
|
||||
#include "ba4100.h"
|
||||
#define FIRST_YEAR 1993
|
||||
|
||||
class BA4100_application : public TRelation_application
|
||||
{
|
||||
TMask * _msk;
|
||||
TRelation * _rel;
|
||||
TLocalisamfile * _alici;
|
||||
TRecord_array * _alici_rec;
|
||||
static bool fld_notify(TSheet_field& s, int r, KEY k);
|
||||
|
||||
virtual bool user_create() ;
|
||||
virtual bool user_destroy() ;
|
||||
virtual bool changing_mask(int mode) { return FALSE;}
|
||||
virtual TRelation* get_relation() const { return _rel;}
|
||||
virtual int read(TMask& m);
|
||||
virtual int write(const TMask& m);
|
||||
virtual int rewrite(const TMask& m);
|
||||
virtual bool remove();
|
||||
|
||||
public:
|
||||
virtual TMask* get_mask(int mode) { return _msk;}
|
||||
BA4100_application() {}
|
||||
virtual ~BA4100_application() {}
|
||||
TRecord_array & alici_rec() { return * _alici_rec; }
|
||||
};
|
||||
|
||||
BA4100_application & app() { return (BA4100_application &) main_app(); }
|
||||
|
||||
bool BA4100_application::fld_notify(TSheet_field& f, int r, KEY k)
|
||||
{
|
||||
if (k == K_INS)
|
||||
{
|
||||
TMask& m = f.sheet_mask();
|
||||
TToken_string & t = f.row(r);
|
||||
|
||||
t.format("%d", r + FIRST_YEAR);
|
||||
t.add("");
|
||||
t.add("");
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
bool BA4100_application::user_create()
|
||||
{
|
||||
_msk = new TMask("ba4100a") ;
|
||||
TSheet_field& f = (TSheet_field&) _msk->field(FLD_CM2_ALIQICI);
|
||||
f.set_notify(fld_notify);
|
||||
_rel = new TRelation(LF_COMUNI);
|
||||
_alici = new TLocalisamfile(LF_ALICI);
|
||||
_alici_rec = new TRecord_array(LF_ALICI, "ANNO", FIRST_YEAR);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@ -59,103 +34,9 @@ bool BA4100_application::user_destroy()
|
||||
{
|
||||
delete _msk;
|
||||
delete _rel;
|
||||
delete _alici;
|
||||
delete _alici_rec;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
int BA4100_application::read(TMask& m)
|
||||
{
|
||||
int err = TRelation_application::read(m);
|
||||
if (err == NOERR)
|
||||
{
|
||||
TRectype r = _alici->curr();
|
||||
|
||||
r.zero();
|
||||
r.put("COM", m.get(FLD_CM1_COM));
|
||||
_alici_rec->read(r); // Ignora errori di lettura aliquote ICI
|
||||
|
||||
TSheet_field& f = (TSheet_field&) m.field(FLD_CM2_ALIQICI);
|
||||
f.destroy();
|
||||
int last = _alici_rec->last_row();
|
||||
const int year = TDate(TODAY).year();
|
||||
|
||||
if (last < year) last = year;
|
||||
for (int i = FIRST_YEAR; i <= last; i++)
|
||||
{
|
||||
TRectype & r = _alici_rec->row(i, TRUE);
|
||||
TToken_string & t = f.row(i - FIRST_YEAR);
|
||||
|
||||
t = r.get("ANNO");
|
||||
t.add(r.get("ALIQ"));
|
||||
t.add(r.get("DETR"));
|
||||
}
|
||||
}
|
||||
return err;
|
||||
}
|
||||
|
||||
int BA4100_application::write(const TMask& m)
|
||||
{
|
||||
int err = TRelation_application::write(m);
|
||||
if (err == NOERR)
|
||||
{
|
||||
TSheet_field& f = (TSheet_field&) m.field(FLD_CM2_ALIQICI);
|
||||
_alici_rec->destroy_rows();
|
||||
if (m.insert_mode())
|
||||
_alici_rec->renum_key("COM", m.get(FLD_CM1_COM));
|
||||
|
||||
for (int i = 0; i < f.items(); i++)
|
||||
{
|
||||
TToken_string & t = f.row(i);
|
||||
const real aliq(t.get(1));
|
||||
const real detr(t.get());
|
||||
if (aliq != ZERO || detr != ZERO)
|
||||
{
|
||||
TRectype & r = _alici_rec->row(t.get_int(0), TRUE);
|
||||
|
||||
r.put("ALIQ", aliq);
|
||||
r.put("DETR", detr);
|
||||
}
|
||||
}
|
||||
err = _alici_rec->write();
|
||||
}
|
||||
return err;
|
||||
}
|
||||
|
||||
int BA4100_application::rewrite(const TMask& m)
|
||||
{
|
||||
int err = TRelation_application::rewrite(m);
|
||||
if (err == NOERR)
|
||||
{
|
||||
TSheet_field& f = (TSheet_field&) m.field(FLD_CM2_ALIQICI);
|
||||
_alici_rec->destroy_rows();
|
||||
if (m.insert_mode())
|
||||
_alici_rec->renum_key("COM", m.get(FLD_CM1_COM));
|
||||
|
||||
for (int i = 0; i < f.items(); i++)
|
||||
{
|
||||
TToken_string & t = f.row(i);
|
||||
const real aliq(t.get(1));
|
||||
const real detr(t.get());
|
||||
if (aliq != ZERO || detr != ZERO)
|
||||
{
|
||||
TRectype & r = _alici_rec->row(t.get_int(0), TRUE);
|
||||
|
||||
r.put("ALIQ", aliq);
|
||||
r.put("DETR", detr);
|
||||
}
|
||||
}
|
||||
err = _alici_rec->rewrite();
|
||||
}
|
||||
return err;
|
||||
}
|
||||
|
||||
bool BA4100_application::remove()
|
||||
|
||||
{
|
||||
return TRelation_application::remove() && _alici_rec->remove() == NOERR;
|
||||
}
|
||||
|
||||
int ba4100(int argc, char* argv[])
|
||||
{
|
||||
BA4100_application a ;
|
||||
|
79
ba/ba4100.h
79
ba/ba4100.h
@ -3,46 +3,45 @@
|
||||
|
||||
// campi maschera ba4100a.msk
|
||||
|
||||
#define FLD_CM1_STATO 101
|
||||
#define FLD_CM1_COM 102
|
||||
#define FLD_CM1_DENCOM 103
|
||||
#define FLD_CM1_PROVCOM 104
|
||||
#define FLD_CM1_CAPCOM 105
|
||||
#define FLD_CM1_CODISTAT 106
|
||||
#define FLD_CM1_UFIIDD1 107
|
||||
#define FLD_CM1_DUFIIDD1 108
|
||||
#define FLD_CM1_UFIIDD2 109
|
||||
#define FLD_CM1_DUFIIDD2 110
|
||||
#define FLD_CM1_UFIIDD3 111
|
||||
#define FLD_CM1_DUFIIDD3 112
|
||||
#define FLD_CM1_UFFIVA1 113
|
||||
#define FLD_CM1_DUFFIVA1 114
|
||||
#define FLD_CM1_UFFIVA2 115
|
||||
#define FLD_CM1_DUFFIVA2 116
|
||||
#define FLD_CM1_UFFIVA3 117
|
||||
#define FLD_CM1_DUFFIVA3 118
|
||||
#define FLD_CM2_UFFREG 119
|
||||
#define FLD_CM2_DUFFREG 120
|
||||
#define FLD_CM2_UFFCONC 121
|
||||
#define FLD_CM2_DUFFCONC 122
|
||||
#define FLD_CM2_UFFCSERV 123
|
||||
#define FLD_CM2_DUFFCSERV 124
|
||||
#define FLD_CM2_UFFESPROV 125
|
||||
#define FLD_CM2_DUFFESPROV 126
|
||||
#define FLD_CM2_UFFESCOM 127
|
||||
#define FLD_CM2_DUFFESCOM 128
|
||||
#define FLD_CM2_ALIQICI 129
|
||||
#define FLD_CM1_DENSTA 130
|
||||
#define FLD_CM2_COMAGG 131
|
||||
#define FLD_CM2_DENCOMAGG 132
|
||||
#define FLD_CM2_TERRMON 133
|
||||
#define FLD_CM2_STATO 134
|
||||
#define FLD_CM2_COM 135
|
||||
#define FLD_CM2_DENCOM 136
|
||||
#define FLD_CM2_DENSTA 137
|
||||
#define F_ANNO 101
|
||||
#define F_ICI 102
|
||||
#define F_DETR 103
|
||||
#define FLD_CM1_STATO 101
|
||||
#define FLD_CM1_COM 102
|
||||
#define FLD_CM1_DENCOM 103
|
||||
#define FLD_CM1_PROVCOM 104
|
||||
#define FLD_CM1_CAPCOM 105
|
||||
#define FLD_CM1_CODISTAT 106
|
||||
#define FLD_CM1_UFIIDD1 107
|
||||
#define FLD_CM1_DUFIIDD1 108
|
||||
#define FLD_CM1_UFIIDD2 109
|
||||
#define FLD_CM1_DUFIIDD2 110
|
||||
#define FLD_CM1_UFIIDD3 111
|
||||
#define FLD_CM1_DUFIIDD3 112
|
||||
#define FLD_CM1_UFFIVA1 113
|
||||
#define FLD_CM1_DUFFIVA1 114
|
||||
#define FLD_CM1_UFFIVA2 115
|
||||
#define FLD_CM1_DUFFIVA2 116
|
||||
#define FLD_CM1_UFFIVA3 117
|
||||
#define FLD_CM1_DUFFIVA3 118
|
||||
#define FLD_CM2_UFFREG 119
|
||||
#define FLD_CM2_DUFFREG 120
|
||||
#define FLD_CM2_UFFCONC 121
|
||||
#define FLD_CM2_DUFFCONC 122
|
||||
#define FLD_CM2_UFFCSERV 123
|
||||
#define FLD_CM2_DUFFCSERV 124
|
||||
#define FLD_CM2_UFFESPROV 125
|
||||
#define FLD_CM2_DUFFESPROV 126
|
||||
#define FLD_CM2_UFFESCOM 127
|
||||
#define FLD_CM2_DUFFESCOM 128
|
||||
#define FLD_CM2_ALIQICI 129
|
||||
#define FLD_CM1_DENSTA 130
|
||||
#define FLD_CM2_COMAGG 131
|
||||
#define FLD_CM2_DENCOMAGG 132
|
||||
#define FLD_CM2_TERRMON 133
|
||||
#define FLD_CM2_STATO 134
|
||||
#define FLD_CM2_COM 135
|
||||
#define FLD_CM2_DENCOM 136
|
||||
#define FLD_CM2_DENSTA 137
|
||||
#define F_CODREG 138
|
||||
#define F_DESREG 139
|
||||
|
||||
#define N_STATO "STATO"
|
||||
#define N_COM "COM"
|
||||
|
157
ba/ba4100a.uml
157
ba/ba4100a.uml
@ -1,6 +1,6 @@
|
||||
#include "ba4100.h"
|
||||
|
||||
TOOLBAR "" 0 20 0 2
|
||||
TOOLBAR "" 0 20 0 2
|
||||
#include <toolbar.h>
|
||||
ENDPAGE
|
||||
|
||||
@ -9,7 +9,7 @@ PAGE "Tabella Comuni 1/2" -1 -1 77 18
|
||||
GROUPBOX DLG_NULL 75 4
|
||||
BEGIN
|
||||
PROMPT 1 0 ""
|
||||
FLAGS "R"
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
NUMBER FLD_CM1_STATO 3
|
||||
@ -136,12 +136,12 @@ BEGIN
|
||||
FIELD LF_COMUNI->UFFIIDD2
|
||||
FLAGS "RZ"
|
||||
HELP "Codice ufficio imposte dirette competente"
|
||||
COPY USE FLD_CM1_UFIIDD1
|
||||
CHECKTYPE NORMAL
|
||||
INPUT CODTAB FLD_CM1_UFIIDD2
|
||||
COPY DISPLAY FLD_CM1_UFIIDD1
|
||||
OUTPUT FLD_CM1_UFIIDD2 CODTAB
|
||||
OUTPUT FLD_CM1_DUFIIDD2 S0
|
||||
COPY USE FLD_CM1_UFIIDD1
|
||||
CHECKTYPE NORMAL
|
||||
INPUT CODTAB FLD_CM1_UFIIDD2
|
||||
COPY DISPLAY FLD_CM1_UFIIDD1
|
||||
OUTPUT FLD_CM1_UFIIDD2 CODTAB
|
||||
OUTPUT FLD_CM1_DUFIIDD2 S0
|
||||
WARNING "Ufficio assente"
|
||||
END
|
||||
|
||||
@ -157,12 +157,12 @@ BEGIN
|
||||
FIELD LF_COMUNI->UFFIIDD3
|
||||
FLAGS "RZ"
|
||||
HELP "Codice ufficio imposte dirette competente"
|
||||
COPY USE FLD_CM1_UFIIDD1
|
||||
CHECKTYPE NORMAL
|
||||
INPUT CODTAB FLD_CM1_UFIIDD3
|
||||
COPY DISPLAY FLD_CM1_UFIIDD1
|
||||
OUTPUT FLD_CM1_UFIIDD3 CODTAB
|
||||
OUTPUT FLD_CM1_DUFIIDD3 S0
|
||||
COPY USE FLD_CM1_UFIIDD1
|
||||
CHECKTYPE NORMAL
|
||||
INPUT CODTAB FLD_CM1_UFIIDD3
|
||||
COPY DISPLAY FLD_CM1_UFIIDD1
|
||||
OUTPUT FLD_CM1_UFIIDD3 CODTAB
|
||||
OUTPUT FLD_CM1_DUFIIDD3 S0
|
||||
WARNING "Ufficio assente"
|
||||
END
|
||||
|
||||
@ -205,12 +205,12 @@ BEGIN
|
||||
FIELD LF_COMUNI->UFFIVA2
|
||||
FLAGS "RZ"
|
||||
HELP "Codice ufficio IVA competente"
|
||||
COPY USE FLD_CM1_UFFIVA1
|
||||
INPUT CODTAB FLD_CM1_UFFIVA2
|
||||
COPY DISPLAY FLD_CM1_UFFIVA1
|
||||
OUTPUT FLD_CM1_UFFIVA2 CODTAB
|
||||
OUTPUT FLD_CM1_DUFFIVA2 S0
|
||||
CHECKTYPE NORMAL
|
||||
COPY USE FLD_CM1_UFFIVA1
|
||||
INPUT CODTAB FLD_CM1_UFFIVA2
|
||||
COPY DISPLAY FLD_CM1_UFFIVA1
|
||||
OUTPUT FLD_CM1_UFFIVA2 CODTAB
|
||||
OUTPUT FLD_CM1_DUFFIVA2 S0
|
||||
CHECKTYPE NORMAL
|
||||
WARNING "Ufficio assente"
|
||||
END
|
||||
|
||||
@ -226,12 +226,12 @@ BEGIN
|
||||
FIELD LF_COMUNI->UFFIVA3
|
||||
FLAGS "RZ"
|
||||
HELP "Codice ufficio IVA competente"
|
||||
COPY USE FLD_CM1_UFFIVA1
|
||||
INPUT CODTAB FLD_CM1_UFFIVA3
|
||||
COPY DISPLAY FLD_CM1_UFFIVA1
|
||||
OUTPUT FLD_CM1_UFFIVA3 CODTAB
|
||||
OUTPUT FLD_CM1_DUFFIVA3 S0
|
||||
CHECKTYPE NORMAL
|
||||
COPY USE FLD_CM1_UFFIVA1
|
||||
INPUT CODTAB FLD_CM1_UFFIVA3
|
||||
COPY DISPLAY FLD_CM1_UFFIVA1
|
||||
OUTPUT FLD_CM1_UFFIVA3 CODTAB
|
||||
OUTPUT FLD_CM1_DUFFIVA3 S0
|
||||
CHECKTYPE NORMAL
|
||||
WARNING "Ufficio assente"
|
||||
END
|
||||
|
||||
@ -248,7 +248,7 @@ PAGE "Tabella Comuni 2/2" -1 -1 77 18
|
||||
GROUPBOX DLG_NULL 75 4
|
||||
BEGIN
|
||||
PROMPT 1 0 ""
|
||||
FLAGS "R"
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
NUMBER FLD_CM2_STATO 3
|
||||
@ -373,9 +373,9 @@ BEGIN
|
||||
PROMPT 34 11 "Territorio montano "
|
||||
HELP "Codice identificativo di comune residente in territorio montano"
|
||||
FIELD LF_COMUNI->TERRMON
|
||||
ITEMS " |Non montano"
|
||||
ITEMS "1|Montano"
|
||||
ITEMS "2|In parte montano"
|
||||
ITEMS " |Non montano"
|
||||
ITEMS "1|Montano"
|
||||
ITEMS "2|In parte montano"
|
||||
END
|
||||
|
||||
STRING FLD_CM2_COMAGG 4
|
||||
@ -384,13 +384,13 @@ BEGIN
|
||||
HELP "Codice comune a cui e' stato accorpato il presente comune"
|
||||
FIELD LF_COMUNI->COMAGG
|
||||
FLAGS "U"
|
||||
USE LF_COMUNI
|
||||
INPUT STATO ""
|
||||
INPUT COM FLD_CM2_COMAGG
|
||||
COPY DISPLAY FLD_CM1_COM
|
||||
OUTPUT FLD_CM2_COMAGG COM
|
||||
OUTPUT FLD_CM2_DENCOMAGG DENCOM
|
||||
CHECKTYPE NORMAL
|
||||
USE LF_COMUNI
|
||||
INPUT STATO ""
|
||||
INPUT COM FLD_CM2_COMAGG
|
||||
COPY DISPLAY FLD_CM1_COM
|
||||
OUTPUT FLD_CM2_COMAGG COM
|
||||
OUTPUT FLD_CM2_DENCOMAGG DENCOM
|
||||
CHECKTYPE NORMAL
|
||||
VALIDATE FIXLEN_FUNC 4
|
||||
END
|
||||
|
||||
@ -398,64 +398,39 @@ STRING FLD_CM2_DENCOMAGG 50
|
||||
BEGIN
|
||||
PROMPT 23 13 ""
|
||||
HELP "Denominazione comune a cui e' stato accorpato il presente comune"
|
||||
USE LF_COMUNI KEY 2 SELECT STATO=""
|
||||
INPUT DENCOM FLD_CM2_DENCOMAGG
|
||||
COPY DISPLAY FLD_CM1_DENCOM
|
||||
OUTPUT FLD_CM2_COMAGG COM
|
||||
OUTPUT FLD_CM2_DENCOMAGG DENCOM
|
||||
USE LF_COMUNI KEY 2 SELECT STATO=""
|
||||
INPUT DENCOM FLD_CM2_DENCOMAGG
|
||||
COPY DISPLAY FLD_CM1_DENCOM
|
||||
OUTPUT FLD_CM2_COMAGG COM
|
||||
OUTPUT FLD_CM2_DENCOMAGG DENCOM
|
||||
END
|
||||
|
||||
SPREADSHEET FLD_CM2_ALIQICI 36
|
||||
NUMBER F_CODREG 2
|
||||
BEGIN
|
||||
PROMPT 26 14 ""
|
||||
ITEM "ANNO@4"
|
||||
ITEM "ALIQUOTA I.C.I.@15"
|
||||
ITEM "DETRAZIONI@15"
|
||||
PROMPT 2 15 "Cod.regione "
|
||||
FIELD LF_COMUNI->CODREG
|
||||
FLAGS "RZ"
|
||||
USE %RGI
|
||||
INPUT CODTAB F_CODREG
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Denominazione@50" S0
|
||||
OUTPUT F_CODREG CODTAB
|
||||
OUTPUT F_DESREG S0
|
||||
CHECKTYPE NORMAL
|
||||
WARNING "Regione assente"
|
||||
END
|
||||
|
||||
STRING F_DESREG 50
|
||||
BEGIN
|
||||
PROMPT 23 15 ""
|
||||
USE %RGI KEY 2
|
||||
INPUT S0 F_DESREG
|
||||
DISPLAY "Denominazione@50" S0
|
||||
DISPLAY "Codice" CODTAB
|
||||
COPY OUTPUT F_CODREG
|
||||
CHECKTYPE NORMAL
|
||||
WARNING "Regione assente"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
ENDMASK
|
||||
|
||||
PAGE "I.C.I." -1 -1 70 9
|
||||
|
||||
NUMBER F_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 2 1 "Anno "
|
||||
FLAGS "DR"
|
||||
END
|
||||
|
||||
NUMBER F_ICI 6 3
|
||||
BEGIN
|
||||
PROMPT 2 3 "Aliquota I.C.I. "
|
||||
FLAGS "R"
|
||||
GROUP 1
|
||||
NUM_EXPR {(#THIS_FIELD>=0) && (#THIS_FIELD<100)}
|
||||
WARNING "L' aliquota deve esser compresa tra 0 e 100"
|
||||
END
|
||||
|
||||
NUMBER F_DETR 15
|
||||
BEGIN
|
||||
PROMPT 2 5 "Importo Detraz. "
|
||||
FLAGS "R"
|
||||
PICTURE "."
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
BUTTON DLG_OK 8 2
|
||||
BEGIN
|
||||
PROMPT -13 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_CANCEL 8 2
|
||||
BEGIN
|
||||
PROMPT -23 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_NULL 8 2
|
||||
BEGIN
|
||||
PROMPT -33 -1 "~Azzera"
|
||||
MESSAGE RESET,1@
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
ENDMASK
|
@ -18,6 +18,7 @@ class TPersone_app : public TRelation_application
|
||||
{
|
||||
char _tip_ana ;
|
||||
bool _reset_uff_conc;
|
||||
bool _reset_codreg;
|
||||
TString16 _cod_ana ;
|
||||
TMask* _msk[2] ;
|
||||
TRelation* _rel[2];
|
||||
@ -52,8 +53,9 @@ public:
|
||||
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; }
|
||||
void set_reset_codreg(bool reset) { _reset_codreg = reset; }
|
||||
|
||||
TPersone_app(char ta) : _reset_uff_conc(FALSE) { set_tip_ana(ta); }
|
||||
TPersone_app(char ta) : _reset_uff_conc(FALSE), _reset_codreg(FALSE) { set_tip_ana(ta); }
|
||||
virtual ~TPersone_app() {}
|
||||
};
|
||||
|
||||
@ -301,6 +303,12 @@ bool gest_uff_imp(TMask_field& f, KEY key)
|
||||
if (msk.get(F_UFFCONC).empty() || msk.is_running())
|
||||
msk.set(F_UFFCONC, comuni.get("UFFCONC"));
|
||||
msk.set(F_CONFIS, msk.get(giuridica ? FLD_AG1_COFI : FLD_AF1_COFI));
|
||||
}
|
||||
const bool fisica = ! giuridica;
|
||||
if (fisica && (msk.get(F_CODREG96).empty() || msk.is_running()))
|
||||
{
|
||||
msk.set(F_CODREG96, comuni.get("CODREG"));
|
||||
msk.field(F_CODREG96).on_key(K_TAB);
|
||||
}
|
||||
msk.set(F_UFFCONC_P, comuni.get("UFFCONC")); msk.field(F_UFFCONC_P).on_key(K_TAB);
|
||||
msk.set(F_UFFSERV, comuni.get("UFFCSERV")); msk.field(F_UFFSERV).on_key(K_TAB);
|
||||
@ -372,6 +380,35 @@ bool uff_conc(TMask_field& f, KEY key)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
// Handler dell'codice regione
|
||||
bool cod_reg(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_codreg(comuni.read() == NOERR && msk.get(F_CODREG96) == comuni.get("CODREG"));
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool no_dup_fis(TMask_field& f, KEY key)
|
||||
{
|
||||
if (f.mask().query_mode() || !f.to_check(key)) return TRUE;
|
||||
@ -469,6 +506,7 @@ TMask* TPersone_app::get_mask(int mode)
|
||||
_msk[MSKF]->set_handler(FLD_AF2_COMRF, gest_uff_imp);
|
||||
_msk[MSKF]->set_handler(FLD_AF2_COMCORR, clear_cap);
|
||||
_msk[MSKF]->set_handler(F_UFFCONC, uff_conc);
|
||||
_msk[MSKF]->set_handler(F_CODREG96, cod_reg);
|
||||
_msk[MSKF]->set_handler(F_TITCF, tit_cf);
|
||||
_msk[MSKF]->set_handler(ba4200_handler);
|
||||
}
|
||||
@ -577,6 +615,11 @@ int TPersone_app::write(const TMask& m)
|
||||
_reset_uff_conc = FALSE;
|
||||
r->lfile().zero("UFFCONC");
|
||||
}
|
||||
if (_reset_codreg)
|
||||
{
|
||||
_reset_codreg = FALSE;
|
||||
r->lfile().zero("CODREG96");
|
||||
}
|
||||
manual_save(m);
|
||||
return r->write();
|
||||
}
|
||||
@ -592,6 +635,11 @@ int TPersone_app::rewrite(const TMask& m)
|
||||
_reset_uff_conc = FALSE;
|
||||
r->lfile().zero("UFFCONC");
|
||||
}
|
||||
if (_reset_codreg)
|
||||
{
|
||||
_reset_codreg = FALSE;
|
||||
r->lfile(LF_ANAGFIS).zero("CODREG96");
|
||||
}
|
||||
manual_save(m);
|
||||
/* if (ana_fis())
|
||||
{
|
||||
|
@ -381,5 +381,7 @@
|
||||
#define F_LOCCORR 410
|
||||
#define F_UFFCONC_P 411
|
||||
#define F_CONFIS 412
|
||||
#define F_CODREG96 413
|
||||
#define F_DESREG96 414
|
||||
|
||||
#endif // __BA4200_H
|
||||
|
@ -175,7 +175,7 @@ OUTPUT FLD_ANAG_RAGSOC1 RAGSOC[1,30]
|
||||
OUTPUT FLD_ANAG_RAGSOC2 RAGSOC[31,0]
|
||||
HELP "Codice fiscale della persona fisica"
|
||||
CHECKTYPE REQUIRED
|
||||
VALIDATE XTCF_FUNC FLD_AF1_STATOPAIV LST_AF1_SESSO FLD_AF1_DATANASC FLD_AF1_COMNASC
|
||||
VALIDATE XTCF_FUNC FLD_AF1_STATOPAIV LST_AF1_SESSO FLD_AF1_DATANASC FLD_AF1_COMNASC
|
||||
END
|
||||
|
||||
STRING F_COFIEST 20
|
||||
@ -767,9 +767,9 @@ BOOLEAN F_TITCF
|
||||
BEGIN
|
||||
PROMPT 2 14 "Titolare conto fiscale"
|
||||
FIELD LF_ANAG->TITCF
|
||||
HELP "La persona e' titolare di un conto corrente fiscale"
|
||||
MESSAGE TRUE ENABLE,F_UFFCONC
|
||||
MESSAGE FALSE CLEAR,F_UFFCONC
|
||||
HELP "La persona e' titolare di un conto corrente fiscale"
|
||||
MESSAGE TRUE ENABLE,F_UFFCONC
|
||||
MESSAGE FALSE CLEAR,F_UFFCONC
|
||||
MESSAGE FALSE RESET,F_CONFIS
|
||||
END
|
||||
|
||||
@ -880,13 +880,40 @@ ITEM "2|Zone colpite da eventi alluvionali"
|
||||
ITEM "3|Sospensione Versamenti creditori EFIM"
|
||||
END
|
||||
|
||||
BOOLEAN FLD_AF4_RFDIVERSA
|
||||
BOOLEAN FLD_AF4_RFDIVERSA
|
||||
BEGIN
|
||||
PROMPT 2 7 "Domicilio fiscale diverso da sede legale "
|
||||
FIELD LF_ANAG->RFDIVERSA
|
||||
HELP "Dire se il domicilio fiscale e' diverso della sede legale"
|
||||
END
|
||||
|
||||
NUMBER F_CODREG96 2
|
||||
BEGIN
|
||||
PROMPT 2 9 "Cod.regione al 1 Gennaio "
|
||||
FIELD LF_ANAGFIS->CODREG96
|
||||
FLAGS "RZ"
|
||||
USE %RGI
|
||||
INPUT CODTAB F_CODREG96
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Denominazione@50" S0
|
||||
OUTPUT F_CODREG96 CODTAB
|
||||
OUTPUT F_DESREG96 S0
|
||||
CHECKTYPE NORMAL
|
||||
WARNING "Regione assente"
|
||||
END
|
||||
|
||||
STRING F_DESREG96 50 40
|
||||
BEGIN
|
||||
PROMPT 33 9 ""
|
||||
USE %RGI KEY 2
|
||||
INPUT S0 F_DESREG96
|
||||
DISPLAY "Denominazione@50" S0
|
||||
DISPLAY "Codice" CODTAB
|
||||
COPY OUTPUT F_CODREG96
|
||||
CHECKTYPE NORMAL
|
||||
WARNING "Regione assente"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 76 5
|
||||
BEGIN
|
||||
PROMPT 0 13 "Codici statistici"
|
||||
@ -1006,7 +1033,7 @@ END
|
||||
STRING F_UFFIIDD 3
|
||||
BEGIN
|
||||
PROMPT 1 7 "Imposte Dirette "
|
||||
FIELD LF_ANAG->UFFIIDD
|
||||
FIELD LF_ANAG->UFFIIDD
|
||||
FLAGS "Z"
|
||||
USE %UID
|
||||
INPUT CODTAB F_UFFIIDD
|
||||
@ -1083,7 +1110,7 @@ NUMBER F_UFFCONC_P 3
|
||||
BEGIN
|
||||
PROMPT 1 11 "Concessioni "
|
||||
FLAGS "DZ"
|
||||
USE %UCC
|
||||
USE %UCC
|
||||
INPUT CODTAB F_UFFCONC_P
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Denominazione@50" S0
|
||||
|
2
ba/batbrgi.h
Executable file
2
ba/batbrgi.h
Executable file
@ -0,0 +1,2 @@
|
||||
#define F_CODREG 101
|
||||
#define F_DESCR 102
|
44
ba/batbrgi.uml
Executable file
44
ba/batbrgi.uml
Executable file
@ -0,0 +1,44 @@
|
||||
#include "ba3100.h"
|
||||
#include "batbrgi.h"
|
||||
|
||||
TOOLBAR "" 0 20 0 2
|
||||
|
||||
#include <toolbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Regioni" -1 -1 78 18
|
||||
|
||||
NUMBER F_CODREG 2
|
||||
BEGIN
|
||||
PROMPT 1 2 "Codice "
|
||||
FIELD CODTAB
|
||||
FLAGS "RZ"
|
||||
KEY 1
|
||||
USE %RGI
|
||||
INPUT CODTAB F_CODREG
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione @50" S0
|
||||
OUTPUT F_CODREG CODTAB
|
||||
OUTPUT F_DESCR S0
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING F_DESCR 50
|
||||
BEGIN
|
||||
PROMPT 1 4 "Denonimazione "
|
||||
FIELD S0
|
||||
KEY 2
|
||||
USE %RGI KEY 2
|
||||
INPUT S0 F_DESCR
|
||||
DISPLAY "Descrizione @50" S0
|
||||
DISPLAY "Codice" CODTAB
|
||||
COPY OUTPUT F_CODREG
|
||||
CHECKTYPE REQUIRED
|
||||
WARNING "La denomonazione e' obbligatoria"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
Loading…
x
Reference in New Issue
Block a user