Foxtable(狐表)用户栏目专家坐堂 → 关于项目打开后加载数据的问题?


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

主题:关于项目打开后加载数据的问题?

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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/5/1 8:32:00 [显示全部帖子]

按钮代码:

Forms("加载提示").Open

Forms("加载提示").TimerEnabled = True

Forms("加载提示").TimerInterval = 1000

 

 

Forms("加载提示"),窗口TimerTick代码:

Select Case User.Group
    Case "总部"
        CustomFilter = "1 = 1"
    Case Else
        Select Case User.Roles
            Case "区域主管"
                CustomFilter = "分区 = '"& User.Group &"'"
            Case "专卖店店长"
                CustomFilter = "分区 = '"& User.Group &"' And 客户编码 = '"& User.Name &"'"
        End Select
End Select
For Each s As String In "企业信息|人员|文具明细|大数据|产品Vlookup|经销商信息|专卖店签约|个案申请|文件管理|订单|专卖店目标|目标|行政区域|专卖店人员|专卖店人员目标|专卖店零售额".Split("|")
    e.Form.Controls("Label1").Text = "正在加载【" & s & "】表...请稍候"
    DataTables(s).LoadFilter = CustomFilter
    DataTables(s).Load
    e.Form.Controls("Label1").Text = ""
Next
e.Form.Close()

[此贴子已经被作者于2014-5-1 8:33:51编辑过]

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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/5/1 9:00:00 [显示全部帖子]

我这是在用的案例,肯定管用。

发你的例子测试。


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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/5/1 9:27:00 [显示全部帖子]

这样,在属性里面设:启用:True,间隔:1000

Forms("加载提示").TimerEnabled = True

Forms("加载提示").TimerInterval = 1000

两行代码删除。


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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/5/1 13:49:00 [显示全部帖子]

BeforeLoadOuterTable:

 

非共用表:

For Each s As String In "经销商信息|专卖店目标|专卖店签约|专卖店人员|目标|专卖店零售额|专卖店人员目标|订单|个案申请".Split("|")
    If e.DataTableName = s Then
        e.SelectString = "Select * From {" & s & "} Where [_Identify] Is Null"
    End If
Next
 

共用表:

For Each s As String In "人员|产品vlookup|文具领用|文具明细|行政区域|文件管理|企业信息".Split("|")
    If e.DataTableName = s Then
        e.SelectString = "Select * From {" & s & "} Where [_Identify] Is Not Null"
    End If
Next

 


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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/5/1 17:25:00 [显示全部帖子]

公用表,如果其中一个,有大量数据,不管是什么阶段,只要是全部加载,都会造成加载时间过长,用户体验恶劣。

所以首先要保证,所有的公用表,都不会出现数据量过大的问题。

 

话说回来,公用数据表,一般都极少变动,如果数据量不大,不如一打开项目就加载,直到项目关闭,只需加载一次,调用效率高。

 


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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/5/1 17:55:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:批量加载表提示.rar


 回到顶部