最近在做一个物流系统,其中有个“商品库存”表,关联一个“商品入库”表,(采用二级编码关联)另外有一个“商品出库”表(数据来源是导入外部数据),“商品库存”表里面的库存数量等于:
Select Case e.DataCol.name
Case "二级编码","初始数据"
e.DataRow("库存数量") = e.DataRow("初始数据")
If e.DataRow.IsNull("二级编码") = False Then
e.DataRow("库存数量") = e.DataRow("初始数据") + DataTables("商品入库").Compute("sum(入库数量)", "二级编码 = '" &e.DataRow("二级编码") & "'") - DataTables("商品出库").Compute("sum(商品数量)", "二级编码 = '" &e.DataRow("二级编码") & "'")
End If
End Select
问题是现在“商品出库”表里面的二级编码有些是包含其他二级编码的:比如二级编码A001,A002 ,A003,A004,A005,其中A005由A001+A002组成,求当“商品出库”表里的行有A001,A002,A003,A004,A005行的时候,“商品库存”表里面对应的A001,A002,A003,A004,A005商品怎么减去数量。
我的思路是:1,“商品库存”表里面没有二级编码A005,当“商品出库”表里面出现A005的时候,“商品出库”表里面自动增加成A001,A002两行;出库数量=A005的出库数量,请求代码怎样写,请求老师指教,或许是更好的方法。
其实就是仓库中常用到的BOM的问题,求救。
[此贴子已经被作者于2016/3/20 19:27:52编辑过]