Foxtable(狐表)用户栏目专家坐堂 → 交叉统计,不显示列


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

主题:交叉统计,不显示列

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


加好友 发短信
等级:二尾狐 帖子:589 积分:4995 威望:0 精华:0 注册:2014/4/29 14:32:00
交叉统计,不显示列  发帖心情 Post By:2025/2/15 20:18:00 [显示全部帖子]


Dim sb As New StringBuilder
sb.Append("Sele  ct lsd.djbh As 单据编号, lsd.ckdm2 As 出库仓库, shangpin.spdm As 商品_代码,")
sb.Append("shangpin.spmc As 商品_名称, lsdmx.gg1dm As 颜色_代码, guige1.ggmc As 颜色_名称, lsdmx.gg2dm As 尺码_代码,")
sb.Append("guige2.ggmc As 尺码_名称, lsdmx.sl As 数量, lsdmx.pj As 吊牌金额 ")
sb.Append("Fr  om lsdmx")
sb.Append(" left outer Join guige1 On lsdmx.gg1dm = guige1.ggdm")
sb.Append(" left outer Join guige2 On lsdmx.gg2dm = guige2.ggdm")
sb.Append(" left outer Join lsd On lsdmx.djbh = lsd.djbh")
sb.Append(" left outer Join shangpin On lsdmx.sfzdm = shangpin.sfzdm")
sb.Append(" Where lsdmx.gg1dm = '70' and shangpin.spdm='eb0150'")
Output.Show(sb.ToString)


'Dim cmd As New SQLCommand
'Dim dt As DataTable
'cmd.ConnectionName = _mrsjy
'cmd.CommandText = sb.ToString
'dt = cmd.ExecuteReader()


Dim b As New CrossTableBuilder("统计表0", sb.ToString, _mrsjy)
b.HGroups.AddDef("商品_代码") '添加客户列用于水平分组
b.VGroups.AddDef("颜色_代码") '添加产品列用于垂直分组
b.Totals.AddDef("数量") '添加数量列用于统计
'b.Totals.AddDef("吊牌金额", AggregateEnum.Sum) '添加数量列用于统计
'b.HorizontalTotal = True
'b.VerticalTotal = True
b.Build '生成统计表
Maintable = Tables("统计表0") '打开生成的统计表
Output.Show(Tables("统计表0").Cols.Count)

以上代码交叉统计不显示列,用临时表dt的方式能够正常显示,请问是哪里没写对吗
图片点击可在新窗口打开查看此主题相关图片如下:baidushurufa_2025-2-15_20-16-43.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:二尾狐 帖子:589 积分:4995 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2025/2/17 9:07:00 [显示全部帖子]

在数据库里单独执行sql,能正常显示明细

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


加好友 发短信
等级:二尾狐 帖子:589 积分:4995 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2025/2/17 9:10:00 [显示全部帖子]

测试了,使用这个sql生成临时表
,然后通过临时表生成统计表能够正常显示

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


加好友 发短信
等级:二尾狐 帖子:589 积分:4995 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2025/2/17 13:02:00 [显示全部帖子]

数据库是sqlserver 2008的,,麻烦甜版了


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


加好友 发短信
等级:二尾狐 帖子:589 积分:4995 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2025/2/17 13:02:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test.rar

数据库和程序都在里面

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


加好友 发短信
等级:二尾狐 帖子:589 积分:4995 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2025/2/17 15:16:00 [显示全部帖子]

在测试库里,会正常显示,我的正式库里,还是不显示
图片点击可在新窗口打开查看此主题相关图片如下:22.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:二尾狐 帖子:589 积分:4995 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2025/2/17 15:20:00 [显示全部帖子]

bin目录清空了,项目也重启过

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


加好友 发短信
等级:二尾狐 帖子:589 积分:4995 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2025/2/17 15:39:00 [显示全部帖子]

换成临时表就可以生成

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


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


加好友 发短信
等级:二尾狐 帖子:589 积分:4995 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2025/2/17 20:08:00 [显示全部帖子]

蓝版,,我测试了,
因为设置了动态数据源,  在BeforeConnectOuterDataSource事件中设置了数据源的连接字符串(含密码)
在命令窗口查询时,输出的数据源链接字符串没有密码,不知道是不是这个原因(如果删掉动态的连接字符串,在外部数据源窗口添加数据源,就可以统计成功)
Output.Show(Connections("test").ConnectionString)
Dim b As New CrossTableBuilder("统计表1", "se lect * from {lsdmx}", "quanxian")
b.HGroups.AddDef("sfzdm") '添加客户列用于水平分组
b.VGroups.AddDef("gg1dm") '添加产品列用于垂直分组
b.Totals.AddDef("sl") '添加数量列用于统计
b.Build '生成统计表

动态添加后者修改后的数据源就统计失败,,外部数据源中直接设置的数据源就能统计成功
这个不知道要怎么弄
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:bak_test11.rar


[此贴子已经被作者于2025/2/17 20:16:59编辑过]

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


加好友 发短信
等级:二尾狐 帖子:589 积分:4995 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2025/2/18 8:29:00 [显示全部帖子]

正常了,感谢感谢感谢感谢甜版,帮了大忙了

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