Merge branch 'R12.00.1244' of http://10.65.20.33/sirio/CAMPO/campo into R12.00.1244

This commit is contained in:
smen 2023-06-20 16:02:43 +02:00
commit ba37220d5c
20 changed files with 371 additions and 18 deletions

3
cd/test/cg1266.txt Normal file
View File

@ -0,0 +1,3 @@
cg2.exe
Se partendo dai mastrini si cambia un conto viene dao un errore sulla contropartita

98
cd/test/cg1266a.ini Normal file
View File

@ -0,0 +1,98 @@
[Main]
Demo=0
[cg2]
File(59) = cg2.exe|X
Patch = 1266
Versione = 21511200
[cg99]
Kill(0) = bastreg.rep|x
Kill(1) = bastesc.rep|x
Kill(2) = bastarb.msk|x
Kill(3) = bastzon.rep|x
Kill(4) = bastleg.rep|x
Kill(5) = bastcfi.rep|x
Kill(6) = bastscc.rep|x
Kill(7) = bastcco.rep|x
Kill(8) = batbndo.msk|x
Kill(9) = bastvet.rep|x
Kill(10) = bastnot.rep|x
Kill(11) = bastleg.msk|x
Kill(12) = bastesc.msk|x
Kill(13) = batbind.msk|x
Kill(14) = bastmsp.rep|x
Kill(15) = batbcve.msk|x
Kill(16) = batbleg.msk|x
Kill(17) = batbtra.msk|x
Kill(18) = bastzon.msk|x
Kill(19) = batbzon.msk|x
Kill(20) = bastcco.msk|x
Kill(21) = cg2fppro.msk|x
Kill(22) = bastmsp.msk|x
Kill(23) = bastvet.msk|x
Kill(24) = bastcve.rep|x
Kill(25) = bastdpn.rep|x
Kill(26) = batbarb.msk|x
Kill(27) = bastpdb.rep|x
Kill(28) = bastpdb.msk|x
Kill(29) = bastndo.msk|x
Kill(30) = bastntb.rep|x
Kill(31) = batbinl.msk|x
Kill(32) = batbnot.msk|x
Kill(33) = bastnot.msk|x
Kill(34) = bastivd.msk|x
Kill(35) = batbins.msk|x
Kill(36) = batbpdb.msk|x
Kill(37) = batbivd.msk|x
Kill(38) = batbreg.msk|x
Kill(39) = bastver.rep|x
Kill(40) = batblia.msk|x
Kill(41) = batbmsp.msk|x
Kill(42) = bastivd.rep|x
Kill(43) = bastpor.rep|x
Kill(44) = bastver.msk|x
Kill(45) = batbntb.msk|x
Kill(46) = batbpor.msk|x
Kill(47) = batbdpn.msk|x
Kill(48) = batbver.msk|x
Kill(49) = bastarb.rep|x
Kill(50) = bastndo.rep|x
Kill(51) = bastntb.msk|x
Kill(52) = bastcam.rep|x
Kill(53) = batbvet.msk|x
Kill(54) = batbcco.msk|x
Kill(55) = batbcam.msk|x
Kill(56) = bastscc.msk|x
Kill(57) = bastcam.msk|x
Kill(58) = batbscc.msk|x
Kill(59) = bastpor.msk|x
Kill(60) = batblbu.msk|x
Kill(61) = bastreg.msk|x
Kill(62) = batbcfi.msk|x
Kill(63) = bastdpn.msk|x
Kill(64) = batbdel.msk|x
Kill(65) = batbesc.msk|x
Kill(66) = batblia.msk|x
Kill(67) = cgtbcon.msk|x
Kill(68) = bastcfi.msk|x
Kill(69) = batbtit.msk|x
Kill(70) = bastcve.msk|x
[cg]
Data = 31-05-2023
Descrizione = Contabilita' Generale
Dischi = 1
Edit_19 = cg0 -0
Edit_20 = cg0 -1
Edit_26 = cg0 -4
Edit_5 = cg0 -5
Moduli = ba
OEM =
Patch = 1266
PostProcess = bainst -0 CG
PreProcess =
Prezzo(1) =
Prezzo(2) =
Versione = 21511200

