Select Case e.DataCol.name
Case "生产调度令号","客户单位","姓名","类别","财产名称","型号规格","单位","是否异常"
Dim dr As DataRow
If e.DataCol.name = "生产调度令号" Then
dr = DataTables("电装顾客财产异常处理").Find("生产调度令号 = '" & e.OldValue & "' And _Identify = " & e.DataRow("_Identify"))
If dr IsNot Nothing Then
dr("生产调度令号") = e.DataRow("生产调度令号")
dr("_Identify") = e.DataRow("_Identify")
End If
End If
If dr Is Nothing Then
dr = DataTables("电装顾客财产异常处理").Find("生产调度令号 = '" & e.DataRow("生产调度令号") & "' And _Identify = " & e.DataRow("_Identify"))
End If
If e.DataRow("是否异常") = "异常" Then
If dr Is Nothing Then
dr = DataTables("电装顾客财产异常处理").AddNew()
End If
dr("生产调度令号") = e.DataRow("生产调度令号")
dr("_Identify") = e.DataRow("_Identify")
dr("客户单位") = e.DataRow("客户单位")
dr("姓名") = e.DataRow("姓名")
dr("类别") = e.DataRow("类别")
dr("财产名称") = e.DataRow("财产名称")
dr("型号规格") = e.DataRow("型号规格")
dr("单位") = e.DataRow("单位")
Else
If dr IsNot Nothing Then
dr.Delete
End If
End If
End Select
代码如上可以实现相同生产调度令号可以生成两行,但有一个问题就是在修改其他的如 客户单位 类别 等的时候,顾客财产异常处理依旧会新增,我改了一下,还是不行