以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  简洁代码提取多表数据  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=86795)

--  作者:dy6608
--  发布时间:2016/6/26 15:45:00
--  简洁代码提取多表数据
求简洁代码提取多表数据,现上传foxtable文件,求窗口BOM计算按钮代码,原文件中代码不可用,但复制到命令窗口可执行,另外本人觉得原代码太繁琐,求简洁高效代码。谢谢老师指点!
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:my_bom.zip


--  作者:大红袍
--  发布时间:2016/6/26 16:23:00
--  
直接说明逻辑,你到底想做什么。
--  作者:dy6608
--  发布时间:2016/6/26 16:52:00
--  
依据表《导入数据源》中成品的颜色、平方数、等条件分别从《半成品》和《原材料》中提取和条件相对应的数据填充到《BOM待导入》中,我上传的文件有个窗口按钮有代码,但运行出错,如果放到命令窗口可执行,代码主要是依据行与列的坐标位置来取值的,如果《导入数据源》中的行与列位置变动就取不到值和运行错误。想求老师赐简易可达同样效果的代码。《导入数据源》中的成品是由用户添加输入进去的,《BOM待导入》中的记录是代码填充进去的。谢谢老师
--  作者:大红袍
--  发布时间:2016/6/26 16:56:00
--  
 请,直接说明逻辑啊,根据什么条件提取数据啊。如果没有逻辑,怎么提取啊。
--  作者:dy6608
--  发布时间:2016/6/26 17:42:00
--  
比如:依据《导入数据源》中的第一条记录,成品物料编码是1010101008,颜色是红,平方数是1.5,现要分别从《半成品》和《原材料》中提取该成品对应的数据:(1)大类=线芯;规格型号=1.5;颜色=红;物料名称包含PVC  J-70 即{H3801080002BB BV型裸铜单根导体PVC(J-70)绝缘线芯红色 1.5};(2)大类=导体;规格型号=1.5;颜色不考虑;物料名称包含BV,即{H28010800 BV型裸铜单支导体 1.5};(3)类别=PVC料,颜色=红和类别=铜丝,颜色不考虑。大致逻辑就这样填充到《BOM待导入》表中。
烦请老师打开上传的文件用窗口按钮代码到命令窗口测试,可先把《导入数据源》中成品空,只保留2-3条不同规格型号和不同颜色的记录,同时把《BOM待导入》清空,再用代码测试。谢谢


--  作者:dy6608
--  发布时间:2016/6/26 17:51:00
--  
就因为取值条件比较复杂,所以我一直搞不明白,逻辑也复杂,我描述的也可能不够清晰,请老师换不同的成品多测试以便了解其中的逻辑
--  作者:大红袍
--  发布时间:2016/6/26 23:31:00
--  
以下是引用dy6608在2016/6/26 17:51:00的发言:
就因为取值条件比较复杂,所以我一直搞不明白,逻辑也复杂,我描述的也可能不够清晰,请老师换不同的成品多测试以便了解其中的逻辑

 

呃,你到底要根据这些数据做什么?依据什么,最后得到什么?有没有一个统一的标准,归纳出来,如果没有这种逻辑,别人也不知道怎么写代码啊。


--  作者:dy6608
--  发布时间:2016/6/27 9:16:00
--  
老师:
假设《产品表》分别有  CP1 规格是1.5cm  颜色是红色   和   CP2 规格是2.5 颜色是绿色:
(1)先根据产品CP1的规格和颜色从《半成品表》提取:名称=\'线芯\',规格=1.5cm,颜色=\'红色\' 和名称=\'导体\',规格=1.5cm,颜色=\'本色\' 的两条半成品
        再从《原材料表》提取名称=\'PVC料\' 颜色=\'红色\' 和 名称=\'铜丝\'的两条原材料。将提取到的半成品和原材料连同产品CP1一起填充到《产品结构表》中。
(2)再根据产品CP2的规格和颜色同(1)一样提取半成品和原材料再填充。

如果《产品表》有多条产品就这样依次逐一提取。

                                              谢谢老师!

--  作者:dy6608
--  发布时间:2016/6/27 9:19:00
--  
提取的这些数据就是每个产品的物料清单,做产品BOM用
--  作者:大红袍
--  发布时间:2016/6/27 9:44:00
--  

汗,看不懂你要表达的意思。

 

请结合你例子的数据,举例说明,要做什么啊。