BIN
cd/test/cg1266a1.zip Normal file

Binary file not shown.

4
cd/test/lv1266.txt Normal file
View File

@ -0,0 +1,4 @@
lv0.exe
lv2.exe
La gestione passaggi per contratto ddava un errore 3261 nell'invio a touchscreen

27
cd/test/lv1266a.ini Normal file
View File

@ -0,0 +1,27 @@
[Main]
Demo=0
[lv0]
Edit_168 = lv0 -3
File(0) = lv0.exe|X
Patch = 1266
Versione = 21511200
[lv2]
File(121) = lv2.exe|X
Patch = 1266
Versione = 21511200
[lv]
Data = 31-05-2023
Descrizione = Gestione lavanderie
Dischi = 1
Moduli = ve,mg
OEM = 2
Patch = 1266
PostProcess = bainst -0 LV
PreProcess =
Prezzo(1) =
Prezzo(2) =
Versione = 21511200

BIN
cd/test/lv1266a1.zip Normal file

Binary file not shown.

8
cd/test/lv1268.txt Normal file
View File

@ -0,0 +1,8 @@
lv0.exe
lv0400f.msk
lv0400c.msk
lv2.exe
La stampa contratti andava in errore
Invio postino con ODBC

29
cd/test/lv1268a.ini Normal file
View File

@ -0,0 +1,29 @@
[Main]
Demo=0
[lv0]
Edit_168 = lv0 -3
File(0) = lv0.exe|X
File(11) = lv0400c.msk|X
File(17) = lv0400f.msk|X
Patch = 1268
Versione = 21511200
[lv2]
File(121) = lv2.exe|X
Patch = 1268
Versione = 21511200
[lv]
Data = 12-06-2023
Descrizione = Gestione lavanderie
Dischi = 1
Moduli = ve,mg
OEM = 2
Patch = 1268
PostProcess = bainst -0 LV
PreProcess =
Prezzo(1) =
Prezzo(2) =
Versione = 21511200

BIN
cd/test/lv1268a1.zip Normal file

Binary file not shown.

3
cd/test/sc1268.txt Normal file
View File

@ -0,0 +1,3 @@
sc0.exe
sc2.exe
rifatta patch

26
cd/test/sc1268a.ini Normal file
View File

@ -0,0 +1,26 @@
[Main]
Demo=0
[sc0]
File(1) = sc0.exe|X
Patch = 1268
Versione = 21511200
[sc2]
File(17) = sc2.exe|X
Patch = 1268
Versione = 21511200
[sc]
Data = 01-05-2023
Descrizione = Saldaconto
Dischi = 1
Moduli = ba,cg
OEM =
Patch = 1268
PostProcess =
PreProcess =
Prezzo(1) =
Prezzo(2) =
Versione = 21511200

BIN
cd/test/sc1268a1.zip Normal file

Binary file not shown.

4
cd/test/ve1268.txt Normal file
View File

@ -0,0 +1,4 @@
ve0.exe
ve6.exe
La ricerca della cuasale sui tipi documento dell'archiviazione non funzionava

138
cd/test/ve1268a.ini Normal file
View File

