Patch level : 10.950

Files correlati     :  ve0.exe
Ricompilazione Demo : [ ]
Commento            :

Bug       0001802: 003446 - cq - abi-cab

verificato su area dati in www.aga.it\ilaria\g84x.zip che su maschera standar la fattura n. 54 che su rdoc ha codificato il codice iban, lo visualizza in modo errato al richiamo del documento (che è il penultimo)

Bug        0001779: 003408 - SRM gestione commesse

imposto sul cliente il codice iban corretto, confemando una commessa, al ritorno della generazione ordine fornitore, mi viene proposto un iban sbagliato in quanto viene visualizzato il codice abi utilizzato nella commessa precedente. Ho verificato che stampando senza registrare il codice iban della commessa è corretto.

Bisogna controllare il funzionamento con i profili vecchi non modificati, io ne avevo solo uno.
Alleghero' a breve il documento modificato per le modifiche ai profili


git-svn-id: svn://10.65.10.50/branches/R_10_00@21754 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 2011-03-08 14:31:27 +00:00
parent 6cabedc493
commit 3997f4fc08
11 changed files with 114 additions and 149 deletions

View File

@ -73,6 +73,7 @@ CODCABA = S_OBBLIGATORIO //600
CODABIA1 = S_NORMALE //600
CODCABA1 = S_NORMALE //600
DESBANAPP = S_NOCHECK //600
DESBANAPP1 = S_NOCHECK //600
IBAN = S_NORMALE //600
IBAN_STATO = S_NORMALE //600
IBAN_CHECK = S_NORMALE //600
@ -86,6 +87,7 @@ CODCABP = S_NORMALE //700
CODABIP1 = S_NORMALE //700
CODCABP1 = S_NORMALE //700
DESBANPRE = S_NOCHECK //700
DESBANPRE1 = S_NOCHECK //700
PROGBNP = S_NOCHECK //700
PROGBNP1 = S_NORMALE //700
CATVEN = S_NORMALE //800

View File

@ -71,6 +71,7 @@ CODCABA = S_OBBLIGATORIO //600
CODABIA1 = S_NORMALE //600
CODCABA1 = S_NORMALE //600
DESBANAPP = S_NOCHECK //600
DESBANAPP1 = S_NOCHECK //600
IBAN = S_NORMALE //600
IBAN_STATO = S_NORMALE //600
IBAN_CHECK = S_NORMALE //600
@ -84,6 +85,7 @@ CODCABP = S_NORMALE //700
CODABIP1 = S_NORMALE //700
CODCABP1 = S_NORMALE //700
DESBANPRE = S_NOCHECK //700
DESBANPRE1 = S_NOCHECK //700
PROGBNP = S_NOCHECK //700
PROGBNP1 = S_NORMALE //700
CATVEN = S_NORMALE //800

View File

@ -70,6 +70,7 @@ CODCABA = S_OBBLIGATORIO //600
CODABIA1 = S_NORMALE //600
CODCABA1 = S_NORMALE //600
DESBANAPP = S_NOCHECK //600
DESBANAPP1 = S_NOCHECK //600
IBAN = S_NORMALE //600
IBAN_STATO = S_NORMALE //600
IBAN_CHECK = S_NORMALE //600
@ -83,6 +84,7 @@ CODCABP = S_NORMALE //700
CODABIP1 = S_NORMALE //700
CODCABP1 = S_NORMALE //700
DESBANPRE = S_NOCHECK //700
DESBANPRE1 = S_NOCHECK //700
PROGBNP = S_NOCHECK //700
PROGBNP1 = S_NORMALE //700
CATVEN = S_NORMALE //800

View File

@ -71,6 +71,7 @@ CODCABA = S_OBBLIGATORIO //600
CODABIA1 = S_NORMALE //600
CODCABA1 = S_NORMALE //600
DESBANAPP = S_NOCHECK //600
DESBANAPP1 = S_NOCHECK //600
IBAN = S_NORMALE //600
IBAN_STATO = S_NORMALE //600
IBAN_CHECK = S_NORMALE //600
@ -84,6 +85,7 @@ CODCABP = S_NORMALE //700
CODABIP1 = S_NORMALE //700
CODCABP1 = S_NORMALE //700
DESBANPRE = S_NOCHECK //700
DESBANPRE1 = S_NOCHECK //700
PROGBNP = S_NOCHECK //700
PROGBNP1 = S_NORMALE //700
CATVEN = S_NORMALE //800

