以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  筛选树中的日期列如何处理成年月显示?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=38819)

--  作者:zpx_2012
--  发布时间:2013/8/8 1:45:00
--  筛选树中的日期列如何处理成年月显示?
如下图,想实现象系统里的加载树那样的功能,如果是日期列根据需要显示。要如何实现?


图片点击可在新窗口打开查看此主题相关图片如下:筛选树中的日期处理.jpg
图片点击可在新窗口打开查看

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:筛选树中日期处理.foxdb


请教复选组合框中的代码要如何修改才可以实现?谢谢!

--  作者:狐狸爸爸
--  发布时间:2013/8/8 8:55:00
--  

方法一:

 

增加年、月的表达式列,然后根据年月列生成目录树吧。

 

方法二:

 

这里有个加载树的例子,你可以改造为筛选树:

http://www.foxtable.com/help/topics/2054.htm

 


--  作者:zpx_2012
--  发布时间:2013/8/8 10:09:00
--  
现在主要的问题是我的表都是窗口中动态FIll生成的。想用如下的sQL语句提取当前表生成一个临时表来处理一下就很简单了。但因为后台数据库中没有真实存在这个fill的表,sql语句都无法用。所以不知道怎么做了?

Dim cmd As New SQLCommand
Dim
 dt As DataTable
cmd
.CommandText = "SELECT DISTINCT Year(日期) As , Month(日期) As 产品 From {订单}"
dt
 = cmd.ExecuteReader()
Dim
 trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv
.BuildTree(dt, "年|月|产品")

如将上面红色的订单替换为窗口表“窗口1_table1"就提示出错了。直接在当前表中增加表达式列又会修改当前表,我只要筛选而已,不想改动当前表?

--  作者:狐狸爸爸
--  发布时间:2013/8/8 10:11:00
--  
呵呵,同学啊,你窗口中的表的数据不是凭空来的哦,是从后天某个表来的,来自后台哪个表,红色部分就写后天哪个表的名字。
--  作者:zpx_2012
--  发布时间:2013/8/8 10:49:00
--  
狐爸,那是否这种筛选只适合从单个表取数的情况,如果当前表也是从几个表查询fill的数据,这个表就不知用哪个了?


--  作者:狐狸爸爸
--  发布时间:2013/8/8 10:53:00
--  
都一样可以,只是sql语句稍微复杂点。
--  作者:zpx_2012
--  发布时间:2013/8/8 13:28:00
--  
还是不可以,如果SQL语句中直接用后台那个表,生成的目录树是使用的整个后台数据表的数据,而我只想用当前表(是动态加载的数据只有一部份而已)中的数据生成目录树。
如果直接用当前表来生成目录树的话,还要增加表达式列等来存放日期转化后的数据,但当前表的结构又不能修改。

除了上面的sql语句外有没有方法直接将当前显示的表再复制生成一个临时表?





--  作者:zpx_2012
--  发布时间:2013/8/8 16:47:00
--  
顶上去。
--  作者:Bin
--  发布时间:2013/8/8 16:59:00
--  
使用SQL语句最实际.
--  作者:有点甜
--  发布时间:2013/8/8 23:30:00
--  
 呃,被这个问题弄得头有点晕。

 原本想手工创建目录树的,但这样太复杂,不好操控,最后还是觉得增加年月列实际一些,利于生成树,利于筛选。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:筛选树中日期处理.foxdb