Foxtable(狐表)用户栏目专家坐堂 → 后台加载目录树时过滤


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

主题:后台加载目录树时过滤

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


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
后台加载目录树时过滤  发帖心情 Post By:2016/11/2 8:30:00 [只看该作者]

Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.connectionname = XX
cmd.CommandText = "SELE  CT DISTINCT 学校名称,年级,班级  From {学生信息}"
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt,"学校名称|年级|班级")
trv.Nodes.Insert("加载所有数据",0)

老师,请问我的用户分组用的是学生信息表中学校代码后4位,我想在后台加载目录树时只加载自己学校的年级班级,这样选择加载时时不会加载其他学校的,怎么改上面的句子,谢谢

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


加好友 发短信
等级:童狐 帖子:294 积分:3478 威望:0 精华:0 注册:2013/4/9 19:12:00
  发帖心情 Post By:2016/11/2 8:48:00 [只看该作者]

进入的时候获取自己的自己学校的年级班级的变量
cmd.CommandText = "SELE  CT DISTINCT 学校名称,年级,班级  From {学生信息} where  学校名称,= 变量 and 年级 = 变量 and 班级 =变量 

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/11/2 9:40:00 [只看该作者]

如,这样。

 

Dim schoolName As String = "希望小学"

cmd.CommandText = "SELE  CT DISTINCT 学校名称, 年级, 班级  From {学生信息} where 学校名称 = '" & schoolName & "'"


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


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/11/2 10:16:00 [只看该作者]

非常谢谢,解决了想法了,还望多指导

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


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/11/2 10:36:00 [只看该作者]

Dim txt As String = e.sender.Text
Dim schoolname As String = user.group
If txt = "" Then
    DataTables("学生信息").LoadFilter =""
Else
    txt = "'%" & txt & "%'"
DataTables("学生信息").LoadFilter = "身份证件号 Like " & txt & " Or 学生姓名 Like " & txt & " Or 家庭成员姓名 Like " & txt & " Or 联系电话 Like " & txt & "And 学校名称 = "& schoolName
End If
DataTables("学生信息").Load

老师,我想用楼上类似方法,将textbox的查找改成上面内容,这校在后台查找时只在自己学校记录内查找加载,提示:  列名 '内江市东兴区苏家乡中心学校' 无效。请问是什么原因,怎么改

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106142 积分:539827 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/2 10:55:00 [只看该作者]

字符要加单引号

DataTables("学生信息").LoadFilter = "身份证件号 Like " & txt & " Or 学生姓名 Like " & txt & " Or 家庭成员姓名 Like " & txt & " Or 联系电话 Like " & txt & "And 学校名称 = '"& schoolName &"'"

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


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/11/2 11:08:00 [只看该作者]

我试验了下,还是能找出其他学校的学生记录呢?

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106142 积分:539827 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/2 11:19:00 [只看该作者]

DataTables("学生信息").LoadFilter = "(身份证件号 Like " & txt & " Or 学生姓名 Like " & txt & " Or 家庭成员姓名 Like " & txt & " Or 联系电话 Like " & txt & " ) And 学校名称 = '"& schoolName &"'"

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


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/11/2 11:40:00 [只看该作者]

哦,谢谢
Dim g As New GroupTableBuilder("学生统计", DataTables("学生信息"))
Dim dt1 As Table = Tables("学生统计_table1")
g.Groups.AddDef("学校名称")
g.Groups.AddDef("年级")
g.Groups.AddDef("班级")
g.Totals.AddDef("学生姓名",AggregateEnum.Count,"人数")
g.Totals.AddDef("性别",AggregateEnum.Count,"男")
g.FromServer = True
dt1.DataSource = g.BuildDataSource()
另请教如果要后台统计出性别为男这句怎么改

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/11/2 11:52:00 [只看该作者]

要这样改

 

Dim g As New GroupTableBuilder("学生统计", DataTables("学生信息"))
Dim dt1 As Table = Tables("学生统计_table1")
g.Groups.AddDef("学校名称")
g.Groups.AddDef("年级")
g.Groups.AddDef("班级")
g.Totals.AddDef("学生姓名",AggregateEnum.Count,"人数")
g.Totals.AddDef("性别",AggregateEnum.Count,"男")
g.Filter = "性别 = '男'"
g.FromServer = True
dt1.DataSource = g.BuildDataSource()
 
最后,如果你还要统计性别女或者其它的,你还需要这样做,参考 http://www.foxtable.com/webhelp/scr/2305.htm
 

 回到顶部
总数 19 1 2 下一页