View File

@ -67,6 +67,7 @@ CODCABA = S_OBBLIGATORIO //600
CODABIA1 = S_NORMALE //600
CODCABA1 = S_NORMALE //600
DESBANAPP = S_NOCHECK //600
DESBANAPP1 = S_NOCHECK //600
IBAN = S_NORMALE //600
IBAN_STATO = S_NORMALE //600
IBAN_CHECK = S_NORMALE //600
@ -80,6 +81,7 @@ CODCABP = S_NORMALE //700
CODABIP1 = S_NORMALE //700
CODCABP1 = S_NORMALE //700
DESBANPRE = S_NOCHECK //700
DESBANPRE1 = S_NOCHECK //700
PROGBNP = S_NOCHECK //700
PROGBNP1 = S_NORMALE //700
CATVEN = S_NORMALE //800

View File

@ -72,6 +72,7 @@ CODCABA = S_OBBLIGATORIO //600
CODABIA1 = S_NORMALE //600
CODCABA1 = S_NORMALE //600
DESBANAPP = S_NOCHECK //600
DESBANAPP1 = S_NOCHECK //600
IBAN = S_NORMALE //600
IBAN_STATO = S_NORMALE //600
IBAN_CHECK = S_NORMALE //600
@ -85,6 +86,7 @@ CODCABP = S_NORMALE //700
CODABIP1 = S_NORMALE //700
CODCABP1 = S_NORMALE //700
DESBANPRE = S_NOCHECK //700
DESBANPRE1 = S_NOCHECK //700
PROGBNP = S_NOCHECK //700
PROGBNP1 = S_NORMALE //700
CATVEN = S_NORMALE //800

View File

@ -78,6 +78,7 @@ CODCABA = S_OBBLIGATORIO //600
CODABIA1 = S_NORMALE //600
CODCABA1 = S_NORMALE //600
DESBANAPP = S_NOCHECK //600
DESBANAPP1 = S_NOCHECK //600
IBAN = S_NORMALE //600
IBAN_STATO = S_NORMALE //600
IBAN_CHECK = S_NORMALE //600
@ -91,6 +92,7 @@ CODCABP = S_NORMALE //700
CODABIP1 = S_NORMALE //700
CODCABP1 = S_NOCHECK //700
DESBANPRE = S_NORMALE //700
DESBANPRE1 = S_NORMALE //700
PROGBNP = S_NOCHECK //700
PROGBNP1 = S_NORMALE //700
CATVEN = S_NORMALE //800

View File

@ -77,6 +77,7 @@ CODCABA = S_OBBLIGATORIO //600
CODABIA1 = S_NORMALE //600
CODCABA1 = S_NORMALE //600
DESBANAPP = S_NOCHECK //600
DESBANAPP1 = S_NOCHECK //600
IBAN = S_NORMALE //600
IBAN_STATO = S_NORMALE //600
IBAN_CHECK = S_NORMALE //600
@ -90,6 +91,7 @@ CODCABP = S_NORMALE //700
CODABIP1 = S_NORMALE //700
CODCABP1 = S_NORMALE //700
DESBANPRE = S_NOCHECK //700
DESBANPRE1 = S_NOCHECK //700
PROGBNP = S_NOCHECK //700
PROGBNP1 = S_NORMALE //700
CATVEN = S_NORMALE //800

View File

