以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]关于跨表统计未加载的数据和已加载好的数据  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=95539)

--  作者:铜豆
--  发布时间:2017/1/22 22:56:00
--  [求助]关于跨表统计未加载的数据和已加载好的数据
Dim dr As DataRow = e.DataRow
Select Case e.DataCol.Name
    Case "日期"
        If dr.IsNull("日期") Then
            e.DataRow("离线宝") =Nothing
        Else
            e.DataRow("离线宝") = DataTables("离线宝").Compute("Sum(非重复数量)","[开始时间] = \'" & e.NewValue & "\'")
        End If
End Select
老师以上是我的代码,正常情况是能统计的,但是我在离线宝这个表使用了加载树,并且只加载不分数据时,以上统计只能统计加载树加载出来的,未加载的就无法统计,对这样的问题应该如何写代码,才能正常统计

--  作者:lihe60
--  发布时间:2017/1/22 22:59:00
--  
用SQL语句
--  作者:铜豆
--  发布时间:2017/1/22 23:06:00
--  
老师写个样式来看看
--  作者:有点色
--  发布时间:2017/1/22 23:26:00
--  

直接用sqlCompute吧

 

e.DataRow("离线宝") = DataTables("离线宝").sqlCompute("Sum(非重复数量)","[开始时间] = \'" & e.NewValue & "\'")


--  作者:铜豆
--  发布时间:2017/2/10 10:11:00
--  
            e.DataRow("离线宝") = DataTables("离线宝").Compute("Sum(非重复数量)","[开始时间] = \'" & e.NewValue & "\'")可正常统计

            e.DataRow("离线宝") = DataTables("离线宝").sqlCompute("Sum(非重复数量)","[开始时间] = \'" & e.NewValue & "\'") 出错提示为:标准表达式中数据类型不匹配。

老师这是怎么回事啊




--  作者:有点色
--  发布时间:2017/2/10 10:17:00
--  

如果是Access数据库,这样写

 

e.DataRow("离线宝") = DataTables("离线宝").sqlCompute("Sum(非重复数量)","[开始时间] = #" & e.NewValue & "#")

 

如果还报错,看看是不是短日期的问题

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=94927&skin=0

 


--  作者:铜豆
--  发布时间:2017/2/10 11:02:00
--  
老师都是Date这种日期类型的,是内置数据库


--  作者:有点色
--  发布时间:2017/2/10 11:03:00
--  
改成6楼那样。