Foxtable(狐表)用户栏目专家坐堂 → 记录窗口如何自动显示?


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

主题:记录窗口如何自动显示?

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


加好友 发短信
等级:四尾狐 帖子:976 积分:8527 威望:0 精华:0 注册:2012/2/9 16:35:00
记录窗口如何自动显示?  发帖心情 Post By:2012/12/28 17:11:00 [只看该作者]

各位老师,

 

现在系统内置的记录窗口每个表或关联表要显示记录窗口时都要去点配置栏那个状态按钮,能否实现,

 

当记录窗口按钮按下时,切换每个表时自动显示,如果只有主表则显示主表的记录窗口,如果主窗口中有主表及关联表则自动显示它们的记录窗口,主表在上,关联表在下,

 

当记录窗口按钮取消时,则切换表时所有的记录窗口都不用显示。

 

 

 


图片点击可在新窗口打开查看此主题相关图片如下:360截图20121228170854914.jpg
图片点击可在新窗口打开查看

实现这样的功能,配置栏上那个记录窗口的代码要如何修改才可以?

 

谢谢!


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/28 17:29:00 [只看该作者]

 说下思路吧,代码楼主自己写一下。

 根据maintable,查找关系,查询maintable的子表,然后OpenRecordGrid

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


加好友 发短信
等级:四尾狐 帖子:976 积分:8527 威望:0 精华:0 注册:2012/2/9 16:35:00
  发帖心情 Post By:2012/12/28 21:15:00 [只看该作者]

思路是有了,在项目的maintablechanged事件中用如下代码

 

For Each re As Relation In Relations
        If MainTable.Name = re.ParentTable.Name Then  
            Tables(Re.ChildTable.Name).OpenRecordGrid()
            Tables(MainTable.Name).OpenRecordGrid()
        Else
           Tables(MainTable.Name).OpenRecordGrid()
        End If
     Exit For
    Next

但经色的代码只能得到主表的子表,比如:主表是“订单”,但其子表是“订单明细”

得不到关联表,即要的是“订单.订单明细”请问这个关联表要怎么得到?



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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/28 21:51:00 [只看该作者]

 方法一:获得RelationPath值,如果不是none,就用父表和子表组合成一个表名。

      当然,如果子表还有子表的话,还要再查下一个表名 xx.xxx.xxx (复杂的话,要写成一个递归)

 方法二:也就是简单的方法,遍历Tables,搜索以 订单. 开头的表,然后openrecordgrid

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


加好友 发短信
等级:四尾狐 帖子:976 积分:8527 威望:0 精华:0 注册:2012/2/9 16:35:00
  发帖心情 Post By:2012/12/29 8:37:00 [只看该作者]

谢谢林老师!


 回到顶部