Foxtable(狐表)用户栏目专家坐堂 → 调用后台统计数据


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

主题:调用后台统计数据

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19384 威望:0 精华:1 注册:2008/9/12 9:19:00
调用后台统计数据  发帖心情 Post By:2018/7/7 7:45:00 [只看该作者]

以下是在订单模块中统计产品欠货的代码,需要加载产成品仓的模块-产品明细。我不想加载产品明细的表,如何调用后台统计的数据呢?

'生成产品欠货统计表
Dim dta As New DataTableBuilder("产品欠货统计")
dta.AddDef("产品代码", Gettype(String), 32)
dta.AddDef("产品", Gettype(String), 32)
dta.AddDef("颜色", Gettype(String), 32)
dta.AddDef("订单数量", Gettype(Integer))
dta.AddDef("发货数量", Gettype(Integer))
dta.AddDef("欠货数量", Gettype(Integer))
dta.Build()
'填充数据
Dim b As New Filler
b.SourceTable = DataTables("销售订单明细")
b.SourceCols = "产品代码,产品,颜色" 
b.DataTable = DataTables("产品欠货统计")
b.DataCols = "产品代码,产品,颜色"
b.ExcludeExistValue = True
b.Fill()
b = New Filler
b.SourceTable = DataTables("产品明细")
b.SourceCols = "产品代码,产品,颜色" 
b.DataTable = DataTables("产品欠货统计")
b.DataCols = "产品代码,产品,颜色"
b.ExcludeExistValue = True
b.Fill()
'产品欠货统计
For Each dra As DataRow In DataTables("产品欠货统计").DataRows
    dra("订单数量") = DataTables("销售订单明细").Compute("Sum(订单数量)"," [产品代码] = '" & dra("产品代码") & "' and [颜色] = '" & dra("颜色") & "'")
    dra("发货数量") = DataTables("产品明细").Compute("Sum(出仓数量)"," [产品代码] = '" & dra("产品代码") & "' and [颜色] = '" & dra("颜色") & "'")
    dra("欠货数量") = dra("订单数量") -  dra("发货数量")
Next
Forms("销售订单统计").Controls("统计表").Table.DataSource = DataTables("产品欠货统计")
Forms("销售订单统计").Controls("统计表").Table.AutoSizeCols() '设置自动列宽
'删除数值为空的记录
Tables("销售订单统计_统计表").DataTable.DeleteFor("[欠货数量] = 0" )
Tables("销售订单统计_统计表").DataTable.SysStyles("EmptyArea").BackColor = Color.WhiteSmoke '表空白区的背景设置为灰色
Tables("销售订单统计_统计表").Sort = "产品代码,颜色"
Tables("销售订单统计_统计表").Appearance.ShowSortIcon = False
Tables("销售订单统计_统计表").Refresh
'自动列宽
Tables("销售订单统计_统计表").AutoSizeCols()


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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/7 9:07:00 [只看该作者]

用sql直接用数据库取不就行了

select 产品代码,产品,颜色, 0 as 订单数量,0 as 发货数量, 0 as 欠货数量 from 销售订单明细
union all
select 产品代码,产品,颜色, 0 as 订单数量,0 as 发货数量, 0 as 欠货数量 from 产品明细


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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19384 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2018/7/7 9:32:00 [只看该作者]

能不能帮我用到上面的代码中去呢?

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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/7 10:00:00 [只看该作者]

sql,去掉换行,自己用到sqlcommand:
Select *,订单数量 - 发货数量 As 欠货数量 from (
Select 产品代码,产品,颜色,sum(订单数量) As 订单数量,0 As 发货数量 from 销售订单明细 group by 产品代码,产品,颜色
union all
Select 产品代码,产品,颜色,0 As 订单数量,sum(发货数量) As 发货数量 from 产品明细 group by 产品代码,产品,颜色) As a where 订单数量 - 发货数量 <> 0

dim dt as datatable = sqlcommand返回的表

Forms("销售订单统计").Controls("统计表").Table.DataSource = dt 
Forms("销售订单统计").Controls("统计表").Table.AutoSizeCols() '设置自动列宽
'删除数值为空的记录
Tables("销售订单统计_统计表").DataTable.SysStyles("EmptyArea").BackColor = Color.WhiteSmoke '表空白区的背景设置为灰色
Tables("销售订单统计_统计表").Sort = "产品代码,颜色"
Tables("销售订单统计_统计表").Appearance.ShowSortIcon = False
Tables("销售订单统计_统计表").Refresh
'自动列宽
Tables("销售订单统计_统计表").AutoSizeCols()

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19384 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2018/7/7 11:03:00 [只看该作者]

还是没弄好,我的数据库名:WgCableERP

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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/7 11:04:00 [只看该作者]

贴出你代码

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19384 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2018/7/7 11:37:00 [只看该作者]

1楼是加载产品明细表后可以正常运行的代码,数据库名WgCableERP

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


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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/7 11:42:00 [只看该作者]

用4楼的方式。

不然就不要使用filler,用这种方式填充:http://www.foxtable.com/webhelp/scr/1533.htm

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19384 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2018/7/7 12:06:00 [只看该作者]

4楼的代码一时搞不定,能帮我完善取代1楼的代码吗?或改进1楼的代码.我就是不想加载产品明细表

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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/7 14:05:00 [只看该作者]

不加载就不要使用filler,用这种方式填充:http://www.foxtable.com/webhelp/scr/1533.htm


 回到顶部
总数 34 1 2 3 4 下一页