以文本方式查看主题

-  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=100591)

--  作者:刘林
--  发布时间:2017/5/14 18:09:00
--  控制目录树
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.connectionname =
If js.Contains("区业务主管")
cmd.CommandText = "SELE  CT DISTINCT 考试名称,单位名称,年级代码,班级,学段  From {成绩} where 学段 =\'小学\'"
Else
cmd.CommandText = "SEL  ECT DISTINCT 考试名称,单位名称,年级代码,班级,学段  From {成绩} where 单位名称 = \'" & _usergroup & "\' and 学段 = \'小学\' and "
End If
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt,"考试名称|单位名称|年级代码|班级")
DataTables("成绩").loadfilter = "[_Identify] Is null"
DataTables("成绩").load

窗口afterload事件,我现在有个需要是有一个控制表中有个是否可看列,用于控制某次考试成绩是否让用户看到,我想做成当控制表中某次考试名称的是否可看为false,则用户的目录树中就不显示这次考试的考试名称,这样他就看不到,请问该怎么办,谢谢

--  作者:刘林
--  发布时间:2017/5/14 18:43:00
--  
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.connectionname = 
If js.Contains("区业务主管")
cmd.CommandText = "SELEC T DISTINCT 考试名称,单位名称,年级代码,班级,学段  From {成绩} where 学段 =\'小学\'"
Else
cmd.CommandText = "SELEC T DISTINCT 考试名称,单位名称,年级代码,班级,学段  From {成绩} where 单位名称 = \'" & _usergroup & "\' and 学段 = \'小学\' and 考试名称 = (Sel ect 考试名称 From {小学考试名称} where 是否可查 = 1)"

End If
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt,"考试名称|单位名称|年级代码|班级")
\'trv.Nodes.Insert("加载所有数据",0)
DataTables("成绩").loadfilter = "[_Identify] Is null"
DataTables("成绩").load
Dim lbl As WinForm.Label = e.Form.Controls("Label1")
If e.Form.Width > lbl.Width
    lbl.Left = (e.Form.Width - lbl.Width ) / 2
   End If
Dim dt1 As DataTable = DataTables("小学考试名称")
Dim cmb4 As WinForm.ComboBox = e.form.Controls("ComboBox1")
cmb4.ComboList = dt1.GetComboListString("考试名称","归档 = false")

\'Dim cmb2 As WinForm.CheckedComboBox = e.form.Controls("CheckedComboBox1")
\'cmb2.ComboList = dt1.GetComboListString("考试名称","是否可查 = true")


我想了个查询方案,但当有多个考试名称为TRUE时提示:子查询返回的值不止一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的。

--  作者:有点色
--  发布时间:2017/5/15 8:19:00
--  
cmd.CommandText = "SELEC TDISTINCT 考试名称,单位名称,年级代码,班级,学段  From {成绩} where 单位名称 = \'" & _usergroup & "\' and 学段 = \'小学\' and 考试名称 in  (Select 考试名称 From {小学考试名称} where 是否可查 = 1)"
--  作者:刘林
--  发布时间:2017/6/14 8:58:00
--  

\'考试名称\' 附近有语法错误。

 

 

If js.Contains("区业务主管")
cmd.CommandText = "SEL ECT DISTINCT 考试名称,单位名称,年级代码,班级  From {成绩} where 学段 =\'初中\'"
Else
cmd.CommandText = "SEL EC TDISTINCT 考试名称,单位名称,年级代码,班级,学段  From {成绩} where 单位名称 = \'" & _usergroup & "\' and 学段 = \'初中\' and 考试名称 in (Sel ect 考试名称 From {考试名称} where 是否可看 = 1)" 
End If
请问老师,上红色错误是什么原因

 


--  作者:有点色
--  发布时间:2017/6/14 9:19:00
--  

看弹出什么

 

cmd.CommandText = "SELECT DISTINCT 考试名称,单位名称,年级代码,班级,学段  From {成绩} where 单位名称 = \'" & _usergroup & "\' and 学段 = \'初中\' and 考试名称 in (Select 考试名称 From {考试名称} where 是否可看 = 1)" 

msgbox(cmd.CommandText)

 


--  作者:刘林
--  发布时间:2017/6/14 11:30:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20170614112951.png
图片点击可在新窗口打开查看

--  作者:有点色
--  发布时间:2017/6/14 11:33:00
--  
改成5楼。
--  作者:刘林
--  发布时间:2017/6/14 11:47:00
--  

什么意思,我弹出的就是5楼的代码结果

 


--  作者:有点色
--  发布时间:2017/6/14 12:04:00
--  

1、有区别,注意空格

 

SELECT DISTINCT

 

2、sql测试窗口测试这段,是否有问题?

 

Select 考试名称 From {考试名称} where 是否可看 = 1