@ -0,0 +1,138 @@
[Main]
Demo=0
[ve0]
Edit_163 = ve0 -6
Edit_33 = ve0 -0
Edit_4 = ve0 -4
Edit_5 = ve0 -4
File(20) = ve0.exe|X
Patch = 1268
Versione = 21511200
[ve6]
File(262) = ve6.exe|X
Patch = 1268
Versione = 21511200
[ve99]
Kill(0) = batbcld.msk|x
Kill(1) = bastspp.rep|x
Kill(2) = bastgca.rep|x
Kill(3) = bastbnp.rep|x
Kill(4) = bastubi.msk|x
Kill(5) = batbasf.msk|x
Kill(6) = batbfrr.msk|x
Kill(7) = bastcra.rep|x
Kill(8) = ve7200a.msk|x
Kill(9) = bastgcg.rep|x
Kill(10) = baststd.rep|x
Kill(11) = bastfrd.rep|x
Kill(12) = bastgca.msk|x
Kill(13) = ve7400a.ini|x
Kill(14) = batbubi.msk|x
Kill(15) = bastubi.rep|x
Kill(16) = ve7700a.msk|x
Kill(17) = batbtri.msk|x
Kill(18) = bastasf.msk|x
Kill(19) = bastrfa.rep|x
Kill(20) = bastprs.msk|x
Kill(21) = batbstd.msk|x
Kill(22) = ve7600a.msk|x
Kill(23) = batbfid.msk|x
Kill(24) = basteld.rep|x
Kill(25) = basttag.msk|x
Kill(26) = bastctr.rep|x
Kill(27) = batbbnp.msk|x
Kill(28) = ve7500a.msk|x
Kill(29) = bastcau.rep|x
Kill(30) = bastrfa.msk|x
Kill(31) = batbprs.msk|x
Kill(32) = batbfsa.msk|x
Kill(33) = batbpro.msk|x
Kill(34) = bastums.rep|x
Kill(35) = batbctr.msk|x
Kill(36) = batbprv.msk|x
Kill(37) = bastfrr.rep|x
Kill(38) = bastprs.rep|x
Kill(39) = batbums.msk|x
Kill(40) = bastimb.rep|x
Kill(41) = bastfca.rep|x
Kill(42) = batbgsa.msk|x
Kill(43) = batbfca.msk|x
Kill(44) = bastrfc.msk|x
Kill(45) = bastabe.msk|x
Kill(46) = batbtag.msk|x
Kill(47) = batbgcg.msk|x
Kill(48) = ve7400conf.ini|x
Kill(49) = batbspp.msk|x
Kill(50) = bastspp.msk|x
Kill(51) = bastcaa.msk|x
Kill(52) = bastums.msk|x
Kill(53) = baststd.msk|x
Kill(54) = basttri.msk|x
Kill(55) = basttag.rep|x
Kill(56) = bastfrm.msk|x
Kill(57) = batbspt.msk|x
Kill(58) = batbfrd.msk|x
Kill(59) = bastnum.msk|x
Kill(60) = batbgmc.msk|x
Kill(61) = bastfrd.msk|x
Kill(62) = bastbnp.msk|x
Kill(63) = ve7400a.msk|x
Kill(64) = bastrfc.rep|x
Kill(65) = batbfrm.msk|x
Kill(66) = bastfrm.rep|x
Kill(67) = bastimb.msk|x
Kill(68) = basteld.msk|x
Kill(69) = bastfca.msk|x
Kill(70) = basttri.rep|x
Kill(71) = batbcaa.msk|x
Kill(72) = basttip.rep|x
Kill(73) = ve7100a.msk|x
Kill(74) = ve7200a.frm|x
Kill(75) = efstbnp.rep|x
Kill(76) = batbrfa.msk|x
Kill(77) = bastgcg.msk|x
Kill(78) = ve7300a.frm|x
Kill(79) = batbabe.msk|x
Kill(80) = bastasf.rep|x
Kill(81) = bastcra.msk|x
Kill(82) = ve7300a.msk|x
Kill(83) = bastabe.rep|x
Kill(84) = eftbbnp.msk|x
Kill(85) = batbgca.msk|x
Kill(86) = bastnum.rep|x
Kill(87) = batbnum.msk|x
Kill(88) = bastcau.msk|x
Kill(89) = bastctr.msk|x
Kill(90) = bastcaa.rep|x
Kill(91) = batbcra.msk|x
Kill(92) = bastgmc.msk|x
Kill(93) = batbrfc.msk|x
Kill(94) = bastfrr.msk|x
Kill(95) = bastgmc.rep|x
Kill(96) = efstbnp.msk|x
Kill(97) = batbmre.msk|x
Kill(98) = batbacr.msk|x
Kill(99) = batbimb.msk|x
Kill(100) = ve7.exe|x
Kill(101) = batbtip.msk|x
Kill(102) = batbeld.msk|x
Kill(103) = batbcau.msk|x
Kill(104) = basttip.msk|x
Kill(105) = ve7701a.ini|x
[ve]
Data = 02-06-2023
Descrizione = Vendite
Dischi = 1
Moduli = ba,cg0, cg9,pr9,mg9,sv9,in9,ef9
OEM =
Patch = 1268
PostProcess = bainst -0 VE
PreProcess =
Prezzo(1) =
Prezzo(2) =
Versione = 21511200