@ -529,7 +529,7 @@ USE=%BAN SE CODTAB?="?????"
INPUT=CODTAB[1,5] F_CODABIA
DISPLAY="Cod. Istit." CODTAB[1,5]~"Cod. Fil." CODTAB[6,10]~"Denominazione@50" S0
OUTPUT=F_CODABIA CODTAB[1,5]~F_DESBANAPP S0~F_BBAN_ABI CODTAB[1,5]
SPECIAL=ME CO,F_CODABIA1
SPECIAL=ME CO,F_CODABIA1~GR GR_APPOGGIO
[CODCABA]
GROUP=600
@ -545,7 +545,7 @@ USE=%BAN SE CODTAB?="??????????"
INPUT=CODTAB[1,5] F_CODABIA~CODTAB[6,10] F_CODCABA
DISPLAY=@F_CODABIA
OUTPUT=F_CODABIA CODTAB[1,5]~F_CODCABA CODTAB[6,10]~F_DESBANAPP S0~F_BBAN_CAB CODTAB[6,10]
SPECIAL=ME CO,F_CODCABA1
SPECIAL=ME CO,F_CODCABA1~GR GR_APPOGGIO
[CODABIA1]
GROUP=600
@ -560,7 +560,8 @@ FLAG=ZH
USE=LF_CFBAN KEY 2~JOIN %BAN INTO CODTAB[1,5]==ABI CODTAB[6,10]==CAB
INPUT=TIPOCF F_TIPOCF SE~CODCF F_CODCF SE~TIPOBAN "V"~ABI F_CODABIA1~CAB F_CODCABA1~PROGPR ""
DISPLAY="Cod. Istit." ABI~"Cod. Fil." CAB~"IBAN@27" IBAN~"Denominazione@50" %BAN->S0
OUTPUT=F_CODABIA1 ABI~F_CODCABA1 CAB~F_DESBANAPP %BAN->S0~F_IBAN IBAN~F_BBAN_ABI ABI~F_BBAN_CAB CAB
OUTPUT=F_CODABIA1 ABI~F_CODCABA1 CAB~F_DESBANAPP1 %BAN->S0
SPECIAL=GR GR_APPOGGIOCLI
[CODCABA1]
GROUP=600
@ -576,6 +577,7 @@ USE=@F_CODABIA1
INPUT=@F_CODABIA1
DISPLAY=@F_CODABIA1
OUTPUT=@F_CODABIA1
SPECIAL=GR GR_APPOGGIOCLI
[DESBANAPP]
GROUP=600
@ -584,11 +586,23 @@ Y=1
MSKID=F_DESBANAPP
TYPE=T_STRINGA
PROMPT="Denominazione "
SIZE=50
SIZE=7050
USE=%BAN KE 2
INPUT=S0 F_DESBANAPP
DISPLAY=@F_CODABIA
OUTPUT=@F_CODABIA
SPECIAL=GR GR_APPOGGIO
[DESBANAPP1]
GROUP=600
X=2
Y=1
MSKID=F_DESBANAPP1
TYPE=T_STRINGA
PROMPT="Denominazione "
SIZE=7050
FLAG=D
SPECIAL=GR GR_APPOGGIOCLI
[IBAN]
GROUP=600
@ -689,7 +703,7 @@ USE=@F_CODABIA
INPUT=CODTAB[1,5] F_CODABIP
DISPLAY="Cod. Istit." CODTAB[1,5]~"Cod. Fil." CODTAB[6,10]~"Denominazione@50" S0
OUTPUT=F_CODABIP CODTAB[1,5]~F_DESBANPRE S0
SPECIAL=ME CO,F_CODABIP1
SPECIAL=ME CO,F_CODABIP1~GR GR_PRESENT
[CODCABP]
GROUP=700
@ -705,7 +719,7 @@ USE=@F_CODCABA
INPUT=CODTAB[1,5] F_CODABIP~CODTAB[6,10] F_CODCABP
DISPLAY=@F_CODABIP
OUTPUT=F_CODABIP CODTAB[1,5]~F_CODCABP CODTAB[6,10]~F_DESBANPRE S0
SPECIAL=ME CO,F_CODCABP1
SPECIAL=ME CO,F_CODCABP1~GR GR_PRESENT
[PROGBNP]
GROUP=700
@ -721,7 +735,7 @@ USE=BNP~JOIN %BAN ALIAS 100 INTO CODTAB=CODTAB[1,10]
INPUT=CODTAB[1,5] F_CODABIP~CODTAB[6,10] F_CODCABP~CODTAB[11,12] F_PROGBNP
DISPLAY="Cod. Istit." CODTAB[1,5]~"Cod. Fil." CODTAB[6,10]~"Progr." CODTAB[11,12]~"IBAN@27" S3~"Denominazione@50" 100@->S0
OUTPUT=F_CODABIP CODTAB[1,5]~F_CODCABP CODTAB[6,10]~F_PROGBNP CODTAB[11,12]~F_DESBANPRE 100@->S0
SPECIAL=ME CO,F_PROGBNP1
SPECIAL=ME CO,F_PROGBNP1~GR GR_PRESENT
[CODABIP1]
GROUP=700
@ -740,7 +754,8 @@ OUTPUT=F_CODABIP CODTAB[1,5]~F_DESBANPRE S0
USE=LF_CFBAN KEY 2~JOIN %BAN INTO CODTAB[1,5]==ABI CODTAB[6,10]==CAB
INPUT=TIPOCF F_TIPOCF SE~CODCF F_CODCF SE~TIPOBAN "N"~ABI F_CODABIP1~CAB F_CODCABP1~PROGPR F_PROGBNP1
DISPLAY="Cod. Istit." ABI~"Cod. Fil." CAB~"Progr." PROGPR~"IBAN@27" IBAN~"Denominazione@50" %BAN->S0
OUTPUT=F_CODABIP1 ABI~F_CODCABP1 CAB~F_PROGBNP1 PROGPR~F_DESBANPRE %BAN->S0~F_IBAN IBAN
OUTPUT=F_CODABIP1 ABI~F_CODCABP1 CAB~F_PROGBNP1 PROGPR~F_DESBANPRE1 %BAN->S0
SPECIAL=GR GR_PRESENTCLI
[CODCABP1]
GROUP=700
@ -756,6 +771,7 @@ USE=@F_CODABIP1
INPUT=@F_CODABIP1
DISPLAY=@F_CODABIP1
OUTPUT=@F_CODABIP1
SPECIAL=GR GR_PRESENTCLI
[PROGBNP1]
GROUP=700
@ -771,6 +787,7 @@ USE=@F_CODABIP1
INPUT=@F_CODABIP1
DISPLAY=@F_CODABIP1
OUTPUT=@F_CODABIP1
SPECIAL=GR GR_PRESENTCLI
[DESBANPRE]
GROUP=700
@ -779,11 +796,23 @@ Y=1
MSKID=F_DESBANPRE
TYPE=T_STRINGA
PROMPT="Denominazione "
SIZE=50
SIZE=7050
USE=%BAN KEY 2
INPUT=S0 F_DESBANPRE
DISPLAY=@F_CODABIP
OUTPUT=@F_CODABIP
SPECIAL=GR GR_PRESENT
[DESBANPRE1]
GROUP=700
X=2
Y=1
MSKID=F_DESBANPRE1
TYPE=T_STRINGA
PROMPT="Denominazione "
SIZE=7050
FLAG=D
SPECIAL=GR GR_PRESENTCLI
[CATVEN]
GROUP=800

