以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 特定用户加载特定的表 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=84415) |
||||
-- 作者:kaituozhe -- 发布时间:2016/4/30 19:57:00 -- 特定用户加载特定的表 以下代码用户是用SQL SERVER 2008数据源,目的是如果王登录但只有全部合同及合同转换两张表加载数据,其他都是空表,但是会提示错误,是什么原因,怎么修改? If _UserName = "王五" Then |
||||
-- 作者:kaituozhe -- 发布时间:2016/4/30 20:19:00 -- 以下代码想全部合同及合同转换两个表加载数据,其他表为空表,但是其他表无法加载进来,该怎么修改? If _UserName = "王五" Then |
||||
-- 作者:kaituozhe -- 发布时间:2016/5/1 6:45:00 -- 例子中的数据源为SQL server 2008数据源,目的是想实现如何如果张三则表A不是空表,其他都是空表;李四则表B不是空表,其他都是空表;该怎么修改
|
||||
-- 作者:大红袍 -- 发布时间:2016/5/2 13:38:00 -- 你不是吧,连最基础的还不会写。
If user.Name = "王五" Then End If |
||||
-- 作者:kaituozhe -- 发布时间:2016/5/2 18:41:00 -- 以下代码是想更进一步,在users中设置允许加载数据的表,在黄色部分提示错误,该怎么改进? Dim dr As DataRow = DataTables("Users").find("_UserName= \'" & DataTables("users").DataRow("Name") & "\'") Dim nms1() As String If dr IsNot Nothing Then nms1 = dr("可以打开的表").Split(",") End If If _userName = "王五" Then If nms1.Contains(dt.name ) = True Then e.SelectString = "Select * Fr om {" & e.DataTableName & "}" Else e.SelectString = "Select * Fr om {" & e.DataTableName & "} where [_Identify] Is Null" End If End If
|
||||
-- 作者:大红袍 -- 发布时间:2016/5/2 20:14:00 -- 在这个时间,DataTables所有的表都没加载。
你应该在这个事件不加载任何表,然后在AfterOpenProject事件再加载需要的表。 |
||||
-- 作者:kaituozhe -- 发布时间:2016/5/2 21:17:00 -- AfterOpenProject事件中黄色部分的代码该怎么写 |
||||
-- 作者:kaituozhe -- 发布时间:2016/5/2 21:55:00 -- 以下黄色代码怎么修改 \'Dim dr As DataRow = DataTables("Users").find("_UserName= \'" & e.DataRow("Name") & "\'") \'Dim nms1() As String \'If dr IsNot Nothing Then \'nms1 = dr("可以打开的表").Split(",") \'End If \'If _UserName = "王五" Then \'For Each dt As DataTable In DataTables \'\'If nms1.Contains(dt.name ) = True Then \'If dt.name = "全部合同" Or dt.name = "合同转换" Then \'dt.LoadFilter = "" \'dt.Load() \'Else \'dt.LoadFilter = "[_Identify] Is Null" \'dt.Load() \'End If \'Next \'End If
|
||||
-- 作者:Hyphen -- 发布时间:2016/5/3 8:52:00 -- Dim dr As DataRow = DataTables("Users").find("name= \'" & _UserName & "\'") |
||||
-- 作者:kaituozhe -- 发布时间:2016/5/3 9:13:00 -- 以下代码提示错误,是什么原因形成的? 错误如下:无法将类型为“System.String[]”的对象强制转换为类型“System.Collections.Generic.List`1[System.String]”。 Dim dr As DataRow = DataTables("Users").find("Name= \'" & _UserName & "\'") Dim nms1 As list (of String) If dr IsNot Nothing Then nms1 = dr("可以打开的表").Split(",") End If If _UserName = "王五" Then For Each dt As DataTable In DataTables If nms1.Contains(dt.name ) = True Then \'If dt.name = "全部合同" Or dt.name = "合同转换" Then dt.LoadFilter = "" dt.Load() Else dt.LoadFilter = "[_Identify] Is Null" dt.Load() End If Next End If
|