以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]动态加载外部数据  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=45462)

--  作者:aduydgd
--  发布时间:2014/1/26 17:00:00
--  [求助]动态加载外部数据

高手们,请教一个问题,

登录系统成功后,按当前登录账号的角色判断需要加载的数据,代码写在登录窗口确定按键中

 

BeforeLoadOuterTable  这个里面的事件都不能用了

 

下面这种方式不行

If _UserRoles = "业务员" Then
    DataTables("maintable").Fill("Select * From {maintable} Where [zhuangtai] = \'未完成\' and [tianbaoren] = \'" &  _UserName & "\'", False)
    DataTables("kehu").fill("Select * From {kehu} Where [chuangjian] = \'" &  _UserName & "\'",False)

这种写法不行,提示不能使用动态SQL

 

下面这种也不行,

Dim sql As New SQLCommand
If _UserRoles = "总经理"  Then
   sql.CommandText = "Select * From {maintable} Where [jigou] = \'" &  _UserGroup & "\'"
    sql.CommandText = "Select * From {kehu} Where [jigou] = \'" &  _UserGroup & "\'"


End If

 

 

高手帮忙完善一下,谢谢

 

If _UserRoles = "业务员" Then
    sql.CommandText = "Select * From {maintable} Where [zhuangtai] = \'未完成\' and [tianbaoren] = \'" &  ren & "\'"
    sql.CommandText = "Select * From {kehu} Where [chuangjian] = \'" &  ren & "\'"
ElseIf _UserRoles = "总经理"  Then
    sql.CommandText = "Select * From {maintable} Where [jigou] = \'" &  jg & "\'"
    sql.CommandText = "Select * From {kehu} Where [jigou] = \'" &  jg & "\'"
ElseIf _UserRoles = "管理员" Then
    sql.CommandText = "Select * From {maintable}"
    sql.CommandText = "Select * From {kehu}"
End If

[此贴子已经被作者于2014-1-26 17:01:17编辑过]

--  作者:Bin
--  发布时间:2014/1/26 17:03:00
--  
BeforeLoadOuterTable  的时候,你登录窗口都还没打开,更别谈_UserRoles有值了.


你应该禁止加载数据,然后再在登录完毕之后,再利用 datatables("XX").load 根据 loadFilter 来加载数据.

既然你很久没有接触过了,建议你还是先温习一下帮助先.

图片点击可在新窗口打开查看

 

看帮助一定要按顺序,头一两遍可以不求甚解,第三遍开始要将每个例子实际操作演练一遍,不明白的就上论坛求助。
三遍之后才开始做系统,先设计好表,想做什么功能,就做什么功能,遇到问题在帮助找答案,找不到的在论坛提问,不断遇到问题,不断解决问题,慢慢就熟悉了。
此外一定要先掌握《使用指南》,然后再看《开发指南》

 



--  作者:aduydgd
--  发布时间:2014/1/26 17:08:00
--  
我是来学习各种方法的,碰到不懂得我就是在问,其他的加载没有问题,
--  作者:有点甜
--  发布时间:2014/1/26 19:10:00
--  
 呃,你的是自定义窗口,是在加载完所有的表才会打开你的登陆窗口的。

 也就是afteropenproject在BeforeLoadOuterTable之后执行,所以起初你不应加载数据。点击确认以后再加载。

--  作者:aduydgd
--  发布时间:2014/1/26 19:51:00
--  

对的,我的加载是放在确认登陆后的事件中,不是放在BeforeLoadOuterTable,,,这个时间对于自定义已经不适合了

 

我的全部都是外部数据源和表

[此贴子已经被作者于2014-1-26 20:02:15编辑过]