老师,用逻辑列自动复制数据,以前没问题,现在出现以下错误提示,代码写在表B中,表A是父表,表B是子表。代码执行后表A
新增了行,但是是空行。请分析一下原因。谢谢!
.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2015.12.22.1
错误所在事件:表,门诊疫苗药品入库表,DataColChanged
详细错误信息:
调用的目标发生了异常。
此行已从表中移除并且没有任何数据。BeginEdit() 将允许在此行中创建新数据
If e.DataCol.Name = "确认入库" Then
If e.DataRow("确认入库") = True Then
Dim nma() As String = {"药品名称","药品生产厂家","药品批号","药品有效期","种类","规格","单价","剂型","单位","销售单价","确认入库"}
Dim nmb() As String = {"药品名称","药品生产厂家","药品批号","药品有效期","种类","规格","单价","剂型","单位","销售_单价","确认入库"}
Dim dh As DataRow = DataTables("表A").SQLFind("[药品名称] = '" & e.DataRow("药品名称") & "'and [药品生产厂家] = '" & e.DataRow("药品生产厂家") & "' And [种类] = '" & e.DataRow("种类") & "' And [规格] = '" & e.DataRow("规格") & "' and [剂型] = '" & e.DataRow("剂型") & "'and [单价] = '" & e.DataRow("单价") & "'and [销售_单价] = '" & e.DataRow("销售单价") & "' and [单位] = '" & e.DataRow("单位") & "'and [药品批号] = '" & e.DataRow("药品批号") & "'and [药品有效期] = '" & e.DataRow("药品有效期") & "'")
If dh Is Nothing Then
dh = DataTables("表A").AddNew()
Else
e.Cancel = True
End If
For i As Integer = 0 To nma.Length - 1
dh(nmb(i)) = e.DataRow(nma(i))
Next
dh.save()
End If
End If
[此贴子已经被作者于2016/2/28 17:15:48编辑过]