Foxtable(狐表)用户栏目专家坐堂 → 动态生成关联表问题


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

主题:动态生成关联表问题

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


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
动态生成关联表问题  发帖心情 Post By:2016/3/28 19:41:00 [只看该作者]

Dim strTableName As String = "订单_主表"
Dim drs As List(Of DataRow)
drs = DataTables("表关联").Select("[主表] = '" & strTableName & "'")
For Each dr As DataRow In drs
    Dim Col1a As String() = dr("主表字段").split(",")     ‘处理多关联列
    Dim Col2a As String() = dr("明细表字段").split(",")   ‘处理多关联列
    Dim DataCols1() As DataCol   ‘处理多关联列
    Dim DataCols2() As DataCol   ‘处理多关联列
    Dim glname  As String = dr("关联名称")
    Dim mxtablename As String = dr("明细表")
       For i As Integer = 0 To Col1a.Length - 1
        DataCols1(i) = DataTables(strTableName).DataCols(Col1a(i))   ‘处理多关联列
        DataCols2(i) = DataTables(mxtablename).DataCols(Col2a(i))    ‘处理多关联列
    Next
    Relations.Add(glname, DataCols1, DataCols2)
Next 

请教红色部份代码怎么也能不过

提示:

---------------------------
版本:2015.12.22.1
---------------------------
代码执行出错,错误信息:



System.NullReferenceException: 未将对象引用设置到对象的实例。

   在 UserCode.Test()
---------------------------
确定   
---------------------------



代码改成

Dim strTableName As String = "订单_主表"
Dim drs As List(Of DataRow)
drs = DataTables("表关联").Select("[主表] = '" & strTableName & "'")
For Each dr As DataRow In drs
    Dim Col1a As String() = dr("主表字段").split(",")
    Dim Col2a As String() = dr("明细表字段").split(",")
    Dim js As Integer = Col1a.Length
    Dim DataCols1(js) As DataCol
    Dim DataCols2(js) As DataCol
    Dim glname  As String = dr("关联名称")
    Dim mxtablename As String = dr("明细表")
    'Functions.Execute("HuaDataTableJg",mxtablename)
msgbox(1)
    For i As Integer = 0 To js - 1
        DataCols1(i) = DataTables(strTableName).DataCols(Col1a(i))
        DataCols2(i) = DataTables(mxtablename).DataCols(Col2a(i))
    Next
msgbox(2)
    Relations.Add(glname,DataCols1,DataCols2,True,1)
Next '


则这一句 增加关联表通不过
[此贴子已经被作者于2016/3/28 19:51:45编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/3/28 19:51:00 [只看该作者]

Dim DataCols1(Col1a.length-1) As DataCol   Dim DataCols2(Col2a.length-1) As DataCol   ‘处理多关联列
[此贴子已经被作者于2016/3/28 19:52:26编辑过]

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


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
  发帖心情 Post By:2016/3/28 19:53:00 [只看该作者]

报错

---------------------------
版本:2015.12.22.1
---------------------------
代码执行出错,错误信息:



System.NullReferenceException: 未将对象引用设置到对象的实例。

   在 Foxtable.DataRelationCollection.Add(String RelationName, DataCol[] ParentCols, DataCol[] ChildCols, Boolean Visible, RelationPathEnum RelationTable)

   在 UserCode.Test()
---------------------------
确定   
---------------------------


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


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
  发帖心情 Post By:2016/3/28 19:58:00 [只看该作者]

好了  谢谢


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/3/28 19:58:00 [只看该作者]

    Dim DataCols1(js-1) As DataCol
    Dim DataCols2(js-1) As DataCol

 回到顶部