以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]关于加载出现了小问题(较严重) (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=70376) |
-- 作者:乡里出城 -- 发布时间:2015/6/19 18:19:00 -- [求助]关于加载出现了小问题(较严重) 关于帮助里的 2、在项目的LoadUserSetting(见 [标题编号])事件中设置代码,加载用户负责的订单:
If User.Name = "张经理" Then 我原的代码是: If User.Group = "最高级" Then DataTables("账号").LoadFilter = "" ElseIf User.Group = "领导2" Then DataTables("账号").LoadFilter = "" Else DataTables("账号").LoadFilter = "出纳人员 = \'" & User.Name & "\' OR 会计人员 = \'" & User.Name & "\' OR 主管财务人员 = \'" & User.Name & "\'" End If DataTables("账号").Load() 已运行很一个多月了,一直各用户打开表都只能正常加载自己的数据,但今天有出纳人员反映下述问题已经出现过两次了,她今天正常输入她账号打开表,但她的“账号”表加载了所有数据行(包括其他用户的数据),重新关掉后再打开又变正常了,只加载了她自己的数据行,她说这问题已经出现两次了,我现在请问各高手怎么解决,代码怎么改或怎么完善,如果我不是亲眼看到她截的图,我都不相信的,我就怀疑在网络加载过程中出现问题,软件起动时不知道是不是出现什么错误,然后就越过LOADFITER 全部加载了,我水平有限只能这样理解 [此贴子已经被作者于2015/6/19 18:25:09编辑过]
|
-- 作者:sloyy -- 发布时间:2015/6/20 1:29:00 -- 改为 Select Case User.Group Case "最高级" 代码1 Case "领导2" 代码2 Case "出纳人员 代码3 Case Else 代码X End Select 可能对付网络不好的情况比较好
|
-- 作者:大红袍 -- 发布时间:2015/6/23 9:31:00 -- 加载全部数据,应该和这段代码是无关的。
应该是这段代码之前,你有别的代码出错影响了不去执行最后的Load函数。
你应该在项目一打开的时候,就不要加载任何数据。http://www.foxtable.com/help/topics/2256.htm
|
-- 作者:乡里出城 -- 发布时间:2015/6/23 9:56:00 -- [求助] 里面是有其他代码,但一般正常下每个账号只会加载本账号负责的数据,我也测试过很多次了都是正常的,只是他们反映偶然出现一两次的全部加裁,如果是我其他的代码所导致的,如果代码顺序怎么处理,还是我把其他代码也发上来,那些代码也是帮助里取的?我现在想找解决问题的方案,如果还是按帮助里的第二段(下图)来写代码的,那问题还没解决,因为我代码就是参考帮助写的,求解,难道要换一种思路,先不加载,登陆后再按加载?如果这样的话就不便利了。 [此贴子已经被作者于2015/6/23 10:04:26编辑过]
|
-- 作者:乡里出城 -- 发布时间:2015/6/23 10:08:00 -- 还有,如果没有LOAD函数,我打开好像是不会加裁的吧 |
-- 作者:大红袍 -- 发布时间:2015/6/23 13:11:00 -- 设置最初的情况下,不加载任何数据啊。
有可能你网络有问题导致出错不执行load函数了啊 |
-- 作者:乡里出城 -- 发布时间:2015/6/23 16:24:00 -- 那问题还是没很好解决,我的想法是,可不可以先通过项目加载,然后加载完后再表加载,相当实现一次两次过滤,我之前是这样想的, |
-- 作者:大红袍 -- 发布时间:2015/6/23 16:43:00 -- 以下是引用乡里出城在2015/6/23 16:24:00的发言:
那问题还是没很好解决,我的想法是,可不可以先通过项目加载,然后加载完后再表加载,相当实现一次两次过滤,我之前是这样想的,
什么没有很好解决。
1、控制最初不加载任何数据,那打开以后,即便没有运行到Load函数,也不至于让人看到全部数据;
2、代码没有问题,基本就是网络异常的时候,会导致系统奔溃,代码不执行。 |