Merge remote-tracking branch 'origin/R_10_00' into R_10_00
This commit is contained in:
commit
1427503e8b
@ -1,4 +1,5 @@
|
||||
cg2.exe
|
||||
cg2100c.msk
|
||||
cg2100t.msk
|
||||
|
||||
Modificati bottoni maschera fatture SDI
|
||||
|
@ -3,83 +3,84 @@ Demo=0
|
||||
|
||||
[cg2]
|
||||
Edit_23 = cg2 -0
|
||||
File(154) = cg2.exe|X
|
||||
File(165) = cg2100t.msk|X
|
||||
Patch = 0852
|
||||
File(2) = cg2.exe|X
|
||||
File(5) = cg2100c.msk|X
|
||||
File(13) = cg2100t.msk|X
|
||||
Patch = 852
|
||||
Versione = 21511200
|
||||
|
||||
[cg99]
|
||||
Kill(0) = batbins.msk|x
|
||||
Kill(1) = bastpor.rep|x
|
||||
Kill(2) = batbcfi.msk|x
|
||||
Kill(3) = batbntb.msk|x
|
||||
Kill(4) = bastleg.msk|x
|
||||
Kill(5) = batbdel.msk|x
|
||||
Kill(6) = bastnot.msk|x
|
||||
Kill(7) = bastvet.rep|x
|
||||
Kill(8) = bastpor.msk|x
|
||||
Kill(9) = bastcve.msk|x
|
||||
Kill(10) = batbpdb.msk|x
|
||||
Kill(11) = batbpor.msk|x
|
||||
Kill(12) = bastivd.msk|x
|
||||
Kill(0) = batbpdb.msk|x
|
||||
Kill(1) = bastndo.rep|x
|
||||
Kill(2) = batbarb.msk|x
|
||||
Kill(3) = batbpor.msk|x
|
||||
Kill(4) = bastesc.msk|x
|
||||
Kill(5) = batbzon.msk|x
|
||||
Kill(6) = batblia.msk|x
|
||||
Kill(7) = batbver.msk|x
|
||||
Kill(8) = bastcco.rep|x
|
||||
Kill(9) = bastpdb.rep|x
|
||||
Kill(10) = bastesc.rep|x
|
||||
Kill(11) = bastivd.msk|x
|
||||
Kill(12) = bastcfi.msk|x
|
||||
Kill(13) = batbind.msk|x
|
||||
Kill(14) = batblbu.msk|x
|
||||
Kill(15) = bastdpn.msk|x
|
||||
Kill(14) = bastarb.msk|x
|
||||
Kill(15) = bastdpn.rep|x
|
||||
Kill(16) = batbleg.msk|x
|
||||
Kill(17) = bastcfi.msk|x
|
||||
Kill(18) = batbdpn.msk|x
|
||||
Kill(19) = bastcam.msk|x
|
||||
Kill(17) = batbinl.msk|x
|
||||
Kill(18) = batbvet.msk|x
|
||||
Kill(19) = bastdpn.msk|x
|
||||
Kill(20) = bastcco.msk|x
|
||||
Kill(21) = batbvet.msk|x
|
||||
Kill(22) = bastarb.msk|x
|
||||
Kill(23) = bastesc.rep|x
|
||||
Kill(24) = cg2fppro.msk|x
|
||||
Kill(25) = bastver.msk|x
|
||||
Kill(26) = batbtit.msk|x
|
||||
Kill(27) = batbcco.msk|x
|
||||
Kill(28) = bastzon.rep|x
|
||||
Kill(21) = batblbu.msk|x
|
||||
Kill(22) = bastreg.msk|x
|
||||
Kill(23) = batbdel.msk|x
|
||||
Kill(24) = bastmsp.rep|x
|
||||
Kill(25) = batbins.msk|x
|
||||
Kill(26) = bastnot.msk|x
|
||||
Kill(27) = batbntb.msk|x
|
||||
Kill(28) = bastleg.msk|x
|
||||
Kill(29) = bastndo.msk|x
|
||||
Kill(30) = bastreg.rep|x
|
||||
Kill(31) = batbndo.msk|x
|
||||
Kill(32) = bastscc.rep|x
|
||||
Kill(33) = batbnot.msk|x
|
||||
Kill(34) = batbscc.msk|x
|
||||
Kill(35) = bastntb.rep|x
|
||||
Kill(36) = batbivd.msk|x
|
||||
Kill(37) = bastnot.rep|x
|
||||
Kill(38) = batbtra.msk|x
|
||||
Kill(30) = bastnot.rep|x
|
||||
Kill(31) = bastcve.msk|x
|
||||
Kill(32) = cgtbcon.msk|x
|
||||
Kill(33) = bastcam.rep|x
|
||||
Kill(34) = batbreg.msk|x
|
||||
Kill(35) = batbivd.msk|x
|
||||
Kill(36) = bastpor.rep|x
|
||||
Kill(37) = bastvet.msk|x
|
||||
Kill(38) = bastpor.msk|x
|
||||
Kill(39) = bastver.rep|x
|
||||
Kill(40) = bastcam.rep|x
|
||||
Kill(40) = batblia.msk|x
|
||||
Kill(41) = batbmsp.msk|x
|
||||
Kill(42) = bastmsp.rep|x
|
||||
Kill(43) = bastvet.msk|x
|
||||
Kill(44) = batbesc.msk|x
|
||||
Kill(45) = bastpdb.msk|x
|
||||
Kill(46) = bastleg.rep|x
|
||||
Kill(47) = batblia.msk|x
|
||||
Kill(48) = bastpdb.rep|x
|
||||
Kill(42) = bastmsp.msk|x
|
||||
Kill(43) = bastcfi.rep|x
|
||||
Kill(44) = bastntb.rep|x
|
||||
Kill(45) = bastleg.rep|x
|
||||
Kill(46) = batbscc.msk|x
|
||||
Kill(47) = bastcve.rep|x
|
||||
Kill(48) = bastzon.rep|x
|
||||
Kill(49) = bastarb.rep|x
|
||||
Kill(50) = bastcfi.rep|x
|
||||
Kill(50) = batbcam.msk|x
|
||||
Kill(51) = bastntb.msk|x
|
||||
Kill(52) = cgtbcon.msk|x
|
||||
Kill(53) = bastcve.rep|x
|
||||
Kill(54) = batbver.msk|x
|
||||
Kill(55) = batbzon.msk|x
|
||||
Kill(56) = batbcve.msk|x
|
||||
Kill(57) = batbcam.msk|x
|
||||
Kill(58) = bastesc.msk|x
|
||||
Kill(59) = batbinl.msk|x
|
||||
Kill(60) = bastivd.rep|x
|
||||
Kill(61) = batbarb.msk|x
|
||||
Kill(62) = bastmsp.msk|x
|
||||
Kill(63) = bastscc.msk|x
|
||||
Kill(64) = bastndo.rep|x
|
||||
Kill(65) = bastdpn.rep|x
|
||||
Kill(66) = bastzon.msk|x
|
||||
Kill(67) = batblia.msk|x
|
||||
Kill(68) = batbreg.msk|x
|
||||
Kill(69) = bastreg.msk|x
|
||||
Kill(70) = bastcco.rep|x
|
||||
Kill(52) = bastzon.msk|x
|
||||
Kill(53) = bastivd.rep|x
|
||||
Kill(54) = bastpdb.msk|x
|
||||
Kill(55) = batbcve.msk|x
|
||||
Kill(56) = batbesc.msk|x
|
||||
Kill(57) = bastscc.msk|x
|
||||
Kill(58) = batbtra.msk|x
|
||||
Kill(59) = bastvet.rep|x
|
||||
Kill(60) = batbcfi.msk|x
|
||||
Kill(61) = bastscc.rep|x
|
||||
Kill(62) = batbtit.msk|x
|
||||
Kill(63) = bastver.msk|x
|
||||
Kill(64) = bastcam.msk|x
|
||||
Kill(65) = bastreg.rep|x
|
||||
Kill(66) = cg2fppro.msk|x
|
||||
Kill(67) = batbdpn.msk|x
|
||||
Kill(68) = batbndo.msk|x
|
||||
Kill(69) = batbnot.msk|x
|
||||
Kill(70) = batbcco.msk|x
|
||||
|
||||
[cg]
|
||||
Data = 04-07-2019
|
||||
|
Binary file not shown.
3
cd/test/cg0854.txt
Normal file
3
cd/test/cg0854.txt
Normal file
@ -0,0 +1,3 @@
|
||||
cg2.exe
|
||||
|
||||
Blocco il ricalcolo automatico delle scadenze quando cambio il codice pagamento se sto utilizzando l'F1
|
95
cd/test/cg0854a.ini
Normal file
95
cd/test/cg0854a.ini
Normal file
@ -0,0 +1,95 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[cg2]
|
||||
Edit_23 = cg2 -0
|
||||
File(2) = cg2.exe|X
|
||||
Patch = 0854
|
||||
Versione = 21511200
|
||||
|
||||
[cg99]
|
||||
Kill(0) = bastdpn.msk|x
|
||||
Kill(1) = batbins.msk|x
|
||||
Kill(2) = bastcve.msk|x
|
||||
Kill(3) = batbvet.msk|x
|
||||
Kill(4) = bastmsp.rep|x
|
||||
Kill(5) = bastnot.rep|x
|
||||
Kill(6) = batbntb.msk|x
|
||||
Kill(7) = bastcam.rep|x
|
||||
Kill(8) = bastnot.msk|x
|
||||
Kill(9) = cgtbcon.msk|x
|
||||
Kill(10) = bastdpn.rep|x
|
||||
Kill(11) = batblbu.msk|x
|
||||
Kill(12) = bastarb.msk|x
|
||||
Kill(13) = bastcco.msk|x
|
||||
Kill(14) = batbinl.msk|x
|
||||
Kill(15) = batbdel.msk|x
|
||||
Kill(16) = batbleg.msk|x
|
||||
Kill(17) = bastreg.msk|x
|
||||
Kill(18) = bastivd.msk|x
|
||||
Kill(19) = bastesc.rep|x
|
||||
Kill(20) = batbind.msk|x
|
||||
Kill(21) = bastcfi.msk|x
|
||||
Kill(22) = bastvet.rep|x
|
||||
Kill(23) = bastreg.rep|x
|
||||
Kill(24) = batbtra.msk|x
|
||||
Kill(25) = bastcam.msk|x
|
||||
Kill(26) = batbcco.msk|x
|
||||
Kill(27) = batbdpn.msk|x
|
||||
Kill(28) = cg2fppro.msk|x
|
||||
Kill(29) = bastarb.rep|x
|
||||
Kill(30) = batbcve.msk|x
|
||||
Kill(31) = bastscc.rep|x
|
||||
Kill(32) = bastzon.rep|x
|
||||
Kill(33) = bastpdb.msk|x
|
||||
Kill(34) = batbcfi.msk|x
|
||||
Kill(35) = bastscc.msk|x
|
||||
Kill(36) = bastver.msk|x
|
||||
Kill(37) = batbesc.msk|x
|
||||
Kill(38) = batbtit.msk|x
|
||||
Kill(39) = bastver.rep|x
|
||||
Kill(40) = bastleg.rep|x
|
||||
Kill(41) = bastntb.msk|x
|
||||
Kill(42) = bastpor.msk|x
|
||||
Kill(43) = bastntb.rep|x
|
||||
Kill(44) = batbcam.msk|x
|
||||
Kill(45) = bastcve.rep|x
|
||||
Kill(46) = bastivd.rep|x
|
||||
Kill(47) = batbscc.msk|x
|
||||
Kill(48) = bastzon.msk|x
|
||||
Kill(49) = bastndo.msk|x
|
||||
Kill(50) = batbivd.msk|x
|
||||
Kill(51) = batbmsp.msk|x
|
||||
Kill(52) = bastleg.msk|x
|
||||
Kill(53) = batbreg.msk|x
|
||||
Kill(54) = batblia.msk|x
|
||||
Kill(55) = bastvet.msk|x
|
||||
Kill(56) = bastcfi.rep|x
|
||||
Kill(57) = bastpor.rep|x
|
||||
Kill(58) = bastmsp.msk|x
|
||||
Kill(59) = batbnot.msk|x
|
||||
Kill(60) = batbndo.msk|x
|
||||
Kill(61) = bastpdb.rep|x
|
||||
Kill(62) = bastcco.rep|x
|
||||
Kill(63) = bastndo.rep|x
|
||||
Kill(64) = batbpdb.msk|x
|
||||
Kill(65) = batbzon.msk|x
|
||||
Kill(66) = bastesc.msk|x
|
||||
Kill(67) = batbpor.msk|x
|
||||
Kill(68) = batbarb.msk|x
|
||||
Kill(69) = batbver.msk|x
|
||||
Kill(70) = batblia.msk|x
|
||||
|
||||
[cg]
|
||||
Data = 08-07-2019
|
||||
Descrizione = Contabilita' Generale
|
||||
Dischi = 1
|
||||
Moduli = ba
|
||||
OEM =
|
||||
Patch = 854
|
||||
PostProcess = bainst -0 CG
|
||||
PreProcess =
|
||||
Prezzo(1) =
|
||||
Prezzo(2) =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/cg0854a1.zip
Normal file
BIN
cd/test/cg0854a1.zip
Normal file
Binary file not shown.
3
cd/test/ef0854.txt
Normal file
3
cd/test/ef0854.txt
Normal file
@ -0,0 +1,3 @@
|
||||
ef0.exe
|
||||
|
||||
Aggiornata modifica per banca presentazione e appoggio della gestione effetti
|
28
cd/test/ef0854a.ini
Normal file
28
cd/test/ef0854a.ini
Normal file
@ -0,0 +1,28 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[ef0]
|
||||
Edit_163 = ef0 -1
|
||||
Edit_5 = ef0 -6
|
||||
File(5) = ef0.exe|X
|
||||
Patch = 0854
|
||||
Versione = 21511200
|
||||
|
||||
[ef99]
|
||||
Kill(0) = eftbbnp.msk|x
|
||||
Kill(1) = efstbnp.msk|x
|
||||
Kill(2) = efstbnp.rep|x
|
||||
|
||||
[ef]
|
||||
Data = 09-07-2019
|
||||
Descrizione = Effetti
|
||||
Dischi = 1
|
||||
Moduli = ve
|
||||
OEM =
|
||||
Patch = 854
|
||||
PostProcess = bainst -0 EF
|
||||
PreProcess =
|
||||
Prezzo(1) =
|
||||
Prezzo(2) =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/ef0854a1.zip
Normal file
BIN
cd/test/ef0854a1.zip
Normal file
Binary file not shown.
4
cd/test/fp0854.txt
Normal file
4
cd/test/fp0854.txt
Normal file
@ -0,0 +1,4 @@
|
||||
fp0.exe
|
||||
fp0400a.msk
|
||||
|
||||
Aggiunta associazione fornitori automatica all'avvio del monitor della fatt. passive
|
20
cd/test/fp0854a.ini
Normal file
20
cd/test/fp0854a.ini
Normal file
@ -0,0 +1,20 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[fp1]
|
||||
File(0) = fp0.exe|X
|
||||
File(4) = fp0400a.msk|X
|
||||
Patch = 0854
|
||||
Versione = 21511200
|
||||
|
||||
[fp]
|
||||
Data = 08-07-2019
|
||||
Descrizione = Fattura Elettronica
|
||||
Dischi = 1
|
||||
Moduli = cg,ve
|
||||
OEM =
|
||||
Patch = 854
|
||||
PostProcess =
|
||||
PreProcess =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/fp0854a1.zip
Normal file
BIN
cd/test/fp0854a1.zip
Normal file
Binary file not shown.
4
cd/test/fp0856.txt
Normal file
4
cd/test/fp0856.txt
Normal file
@ -0,0 +1,4 @@
|
||||
fp0.exe
|
||||
|
||||
Bloccata selezione multipla per contabilizzazione
|
||||
Corretto codice causale da fornitore: andava a leggere il codforn dalla colonna sbagliata
|
19
cd/test/fp0856a.ini
Normal file
19
cd/test/fp0856a.ini
Normal file
@ -0,0 +1,19 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[fp1]
|
||||
File(0) = fp0.exe|X
|
||||
Patch = 856
|
||||
Versione = 21511200
|
||||
|
||||
[fp]
|
||||
Data = 15-07-2019
|
||||
Descrizione = Fattura Elettronica
|
||||
Dischi = 1
|
||||
Moduli = cg,ve
|
||||
OEM =
|
||||
Patch = 856
|
||||
PostProcess =
|
||||
PreProcess =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/fp0856a1.zip
Normal file
BIN
cd/test/fp0856a1.zip
Normal file
Binary file not shown.
3
cd/test/ve0854.txt
Normal file
3
cd/test/ve0854.txt
Normal file
@ -0,0 +1,3 @@
|
||||
ve6100a.msk
|
||||
|
||||
Repubblicata maschera per patch mancante [n. 0426]
|
129
cd/test/ve0854a.ini
Normal file
129
cd/test/ve0854a.ini
Normal file
@ -0,0 +1,129 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[ve6]
|
||||
File(93) = ve6100a.msk|X
|
||||
Patch = 0854
|
||||
Versione = 21511200
|
||||
|
||||
[ve99]
|
||||
Kill(0) = batbcld.msk|x
|
||||
Kill(1) = bastspp.rep|x
|
||||
Kill(2) = basttri.msk|x
|
||||
Kill(3) = batbeld.msk|x
|
||||
Kill(4) = ve7700a.msk|x
|
||||
Kill(5) = batbspt.msk|x
|
||||
Kill(6) = ve7300a.msk|x
|
||||
Kill(7) = bastcra.rep|x
|
||||
Kill(8) = batbfca.msk|x
|
||||
Kill(9) = bastgcg.rep|x
|
||||
Kill(10) = bastabe.rep|x
|
||||
Kill(11) = batbpro.msk|x
|
||||
Kill(12) = bastgca.msk|x
|
||||
Kill(13) = ve7400a.msk|x
|
||||
Kill(14) = batbtag.msk|x
|
||||
Kill(15) = batbtri.msk|x
|
||||
Kill(16) = baststd.msk|x
|
||||
Kill(17) = baststd.rep|x
|
||||
Kill(18) = batbrfc.msk|x
|
||||
Kill(19) = ve7200a.msk|x
|
||||
Kill(20) = batbmre.msk|x
|
||||
Kill(21) = bastctr.msk|x
|
||||
Kill(22) = batbcau.msk|x
|
||||
Kill(23) = ve7400a.ini|x
|
||||
Kill(24) = basteld.rep|x
|
||||
Kill(25) = batbrfa.msk|x
|
||||
Kill(26) = bastcaa.rep|x
|
||||
Kill(27) = ve7701a.ini|x
|
||||
Kill(28) = bastfrd.rep|x
|
||||
Kill(29) = batbgcg.msk|x
|
||||
Kill(30) = bastums.rep|x
|
||||
Kill(31) = bastgca.rep|x
|
||||
Kill(32) = basttri.rep|x
|
||||
Kill(33) = batbfrr.msk|x
|
||||
Kill(34) = batbums.msk|x
|
||||
Kill(35) = bastimb.rep|x
|
||||
Kill(36) = bastfca.msk|x
|
||||
Kill(37) = bastfrr.msk|x
|
||||
Kill(38) = batbbnp.msk|x
|
||||
Kill(39) = bastasf.msk|x
|
||||
Kill(40) = bastnum.msk|x
|
||||
Kill(41) = bastfca.rep|x
|
||||
Kill(42) = ve7400conf.ini|x
|
||||
Kill(43) = ve7500a.msk|x
|
||||
Kill(44) = bastgmc.msk|x
|
||||
Kill(45) = bastfrm.rep|x
|
||||
Kill(46) = batbfsa.msk|x
|
||||
Kill(47) = basttip.rep|x
|
||||
Kill(48) = batbstd.msk|x
|
||||
Kill(49) = bastcau.msk|x
|
||||
Kill(50) = bastrfa.msk|x
|
||||
Kill(51) = bastnum.rep|x
|
||||
Kill(52) = bastubi.msk|x
|
||||
Kill(53) = ve7600a.msk|x
|
||||
Kill(54) = ve7100a.msk|x
|
||||
Kill(55) = batbprs.msk|x
|
||||
Kill(56) = batbspp.msk|x
|
||||
Kill(57) = batbcaa.msk|x
|
||||
Kill(58) = bastrfc.msk|x
|
||||
Kill(59) = bastimb.msk|x
|
||||
Kill(60) = bastums.msk|x
|
||||
Kill(61) = batbctr.msk|x
|
||||
Kill(62) = batbfid.msk|x
|
||||
Kill(63) = bastspp.msk|x
|
||||
Kill(64) = batbubi.msk|x
|
||||
Kill(65) = bastctr.rep|x
|
||||
Kill(66) = bastubi.rep|x
|
||||
Kill(67) = basttag.msk|x
|
||||
Kill(68) = bastcaa.msk|x
|
||||
Kill(69) = bastfrr.rep|x
|
||||
Kill(70) = bastcau.rep|x
|
||||
Kill(71) = batbtip.msk|x
|
||||
Kill(72) = basteld.msk|x
|
||||
Kill(73) = bastgcg.msk|x
|
||||
Kill(74) = ve7200a.frm|x
|
||||
Kill(75) = bastprs.rep|x
|
||||
Kill(76) = bastbnp.msk|x
|
||||
Kill(77) = batbgsa.msk|x
|
||||
Kill(78) = batbasf.msk|x
|
||||
Kill(79) = efstbnp.rep|x
|
||||
Kill(80) = eftbbnp.msk|x
|
||||
Kill(81) = basttag.rep|x
|
||||
Kill(82) = batbgca.msk|x
|
||||
Kill(83) = ve7.exe|x
|
||||
Kill(84) = ve7300a.frm|x
|
||||
Kill(85) = batbfrm.msk|x
|
||||
Kill(86) = bastrfc.rep|x
|
||||
Kill(87) = batbnum.msk|x
|
||||
Kill(88) = bastcra.msk|x
|
||||
Kill(89) = bastfrd.msk|x
|
||||
Kill(90) = bastprs.msk|x
|
||||
Kill(91) = batbcra.msk|x
|
||||
Kill(92) = bastasf.rep|x
|
||||
Kill(93) = bastabe.msk|x
|
||||
Kill(94) = batbgmc.msk|x
|
||||
Kill(95) = bastbnp.rep|x
|
||||
Kill(96) = efstbnp.msk|x
|
||||
Kill(97) = batbabe.msk|x
|
||||
Kill(98) = batbacr.msk|x
|
||||
Kill(99) = batbimb.msk|x
|
||||
Kill(100) = batbfrd.msk|x
|
||||
Kill(101) = batbprv.msk|x
|
||||
Kill(102) = bastgmc.rep|x
|
||||
Kill(103) = bastfrm.msk|x
|
||||
Kill(104) = basttip.msk|x
|
||||
Kill(105) = bastrfa.rep|x
|
||||
|
||||
[ve]
|
||||
Data = 08-07-2019
|
||||
Descrizione = Vendite
|
||||
Dischi = 1
|
||||
Moduli = ba,cg9,pr9,mg9,sv9,in9,ef9
|
||||
OEM =
|
||||
Patch = 854
|
||||
PostProcess = bainst -0 VE
|
||||
PreProcess =
|
||||
Prezzo(1) =
|
||||
Prezzo(2) =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/ve0854a1.zip
Normal file
BIN
cd/test/ve0854a1.zip
Normal file
Binary file not shown.
@ -328,8 +328,8 @@ bool TPrimanota_application::codpag_handler(TMask_field& f, KEY key)
|
||||
TMask& m = f.mask();
|
||||
TPrimanota_application& a = app();
|
||||
const bool set_scad = a.is_fattura() && m.page_enabled(2); // E' attiva pagina 3
|
||||
if (key == K_ENTER)
|
||||
{
|
||||
if (key == K_ENTER && (!a._f1_ini && (!a._f1_ini && (a._pro_mask == nullptr || !a._pro_mask->should_bring_back()))))
|
||||
{
|
||||
if (set_scad && f.empty())
|
||||
{
|
||||
ok = f.error_box(TR("Il codice di pagamento è obbligatorio!"));
|
||||
@ -355,7 +355,7 @@ bool TPrimanota_application::codpag_handler(TMask_field& f, KEY key)
|
||||
}
|
||||
}
|
||||
|
||||
if (key == K_TAB && f.focusdirty() && m.insert_mode() && set_scad)
|
||||
if (key == K_TAB && f.focusdirty() && m.insert_mode() && set_scad && (!a._f1_ini && (a._pro_mask == nullptr || !a._pro_mask->should_bring_back())))
|
||||
a.set_scadenze(m);
|
||||
|
||||
return ok;
|
||||
|
@ -22,6 +22,7 @@ class TVariazione_effetti: public TRelation_application
|
||||
TMask *_msk;
|
||||
TEffetto *_effetto;
|
||||
TRelation *_rel;
|
||||
TCli_for * _cli;
|
||||
|
||||
protected:
|
||||
virtual void init_query_mode(TMask&);
|
||||
@ -57,8 +58,11 @@ protected:
|
||||
public:
|
||||
virtual bool protected_record(TRectype&);
|
||||
virtual TRelation* get_relation() const {return _rel;}
|
||||
TVariazione_effetti() {};
|
||||
virtual ~TVariazione_effetti() {};
|
||||
TVariazione_effetti(): _msk(nullptr), _effetto(nullptr), _rel(nullptr), _cli(nullptr)
|
||||
{
|
||||
}
|
||||
|
||||
virtual ~TVariazione_effetti() = default;
|
||||
};
|
||||
|
||||
// restituisce un riferimento all' applicazione
|
||||
@ -366,8 +370,15 @@ bool TVariazione_effetti::clifo_handler(TMask_field& f, KEY k)
|
||||
if (k == K_TAB && f.to_check(k))
|
||||
{
|
||||
TMask& m = f.mask();
|
||||
TString iban; iban << get_iban(m.get(F_CODCF));
|
||||
if (iban.not_empty())
|
||||
const char tipocf = m.get(F_TIPOCF)[0];
|
||||
const long codcf = m.get_long(F_CODCF);
|
||||
if (app()._cli == nullptr)
|
||||
app()._cli = new TCli_for();
|
||||
if (app()._cli->tipo() != tipocf || app()._cli->codice() != codcf)
|
||||
app()._cli->read(tipocf, codcf);
|
||||
const TString & iban = app()._cli->get_iban();
|
||||
|
||||
if (iban.full())
|
||||
{
|
||||
m.set(F_IBAN, iban);
|
||||
m.set(F_IBAN_STATO, iban.left(2));
|
||||
@ -379,7 +390,15 @@ bool TVariazione_effetti::clifo_handler(TMask_field& f, KEY k)
|
||||
m.set(F_BBAN_CONTO, iban.mid(15));
|
||||
m.efield(F_IBAN_STATO).validate(K_TAB);
|
||||
}
|
||||
}
|
||||
TToken_string& banp = app()._cli->get_ban_pres();
|
||||
if (banp.full())
|
||||
{
|
||||
m.set(F_CODABIP, banp.get());
|
||||
m.set(F_CODCABP, banp.get());
|
||||
m.set(F_PROG, banp.get());
|
||||
m.efield(F_PROG).validate(K_TAB);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -82,6 +82,8 @@ protected:
|
||||
static bool causfa_handler(TMask_field& f, KEY k);
|
||||
|
||||
void fattsel(int dlg, TField_event& e);
|
||||
// Non permette la selezione multipla delle righe
|
||||
void sel();
|
||||
bool on_field_event(TOperable_field& o, TField_event e, long jolly) override;
|
||||
void check_buttons(int p);
|
||||
void next_page(int p) override;
|
||||
@ -98,6 +100,7 @@ protected:
|
||||
public:
|
||||
TString& get_fattsel() const;
|
||||
|
||||
void auto_assoc();
|
||||
TPassive_mask(bool f1);
|
||||
};
|
||||
|
||||
@ -412,6 +415,48 @@ TString& TPassive_mask::get_fattsel() const
|
||||
return fattsel << get(F_ASSOC);
|
||||
}
|
||||
|
||||
void TPassive_mask::auto_assoc()
|
||||
{
|
||||
TString query = "SELECT PZ_TIPOPROT AS TIPO_PROT, YEAR(P7_DATA) AS ANNO, P7_TIPODOC AS [TIPO_SDI], P7_NUMERO AS [NUM_DOC], \n"
|
||||
"P7_DATA AS[DATA_DOC], PZ_DATAORARIC AS[DATA_RIC], PQ_IMPTOTDOC AS[TOT_DOC], PZ_NUMREGCONT AS NUMREGCONT, PZ_DATAREGCONT AS DATAREGCONT, P2_ANADENOMIN AS[RAG_SOC], P2_ANANOME AS NOME, \n"
|
||||
"P2_ANACOGNOME AS COGNOME, P2_FISCIVACOD AS[P_IVA], P2_CODFISCALE AS[COD_FISC], P2_FISCIVAPAESE AS[COD_PAESE], \n"
|
||||
"COUNT(PP_ATTACHMENT) AS ATTACHMENT, P1_CODDEST AS[COD_SDI], PU_PEC AS PEC, P1_KEYPRGINVIO AS KEYPROG, P1_KEYHEADERFATT AS KEYHEAD, P1_KEYBODYFATT AS KEYFATT, \n"
|
||||
"PZ_NUMPROT AS[NUM_PROT], PZ_ANNOPROT AS[ANNO_PROT], PZ_TIPOCF AS[TIPO_CF], PZ_CLIFOR AS[COD_CLIFOR] \n"
|
||||
"FROM PAA0100F PAA01 \n"
|
||||
"JOIN PAA0200F PAA02 ON P1_KEYPRGINVIO = P2_KEYPRGINVIO and P1_KEYHEADERFATT = P2_KEYHEADERFATT and P1_KEYBODYFATT = P2_KEYBODYFATT \n"
|
||||
"JOIN PAA0700F PAA07 ON P1_KEYPRGINVIO = P7_KEYPRGINVIO and P1_KEYHEADERFATT = P7_KEYHEADERFATT and P1_KEYBODYFATT = P7_KEYBODYFATT \n"
|
||||
"JOIN PAA2700F PAA27 ON P1_KEYPRGINVIO = PQ_KEYPRGINVIO and P1_KEYHEADERFATT = PQ_KEYHEADERFATT and P1_KEYBODYFATT = PQ_KEYBODYFATT \n"
|
||||
"LEFT JOIN PAA2600F PAA26 ON P1_KEYPRGINVIO = PP_KEYPRGINVIO and P1_KEYHEADERFATT = PP_KEYHEADERFATT and P1_KEYBODYFATT = PP_KEYBODYFATT \n"
|
||||
"LEFT JOIN PAA3200F PAA32 ON P1_KEYPRGINVIO = PU_KEYPRGINVIO and P1_KEYHEADERFATT = PU_KEYHEADERFATT and P1_KEYBODYFATT = PU_KEYBODYFATT \n"
|
||||
"LEFT JOIN FPPRO00F FPPRO ON P1_KEYPRGINVIO = PZ_KEYPRGINVIO and P1_KEYHEADERFATT = PZ_KEYHEADERFATT and P1_KEYBODYFATT = PZ_KEYBODYFATT \n"
|
||||
"WHERE PZ_CLIFOR = '' \n"
|
||||
"GROUP BY YEAR(P7_DATA), P7_TIPODOC, P7_NUMERO, P7_DATA, PZ_DATAORARIC, PQ_IMPTOTDOC, PZ_NUMREGCONT, PZ_DATAREGCONT, P2_ANADENOMIN, P2_ANANOME, P2_ANACOGNOME, P2_FISCIVACOD, P2_CODFISCALE, P2_FISCIVAPAESE, \n"
|
||||
"P1_CODDEST, PU_PEC, P1_KEYPRGINVIO, P1_KEYHEADERFATT, P1_KEYBODYFATT, PZ_TIPOPROT, PZ_NUMPROT, PZ_ANNOPROT, PZ_TIPOCF, PZ_CLIFOR;";
|
||||
|
||||
fp_db().sq_set_exec(query, false);
|
||||
SSimple_query update_db; set_connection(update_db); update_db.sq_set_autocommit(false); // Non posso usare contemporaneamente due volte fp_db()
|
||||
|
||||
TLocalisamfile clifo(LF_CLIFO);
|
||||
for(bool ok = fp_db().sq_next(); ok; ok = fp_db().sq_next())
|
||||
{
|
||||
TToken_string key("",';');
|
||||
key.add(fp_db().sq_get("KEYPROG")); key.add(fp_db().sq_get("KEYHEAD")); key.add(fp_db().sq_get("KEYFATT"));
|
||||
|
||||
clifo.zero();
|
||||
clifo.put(CLI_TIPOCF, "F");
|
||||
|
||||
int for_cod = find_fornitore(clifo);
|
||||
if(for_cod > 0)
|
||||
{
|
||||
static TString update;
|
||||
update.cut(0) << "UPDATE FPPRO00F \nSET PZ_TIPOCF = 'F', PZ_CLIFOR = '" << clifo.get(CLI_CODCF) << "' \n" <<
|
||||
"WHERE PZ_KEYPRGINVIO = '" << key.get(0) << "' AND PZ_KEYHEADERFATT = '" << key.get(1) << "' AND PZ_KEYBODYFATT = '" << key.get(2) << "';";
|
||||
update_db.sq_set_exec(update);
|
||||
}
|
||||
}
|
||||
update_db.sq_commit();
|
||||
}
|
||||
|
||||
int TPassive_mask::find_fornitore(TLocalisamfile& clifo)
|
||||
{
|
||||
TString paa_codfisc = fp_db().sq_get("COD_FISC");
|
||||
@ -607,7 +652,7 @@ int TPassive_mask::prepara_contab() const
|
||||
{
|
||||
TString prokeys = row->get(sf.cid2index(S_PROKEY));
|
||||
TToken_string keys(prokeys, ';');
|
||||
TString codcaus(get_codcaus(row->get(2), row->get(10)));
|
||||
TString codcaus(get_codcaus(row->get(cid2index(S_TIPODOCSDI)), row->get(cid2index(S_FORNITORE))));
|
||||
|
||||
TString tipodoc(row->get(sf.cid2index(S_TIPODOCSDI)));
|
||||
if(tipodoc == "TD01" && !check_causale(codcaus, "FA", true))
|
||||
@ -768,7 +813,7 @@ int TPassive_mask::check_err() const
|
||||
{
|
||||
if (row->starts_with("X"))
|
||||
{
|
||||
TString codcaus(get_codcaus(row->get(2), row->get(10)));
|
||||
TString codcaus(get_codcaus(row->get(cid2index(S_TIPODOCSDI)), row->get(cid2index(S_FORNITORE))));
|
||||
if (codcaus.empty())
|
||||
return no_codcaus;
|
||||
if (TString(row->get(cid2index(S_FORNITORE))).empty())
|
||||
@ -988,21 +1033,33 @@ void TPassive_mask::fattsel(const int dlg, TField_event& e)
|
||||
field(F_DATAENDREG).enable(get_bool(F_CONTABIL));
|
||||
}
|
||||
|
||||
void TPassive_mask::sel()
|
||||
{
|
||||
TSheet_field& sf = sfield(F_DOCS);
|
||||
FOR_EACH_SHEET_ROW(sf, nr, row)
|
||||
{
|
||||
if (*row->get(0) == 'X') {
|
||||
row->add("", 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
sf.force_update();
|
||||
}
|
||||
|
||||
bool TPassive_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||
{
|
||||
switch (o.dlg())
|
||||
{
|
||||
case S_SELCODPROT:
|
||||
if(e == fe_modify)
|
||||
if (e == fe_modify) {
|
||||
set_filter_changed();
|
||||
sel();
|
||||
}
|
||||
break;
|
||||
case F_PROT:
|
||||
if(e == fe_init)
|
||||
init();
|
||||
break;
|
||||
case F_DOCS:
|
||||
if (e == se_query_modify)
|
||||
break;
|
||||
case DLG_USER:
|
||||
if (e == fe_button && jolly > 0 && get_fattsel() == FILTER_CONT)
|
||||
{
|
||||
@ -1114,6 +1171,7 @@ TPassive_mask::TPassive_mask(bool f1) : TAutomask("fp0400a"), _f1(f1), _filter_c
|
||||
_tmp_dir = _tmp_dir.tempdir();
|
||||
TMask::set_handler(F_CAUSFA, causfa_handler);
|
||||
TMask::set_handler(F_FORNITORE, clifo_handler);
|
||||
auto_assoc();
|
||||
}
|
||||
|
||||
|
||||
@ -1178,9 +1236,7 @@ void TPassive_app::main_loop()
|
||||
TPassive_mask mask(check_f1());
|
||||
load_mask(mask);
|
||||
mask.first_focus(F_DATAINI);
|
||||
while(mask.run() == K_ENTER)
|
||||
{
|
||||
}
|
||||
while (mask.run() == K_ENTER) {}
|
||||
save_field(mask);
|
||||
}
|
||||
|
||||
|
@ -30,7 +30,7 @@ END
|
||||
|
||||
BUTTON DLG_EXPORT 10 2
|
||||
BEGIN
|
||||
PROMPT 4 1 "Contabilizzaz."
|
||||
PROMPT 4 1 "Contabilizza"
|
||||
PICTURE TOOL_EXPORT
|
||||
END
|
||||
|
||||
@ -43,8 +43,8 @@ PAGE "Fatture Passive" 0 2 0 0
|
||||
RADIOBUTTON F_ASSOC 20 50
|
||||
BEGIN
|
||||
PROMPT 0 1 "@BFornitori"
|
||||
ITEM "|Non Associate"
|
||||
ITEM "E|Associate"
|
||||
ITEM "|Non Associate"
|
||||
ITEM "A|Tutte"
|
||||
FLAGS "Z"
|
||||
END
|
||||
|
@ -23,6 +23,7 @@ class TDoc_fp;
|
||||
|
||||
enum { no_pdf = -1, pdf_ok = 0, no_alleg = -2};
|
||||
|
||||
bool set_connection(SSimple_query& s);
|
||||
// Ritorna la connessione al DB paf secondo i parametri impostati nel programma di configurazione
|
||||
SSimple_query& fp_db();
|
||||
// Lancia una maschera di password FP
|
||||
|
@ -721,45 +721,4 @@ TString& to_tstring(long n)
|
||||
TString& to_tstring(int n)
|
||||
{
|
||||
return to_tstring(static_cast<long>(n));
|
||||
}
|
||||
|
||||
bool get_bnp_iban(const TString& abi, const TString& cab, int nprog, TString& iban)
|
||||
{
|
||||
TTable bnp("BNP");
|
||||
TString16 key;
|
||||
key << abi << cab;
|
||||
if (nprog > 0)
|
||||
{
|
||||
TString4 sprog;
|
||||
sprog.format("%02d", nprog);
|
||||
key << sprog;
|
||||
}
|
||||
bnp.put("CODTAB", key);
|
||||
int err = bnp.read(_isgteq);
|
||||
if (err == NOERR && !bnp.get("CODTAB").starts_with(abi))
|
||||
err = _iskeynotfound;
|
||||
if (err == NOERR)
|
||||
iban = bnp.get("S3");
|
||||
return err == NOERR;
|
||||
}
|
||||
|
||||
TString get_iban(const TString& codcf)
|
||||
{
|
||||
TString iban;
|
||||
TToken_string key;
|
||||
key.add("C");
|
||||
key.add(codcf);
|
||||
key.add("V");
|
||||
key.add(1);
|
||||
const TRectype& cfban = cache().get(LF_CFBAN, key);
|
||||
if (!cfban.empty())
|
||||
{
|
||||
const TString& abi_cf = cfban.get(CFBAN_ABI);
|
||||
const TString& cab_cf = cfban.get(CFBAN_CAB);
|
||||
const bool found_cf = abi_cf.full() && cab_cf.full();
|
||||
iban = cfban.get(CFBAN_IBAN);
|
||||
if (found_cf && iban.blank())
|
||||
get_bnp_iban(abi_cf, cab_cf, -1, iban);
|
||||
}
|
||||
return iban;
|
||||
}
|
@ -81,7 +81,4 @@ TString& to_tstring(int n);
|
||||
|
||||
inline bool is_multi_table(const int file) { return file == LF_TAB || file == LF_TABGEN || file == LF_TABCOM || file == LF_TABMOD; }
|
||||
|
||||
TString get_iban(const TString& codcf);
|
||||
|
||||
|
||||
#endif /* __UTILITY_H */
|
||||
|
@ -295,7 +295,47 @@ void TCli_for::cli2doc(TDocumento& doc)
|
||||
//aggiungere gestione spese e bolli???
|
||||
}
|
||||
|
||||
|
||||
const TString& TCli_for::get_iban()
|
||||
{
|
||||
TString & iban = get_tmp_string(30);
|
||||
TToken_string key;
|
||||
|
||||
key.add(tipo());
|
||||
key.add(codice());
|
||||
key.add("V");
|
||||
key.add(1);
|
||||
|
||||
const TRectype& cfban = cache().get(LF_CFBAN, key);
|
||||
|
||||
if (!cfban.empty())
|
||||
{
|
||||
const TString& abi_cf = cfban.get(CFBAN_ABI);
|
||||
const TString& cab_cf = cfban.get(CFBAN_CAB);
|
||||
iban = cfban.get(CFBAN_IBAN);
|
||||
}
|
||||
return iban;
|
||||
}
|
||||
|
||||
TToken_string& TCli_for::get_ban_pres(int nprog)
|
||||
{
|
||||
TToken_string & ban = get_tmp_string(30);
|
||||
TToken_string key;
|
||||
|
||||
key.add(tipo());
|
||||
key.add(codice());
|
||||
key.add("N");
|
||||
key.add(nprog);
|
||||
|
||||
const TRectype& cfban = cache().get(LF_CFBAN, key);
|
||||
|
||||
if (!cfban.empty())
|
||||
{
|
||||
ban.add(cfban.get(CFBAN_ABI));
|
||||
ban.add(cfban.get(CFBAN_CAB));
|
||||
ban.add(cfban.get(CFBAN_PROGPR));
|
||||
}
|
||||
return ban;
|
||||
}
|
||||
TCli_for::TCli_for(char tipo, long codice) : TMultiple_rectype( LF_CLIFO ), _ven_rec(LF_CFVEN),
|
||||
_letint(LF_LETINT), _use_lettere(false), _lettera_found(false), _extended(false)
|
||||
{
|
||||
|
@ -66,6 +66,9 @@ public:
|
||||
void cli2doc(TDocumento& doc);
|
||||
const TString& find_listino_al(const TDate& datadoc) const;
|
||||
|
||||
const TString & get_iban();
|
||||
TToken_string & get_ban_pres(int nprog = 1);
|
||||
|
||||
TCli_for(char tipo = ' ', long codice = 0L);
|
||||
TCli_for(const TRectype & rec);
|
||||
TCli_for(const TCli_for & c);
|
||||
|
Loading…
x
Reference in New Issue
Block a user