以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 请问这个filter怎么改 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=90562) |
||||
-- 作者:刘林 -- 发布时间:2016/9/17 10:16:00 -- 请问这个filter怎么改 If e.Node.Level >= 2 Then \'你的代码,至少要第三级别节点才可以执行,否则后面的vals(2)肯定出错. Dim dr As DataRow = e.Node.DataRow \'新增的\' If dr IsNot Nothing Then \'要判断是否有符合条件的行,如果没有,下面的代码肯定出错. Dim Result As DialogResult = messagebox.show("你是想修改该还是新增记录","提示",MessageBoxButtons.YesNo, MessageBoxIcon.Question) If result = DialogResult.Yes Then Dim r As Row = Tables("代课").Current r("学校名称") = dr("学校名称") r("班级") = dr("班级").Substring(3,2) & "级" & dr("班级").Substring(5,2) & "班" r("节次") = dr("节次") r("科目") = dr("科目") r("申请人") =dr("任课教师") Dim filter As String = "教师 <> \'& r("申请人") & \' And dr("班级") = r("班级")" Tables("课程表").Filter = filter Dim trv As WinForm.TreeView = e.Form.Controls("TreeView2") trv.BuildTree("课程表","学校名称|班级", filter, "班级") trv.StopRedraw \'停止绘制目录树 For Each nd As WinForm.TreeNode In trv.AllNodes \'遍历所有节点 If nd.Level = 2 Then \'如果是二级节点 nd.Text = nd.text & "," & nd.DataRow("科目") & "," & nd.DataRow("任课教师") End If Next trv.ResumeRedraw End If If result = DialogResult.no Then Return End If 我想在在view1中选定了学校名称,班级,节次,科目,申请人后在生成view2中选代课人和科目, 为了方便,view2中将课程表过滤出不含代课申请人和班级为申请代课班级,filter改不对,请指导,另外后紫色部分能不能优化下.谢谢 |
||||
-- 作者:有点蓝 -- 发布时间:2016/9/17 10:40:00 -- Dim filter As String = "教师 <> \'" & r("申请人") & "\' And 班级 = \'" & r("班级") & "\'" |
||||
-- 作者:有点蓝 -- 发布时间:2016/9/17 10:42:00 -- 基本没有优化的余地了。 |
||||
-- 作者:刘林 -- 发布时间:2016/9/17 11:02:00 -- 为什么view2不能生成呢?
请指导,谢谢!
|
||||
-- 作者:有点蓝 -- 发布时间:2016/9/17 11:21:00 -- Dim filter As String = "任课教师 <> \'" & r("申请人") & "\' And 班级 = \'" & dr("班级") & "\'" |