Oprava konverzních tabulek pro měrné jednotky po importu číselníku materiálu |
Top Previous Next |
Seznam témat:
Z důvodu, ze se objevily případy, kdy se tabulka skladových položek importovala ručně ("na koleně") a přitom se nevyplnila tabulka konverzí zakladní MJ (omkonvmj) správným způsobem, t.j. nezaložily se záznamy pro přepočet základní MJ na sama sebe, což je nutný předpoklad pro správné chování se Vision ERP, je toto potřeba opravit pres ISQL přiloženým SQL skriptem. alter trigger DBA.omkonvmj_taiu on DBA.omkonvmj for insert,update as begin declare @fullname char(65) declare @mat MATERIAL_ declare curs no scroll cursor for select material_id from inserted if current remote user is not null return /* STOP pro replikaci */ if 1 = (select value from DBA.globals where name = 'od_import') return /* STOP pro import */ execute DBA.ggetfullnameex @fullname open curs while 1 = 1 begin fetch next curs into @mat if @@sqlstatus = 1 begin execute DBA.gsqlerror 99999,sqlcode return end else if @@sqlstatus = 2 break else if sqlstate <> 0 break update omater set zmenil = @fullname,zmeneno = current timestamp where id_material = @mat end close curs end go update dba.globals set value = 1 where name = 'od_import' go insert into DBA.omkonvmj (material_id, mjkonv_id, koeficient) select id_material, mj_id, 1 from omater where not exists (select material_id from omkonvmj where id_material = material_id and mj_id = mjkonv_id) go update dba.globals set value = 0 where name = 'od_import'
Tento postup je mozne pouzit jenom docasne pro verze 53 a mensi, protoze se zde "natvrdo" opravuje trigger... Od verze 54 je tato funkce soucasti aplikace (Nastroje - Skladove polozky - Oprava konverzi MJ), pricemz vyuziva jenom zvyraznenou cast SQL skriptu.
Související témata |