以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 请教产品耗料计算 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=169796) |
||||||||
-- 作者:xusuyang -- 发布时间:2021/6/30 21:19:00 -- 请教产品耗料计算
1、已知"导尿包产品配置表“给出了生产一个“甲型”导尿包需要从原料库耗出导尿管1只、引流袋1只、导管夹1只等;生产一个“乙型”导尿包需要从原料库耗出导尿管2只、引流袋2只、导管夹2只等;生产一个“丙型”导尿包需要从原料库耗出导尿管3只、引流袋3只、导管夹3只等; 2、当生产开单员在"导尿包产品配件耗料表“中填入某一天的:A、“生产数量”为100,“产品型号”为“甲型”后,如何用代码实现"导尿包产品配件耗料表“中导尿管、引流袋、导管夹等的类型、规格自动填入,导尿管、引流袋、导管夹等的数量各100自动计算填入?B、“生产数量”为200,“产品型号”为“乙型”后,如何用代码实现"导尿包产品配件耗料表“中导尿管、引流袋、导管夹等的类型、规格自动填入,导尿管、引流袋、导管夹等的数量各400自动计算填入?C、“生产数量”为150,“产品型号”为“丙型”后,如何用代码实现"导尿包产品配件耗料表“中导尿管、引流袋、导管夹等的类型、规格自动填入,导尿管、引流袋、导管夹等的数量各450自动计算填入?
|
||||||||
-- 作者:有点蓝 -- 发布时间:2021/7/1 10:34:00 -- "导尿包产品配件耗料表“datacolchanged事件 Select Case e.DataCol.Name Case "产品型号","生产数量" Dim dr As DataRow = e.DataRow For Each dr As DataRow In DataTables("导尿包产品配置表").Select(e.DataRow("产品型号") & "_数量 <> 0") e.DataRow("配件名称_" & dr("配件名称") & "_类型") = dr("类型") e.DataRow("配件名称_" & dr("配件名称") & "_数量") = dr(e.DataRow("产品型号") & "_数量") * e.DataRow("生产数量") Next End Select |
||||||||
-- 作者:xusuyang -- 发布时间:2021/7/1 23:05:00 -- 在"导尿包产品配件耗料表“只有在datacolchanged事件中有如下代码,在其他再地方无任何代码了 Select Case e.DataCol.Name Case "产品型号","生产数量" If
e.DataRow.IsNull("产品型号") Then
For Each dc As DataCol In e.DataTable.DataCols
If dc.Name Like "配件名称_*" Then
e.DataRow(dc.Name) = Nothing
End If
Next Else
For Each dr As DataRow In DataTables("导尿包产品配置表").Select("数量_" & e.DataRow("产品型号") & " <> 0 and 配件名称 Is not null")
e.DataRow("配件名称_" & dr("配件名称") & "_类型") = dr("类型")
e.DataRow("配件名称_" & dr("配件名称") & "_数量") = dr("数量_" & e.DataRow("产品型号")) * e.DataRow("生产数量")
Next End If End Select |