View File

@ -978,71 +978,46 @@ void TDocumento_mask::cli2mask(bool force_load)
key.add("1");
const TRectype & cfban = cache().get(LF_CFBAN, key);
TString iban;
if (cfban.empty())
if (cfban.empty() || id2pos(F_CODABIA1) < 0)
{
show(F_CODABIA);
show(F_CODCABA);
enable(F_CODABIA);
enable(F_CODCABA);
hide(F_CODABIA1);
hide(F_CODCABA1);
disable(F_CODABIA1);
disable(F_CODCABA1);
set(F_CODABIA, c.get(CLI_CODABI), 0x3);
set(F_CODCABA, c.get(CLI_CODCAB), 0x3);
if (id2pos(F_IBAN_STATO) > 0)
show(-GR_APPOGGIO);
hide(-GR_APPOGGIOCLI);
if (cfban.empty())
{
const TString80 iban = c.get(CLI_IBAN);
set(F_IBAN, iban);
efield(F_IBAN_STATO).validate(K_TAB);
if (iban.not_empty())
{
set(F_IBAN_STATO, iban.left(2));
set(F_IBAN_CHECK, iban.mid(2,2));
set(F_BBAN , iban.mid(4));
set(F_BBAN_CIN , iban.mid(4,1));
set(F_BBAN_ABI , iban.mid(5,5));
set(F_BBAN_CAB , iban.mid(10,5));
set(F_BBAN_CONTO, iban.mid(15,12));
}
}
}
else
{
if (id2pos(F_CODABIA1) > 0)
{
show(F_CODABIA1);
show(F_CODCABA1);
enable(F_CODABIA1);
enable(F_CODCABA1);
hide(F_CODABIA);
hide(F_CODCABA);
disable(F_CODABIA);
disable(F_CODCABA);
set(F_CODABIA1, cfban.get(CFBAN_ABI), 0x3);
set(F_CODCABA1, cfban.get(CFBAN_CAB), 0x3);
set(F_CODABIA, c.get(CLI_CODABI), 0x3);
set(F_CODCABA, c.get(CLI_CODCAB), 0x3);
iban = c.get(CLI_IBAN);
}
else
{
set(F_CODABIA, cfban.get(CFBAN_ABI), 0x3);
set(F_CODCABA, cfban.get(CFBAN_CAB), 0x3);
iban = cfban.get(CFBAN_IBAN);
}
if (id2pos(F_IBAN_STATO) > 0)
}
else
{
show(-GR_APPOGGIOCLI);
hide(-GR_APPOGGIO);
set(F_CODABIA1, cfban.get(CFBAN_ABI), 0x3);
set(F_CODCABA1, cfban.get(CFBAN_CAB), 0x3);
iban = cfban.get(CFBAN_IBAN);
}
if (id2pos(F_IBAN_STATO) > 0)
{
set(F_IBAN, iban);
efield(F_IBAN_STATO).validate(K_TAB);
if (iban.not_empty())
{
const TString80 iban = cfban.get(CFBAN_IBAN);
set(F_IBAN, iban);
efield(F_IBAN_STATO).validate(K_TAB);
if (iban.not_empty())
{
set(F_IBAN_STATO, iban.left(2));
set(F_IBAN_CHECK, iban.mid(2,2));
set(F_BBAN , iban.mid(4));
set(F_BBAN_CIN , iban.mid(4,1));
set(F_BBAN_ABI , iban.mid(5,5));
set(F_BBAN_CAB , iban.mid(10,5));
set(F_BBAN_CONTO, iban.mid(15,12));
}
set(F_IBAN_STATO, iban.left(2));
set(F_IBAN_CHECK, iban.mid(2,2));
set(F_BBAN , iban.mid(4));
set(F_BBAN_CIN , iban.mid(4,1));
set(F_BBAN_ABI , iban.mid(5,5));
set(F_BBAN_CAB , iban.mid(10,5));
set(F_BBAN_CONTO, iban.mid(15,12));
}
}
@ -1055,42 +1030,14 @@ void TDocumento_mask::cli2mask(bool force_load)
const TRectype & cfbanpr = cache().get(LF_CFBAN, key);
// Setta i campi che appartengono al file LF_CFVEN
if (cfbanpr.empty())
if (cfbanpr.empty() || id2pos(F_CODABIP1) < 0)
{
show(F_CODABIP);
show(F_CODCABP);
show(F_PROGBNP);
enable(F_CODABIP);
enable(F_CODCABP);
enable(F_PROGBNP);
hide(F_CODABIP1);
hide(F_CODCABP1);
hide(F_PROGBNP1);
disable(F_CODABIP1);
disable(F_CODCABP1);
disable(F_PROGBNP1);
set(F_CODABIP, ven_rec.get(CFV_CODABIPR), 0x3);
set(F_CODCABP, ven_rec.get(CFV_CODCABPR), 0x3);
}
else
{
if (id2pos(F_CODABIP1) > 0)
show(-GR_PRESENT);
hide(-GR_PRESENTCLI);
if (cfbanpr.empty() || id2pos(F_CODABIP1) < 0)
{
show(F_CODABIP1);
show(F_CODCABP1);
show(F_PROGBNP1);
enable(F_CODABIP1);
enable(F_CODCABP1);
enable(F_PROGBNP1);
hide(F_CODABIP);
hide(F_CODCABP);
hide(F_PROGBNP);
disable(F_CODABIP);
disable(F_CODCABP);
disable(F_PROGBNP);
set(F_CODABIP1, cfbanpr.get(CFBAN_ABI), 0x3);
set(F_CODCABP1, cfbanpr.get(CFBAN_CAB), 0x3);
set(F_PROGBNP1, cfbanpr.get(CFBAN_PROGPR), 0x3);
set(F_CODABIP, ven_rec.get(CFV_CODABIPR), 0x3);
set(F_CODCABP, ven_rec.get(CFV_CODCABPR), 0x3);
}
else
{
@ -1099,6 +1046,14 @@ void TDocumento_mask::cli2mask(bool force_load)
set(F_PROGBNP, cfbanpr.get(CFBAN_PROGPR), 0x3);
}
}
else
{
show(-GR_PRESENTCLI);
hide(-GR_PRESENT);
set(F_CODABIP1, cfbanpr.get(CFBAN_ABI), 0x3);
set(F_CODCABP1, cfbanpr.get(CFBAN_CAB), 0x3);
set(F_PROGBNP1, cfbanpr.get(CFBAN_PROGPR), 0x3);
}
set(F_RAGGR, ven_rec.get(CFV_RAGGDOC));
set(F_RAGGREFF, ven_rec.get(CFV_RAGGEFF));
set(F_CODINDSP, ven_rec.get(CFV_CODINDSP));
@ -1128,9 +1083,6 @@ void TDocumento_mask::cli2mask(bool force_load)
f.check();
f.on_hit();
}
/* pos = id2pos(F_CODAG);
if (pos >= 0 && fld(pos).active())
fld(pos).set(ven_rec.get(CFV_CODAG)); */
set(F_CODZON, ven_rec.get(CFV_CODZONA), 0x3);
set(F_RAGGR, ven_rec.get(CFV_RAGGDOC));
sconto_testa2mask();
@ -1148,30 +1100,15 @@ void TDocumento_mask::cli2mask(bool force_load)
const TRectype & cfban = cache().get(LF_CFBAN, key);
if (cfban.empty())
if (cfban.empty() || id2pos(F_CODABIA1) < 0)
{
show(F_CODABIA);
show(F_CODCABA);
enable(F_CODABIA);
enable(F_CODCABA);
hide(F_CODABIA1);
hide(F_CODCABA1);
disable(F_CODABIA1);
disable(F_CODCABA1);
show(-GR_APPOGGIO);
hide(-GR_APPOGGIOCLI);
}
else
{
if (id2pos(F_CODABIA1) > 0)
{
show(F_CODABIA1);
show(F_CODCABA1);
enable(F_CODABIA1);
enable(F_CODCABA1);
hide(F_CODABIA);
hide(F_CODCABA);
disable(F_CODABIA);
disable(F_CODCABA);
}
show(-GR_APPOGGIOCLI);
hide(-GR_APPOGGIO);
}
key.cut(0);
key.add(c.get(CLI_TIPOCF));
@ -1181,38 +1118,15 @@ void TDocumento_mask::cli2mask(bool force_load)
const TRectype & cfbanpr = cache().get(LF_CFBAN, key);
if (cfbanpr.empty())
if (cfbanpr.empty() || id2pos(F_CODABIP1) < 0)
{
show(F_CODABIP);
show(F_CODCABP);
show(F_PROGBNP);
enable(F_CODABIP);
enable(F_CODCABP);
enable(F_PROGBNP);
hide(F_CODABIP1);
hide(F_CODCABP1);
hide(F_PROGBNP1);
disable(F_CODABIP1);
disable(F_CODCABP1);
disable(F_PROGBNP1);
show(-GR_PRESENT);
hide(-GR_PRESENTCLI);
}
else
{
if (id2pos(F_CODABIP1) > 0)
{
show(F_CODABIP1);
show(F_CODCABP1);
show(F_PROGBNP1);
enable(F_CODABIP1);
enable(F_CODCABP1);
enable(F_PROGBNP1);
hide(F_CODABIP);
hide(F_CODCABP);
hide(F_PROGBNP);
disable(F_CODABIP);
disable(F_CODCABP);
disable(F_PROGBNP);
}
show(-GR_PRESENTCLI);
hide(-GR_PRESENT);
}
}
enable( F_CODINDSP , !occas);

View File

@ -8,6 +8,10 @@
// gruppo dei vettori
#define GR_VETTORI 15
#define GR_APPOGGIO 16
#define GR_APPOGGIOCLI 17
#define GR_PRESENT 18
#define GR_PRESENTCLI 19
// campi della maschera totale
@ -72,4 +76,6 @@
#define F_DESZON 358
#define F_NOTECLI 359
#define F_DESCRMAGC 360
#define F_DESBANAPP1 361
#define F_DESBANPRE1 362
#endif // __VEUML1_H