BIN
cd/test/ve1268a1.zip Normal file

Binary file not shown.

View File

@ -664,14 +664,13 @@ bool TPrimanota_application::cg_handler(TMask_field& f, KEY k)
return f.error_box(FR("Il conto della riga %d non è completo"), i+1);
if (m.insert_mode() && c.sospeso())
return f.error_box(FR("Il conto della riga %d è sospeso"), i+1);
TBill co(r, 10, 0x0);
TBill co(r, 9, 0x1);
if (!co.empty() && !co.ok())
{
const bool ok = f.yesno_box(FR("La contropartita della riga %d non è completa:\n"
"Si desidera continuare ugualmente?"), i+1);
if (!ok) return false;
}
if (app().is_transaction())
{
// Controlla esistenza conti nelle transazioni (visto che non c'e' controllo in inserimento)

View File

@ -629,11 +629,7 @@ HIDDEN void odbc_send(const TString & dsn, int num, TAuto_token_string & elab_fi
TTrec wrk(curr_file_num);
int nfields = wrk.fields();
const TString name = table_name(curr_file_num);
/*TString check_statement = "SELECT TOP 1 * FROM [";
check_statement << name << "];";*/
TToken_string key(wrk.keydef(), '+');
TString check_statement = "SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'dbo' AND TABLE_NAME = '";
check_statement << name << "';";
@ -653,12 +649,13 @@ HIDDEN void odbc_send(const TString & dsn, int num, TAuto_token_string & elab_fi
TFieldtypes t = (TFieldtypes)def.get_int(1);
TString str = ini.get(field);
str = str.strip("\"");
if (key.find(field) >= 0 && str.blank())
str << rowkey.get();
TToken_string row(make_val(field, t, str), '=');
values.add(row);
}
TToken_string key(wrk.keydef(), '+');
int pos = key.find("|");
if (pos > 0)
@ -709,16 +706,31 @@ HIDDEN void odbc_send(const TString & dsn, int num, TAuto_token_string & elab_fi
TToken_string row(make_val(fld, t, str), '=');
keys.add(row);
}
const TString & statement = build_statement(op, curr_file_num, name, keys, values);
TString statement;
if (op < db_remove)
{
statement << "SELECT * FROM [" << name << "] WHERE ";
FOR_EACH_ARRAY_ROW(keys, rk, rowk)
{
if (rk > 0)
statement << " AND";
statement << ' ' << *rowk;
}
statement << ";";
int err = recset.exec(statement);
if (err == 0 && op == db_update)
op = db_add;
else
if (err > 0 && op == db_add)
op = db_update;
}
statement = build_statement(op, curr_file_num, name, keys, values);
int err = recset.exec(statement);
if (op < db_remove && err <= 0)
{
const TString & statement = build_statement(op == db_add ? db_update : db_add, curr_file_num, name, keys, values);
err = recset.exec(statement);
}
if (err <= 0)
if (err < 0)
error_box(FR("Errore n. %d invio file %d"), -err, curr_file_num);
else
recset.exec("COMMIT;");

View File

@ -91,7 +91,7 @@ BEGIN
FLAGS "H"
END
STRING F_REPORT 20
STRING F_REPORT 50
BEGIN
PROMPT 2 -2 "Tipo di stampa "
RSELECT "lv0400c"

View File

@ -81,7 +81,7 @@ BEGIN
FLAGS "H"
END
STRING F_REPORT 20
STRING F_REPORT 50
BEGIN
PROMPT 2 -2 "Tipo di stampa "
RSELECT "lv0400f"

View File

@ -4037,6 +4037,8 @@ TCausale * TDocumento::get_caus_cont(int year) const
if (tipodocsdi.full())
{
if (codcaus.blank())
codcaus = tipo().causale();
const TString & tipodoc_cont = cached_causale(codcaus, year).tipodoc();
#ifdef NEW_FP