Foxtable(狐表)用户栏目专家坐堂 → [求助]关于“隐藏”的几个问题,求大神帮忙!


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

主题:[求助]关于“隐藏”的几个问题,求大神帮忙!

美女呀,离线,留言给我吧!
龙潭春早
  51楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:676 积分:4895 威望:0 精华:0 注册:2018/3/22 16:05:00
  发帖心情 Post By:2018/7/30 13:24:00 [只看该作者]

嗯 之前试过,不是这个原因

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/30 15:02:00 [只看该作者]

以下是引用龙潭春早在2018/7/30 13:24:00的发言:
嗯 之前试过,不是这个原因

 

实例发上来测试说明。


 回到顶部
美女呀,离线,留言给我吧!
龙潭春早
  53楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:676 积分:4895 威望:0 精华:0 注册:2018/3/22 16:05:00
  发帖心情 Post By:2018/7/31 15:31:00 [只看该作者]

请教:

下面的代码对吗?登录的时候,怎么还是在加载这些表呢?好像没起作用:

'对非开发者,禁止加载表以下多个表

If User.Type <> UserTypeEnum.Developer Then
    Select Case e.DataTableName
        Case "签单项目","订单表","采购订单","产品价格","Users","工资表"            
            e.Cancel = True '那么不允许加载            
    End Select
End If

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


加好友 发短信
等级:超级版主 帖子:106298 积分:540619 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/31 15:36:00 [只看该作者]

代码在什么事件里的?

 回到顶部
美女呀,离线,留言给我吧!
龙潭春早
  55楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:676 积分:4895 威望:0 精华:0 注册:2018/3/22 16:05:00
  发帖心情 Post By:2018/7/31 15:43:00 [只看该作者]

这个:BeforeLoadOuterTable


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


加好友 发短信
等级:超级版主 帖子:106298 积分:540619 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/31 15:47:00 [只看该作者]

先认真看看帮助:http://www.foxtable.com/webhelp/scr/0670.htm

If e.User.Type <> UserTypeEnum.Developer Then

 回到顶部
美女呀,离线,留言给我吧!
龙潭春早
  57楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:676 积分:4895 威望:0 精华:0 注册:2018/3/22 16:05:00
  发帖心情 Post By:2018/8/2 20:35:00 [只看该作者]


嗯 这段帮助之前研究过。

 

所以才想到加载的时候,在 BeforeLoadOuterTable 事件中,对非开发人员禁止加载某些表,以提高其打开项目的速度。

 

那么,问题来了:

 

      BeforeLoadOuterTable LoadUserSetting 有冲突吗?

 

一、操作:

 

       蓝老师提示的 If e.User.Type <> UserTypeEnum.Developer Then 肯定是对的,在帮助里有特别的强调。

 

    所以,BeforeLoadOuterTable 中的代码改成了:

'对非开发者,禁止加载表以下多个表

If e.User.Type <> UserTypeEnum.Developer Then

    Select Case e.DataTableName

        Case "签单项目","订单表","采购订单","产品价格","Users","工资表

            e.Cancel = True '那么不允许加载            

    End Select

End If 

同时,保留了之前在 LoadUserSetting 事件中的设置:

 

  —— 因为从开发者切换到非开发者的时候,也需要这样的设置。 

'对非开发者,隐藏多个表

If user.Type <> UserTypeEnum.Developer Then

    Tables("签单项目").Visible = False

    Tables("订单表").Visible = False

    Tables("采购订单").Visible = False

    Tables("产品价格").Visible = False

    Tables("Users").Visible = False

    Tables("工资表").Visible = False

End If

[此贴子已经被作者于2018/8/2 20:36:18编辑过]

 回到顶部
美女呀,离线,留言给我吧!
龙潭春早
  58楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:676 积分:4895 威望:0 精华:0 注册:2018/3/22 16:05:00
  发帖心情 Post By:2018/8/2 20:35:00 [只看该作者]

二、问题: 
      自从设置了BeforeLoadOuterTable中的上述代码,就出现了下面这些莫名其妙的问题:
      问题一:FT系统基本上处于半死机状态 
      前天添加上述BeforeLoadOuterTable代码以后,至昨天一整天,FT系统基本上处于半死机状态。
 
      就是点击一个功能(表、单元格、菜单、按钮、……),系统就会死机几分钟,然后能够使用也就十几秒,如此循环往复,以至于昨天一整天基本上什么也做不了。
 
      —— 但是,其它软件工作都正常:ExcelWord、……
 
      原来想可能过一段时间就会好了,却事与愿违。不过也实在想不出这些代码有什么不对的。
 
      今天下班后,实在忍不了了,干脆把 BeforeLoadOuterTable 中的代码都删了。
 
      情况稍好,但也还是经常的半死机状态,操作几下,就要停个一分钟、两分钟的! 
      大神们有什么好的解决办法吗? 
      问题二:表标题的位置错乱
       为省事儿和赶进度,在表的左侧用表标题来作为导航。 
      添加上述BeforeLoadOuterTable代码之前,表的顺序位置都正常;添加以后,不论是用开发者、还是用一般用户的身份打开FT,表的位置都经常乱套!

 

      这个也有影响吗?

[此贴子已经被作者于2018/8/2 20:37:10编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/2 20:51:00 [只看该作者]

1、系统死机问题,应该和 BeforeLoadOuterTable 代码无关,肯定是你其它地方有耗时的代码;

 

2、还是做个实例发上来测试吧。


 回到顶部
美女呀,离线,留言给我吧!
龙潭春早
  60楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:676 积分:4895 威望:0 精华:0 注册:2018/3/22 16:05:00
  发帖心情 Post By:2018/8/2 20:57:00 [只看该作者]

怎么做实例?

 回到顶部
总数 90 上一页 1 2 3 4 5 6 7 8 9 下一页