以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]关于动态建立关联的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=27287) |
-- 作者:关键下一秒 -- 发布时间:2012/12/27 16:10:00 -- [求助]关于动态建立关联的问题
Dim t As Table = Tables("关联名称档")
For Each r As Row In t.Rows If r IsNot Nothing Then Dim pt As Boolean =Tables.Contains(r("父表名称")) Dim ct As Boolean =Tables.Contains(r("子表名称")) If pt=True And ct=True Then Dim t1 As DataTable = DataTables(r("父表名称")) Dim t2 As DataTable = DataTables(r("子表名称")) If Relations.Contains(r("关联名称"))=True Then messagebox.show("名称为:[" & r("关联名称") & "]的关联已经存在,不能重复建立!") Else Dim pc() As String = r("父表关联字段").split(",") Dim cc() As String = r("子表关联字段").split(",") Dim pcs(pc.length) As DataCol Dim ccs(cc.length) As DataCol If pc.length>0 Then For i As Integer =0 To pc.length-1 pcs(i)=t1.datacols(pc(i)) ccs(i)=t2.datacols(cc(i)) Next End If Relations.add(r("关联名称"),pcs,ccs) End If End If End If Next 此主题相关图片如下:2.jpg |
-- 作者:lin_hailun -- 发布时间:2012/12/27 16:39:00 -- 看着头晕,你先定位一下在哪里出错。 http://www.foxtable.com/help/topics/1485.htm |
-- 作者:关键下一秒 -- 发布时间:2012/12/27 17:03:00 -- lin总都看头晕啊,我已经晕过去一下午了,我一行一行调试了,错误出在 Relations.add(r("关联名称"),pcs,ccs) 句里。就是找不出原因。 |
-- 作者:lin_hailun -- 发布时间:2012/12/27 17:21:00 -- 试试这样。看看可不可以。 Dim pcs(pc.length - 1) As DataCol Dim ccs(cc.length - 1) As DataCol |
-- 作者:关键下一秒 -- 发布时间:2012/12/27 17:30:00 -- 我刚找到问题,林总真是牛人啊!!!! |