老师,下面的代码表示:在贷款汇总表的DataColChanged的代码,表的“汇总”列是逻辑列,当点击“汇总”列时,如果在收支汇总表找到相同的合同或协议号时,提示已存在相同的合同或协议号,否则,将本行内容复制到收支汇总表。贷款汇总表的“合同或协议号”对应收支汇总表的“记录编号”。执行后提示:
.NET Framework 版本:2.0.50727.3655
Foxtable 版本:2014.11.11.1
错误所在事件:表,贷款信息总表, DataColChanged
详细错误信息:
Exception has been thrown by the target of an invocation.
Cannot find column [合同或协议号].
都反复检查了,列名没有错。
Dim dn As DataRow = DataTables("收支汇总表").Find("合同或协议号 = '" & e.DataRow("合同或协议号") & "'")
If dn IsNot Nothing Then ’如果找到相同的合同或协议号
MessageBox.Show("收支汇总表已经存在相同合同或协议号的行!")
Else
If e.DataCol.Name = "汇总" AndAlso e.DataRow("汇总") = True Then
Dim nma() As String = { "贷款主体","贷款银行","合同或协议名称","合同或协议号","贷款项目名称","FKJE","贷款额度" } 'A表数据来源列
Dim nmb() As String = { "主体单位","款项来源单位","款项来源名称或类别","记录编号","贷款项目名称","到位资金","贷款或申请额度" } 'B表数据接收列
Dim dr As DataRow = DataTables("收支汇总表").AddNew
For i As Integer = 0 To nma.Length - 1
dr(nmb(i)) = e.DataRow(nma(i))
Next
End If
End If
我又把表B的记录编号改为合同或协议号了,不再提示错误了,但代码不起作用,收支汇总表没有任合的合同或协议号记录,汇总列的状态还是TRUE,不变化
[此贴子已经被作者于2015/2/13 15:09:25编辑过]