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


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

主题:调用后台统计数据

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111409 积分:567115 威望: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 产品明细


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111409 积分:567115 威望: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()

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111409 积分:567115 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/7 11:04:00 [显示全部帖子]

贴出你代码

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111409 积分:567115 威望: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

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111409 积分:567115 威望: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


 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111409 积分:567115 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/7 15:35:00 [显示全部帖子]

混了这么多年了,连sqlcommand都不会用吗?

Dim cmd As New SQLCommand
Dim
 dt As DataTable
cmd.ConnectionName = 
"region"
cmd.CommandText = 
"4楼的sql"
dt = cmd.ExecuteReader()

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()

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111409 积分:567115 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/11/26 9:05:00 [显示全部帖子]

再套一个分组

cmd.CommandText = "S elect *,订单数量 - 发货数量 As 欠货数量 from (select 产品代码,产品型号规格,颜色,sum(订单数量) As 订单数量,sum(发货数量) As 发货数量 from (S elect 产品代码,产品型号规格,颜色,sum(订单数量) As 订单数量,0 As 发货数量 from 销售订单明细 group by 产品代码,产品型号规格,颜色 union all S elect 产品代码,产品型号规格,颜色,0 As 订单数量,sum(发货数量) As 发货数量 from 销售发货明细 group by 产品代码,产品型号规格,颜色) As a group by 产品代码,产品型号规格,颜色) as b where 订单数量 - 发货数量 <> 0 "

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111409 积分:567115 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/11/26 9:25:00 [显示全部帖子]

把sql拿去数据库执行看看有没有问题,如果没有就是其它代码的原因

 回到顶部
帅哥,在线噢!
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111409 积分:567115 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/4/23 16:27:00 [显示全部帖子]

参与分组吗

 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111409 积分:567115 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/4/23 17:01:00 [显示全部帖子]

比如

Select 产品代码,产品型号规格,颜色,sum(订单数量) As 订单数量,0 As 发货数量 from 销售订单明细 group by 产品代码,产品型号规格,颜色
改为
(select a.*,b.计量单位 from (Select 产品代码,产品型号规格,颜色,sum(订单数量) As 订单数量,0 As 发货数量 from 销售订单明细 group by 产品代码,产品型号规格,颜色) as a left join 销售订单明细 as b on a.产品代码=b.产品代码 and a.产品型号规格=b.产品型号规格 and a.颜色=b.颜色 )

销售发货按同样的方法改

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