Patch level : 12.0 412

Files correlati     : 
Commento            : 
- Abilitato lo splitpayment per tutti i clienti
- Adesso all'immissione di uno stato di residenza controllo che lo stato della partita iva sia vuoto e il codice pieno, in tal caso propongo il codice iso dello stato di residenza

git-svn-id: svn://10.65.10.50/branches/R_10_00@23889 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
mtollari 2017-06-29 09:08:08 +00:00
parent bad1eca89f
commit 267d0f43e2
2 changed files with 29 additions and 25 deletions

View File

@ -83,6 +83,8 @@ protected:
// Handler RF/SO
static bool rfso_handler(TMask_field& f, KEY k);
// Handler Stato
static bool stato_handler(TMask_field& f, KEY k);
public:
virtual bool get_next_key(TToken_string& key);
@ -563,6 +565,16 @@ bool TClifo_application::rfso_handler(TMask_field& f, KEY key)
return true;
}
bool TClifo_application::stato_handler(TMask_field& f, KEY k)
{
// Una volta che vai a impostare uno stato se non è presente nessuno stato nella P.IVA e il resto è valorizzato lo suggerisco
if(f.mask().get(F_STATOPAIV).empty() && f.mask().get(F_PAIV).full())
{
f.mask().set(F_STATOPAIV, cache().get("%STA", f.get(), "S10"));
}
return true;
}
HIDDEN bool alleg_handler(TMask_field& f, KEY key)
{
if (f.to_check(key, true))
@ -571,12 +583,10 @@ HIDDEN bool alleg_handler(TMask_field& f, KEY key)
TMask& m = f.mask();
bool can_split = m.get(F_TIPOCF)=="C" && (tipoall == 7 || tipoall == 4);
if (can_split && tipoall == 4)
if (tipoall == 4)
{
TToken_string key; key.format("%c|%ld", m.get(F_TIPOCF)[0], m.get_long(F_CODALLEG));
const TRectype& coll = cache().get(LF_CLIFO, key);
can_split = coll.get_int(CLI_ALLEG) && coll.get_bool(CLI_SPLITPAY);
}
if (key == K_ENTER)
@ -591,8 +601,6 @@ HIDDEN bool alleg_handler(TMask_field& f, KEY key)
if (tipoall == 2)
return f.error_box(TR("Tipo allegato non valido per i non occasionali"));
}
if (!can_split)
m.reset(F_SPLITPAY); // You never know
}
else
{
@ -607,11 +615,6 @@ HIDDEN bool alleg_handler(TMask_field& f, KEY key)
if (tipoall == 2)
m.set(F_OCCASIONALE, "X");
m.show(F_SPLITPAY, can_split);
m.enable(F_SPLITPAY, can_split && tipoall == 7);
if (!can_split)
m.reset(F_SPLITPAY);
m.field(F_COFI).set_dirty(true);
m.field(F_PAIV).set_dirty(true);
}
@ -1557,6 +1560,7 @@ bool TClifo_application::user_create() // initvar e arrmask
_msk->set_handler(F_RAGSOC, rsoc_handler);
_msk->set_handler(DLG_CONTRLAV, contrlav_handler);
_msk->set_handler(LST_TIPO_RFSO, rfso_handler);
_msk->set_handler(F_STATOCF, stato_handler);
TSheet_field& ind = _msk->sfield(F_SHEET_G_VEN);
ind.set_notify(indsp_notify);

View File

@ -105,20 +105,6 @@ BEGIN
HELP "Chiave di ricerca alternativa"
END
STRING F_STATOPAIV 2
BEGIN
PROMPT 42 4 "Stato CEE "
FIELD STATOPAIV
HELP "Codice ISO dello stato"
FLAGS "U"
USE %SCE
INPUT CODTAB F_STATOPAIV
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_STATOPAIV CODTAB
CHECKTYPE NORMAL
END
STRING F_COFI 16
BEGIN
PROMPT 2 5 "Codice fiscale "
@ -138,9 +124,23 @@ BEGIN
VALIDATE XTCF_FUNC F_STATOPAIV F_SESSO F_DATANASC F_COMNASC
END
STRING F_STATOPAIV 2
BEGIN
PROMPT 42 4 "Stato "
FIELD STATOPAIV
HELP "Codice ISO dello stato"
FLAGS "U"
USE %SCE
INPUT CODTAB F_STATOPAIV
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_STATOPAIV CODTAB
CHECKTYPE NORMAL
END
STRING F_PAIV 12
BEGIN
PROMPT 42 5 "Partita IVA "
PROMPT 42 5 "Codice "
FIELD PAIV
KEY 5
USE LF_CLIFO KEY 5