以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]SQL数据源加载树如何按月份加载?(已解决)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=11830)

--  作者:pc005637
--  发布时间:2011/8/13 15:00:00
--  [求助]SQL数据源加载树如何按月份加载?(已解决)
动态加载SQL数据源. 如何按月份加载数据? 比如现在我的加载树是:
窗口1的AfterLoad代码:
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.C o n n e c t i o n N a m e = " U s e r "
cmd.CommandText = "SELECT DISTINCT 管理医院,项目登记日期 From {总表}"
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildDataTree(dt, "","管理医院","项目登记日期")



TreeView1的NodeMouseDoubleClick的代码:
Dim Value()As String
Dim Filter As String
Value = e.Node.FullPath.Split("\\")
Select Case e.Node.Level
Case 0
Filter ="[管理医院] = \'" & Value(0) & "\'"
Case 1
Filter ="[管理医院] = \'" & Value(0) & "\' And [项目登记日期] YM = \'" & Value(1) & "\'"
End Select
DataTables("分镇登记本").LoadFilter = Filter
DataTables("分镇登记本").Load()
Tables("分镇登记本").Sort = "项目登记号"

现在的效果是:


图片点击可在新窗口打开查看此主题相关图片如下:加载2.jpg
图片点击可在新窗口打开查看
想要的效果是:


图片点击可在新窗口打开查看此主题相关图片如下:加载.jpg
图片点击可在新窗口打开查看
求解决.
[此贴子已经被作者于2011-8-18 15:24:38编辑过]

--  作者:yangming
--  发布时间:2011/8/13 15:23:00
--  

将红字部分,改成下面的蓝色代码

cmd.CommandText = "SELECT DISTINCT 管理医院 From {总表} ”

 

cmd.CommandText = "SELECT DISTINCT 管理医院 From {总表} WHERE Month(日期)"


--  作者:don
--  发布时间:2011/8/13 15:24:00
--  
select * from{总表}} where day(日期) =N
--  作者:pc005637
--  发布时间:2011/8/13 15:49:00
--  代码出错.
我主要是需要在{总表}中按两个数据列来加载.
数据列1:[管理医院]
数据列2:[项目登记日期]
其中项目登记日期按年月来分.
谢谢.
[此贴子已经被作者于2011-8-13 18:36:35编辑过]

--  作者:yangming
--  发布时间:2011/8/13 17:12:00
--  
以下是引用pc005637在2011-8-13 15:49:00的发言:
我主要是需要在{总表}中按两个数据列来加载. 数据列1:[管理医院] 数据列2:[项目登记日期] 其中项目登记日期按年月来分. 谢谢.

哪个代码出错啊?没搞明白,那你将代码中的日期改成项目登记日期试试


--  作者:pc005637
--  发布时间:2011/8/13 17:26:00
--  我现在的代码是这样.(怎么换行,我不会)
论坛里没有对这方面有研究的吗?
上面的我对着帮助文档做的。
但是帮助中没有对时间的分段的例子。
[此贴子已经被作者于2011-8-16 20:16:34编辑过]

--  作者:pc005637
--  发布时间:2011/8/13 17:46:00
--  主要是想效果就像一楼那样.
先按管理医院加载. 然后按年月加载数据. 使用SQL语言来加载的.
--  作者:pc005637
--  发布时间:2011/8/13 18:15:00
--  看了帮助,有了新的方法.
在项目的MainTableChanged事件上加上代码:
If MainTable.Name = "分镇登记本" Then
Tables("分镇登记本").OpenLoadTree("管理医院|项目登记日期 YM")
End If
这样就可以分管理医院和年月加载了.
http://www.datasoft.com.cn/dispbbs.asp?BoardID=2&ID=11837&skin=0
[此贴子已经被作者于2011-8-14 14:38:52编辑过]

--  作者:pc005637
--  发布时间:2011/8/14 13:14:00
--  有没有解决方法啊?
有没有解决方法啊?在线等.
--  作者:don
--  发布时间:2011/8/14 14:03:00
--  
纸上不谈兵