Foxtable(狐表)用户栏目专家坐堂 → 关联表 新增行出错


  共有7409人关注过本帖树形打印复制链接

主题:关联表 新增行出错

帅哥哟,离线,有人找我吗?
kmzb56
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:528 积分:5034 威望:0 精华:0 注册:2012/4/6 19:31:00
关联表 新增行出错  发帖心情 Post By:2012/11/3 11:54:00 [显示全部帖子]

 关联表新增行时报告:The row doesn't belong to the same DataSet as this relation.  




复制的详细信息 

.NET Framework 版本:2.0.50727.3625
Foxtable 版本:2012.9.29.1
错误所在事件:
详细错误信息:
System.ArgumentException: The row doesn't belong to the same DataSet as this relation.
   at System.Data.DataTable.InsertRow(DataRow row, Int32 proposedID, Int32 pos, Boolean fireEvent)
   at System.Data.DataRowCollection.Add(DataRow row)
   at Foxtable.RowCollection.O11()





 回到顶部
帅哥哟,离线,有人找我吗?
kmzb56
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:528 积分:5034 威望:0 精华:0 注册:2012/4/6 19:31:00
  发帖心情 Post By:2012/11/3 12:27:00 [显示全部帖子]

老大:估计没办法复原这种错误,我也不知从哪里做起例子走,是在我设计的程序里,我做的程序快要完工了,突然发现有这个错误,并且,现在关foxtable也报告这种错误。

 回到顶部
帅哥哟,离线,有人找我吗?
kmzb56
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:528 积分:5034 威望:0 精华:0 注册:2012/4/6 19:31:00
  发帖心情 Post By:2012/11/3 13:14:00 [显示全部帖子]

  有规律,我现在知道是什么引起的,我做三个表,<客户资料表> <成交记录表> <fa piao记录表 >  客户资料表 与后两个表分别关联,关联字段为
        
       关联 客户_fa piao

 

客户资料._Identify ----> fa piao记录表.fa piao序号


关联 客户_成交

 

客户资料._Identify ----> 成交记录表.客户编号


我做了一个窗口,两个表控件,每一个邦定<成交记录表>,第二个绑定<客户资料表.fa piao记录表> 现在是欲定位到成交记录时 能查看相应的客户的fa piao记录。第一个表控件上做了代码


Dim kh As Row =e.Table.Current()

Dim khzh As String=kh("客户名称") 

Dim r As String

    r = Tables("客户资料").find( khzh, 0, 0, False, False, True)

    If r> -1 Then 

    Tables("客户资料").Position=r

   End If

运行出上面代码能实现查看功能,但增加<客户资料表.fa piao记录表>的行会出现上面所说的错误,解除上面代码就不出错,但功能实现不了,这下你应该能分析原因了。


 回到顶部
帅哥哟,离线,有人找我吗?
kmzb56
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:528 积分:5034 威望:0 精华:0 注册:2012/4/6 19:31:00
  发帖心情 Post By:2012/11/3 14:12:00 [显示全部帖子]

我没读懂 "_Identify = " & khzh  而且我试了也不对,不能用,报错,

 回到顶部
帅哥哟,离线,有人找我吗?
kmzb56
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:528 积分:5034 威望:0 精华:0 注册:2012/4/6 19:31:00
  发帖心情 Post By:2012/11/3 14:56:00 [显示全部帖子]

没明白,我的表里没有客户编号这列,并且 _Identify返回的也不是一个字符串值,我没有真正明白你写的代码的意思。你的大概意思我也明白的就是 "_Identify = " & khzh, 这里我不明白,是 "_Identify的列名等于”客户名称“?
[此贴子已经被作者于2012-11-3 14:58:10编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
kmzb56
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:528 积分:5034 威望:0 精华:0 注册:2012/4/6 19:31:00
  发帖心情 Post By:2012/11/3 16:28:00 [显示全部帖子]

试了,按你的方法试了,不行,
Dim kh As Row =e.Table.Current()
Dim khzh As String  =kh("客户编号") 
Dim r As String
    r = Tables("客户资料").FindRow("_Identify = " & khzh , 0, False)
    If r> -1 Then 
    Tables("客户资料").Position=r
    End If

我的理解这里就不能定义为"string"类型变量,应该是"Integer"变量,你说的用客户编号我是明白了,但不明白为啥要:用FindRow("_Identify = " & khzh 这个能怎么等?还是字符连接?

 回到顶部