以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=13077)

--  作者:wangliang
--  发布时间:2011/9/27 10:07:00
--  [求助]

我想实现当表(“兴业银行交易明细”)(以下称表1)中列(“客户”)的值等于表("目录表“)(以下称表2)的列(”客户“)时,

表一的(“外勤”)和(“内勤”)列等于表2的(“外勤”)列和(“内勤”)列,下面的代码我写在datacolchanged 事件中,错在哪里

    Dim A As Row= Tables("兴业银行交易明细查询").current
Dim n As String = A("客户")
Dim b As DataRow=DataTables("目录表").find("客户 = n")
 If b IsNot Nothing Then
   If  A("客户")=b("客户") Then
  A("外勤")=b("外勤")
  A("内勤")=b("内勤")
   End If
End If


--  作者:狐狸爸爸
--  发布时间:2011/9/27 11:03:00
--  

很多错误

1、datacolchanged的代码中不应该出现Current,Current表示选定的行,和触发事件的行是两回事。

2、表达式的合成也有问题。

 

正常的代码估计是:

 

Dim A As DataRow = e.DataRow
Dim n As String = A("客户")
Dim b As DataRow=DataTables("目录表").find("客户 =  \'" &  n & "\'")
If b IsNot Nothing Then
    A("外勤")=b("外勤")
    A("内勤")=b("内勤")
End If

 

建议您看看这个:

http://www.foxtable.com/help/topics/1284.htm