明白了 谢谢,但问题又来了:Dim dt4 As DataTable = DataTables("领用总表") '产品在各个科室的占用比例在这个DataTables("领用总表")表中
Dim dt2 As DataTable = DataTables("计划分派手术室")
Dim dr1 As DataRow = e.DataRow
Dim flt As String = "字典编码 = '" & dr1("字典编码") & "'"
Dim dr2 As DataRow = dt2.Find(flt) '【这条语句不太懂,刚开始的时候表DataTables("计划分派手术室")是空的,即没有数据,如果没有数据,这条语句应该有问题吧】
If e.DataCol.Name = "逻辑列" AndAlso e.DataRow("逻辑列") = True Then '【在这个代码的表中(采购计划表)加入逻辑列,只要选中,则把选中的数据按下面的条件复制到表DataTables("计划分派手术室")中】
Dim fdr As DataRow = dt4.Find(flt)
If fdr("字典编码")<>"" Then '如果字典编码在占比表中找到
Dim dr As DataRow = DataTables("计划分派手术室").AddNew
For Each dc As DataCol In DataTables("计划分派手术室").DataCols
dr(dc.Name) = e.DataRow(dc.Name)
Next
If fdr IsNot Nothing Then
dr2("数量") = fdr("手术室") * dr1("数量")
Else
dr2("数量")=0
End If
End If
End If
但运行代码的时候提示:
.NET Framework 版本:2.0.50727.5466
Foxtable 版本:2016.7.29.1
错误所在事件:表,采购计划表,DataColChanged
详细错误信息:
调用的目标发生了异常。
未将对象引用设置到对象的实例。
请老师有空帮指点一下,再次感谢!
[此贴子已经被作者于2017/3/24 8:11:43编辑过]