以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关联表 新增行出错  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=25197)

--  作者:kmzb56
--  发布时间: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()





--  作者:狐狸爸爸
--  发布时间:2012/11/3 12:04:00
--  
做个例子发上来啊,我对这个问题很感兴趣。
--  作者:kmzb56
--  发布时间:2012/11/3 12:27:00
--  
老大:估计没办法复原这种错误,我也不知从哪里做起例子走,是在我设计的程序里,我做的程序快要完工了,突然发现有这个错误,并且,现在关foxtable也报告这种错误。
--  作者:狐狸爸爸
--  发布时间:2012/11/3 12:31:00
--  

没有规律?

如果有确定的规律,将文件上传,我们帮你检查一下。


--  作者:kmzb56
--  发布时间:2012/11/3 13:14:00
--  
  有规律,我现在知道是什么引起的,我做三个表,<客户资料表> <成交记录表> <发票记录表 >  客户资料表 与后两个表分别关联,关联字段为
        
       关联 客户_发票

 

客户资料._Identify ----> 发票记录表.发票序号


关联 客户_成交

 

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


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


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

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


--  作者:lin_hailun
--  发布时间:2012/11/3 13:53:00
--  
 经测试,这样写没有错。

Dim kh As Row =e.Table.Current()
Dim khzh As String=kh("第一列")
Dim r As String

r = Tables("表A").FindRow("_Identify = " & khzh, 0, False)

If r> -1 Then
    Tables("表A").Position=r
End If

--  作者:kmzb56
--  发布时间:2012/11/3 14:12:00
--  
我没读懂 "_Identify = " & khzh  而且我试了也不对,不能用,报错,
--  作者:lin_hailun
--  发布时间:2012/11/3 14:27:00
--  
 第一列 改成 客户编号

 表名改一下

------------------------------

 再试试

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

--  作者:lin_hailun
--  发布时间:2012/11/3 15:00:00
--  
 呃,你第一个表控件绑定的不是 成交记录表 ?
 
 成交记录表没有 客户编号 ?

 你去查 客户名称 有什么用?你绑定的是 _Identify 和 客户编号。