以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 目录树代码不生效 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=131777) |
||||
-- 作者:ifox2018 -- 发布时间:2019/3/6 14:09:00 -- 目录树代码不生效 内部函数部分代码: Dim cmd As New SQLCommand cmd.C Dim dt As DataTable cmd.CommandText = "SELECT DISTINCT Year(sg_rq) As 年, Month(sg_rq) As 月, Day(sg_rq) As 日 Fro m {car_accident} " dt = cmd.ExecuteReader() Dim tv As WinForm.TreeView = Forms("事故统计").Controls("TreeView1") tv.BuildTree(dt, "年|月|日") tv.Nodes.Insert("显示全部事故",0) tv.Nodes.Insert("按金额统计",1) tv.Nodes.Insert("按责任统计",2) tv.Nodes.Insert("按形态统计",3) For Each nd As WinForm.TreeNode In tv.Nodes \'遍历筛选树的节点 If nd.Level = 0 Then \'若是根节点 nd.Expand \'展开该节点 End If Next 事故统计窗口 afterload 载入 Functions.Execute("生成筛选树") TreeView1控件afterselectnode载入 Select Case e.Sender.SelectedNode.name \'对所选树的节点的内容来做判断 Case "显示全部订单" Functions.Execute("生成筛选树","") Case "按形态统计" Functions.Execute("生成筛选树","where sg_xt = \'双方\'") Case "按责任统计" ......... Case "按金额统计" ......... End Select 问题1, 随便点目录树什么节点,右侧表内信息都无变化 问题2, 如果想窗口打开后,默认显示当月的记录,语句该怎么写。 我在afterload 载入 Functions.Execute("生成筛选树",“where Month(sg_rq)= data.today.Month ”),语法不对。 现在执行后的左侧全部展开后如下: |
||||
-- 作者:有点甜 -- 发布时间:2019/3/6 14:27:00 -- 1、
Select Case e.Sender.SelectedNode.name
改成
msgbox(e.node.text) Select Case e.node.text
2、函数改成
cmd.CommandText = "SELECT DISTINCT Year(sg_rq) As 年, Month(sg_rq) As 月, Day(sg_rq) As 日 From {car_accident} " & args(0)
调用改成
Functions.Execute("生成筛选树","where sg_rq >=#" & new date(date.today.year, date.today.month, 1) & "# and sgrq < #" & new date(date.today.year, date.today.month, 1).addmonths(1) & "#")
3、不会做上传具体实例测试。 |
||||
-- 作者:ifox2018 -- 发布时间:2019/3/7 9:01:00 -- 没折腾出来. 我重新写个用内部表的实例上传咨询吧 |
||||
-- 作者:ifox2018 -- 发布时间:2019/3/8 10:18:00 -- 此主题相关图片如下:目录树1.png 已经折腾了10天. 帮助里的例子直接使用没问题. 想套用修改就各种错.
|
||||
-- 作者:有点蓝 -- 发布时间:2019/3/8 11:05:00 --
|