以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  跨表统计问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=157195)

--  作者:文竹2017
--  发布时间:2020/10/7 14:39:00
--  跨表统计问题

物料需求(BOM)统计

假定有下面三个表。

生产计划表,用于输入每个产品计划的生产数量:

零件用量表,用户输入每单个产品使用各零件的数量:

零件需求表,用于根据生产计划表和零件需求表,统计出各种零件总的需求数量:

这是一个很经典的跨表统计的实例,下面我们用三种不同的方法,来得到这个需求统计表。

方法一

SQLGroupTableBuilder,在窗口或者菜单新建一个按钮,将其代码设置为:

Dim gb As new SQLGroupTableBuilder("统计表","零件用量")
gb.AddTable(
"零件用量","产品","生产计划","产品")
gb.Groups.AddDef(
"零件")
gb.Totals.AddExp(
"需求数量","[生产数量] * [用量]")
gb.Build()

MainTable = Tables(
"统计表")

方法二

SQLJoinTableBuilder,在窗口或者菜单新建一个按钮,将其代码设置为:

Dim jb As new SQLJoinTableBuilder("统计表","零件用量")
jb
.AddTable("零件用量","产品","生产计划","产品")
jb
.AddCols("零件",True)
jb
.AddExp("需求数量","sum([生产数量] * [用量])")
jb
.Build()
MainTable
= Tables("统计表")

 

 

我想利用上面的代码制作一个这样的窗口实现根据计划自动求解构件的数量统计

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:新建文件夹 (3).zip


--  作者:有点蓝
--  发布时间:2020/10/7 15:35:00
--  
先计算半成品需求
a、从生产计划获取产品的生产数量
b、从半成品用量表获取用量
c、半成品需求数=生产数量*用量

同样的方法计算构建数量。

这种使用这种方法计算即可:http://www.foxtable.com/webhelp/topics/1472.htm