-- 作者:yaojun
-- 发布时间:2015/5/31 13:30:00
-- 这是什么意思
我有一成品管理主表,成品明细子表,新增一新成品时,子表新增或者是删除行时显示
.NET Framework 版本:2.0.50727.3655 Foxtable 版本:2014.11.11.1 错误所在事件:表,成品明细,DataColChanged 详细错误信息: Exception has been thrown by the target of an invocation. Column \'成品库存\' does not belong to table 成品明细. 请问这是什么意思啊
我的成品管理If e.DataCol.name = "产品名称" If e.DataRow.IsNull("产品名称") = False Dim dr As DataRow = DataTables("成品明细").Find("产品名称 = \'" &e.DataRow("产品名称") & "\'","_Identify Desc") If dr IsNot Nothing Then e.DataRow("成品库存") = dr("成品库存") + 0 Else e.DataRow("成品库存") = Nothing End If Else e.DataRow("成品库存") = Nothing End If End If
成品明细代码是
Select Case e.DataCol.Name Case "产品名称","成品入库","成品出库" Dim dr As DataRow Dim mr As DataRow = e.DataRow Dim drs As List(of DataRow) dr = e.DataTable.Find("[_SortKey] < " & mr("_SortKey") & " And [产品名称] = \'" & mr("产品名称") & "\'", "[_SortKey] Desc") If dr Is Nothing Then \'如果没有上一行,说明本行就是同产品的第一行 mr("成品库存") = mr("成品入库") - mr("成品出库") dr = mr End If drs = e.DataTable.Select("[_SortKey] >= " & dr("_SortKey") & " And [产品名称] = \'" & dr("产品名称") & "\'") For i As Integer = 1 To drs.Count - 1 \'重算余下行的余额 drs(i)("成品库存") = drs(i-1)("成品库存") + drs(i)("成品入库") - drs(i)("成品出库") Next End Select
If e.DataCol.name = "成品库存" Dim dr1 As DataRow = DataTables("成品管理").Find("产品名称 = \'" &e.DataRow("产品名称") & "\'") DataTables("成品管理").DataCols("产品名称").RaiseDataColChanged(dr1) End If
|