以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  增加行  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=135038)

--  作者:13775189031
--  发布时间:2019/5/15 16:38:00
--  增加行
请教:多行数据生成一行后,生成的“数量”列为原数量之和,要怎么改

如:数量列
        5
        1
        2
生成一行后,数量为8


Select Case e.DataCol.name
    Case "焊材领用_多个零件"
        If e.DataRow("焊材领用_多个零件") = True AndAlso e.DataRow("焊接要求") = "首次焊接" Then
            Dim ndr As DataRow = DataTables("焊材领用记录").Find("零部件编号 = \'" & e.DataRow("零部件编号") & "\' And 工艺卡号 = \'" & e.DataRow("工艺卡号") & "\' And 焊接方法 = \'" & e.DataRow("焊接方法") & "\' And 焊材名称 = \'" & e.DataRow("焊材名称") & "\' And 焊材规格 = \'" & e.DataRow("焊材规格") & "\' And 焊材型号 = \'" & e.DataRow("焊材型号")  & "\' And 焊材领用_日期 = \'" & e.DataRow("领用日期") & "\'")
            If ndr Is Nothing Then
                Dim nr As Row = Tables("焊材领用记录").AddNew
                nr.Move(0)
                ndr = nr.DataRow
            End If
            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("焊材领用_多个零件") = True
            ndr("焊材领用_日期") = Date.today
            ndr("焊材领用_时间") = DateTime.Now
            ndr("焊接要求") = "首次焊接"
            ndr("焊材名称") = e.DataRow("焊材名称")
            ndr("焊材规格") = e.DataRow("焊材规格")
            ndr("焊材型号") = e.DataRow("焊材型号")
            ndr("炉批号") = e.DataRow("焊材炉批号")
        End If
End Select


--  作者:有点甜
--  发布时间:2019/5/15 17:06:00
--  

这个意思?

 

ndr("数量") += e.DataRow("数量")


--  作者:13775189031
--  发布时间:2019/5/15 17:13:00
--  
试了一下,我三行的数量分别都是1,生成的行显示的数量是4?应该是3呀!
[此贴子已经被作者于2019/5/15 17:37:06编辑过]

--  作者:13775189031
--  发布时间:2019/5/16 9:56:00
--  
试了一下,我三行的数量分别都是1,生成的行显示的数量是4?应该是3呀!什么问题?
--  作者:有点甜
--  发布时间:2019/5/16 10:06:00
--  
以下是引用13775189031在2019/5/16 9:56:00的发言:
试了一下,我三行的数量分别都是1,生成的行显示的数量是4?应该是3呀!什么问题?

 

删除数据后重新测试即可。


--  作者:13775189031
--  发布时间:2019/5/16 10:35:00
--  
生成的数据全部都删了
试了一下,数量列
              1
              2 
              3
若零部件编号...领用日期等条件相符,则生成一行,生成行数量列应为6,但测试下来是9

--  作者:有点甜
--  发布时间:2019/5/16 12:59:00
--  
上传具体实例测试