以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 代码问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=194032) |
-- 作者:13775189031 -- 发布时间:2024/11/4 13:14:00 -- 代码问题 请教老师:想实现逻辑列“下料”、“零件机加工”、“成型”,无论勾选任一列,都按照“零部件编号”只生成一行(只要零部件编号相同就只生成一行),要求全部都不勾选时才删除行,其中一列不勾选的话,增加的行不变。下面的代码要怎么改? Select Case e.DataCol.name Case "下料","零件机加工","成型" If e.DataRow("下料") = False OrElse e.DataRow("零件机加工") = False OrElse e.DataRow("成型") = False Then DataTables("下料机加工清单").DeleteFor("零部件编号=\'" & e.DataRow("零部件编号") & "\'") Else Dim ndr1 As DataRow = DataTables("下料机加工清单").Find("零部件编号 = \'" & e.DataRow("零部件编号") & "\'") Dim ndr As Row = Tables("下料机加工清单").AddNew ndr("零部件编号") = e.DataRow("零部件编号") ndr("制单日期") = e.DataRow("制单日期") ndr("生产令号") = e.DataRow("生产令号") ndr("项目名称") = e.DataRow("项目名称") ndr("机组") = e.DataRow("机组") ndr("零部件名称") = e.DataRow("零部件名称") ndr("零部件图号") = e.DataRow("零部件图号") ndr("数量") = e.DataRow("数量") ndr("材质") = e.DataRow("材质") ndr("规格") = e.DataRow("规格") ndr("材料批次") = e.DataRow("材料批次") ndr("零部件标识") = e.DataRow("零部件标识") ndr("下料尺寸") = e.DataRow("下料尺寸") ndr("工序流程") = e.DataRow("工序流程") ndr.Move(0) ndr("_sortkey") = DataTables("下料机加工清单").sqlcompute("min([_sortkey])") - 0.00000001 End If End Select |
-- 作者:有点蓝 -- 发布时间:2024/11/4 13:18:00 -- Dim ndr As DataRow = DataTables("下料机加工清单").Find("零部件编号 = \'" & e.DataRow("零部件编号") & "\'") if ndr is nothing ndr = DataTables("下料机加工清单").AddNew endif ndr("零部件编号") = e.DataRow("零部件编号")
|
-- 作者:13775189031 -- 发布时间:2024/11/4 13:34:00 -- 显示编译错误“move”不是“datarow”的成员 |
-- 作者:有点蓝 -- 发布时间:2024/11/4 13:55:00 -- Dim k As integer= Tables("下料机加工清单").Find("零部件编号 = \'" & e.DataRow("零部件编号") & "\'") Dim ndr As DataRow if k=-1 ndr = Tables("下料机加工清单").AddNew else ndr = Tables("下料机加工清单").rows(k) end if |
-- 作者:13775189031 -- 发布时间:2024/11/4 13:59:00 -- |
-- 作者:有点蓝 -- 发布时间:2024/11/4 14:07:00 -- 改为findrow:http://www.foxtable.com/webhelp/topics/0553.htm |