Foxtable(狐表)用户栏目专家坐堂 → 后台分组统计的时候能不能关连另外一个表的列


  共有2860人关注过本帖树形打印复制链接

主题:后台分组统计的时候能不能关连另外一个表的列

帅哥哟,离线,有人找我吗?
cyrollin
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
后台分组统计的时候能不能关连另外一个表的列  发帖心情 Post By:2018/12/28 18:05:00 [显示全部帖子]

Refer to : http://www.foxtable.com/webhelp/

能不能在生成的这个统计表里面,再加上一个身份证列???
 身份证号在 表B 里面,根据编号和表A建立的关联。

If Filter > "" Then
Dim b As New GroupTableBuilder("test",DataTables("表A"))
b.filter = filter
b.Groups.AddDef("编号")  '根据产品分组
b.Totals.AddDef("金额")    '对数量进行统计
b.Groups.AddDef("客户名字") '
b.Totals.AddDef("编号",AggregateEnum.Count,"次数") 
End If
[此贴子已经被作者于2018/12/28 18:05:36编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2018/12/28 20:04:00 [显示全部帖子]

是的,我就是看的这一页,但还没看懂怎么能实现我那个目的。

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2018/12/28 21:15:00 [显示全部帖子]

我找甜老师

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2018/12/28 21:33:00 [显示全部帖子]

 If Filter > "" Then 
 Dim b As New GroupTableBuilder("test",DataTables("表A"))
 b.filter = filter
 b.Groups.AddDef("编号")  '根据产品分组
 b.Totals.AddDef("金额")    '对数量进行统计
 b.Groups.AddDef("客户名字") 
b.Groups.AddDef("身份证号")  '身份证号在表B里面,怎么关联进来呢?

b.Totals.AddDef("编号",AggregateEnum.Count,"次数") 
 End If  
[此贴子已经被作者于2018/12/28 21:55:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2018/12/29 14:43:00 [显示全部帖子]

If Filter > "" Then
Dim b As New SQLGroupTableBuilder("统计表1","表A")
b.c
b.FromServer = True
b.filter = filter
b.addtable("表A","编号","表B","编号")
b.Groups.AddDef("编号") '根据产品分组
b.groups.adddef("身份证号")
b.Totals.AddDef("金额") '对数量进行统计
b.Groups.AddDef("客户姓名") '
b.Totals.AddDef("编号",AggregateEnum.Count,"次数") 
Forms("xxxxx").controls("Table1").Table.Datasource = b.BuildDataSource
End If

提示错误: 
1。 JOIN操作语法错误,
2.  生成的SQL语句错误,无法继续统计


[此贴子已经被作者于2018/12/29 14:59:24编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2018/12/29 15:12:00 [显示全部帖子]

refer to: 注意这行代码中,表名必须用大括号括起来:

b.Groups.AddDef("{订单}.产品ID"'根据订单表产品ID分组


统计错误,错误原因:
在查询定义的 selec t 列表中,别名 “编号” 循环引用

If Filter > "" Then
Dim b As New SQLGroupTableBuilder("统计表1","表A")
b.c
b.FromServer = True
b.filter = filter
b.addtable("表A","编号","表B","编号")
b.Groups.AddDef("{表A}.编号") '根据产品分组
b.groups.adddef("身份证号")
b.Totals.AddDef("金额") '对数量进行统计
b.Groups.AddDef("客户姓名") '
b.Totals.AddDef("{表A}.编号",AggregateEnum.Count,"次数") 
Forms("xxxxx").controls("Table1").Table.Datasource = b.BuildDataSource
End If

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2018/12/29 15:52:00 [显示全部帖子]

这是 filter 的代码

Dim Filter As String
With Tables("表A")
    If .Value IsNot Nothing Then
    Filter = "支付期间 like '季度付*'"
   vars("支付期间") = .Value
   End If
End With
With e.Form.Controls("DateTimePicker1")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "日期 >= #" & .Value & "#"
        vars("起始日期") = .Value
    End If
End With
With e.Form.Controls("DateTimePicker2")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "日期 <= #" & .Value & "#"
        vars("终止日期") = .Value
    End If
End With
If Filter > "" Then

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2018/12/29 17:14:00 [显示全部帖子]

恩恩, 好奇怪, 我做了一个sample, 运行结果完全没问题。
但在实例中就有错误, 始终显示:

统计错误,错误原因:
在查询定义的 selec t 列表中,别名 “编号” 循环引用

帮我分析一下是什么原因呢?

列名, 表名都核对了很多次,没有错误啊。
[此贴子已经被作者于2018/12/29 17:18:58编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2018/12/29 17:57:00 [显示全部帖子]

filter 里面有这样的筛选:

With Tables("表A")
    If .Value IsNot Nothing Then
    Filter = "支付期间 like '季度付%'"    ‘是不是这句有问题?
   vars("支付期间") = .Value
   End If
End With

现在出现这样的提示:
该字符串未被识别为有效的 DateTime。不能在 支付期间 列中存储 <>。所需类型是 DateTime。
[此贴子已经被作者于2018/12/29 18:08:42编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2018/12/29 20:46:00 [显示全部帖子]

帮我看一下,谢谢


[此贴子已经被作者于2018/12/29 21:38:16编辑过]

 回到顶部
总数 14 1 2 下一页