Patch level : 12.0 1044
Files correlati : cg0.exe cg0200a.msk cgtbbnp.msk Commento : Agiunto supporto per IBAN esteri all'anagrafica clienti e alle banche di presentazione
This commit is contained in:
parent
5129e36b37
commit
728cfef2eb
@ -797,9 +797,8 @@ void TClifo_application::init_modify_mode(TMask& m)
|
||||
|
||||
void TClifo_application::set_pnae(TMask& m, TToken_string& nonacc, TToken_string& nonscd)
|
||||
{
|
||||
TSheet_field& pnae = m.sfield(F_NONACCEFF);
|
||||
|
||||
pnae.reset_sheet();
|
||||
TSheet_field& pnae = m.sfield(F_NONACCEFF);
|
||||
pnae.destroy();
|
||||
TToken_string periodo(12, ',');
|
||||
int per = 0;
|
||||
for (bool good = nonacc.get(per, periodo); good; good = nonacc.get(++per, periodo))
|
||||
@ -815,10 +814,11 @@ void TClifo_application::set_pnae(TMask& m, TToken_string& nonacc, TToken_string
|
||||
|
||||
void TClifo_application::add_bank(TSheet_field& ns_sh, const TRectype& rec)
|
||||
{
|
||||
TToken_string & row = ns_sh.row(-1);
|
||||
|
||||
TString4 iso, cin, bcin;
|
||||
TString8 abi, cab;
|
||||
TString80 numcc, iban;
|
||||
TString8 progr;
|
||||
|
||||
switch (rec.num())
|
||||
{
|
||||
@ -831,6 +831,8 @@ void TClifo_application::add_bank(TSheet_field& ns_sh, const TRectype& rec)
|
||||
case LF_CFVEN:
|
||||
abi = rec.get(CFV_CODABIPR);
|
||||
cab = rec.get(CFV_CODCABPR);
|
||||
if (ns_sh.sheet_mask().efield(F_PROGPR).active())
|
||||
progr = "01"; // verificare
|
||||
break;
|
||||
case LF_CFBAN:
|
||||
abi = rec.get(CFBAN_ABI);
|
||||
@ -840,85 +842,43 @@ void TClifo_application::add_bank(TSheet_field& ns_sh, const TRectype& rec)
|
||||
// Copia il progressivo solo nello sheet delle banche di presentazione
|
||||
if (ns_sh.sheet_mask().efield(F_PROGPR).active())
|
||||
{
|
||||
const TString& progr = rec.get(CFBAN_PROGPR);
|
||||
row.add(progr, ns_sh.cid2index(F_PROGPR));
|
||||
if (abi.len()+cab.len() == 10)
|
||||
{
|
||||
TString16 codtab; codtab << abi << cab << progr;
|
||||
const TString& ib = cache().get("BNP", codtab, "S3");
|
||||
TString msg;
|
||||
if (iban_check(ib, msg) == 0)
|
||||
iban = ib;
|
||||
}
|
||||
progr = rec.get(CFBAN_PROGPR);
|
||||
|
||||
TString16 codtab; codtab << abi << cab << progr;
|
||||
|
||||
iban = cache().get("BNP", codtab, "S3");
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
// Esistono dati erronamente più lunghi
|
||||
numcc.cut(12); numcc.trim();
|
||||
|
||||
if (iban.full())
|
||||
split_IBAN(iban, iso, cin, bcin, abi, cab, numcc);
|
||||
if (iso.full() || cin.full() || bcin.full() || abi.full() || cab.full() || numcc.full())
|
||||
{
|
||||
TString msg;
|
||||
if (iban_check(iban, msg) == 0)
|
||||
{
|
||||
if (iban.starts_with("IT"))
|
||||
{
|
||||
abi = iban.mid(5, 5);
|
||||
cab = iban.mid(10, 5);
|
||||
numcc = iban.right(12);
|
||||
}
|
||||
}
|
||||
int nrow = ns_sh.set_row_cell(F_IBAN_STATO, iso);
|
||||
|
||||
ns_sh.set_row_cell(F_IBAN_CHECK, cin, nrow);
|
||||
ns_sh.set_row_cell(F_BBAN_CIN, bcin, nrow);
|
||||
ns_sh.set_row_cell(F_BBAN_ABI, abi, nrow);
|
||||
ns_sh.set_row_cell(F_BBAN_CAB, cab, nrow);
|
||||
if (iso == "IT")
|
||||
ns_sh.set_row_cell(F_BBAN_CONTO, numcc, nrow);
|
||||
else
|
||||
ns_sh.set_row_cell(F_BBAN, numcc, nrow);
|
||||
ns_sh.set_row_cell(F_IBAN, iban, nrow);
|
||||
if (ns_sh.sheet_mask().efield(F_PROGPR).active())
|
||||
ns_sh.set_row_cell(F_PROGPR, progr, nrow);
|
||||
if (abi.full() && cab.full())
|
||||
{
|
||||
if (bban_check(iban, msg) == 0)
|
||||
{
|
||||
abi = iban.mid(1, 5);
|
||||
cab = iban.mid(6, 5);
|
||||
numcc = iban.mid(11);
|
||||
row.add("IT", ns_sh.cid2index(F_IBAN_STATO));
|
||||
row.add(iban.left(1), ns_sh.cid2index(F_BBAN_CIN));
|
||||
}
|
||||
else
|
||||
iban.cut(0);
|
||||
TString key(abi);
|
||||
|
||||
key << cab;
|
||||
ns_sh.set_row_cell(F_DESBAN, cache().get("%BAN", key,"S0"), nrow);
|
||||
}
|
||||
}
|
||||
|
||||
row.add(abi, ns_sh.cid2index(F_BBAN_ABI));
|
||||
row.add(cab, ns_sh.cid2index(F_BBAN_CAB));
|
||||
row.add(numcc, ns_sh.cid2index(F_BBAN_CONTO));
|
||||
|
||||
if (abi.len()+cab.len() == 10)
|
||||
{
|
||||
TString16 key; key << abi << cab;
|
||||
row.add(cache().get("%BAN", key, "S0"), ns_sh.cid2index(F_DESBAN));
|
||||
}
|
||||
|
||||
if (row.starts_with("IT") && row.get_int(ns_sh.cid2index(F_IBAN_CHECK)) == 0)
|
||||
{
|
||||
const int i = ns_sh.items()-1;
|
||||
TMask& msk = ns_sh.sheet_row_mask(i);
|
||||
ns_sh.update_mask(i); // Copia dalla riga alla maschera
|
||||
msk.efield(F_IBAN_CHECK).validate(K_TAB); // Calcola checksum
|
||||
const TString& chk = msk.get(F_IBAN_CHECK);
|
||||
if (!real::is_null(chk) && iban.len() == 23) // BBAN da completare
|
||||
{
|
||||
iban.insert(chk);
|
||||
iban.insert("IT");
|
||||
}
|
||||
}
|
||||
|
||||
if (iban.full())
|
||||
{
|
||||
row.add(iban.left(2), ns_sh.cid2index(F_IBAN_STATO));
|
||||
row.add(iban.mid(2,2), ns_sh.cid2index(F_IBAN_CHECK));
|
||||
if (row.starts_with("IT"))
|
||||
row.add(iban.mid(4,1), ns_sh.cid2index(F_BBAN_CIN));
|
||||
else
|
||||
row.add(iban.mid(4), ns_sh.cid2index(F_BBAN));
|
||||
row.add(iban, ns_sh.cid2index(F_IBAN));
|
||||
enable_iban_fields(ns_sh.sheet_row_mask(nrow), F_BBAN, F_BBAN_CIN, F_BBAN_ABI,
|
||||
F_BBAN_CAB, F_BBAN_CONTO, F_DESBAN, iso == "IT",
|
||||
ns_sh.sheet_mask().efield(F_PROGPR).active(), nrow);
|
||||
}
|
||||
}
|
||||
|
||||
@ -936,7 +896,6 @@ int TClifo_application::read(TMask& m)
|
||||
if (_gesven)
|
||||
{
|
||||
TToken_string riga(240);
|
||||
|
||||
indsp_sheet().reset();
|
||||
for (i = 0; i < _rel->indirizzi(); i++)
|
||||
{
|
||||
@ -983,8 +942,7 @@ int TClifo_application::read(TMask& m)
|
||||
}
|
||||
|
||||
TSheet_field& s = m.sfield(F_SHEET_CONT);
|
||||
|
||||
s.reset_sheet();
|
||||
s.destroy();
|
||||
for (int c = 0; c < _rel->contatti(); c++)
|
||||
{
|
||||
const TRectype& contact = _rel->contatto(c);
|
||||
@ -1004,7 +962,7 @@ int TClifo_application::read(TMask& m)
|
||||
const TRectype& clifo = get_relation()->curr(LF_CLIFO);
|
||||
TSheet_field & ns_sh = m.sfield(F_BANA);
|
||||
|
||||
ns_sh.reset_sheet();
|
||||
ns_sh.destroy(-1, false);
|
||||
for (i = 1; i <= ns_ban.rows(); i++)
|
||||
add_bank(ns_sh, ns_ban.row(i));
|
||||
if (ns_ban.rows() == 0 && clifo.get_int(CLI_CODABI) != 0)
|
||||
@ -1018,7 +976,7 @@ int TClifo_application::read(TMask& m)
|
||||
TRecord_array vs_ban(key, LF_CFBAN);
|
||||
TSheet_field & vs_sh = m.sfield(F_BANP);
|
||||
|
||||
vs_sh.reset_sheet();
|
||||
vs_sh.destroy(-1, false);
|
||||
for (i = 1; i <= vs_ban.rows(); i++)
|
||||
add_bank(vs_sh, vs_ban.row(i));
|
||||
if (vs_ban.rows() == 0 && cfven.get_int(CFV_CODABIPR) != 0)
|
||||
@ -1053,7 +1011,7 @@ void TClifo_application::ini2mask(TConfig& ini, TMask& m, bool query)
|
||||
if (!ini.set_paragraph(para))
|
||||
break;
|
||||
if (i == 0)
|
||||
indsp_sheet().reset_sheet();
|
||||
indsp_sheet().reset();
|
||||
|
||||
riga.cut(0);
|
||||
riga.add(ini.get(IND_RAGSOC));
|
||||
@ -1293,6 +1251,7 @@ void TClifo_application::reset_sheet()
|
||||
{
|
||||
TToken_string nulla = "|**";
|
||||
nulla << TR("Nessuno") << "**";
|
||||
|
||||
|
||||
TClifo_application& a = app();
|
||||
a.field_sheet(F_CODINDDOC).destroy();
|
||||
@ -1425,19 +1384,18 @@ void TClifo_application::common_f(const TMask& m)
|
||||
|
||||
for (int i = 0; i < nsrow; i++)
|
||||
{
|
||||
TToken_string & row = ns_sh.row(i);
|
||||
TRectype & ban = ns_ban.row(i + 1, true);
|
||||
|
||||
ban.put(CFBAN_ABI, row.get(ns_sh.cid2index(F_BBAN_ABI)));
|
||||
ban.put(CFBAN_CAB, row.get(ns_sh.cid2index(F_BBAN_CAB)));
|
||||
ban.put(CFBAN_NUMCC, row.get(ns_sh.cid2index(F_BBAN_CONTO)));
|
||||
ban.put(CFBAN_IBAN, row.get(ns_sh.cid2index(F_IBAN)));
|
||||
ban.put(CFBAN_ABI, ns_sh.get_str_row_cell(i, F_BBAN_ABI));
|
||||
ban.put(CFBAN_CAB, ns_sh.get_str_row_cell(i, F_BBAN_CAB));
|
||||
ban.put(CFBAN_NUMCC, ns_sh.get_str_row_cell(i, F_BBAN_CONTO));
|
||||
ban.put(CFBAN_IBAN, ns_sh.get_str_row_cell(i, F_IBAN));
|
||||
if (i == 0)
|
||||
{
|
||||
clifo.put(CLI_CODABI, row.get(ns_sh.cid2index(F_BBAN_ABI)));
|
||||
clifo.put(CLI_CODCAB, row.get(ns_sh.cid2index(F_BBAN_CAB)));
|
||||
clifo.put(CLI_NUMCC, row.get(ns_sh.cid2index(F_BBAN_CONTO)));
|
||||
clifo.put(CLI_IBAN, row.get(ns_sh.cid2index(F_IBAN)));
|
||||
clifo.put(CLI_CODABI, ns_sh.get_str_row_cell(i, F_BBAN_ABI));
|
||||
clifo.put(CLI_CODCAB, ns_sh.get_str_row_cell(i, F_BBAN_CAB));
|
||||
clifo.put(CLI_NUMCC, ns_sh.get_str_row_cell(i, F_BBAN_CONTO));
|
||||
clifo.put(CLI_IBAN, ns_sh.get_str_row_cell(i, F_IBAN));
|
||||
}
|
||||
}
|
||||
if (nsrow == 0)
|
||||
@ -1463,16 +1421,15 @@ void TClifo_application::common_f(const TMask& m)
|
||||
|
||||
for (int i = 0; i < vsrow; i++)
|
||||
{
|
||||
TToken_string & row = vs_sh.row(i);
|
||||
TRectype & ban = vs_ban.row(i + 1, true);
|
||||
|
||||
ban.put(CFBAN_ABI, row.get(vs_sh.cid2index(F_BBAN_ABI)));
|
||||
ban.put(CFBAN_CAB, row.get(vs_sh.cid2index(F_BBAN_CAB)));
|
||||
ban.put(CFBAN_PROGPR, row.get(vs_sh.cid2index(F_PROGPR)));
|
||||
ban.put(CFBAN_ABI, vs_sh.get_str_row_cell(i, F_BBAN_ABI));
|
||||
ban.put(CFBAN_CAB, vs_sh.get_str_row_cell(i, F_BBAN_CAB));
|
||||
ban.put(CFBAN_PROGPR, vs_sh.get_str_row_cell(i, F_PROGPR));
|
||||
if (i == 0)
|
||||
{
|
||||
cfven.put(CFV_CODABIPR, row.get(ns_sh.cid2index(F_BBAN_ABI)));
|
||||
cfven.put(CFV_CODCABPR, row.get(ns_sh.cid2index(F_BBAN_CAB)));
|
||||
cfven.put(CFV_CODABIPR, vs_sh.get_str_row_cell(i, F_BBAN_ABI));
|
||||
cfven.put(CFV_CODCABPR, vs_sh.get_str_row_cell(i, F_BBAN_CAB));
|
||||
}
|
||||
}
|
||||
if (vsrow == 0)
|
||||
|
@ -210,11 +210,10 @@
|
||||
#define F_BBAN_ABI 104
|
||||
#define F_BBAN_CAB 105
|
||||
#define F_BBAN_CONTO 106
|
||||
#define F_PROGPR 107
|
||||
#define F_DESBAN 108
|
||||
#define F_IBAN 109
|
||||
|
||||
#define F_BBAN 350
|
||||
#define F_BBAN 107
|
||||
#define F_PROGPR 108
|
||||
#define F_DESBAN 109
|
||||
#define F_IBAN 110
|
||||
|
||||
|
||||
//////////////////////////////////////
|
||||
|
@ -838,6 +838,7 @@ BEGIN
|
||||
ITEM "IBAN\nABI@5"
|
||||
ITEM "IBAN\nCAB@5"
|
||||
ITEM "IBAN\nConto@12"
|
||||
ITEM "BBAN@15"
|
||||
ITEM "@1"
|
||||
ITEM "Descrizione@50"
|
||||
ITEM "IBAN@27"
|
||||
@ -857,6 +858,7 @@ BEGIN
|
||||
ITEM "IBAN\nABI@5"
|
||||
ITEM "IBAN\nCAB@5"
|
||||
ITEM "IBAN\nConto@12"
|
||||
ITEM "BBAN@15"
|
||||
ITEM "Progressivo"
|
||||
ITEM "Descrizione@50"
|
||||
ITEM "IBAN@27"
|
||||
@ -2401,26 +2403,26 @@ ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
PAGE "Banche di appoggio" -1 -1 52 5
|
||||
PAGE "Banche di appoggio" -1 -1 80 8
|
||||
|
||||
STRING F_IBAN_STATO 2
|
||||
BEGIN
|
||||
PROMPT 1 1 ""
|
||||
FLAGS "U"
|
||||
VALIDATE CHECK_IBAN_FUNC F_IBAN F_IBAN_STATO F_IBAN_CHECK F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO
|
||||
VALIDATE CHECK_IBAN_FUNC F_IBAN F_IBAN_STATO F_IBAN_CHECK F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO F_DESBAN 0
|
||||
END
|
||||
|
||||
NUMBER F_IBAN_CHECK 2
|
||||
BEGIN
|
||||
PROMPT 5 1 ""
|
||||
FLAGS "UZ"
|
||||
VALIDATE CHECK_IBAN_FUNC F_IBAN F_IBAN_STATO F_IBAN_CHECK F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO
|
||||
VALIDATE CHECK_IBAN_FUNC F_IBAN F_IBAN_STATO F_IBAN_CHECK F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO F_DESBAN 0
|
||||
END
|
||||
|
||||
STRINGA F_BBAN_CIN 1
|
||||
BEGIN
|
||||
PROMPT 9 1 ""
|
||||
FLAGS "U"
|
||||
FLAGS "UG"
|
||||
VALIDATE CHECK_BBAN_FUNC F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO
|
||||
END
|
||||
|
||||
@ -2434,7 +2436,7 @@ BEGIN
|
||||
OUTPUT F_BBAN_ABI CODTAB[1,5]
|
||||
HELP "Codice ABI banca del C/F"
|
||||
CHECKTYPE NORMAL
|
||||
FLAGS "Z"
|
||||
FLAGS "ZG"
|
||||
END
|
||||
|
||||
NUMBER F_BBAN_CAB 5
|
||||
@ -2451,16 +2453,22 @@ BEGIN
|
||||
OUTPUT F_DESBAN S0
|
||||
HELP "Codice CAB banca del C/F"
|
||||
CHECKTYPE NORMAL
|
||||
FLAGS "Z"
|
||||
FLAGS "ZG"
|
||||
END
|
||||
|
||||
STRING F_BBAN_CONTO 12
|
||||
BEGIN
|
||||
PROMPT 30 1 ""
|
||||
FLAGS "UZ"
|
||||
FLAGS "UZG"
|
||||
VALIDATE CHECK_BBAN_FUNC F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO
|
||||
END
|
||||
|
||||
STRING F_BBAN 30
|
||||
BEGIN
|
||||
PROMPT 30 2 ""
|
||||
FLAGS "UG"
|
||||
END
|
||||
|
||||
NUMBER F_PROGPR 2
|
||||
BEGIN
|
||||
PROMPT 1 60 "Progressivo IGNORATO"
|
||||
@ -2469,27 +2477,22 @@ END
|
||||
|
||||
STRING F_DESBAN 50 40
|
||||
BEGIN
|
||||
PROMPT 1 2 ""
|
||||
PROMPT 1 3 ""
|
||||
USE %BAN KEY 2 SELECT CODTAB ?= "??????????"
|
||||
INPUT S0 F_DESBAN
|
||||
DISPLAY "Denominazione@50" S0
|
||||
DISPLAY "Codice ABI" CODTAB[1,5]
|
||||
DISPLAY "Codice CAB" CODTAB[6,10]
|
||||
COPY OUTPUT F_BBAN_CAB
|
||||
FLAGS "G"
|
||||
END
|
||||
|
||||
STRING F_IBAN 27
|
||||
BEGIN
|
||||
PROMPT 1 3 "IBAN "
|
||||
PROMPT 1 4 "IBAN "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_BBAN 23
|
||||
BEGIN
|
||||
PROMPT 41 3 "BBAN "
|
||||
FLAGS "HD"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
@ -2518,6 +2521,7 @@ PAGE "Banche di presentazione" -1 -1 80 8
|
||||
STRING F_IBAN_STATO 2
|
||||
BEGIN
|
||||
PROMPT 2 2 "Codice IBAN "
|
||||
VALIDATE CHECK_IBAN_FUNC F_IBAN F_IBAN_STATO F_IBAN_CHECK F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO F_DESBAN 1
|
||||
FLAGS "UDG"
|
||||
END
|
||||
|
||||
@ -2529,7 +2533,7 @@ END
|
||||
|
||||
STRINGA F_BBAN_CIN 1
|
||||
BEGIN
|
||||
PROMPT 33 42 "BBAN "
|
||||
PROMPT 33 42 ""
|
||||
FLAGS "UDG"
|
||||
END
|
||||
|
||||
@ -2555,9 +2559,10 @@ BEGIN
|
||||
OUTPUT F_IBAN_CHECK S3[3,4]
|
||||
OUTPUT F_BBAN_CIN S3[5,5]
|
||||
OUTPUT F_BBAN_CONTO S3[16,27]
|
||||
OUTPUT F_BBAN S6
|
||||
HELP "Codice ABI banca del C/F"
|
||||
CHECKTYPE SEARCH
|
||||
FLAGS "Z"
|
||||
FLAGS "ZG"
|
||||
END
|
||||
|
||||
NUMBER F_BBAN_CAB 5
|
||||
@ -2566,13 +2571,19 @@ BEGIN
|
||||
COPY ALL F_BBAN_ABI
|
||||
HELP "Codice CAB banca del C/F"
|
||||
CHECKTYPE NORMAL
|
||||
FLAGS "Z"
|
||||
FLAGS "GZ"
|
||||
END
|
||||
|
||||
STRING F_BBAN_CONTO 12
|
||||
BEGIN
|
||||
PROMPT 59 2 ""
|
||||
FLAGS "UDZ"
|
||||
FLAGS "UGDZ"
|
||||
END
|
||||
|
||||
STRING F_BBAN 30
|
||||
BEGIN
|
||||
PROMPT 59 2 ""
|
||||
FLAGS "UGD"
|
||||
END
|
||||
|
||||
NUMBER F_PROGPR 2
|
||||
@ -2592,6 +2603,7 @@ BEGIN
|
||||
DISPLAY "Codice ABI" CODTAB[1,5]
|
||||
DISPLAY "Codice CAB" CODTAB[6,10]
|
||||
COPY OUTPUT F_BBAN_CAB
|
||||
FLAGS "G"
|
||||
END
|
||||
|
||||
STRING F_IBAN 27
|
||||
|
@ -708,7 +708,7 @@ void TCaus_app::load_rcaus(TMask& m)
|
||||
const TString4 cod(_rel->curr().get(RCA_CODCAUS));
|
||||
TString d, da(50);
|
||||
|
||||
ss().destroy();
|
||||
ss().reset_sheet();
|
||||
|
||||
const int last = _rcaus_rec->last_row();
|
||||
for (int i = 1; i <= last; i++)
|
||||
|
@ -40,6 +40,8 @@ protected:
|
||||
virtual int write(const TMask& m);
|
||||
virtual int rewrite(const TMask& m);
|
||||
|
||||
static bool iban_handler(TMask_field& f, KEY k);
|
||||
|
||||
public:
|
||||
// @cmember Disabilita la verifica del modulo : essendo una anagrafica, va sempre abilitata
|
||||
virtual bool check_autorization() const
|
||||
@ -120,6 +122,17 @@ void CGTTable_application::init_query_mode(TMask& m)
|
||||
}
|
||||
}
|
||||
|
||||
bool CGTTable_application::iban_handler(TMask_field& f, KEY k)
|
||||
{
|
||||
if (f.initial_check(k))
|
||||
{
|
||||
const TString & iban = f.get();
|
||||
|
||||
set_iban_fields(iban, f.mask(), F_BBAN, F_IBAN_STATO, F_IBAN_CHECK, F_BBAN_CIN, F_BBAN_ABI, F_BBAN_CAB, F_BBAN_CONTO, F_DESBAN, false);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CGTTable_application::user_create()
|
||||
{
|
||||
bool ok = TTable_application::user_create();
|
||||
@ -132,6 +145,9 @@ bool CGTTable_application::user_create()
|
||||
}
|
||||
if (get_tabname() == TAB_NOTECLI)
|
||||
get_mask()->set_handler(F_NOT_DESC, desnot_handler);
|
||||
if (get_tabname() == "BNP")
|
||||
get_mask()->set_handler(F_IBAN, iban_handler);
|
||||
|
||||
}
|
||||
return ok;
|
||||
}
|
||||
|
@ -42,6 +42,7 @@
|
||||
#define F_BBAN_ABI 145
|
||||
#define F_BBAN_CAB 146
|
||||
#define F_BBAN_CONTO 147
|
||||
#define F_DESBAN 148
|
||||
|
||||
#define F_CBI 150
|
||||
#define F_IBAN_PAG 151
|
||||
|
@ -118,7 +118,7 @@ END
|
||||
STRING F_IBAN 34
|
||||
BEGIN
|
||||
PROMPT 2 55 ""
|
||||
FLAGS "D"
|
||||
FLAGS "DG"
|
||||
FIELD S3
|
||||
END
|
||||
|
||||
@ -126,20 +126,21 @@ STRING F_IBAN_STATO 2
|
||||
BEGIN
|
||||
PROMPT 2 6 "Codice IBAN "
|
||||
FLAGS "U"
|
||||
VALIDATE CHECK_IBAN_FUNC F_IBAN F_IBAN_STATO F_IBAN_CHECK F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO
|
||||
VALIDATE CHECK_IBAN_FUNC F_IBAN F_IBAN_STATO F_IBAN_CHECK F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO F_DESBAN 0
|
||||
END
|
||||
|
||||
NUMBER F_IBAN_CHECK 2
|
||||
BEGIN
|
||||
PROMPT 19 6 ""
|
||||
FLAGS "UZ"
|
||||
VALIDATE CHECK_IBAN_FUNC F_IBAN F_IBAN_STATO F_IBAN_CHECK F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO
|
||||
VALIDATE CHECK_IBAN_FUNC F_IBAN F_IBAN_STATO F_IBAN_CHECK F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO F_DESBAN 0
|
||||
END
|
||||
|
||||
STRINGA F_BBAN 30
|
||||
BEGIN
|
||||
PROMPT 30 6 "BBAN "
|
||||
FLAGS "UH"
|
||||
VALIDATE CHECK_IBAN_FUNC F_IBAN F_IBAN_STATO F_IBAN_CHECK F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO F_DESBAN 0
|
||||
END
|
||||
|
||||
STRINGA F_BBAN_CIN 1
|
||||
@ -170,6 +171,12 @@ BEGIN
|
||||
VALIDATE CHECK_BBAN_FUNC F_BBAN F_BBAN_CIN F_BBAN_ABI F_BBAN_CAB F_BBAN_CONTO
|
||||
END
|
||||
|
||||
STRING F_DESBAN 50
|
||||
BEGIN
|
||||
PROMPT 19 7 ""
|
||||
GROUP "DH"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 5
|
||||
BEGIN
|
||||
PROMPT 1 8 "@bPortafoglio Effetti all'incasso"
|
||||
|
Loading…
x
Reference in New Issue
Block a user