标准库转餐饮库
物料数据批量修复à修复餐饮表,
注意:支持餐饮版本7.7及以上
1、 确保餐饮表的数据为空;
delete from T_DEBD_MaterialDining;
2、 查询餐饮表的种子数大小
DBCC CHECKIDENT('Z_DEBD_MaterialDining',NORESEED);
得到的结果给带入第3步;如上例子得出173419,将该数字带入第3步
3、 批量插入餐饮表预置数据(注意要将第2步的结果替换红色字体部分)
insert into T_DEBD_MaterialDining (FMATERIALID,FENTRYID,FCOSTPROPERTY,FGoodsUnitID)
select a.FMATERIALID,(第2步结果数字 + ROW_NUMBER() OVER(ORDER BY a.FMATERIALID)) AS rownum,1,FBASEUNITID from T_BD_MATERIAL a
INNER JOIN t_BD_MaterialBase b ON a.FMATERIALID=b.FMATERIALID;
4、 批量修复餐饮表预置数据
update a set FRATE=100.00,FCOSTPROPERTY='1',FISDELIVERY='1',
FBARCODEUNITID = FSTOREUNITID,FGOODSUNITID=FSTOREUNITID,FFIRSTUNITID=FSTOREUNITID,FRACKSTATUS='A',FCANORDER='1'
from T_DEBD_MaterialDining a
INNER JOIN t_BD_MaterialStock b ON a.FMATERIALID=b.FMATERIALID where a.FENTRYID is not null;
5、 查询出插入结果的最大值
select MAX(FENTRYID) from T_DEBD_MaterialDining;
得到的结果给带入第6步;
6、 更新餐饮表的中子数(注意要将第5步的结果替换红色字体部分)
DBCC CHECKIDENT('Z_DEBD_MaterialDining',RESEED, 第5步结果数字);
7、 修复base表餐饮默认数据
update t_BD_MaterialBase set FISUNIFICATIONCD='1';
推荐阅读