以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  统计逻辑列为真的个数,得到的是-1  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=96537)

--  作者:ericotaku
--  发布时间:2017/2/22 22:03:00
--  统计逻辑列为真的个数,得到的是-1

老师们好,我想统计逻辑列为真的个数,

我先用代码分组,为什么出来的值都是-1呢?

总计行统计的也不是计数


图片点击可在新窗口打开查看此主题相关图片如下:1111.png
图片点击可在新窗口打开查看
 

Dim bd1 As New GroupTableBuilder("统计表1",DataTables("表A"))
Dim dt1 As fxDataSource
bd1.Groups.AddDef("M1") \'根据型号分组
bd1.Groups.AddDef("类型") \'根据型号分组
bd1.Totals.AddDef("属性一","1 * 属性一","进货_属性一") \'对数量进行统计
bd1.Totals.AddDef("属性二","进货_属性二") \'对金额进行统计
dt1 = bd1.BuildDataSource()
bd1.Subtotal = True
bd1.SubtotalLevel = 0

这里我改成-1 * 属性一得到的结果也是一样的呢 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.table

[此贴子已经被作者于2017/2/22 22:04:08编辑过]

--  作者:y2287958
--  发布时间:2017/2/22 23:37:00
--  
用SQLGroupTableBuilder吧

Dim cn As String = "" \'数据源名(空白时为内数据表)
Dim bm As String = "统计表1"
Dim b As New SQLGroupTableBuilder(bm,"表A")
b.ConnectionName = cn
b.Groups.AddDef("M1")
b.Groups.AddDef("类型")
b.Totals.AddExp("进货_属性一","iif(属性一=true,1,null)")
b.Totals.AddExp("进货_属性二","iif(属性二=true,1,null)")
b.Subtotal = True
b.SubtotalLevel = 0
Tables("窗口1_Table1").DataSource = b.BuildDataSource()

With Tables("窗口1_Table1")
    .MergeMode = MergeModeEnum.Standard \'标准合并模式
    .MergeCols.Clear() \'清除原来的合并列
    .MergeCols.Add("M1") \'加入要合并的列
    .MergeSort = "客户"  \'设置合并模式下的排序方式
    .AllowMerge = True \'启用合并模式
End With

[此贴子已经被作者于2017/2/22 23:36:53编辑过]

--  作者:ericotaku
--  发布时间:2017/2/23 0:04:00
--  
谢谢 问题解决
 
[此贴子已经被作者于2017/2/23 0:59:51编辑过]