以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 窗口的SQLQuery表能不能加进去加载树? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=45506) |
-- 作者:fubblyc -- 发布时间:2014/1/28 9:05:00 -- 窗口的SQLQuery表能不能加进去加载树? 请问各位老师: 窗口的SQLQuery表能不能加进去加载树? 下面是帮助的文档,不过是针对内部表的。那外部查询表呢?能否也实现? 2、然后新建一个窗口,窗口中插入一个目录树(TreeView),窗口的AfterLod事件代码设为: Dim cmd As New SQLCommand 3、最后将目录树的NodeMouseDoubleClick事件设为: Dim Filter As
String
这样我们只需双击某个节点,既可动态加载对应的订单 |
-- 作者:有点甜 -- 发布时间:2014/1/28 19:32:00 -- 外部表也一样的哦亲,只需要指定数据源的名称就行了。 |
-- 作者:fubblyc -- 发布时间:2014/1/28 20:45:00 -- 谢谢有点甜老师,可以了!!! |
-- 作者:fubblyc -- 发布时间:2014/2/17 21:00:00 -- 有点甜老师 我的这个表是一个用select语句写出来的窗口的SQLQuery表,select语句如下: SELECT VIP消费信息.购买日期 AS "日期", VIP消费信息.门市专柜编号 AS "门市专柜编号", VIP消费信息.门市专柜简称 AS "门市专柜简称", SUM(VIP消费信息.实收金额) AS "VIP销售额", 门店整体销售额.门店整体销售额 AS "门店整体销售额" ,SUM(VIP消费信息.实收金额)/门店整体销售额.门店整体销售额 AS "VIP销售占比",COUNT(DISTINCT VIP消费信息.VIP卡号) AS "VIP销售笔数",SUM(VIP消费信息.数量) AS "VIP销售件数", SUM(VIP消费信息.实收金额)/COUNT(DISTINCT VIP消费信息.VIP卡号) AS "VIP客单价", SUM(VIP消费信息.实收金额)/SUM(VIP消费信息.数量) AS "VIP物单价", SUM(VIP消费信息.实收金额)/COUNT(DISTINCT VIP消费信息.VIP卡号)/SUM(VIP消费信息.实收金额)/SUM(VIP消费信息.数量) AS "VIP连带率" FROM (dbo.VIP消费信息 AS VIP消费信息 INNER JOIN dbo.门店整体销售额 AS 门店整体销售额 ON (VIP消费信息.购买日期 = 门店整体销售额.购买日期 and VIP消费信息.门市专柜编号 = 门店整体销售额.门市专柜编号 )) GROUP BY VIP消费信息.购买日期, VIP消费信息.门市专柜编号, VIP消费信息.门市专柜简称, 门店整体销售额.门店整体销售额 我想在这个表的旁边加一个 加载树,照着帮助了,窗口的After Load 代码如下: Dim cmd As New SQLCommand Dim dt As DataTable cmd.C cmd.CommandText = "SELECT DISTINCT Year(日期) As 年, Month(日期) As 月, 门市专柜编号 From {经营成果分析_经营成果分析}" dt = cmd.ExecuteReader() Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1") trv.BuildTree(dt, "年|月|门市专柜编号") 也设置了目录树的代码: Dim Value()As String Dim Filter As String Value = e.Node.FullPath.Split("\\") Select Case e.Node.Level Case 0 Filter ="Year(日期) = " & Value(0) Case 1 Filter ="Year(日期) = " & Value(0) & " And Month(日期) = " & Value(1) Case 2 Filter ="Year(日期) = " & Value(0) & " And Month(日期) = " & Value(1) & " And 门市专柜编号 = \'" & Value(2) & "\'" End Select DataTables("经营成果分析_经营成果分析").LoadFilter = Filter DataTables("经营成果分析_经营成果分析").Load() 应用窗口时显示: 对象名 \'经营成果分析_经营成果分析\' 无效。 错误代码位置:窗口,经营成果分析,After Load 是什么情况呢? cmd.CommandText = "SELECT DISTINCT Year(日期) As 年, Month(日期) As 月, 门市专柜编号 From {经营成果分析_经营成果分析}" 表名不是这样写吗? [此贴子已经被作者于2014-2-17 21:00:39编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/2/17 21:14:00 -- 呃……表名应该这样写 e.form.controls("Table1").Table.Datatable.Load() 或者 Tabels("窗口名_Table1").Datatable.Load()
|
-- 作者:fubblyc -- 发布时间:2014/2/17 21:22:00 -- 哎,我还是上传例子上来给您看下。。 |
-- 作者:有点甜 -- 发布时间:2014/2/17 22:06:00 -- 不能直接引用查询表执行加载数据操作的。 Dim cmd As New SQLCommand Dim dt As DataTable cmd.C cmd.CommandText = "SELECT DISTINCT Year(日期) As 年, Month(日期) As 月, 门市专柜编号 from (Select VIP消费信息.购买日期 As 日期, VIP消费信息.门市专柜编号 As 门市专柜编号, VIP消费信息.门市专柜简称 As 门市专柜简称, SUM(VIP消费信息.实收金额) As VIP销售额, 门店整体销售额.门店整体销售额 As 门店整体销售额 ,SUM(VIP消费信息.实收金额)/门店整体销售额.门店整体销售额 As VIP销售占比,COUNT(DISTINCT VIP消费信息.VIP卡号) As VIP销售笔数,SUM(VIP消费信息.数量) As VIP销售件数, SUM(VIP消费信息.实收金额)/COUNT(DISTINCT VIP消费信息.VIP卡号) As VIP客单价, SUM(VIP消费信息.实收金额)/SUM(VIP消费信息.数量) As VIP物单价, SUM(VIP消费信息.实收金额)/COUNT(DISTINCT VIP消费信息.VIP卡号)/SUM(VIP消费信息.实收金额)/SUM(VIP消费信息.数量) As VIP连带率" _ & " FROM (dbo.VIP消费信息 As VIP消费信息" _ & " INNER JOIN dbo.门店整体销售额 As 门店整体销售额 ON (VIP消费信息.购买日期 = 门店整体销售额.购买日期 And VIP消费信息.门市专柜编号 = 门店整体销售额.门市专柜编号 ))" _ & " GROUP BY VIP消费信息.购买日期, VIP消费信息.门市专柜编号, VIP消费信息.门市专柜简称, 门店整体销售额.门店整体销售额) as temp" dt = cmd.ExecuteReader() Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1") trv.BuildTree(dt, "年|月|门市专柜编号") 双击代码 Dim Value()As String Dim Filter As String Value = e.Node.FullPath.Split("\\") Select Case e.Node.Level Case 0 Filter ="Year(日期) = " & Value(0) Case 1 Filter ="Year(日期) = " & Value(0) & " And Month(日期) = " & Value(1) Case 2 Filter ="Year(日期) = " & Value(0) & " And Month(日期) = " & Value(1) & " And 门市专柜编号 = \'" & Value(2) & "\'" End Select Tables("门店成果分析_经营成果分析").Fill("select * from (Select VIP消费信息.购买日期 As 日期, VIP消费信息.门市专柜编号 As 门市专柜编号, VIP消费信息.门市专柜简称 As 门市专柜简称, SUM(VIP消费信息.实收金额) As VIP销售额, 门店整体销售额.门店整体销售额 As 门店整体销售额 ,SUM(VIP消费信息.实收金额)/门店整体销售额.门店整体销售额 As VIP销售占比,COUNT(DISTINCT VIP消费信息.VIP卡号) As VIP销售笔数,SUM(VIP消费信息.数量) As VIP销售件数, SUM(VIP消费信息.实收金额)/COUNT(DISTINCT VIP消费信息.VIP卡号) As VIP客单价, SUM(VIP消费信息.实收金额)/SUM(VIP消费信息.数量) As VIP物单价, SUM(VIP消费信息.实收金额)/COUNT(DISTINCT VIP消费信息.VIP卡号)/SUM(VIP消费信息.实收金额)/SUM(VIP消费信息.数量) As VIP连带率" _ & " FROM (dbo.VIP消费信息 As VIP消费信息" _ & " INNER JOIN dbo.门店整体销售额 As 门店整体销售额 ON (VIP消费信息.购买日期 = 门店整体销售额.购买日期 And VIP消费信息.门市专柜编号 = 门店整体销售额.门市专柜编号 ))" _ & " GROUP BY VIP消费信息.购买日期, VIP消费信息.门市专柜编号, VIP消费信息.门市专柜简称, 门店整体销售额.门店整体销售额) as temp where " & filter, "VIP数据", True) |
-- 作者:fubblyc -- 发布时间:2014/2/17 22:41:00 -- 谢谢有点甜老师,你可以给我那个例子吗?我在你写的那个例子看下。 我复制这些代码还是出错。
说: afterload代码 Dim cmd As New SQLCommand Dim dt As DataTable cmd.C 不是cmd的成员...... |
-- 作者:有点甜 -- 发布时间:2014/2/17 22:49:00 -- 呃,楼主,请灵活变通下,cmd.C你原本怎么写,现在就怎么写connectionName |
-- 作者:有点酸 -- 发布时间:2014/2/17 22:53:00 -- 甜兄,下次记得加个空格:
cmd.connection name = "数据源"
这样就不会被这个论坛屏蔽了。
|