[讨论]如何写BOM SQL_Hadoop,ERP及大数据讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Hadoop,ERP及大数据讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3518 | 回复: 0   主题: [讨论]如何写BOM SQL        下一篇 
lijia.peng
注册用户
等级:上尉
经验:753
发帖:66
精华:0
注册:2013-11-5
状态:离线
发送短消息息给lijia.peng 加好友    发送短消息息给lijia.peng 发消息
发表于: IP:您无权察看 2013-11-11 15:12:54 | [全部帖] [楼主帖] 楼主

1、 在Form和包中

应当使用系统标准API来展开:apps.bompexpl.exploder_userexit,可以展开任意级的多级清单,含指定类型的成本。我们不需要自己写展开BOM的函数,也不需要用SQL直接取,这样可以保证最大的代码健壮性和兼容性。

2、 在日常的SQL中,也要参考该标准API来书写,下面是取当前时点(Sysdate)单层BOM的例子,尚缺考虑Revision:

SELECT mst.segment1 assembly_item,
boms.alternate_bom_designator alternate,
bics.item_num,
msic.segment1 component_item,
bics.component_quantity,
bics.effectivity_date,
bics.disable_date
FROM inv.mtl_system_items_b        mst,
apps.bom_bill_of_materials    boms,
apps.bom_inventory_components bics,
inv.mtl_system_items_b        msic
WHERE mst.organization_id = boms.organization_id
AND mst.inventory_item_id = boms.assembly_item_id
AND boms.bill_sequence_id = bics.bill_sequence_id
AND boms.organization_id = msic.organization_id
AND bics.component_item_id = msic.inventory_item_id
--Item
AND mst.bom_enabled_flag = 'Y'
AND mst.bom_item_type IN (1, 2, 3, 4) --Dependent
--BOM Header
AND boms.assembly_type = 1 --1 Manufature,2 ENG
AND nvl(boms.effectivity_control, 1) <= 3
--BOM Line
AND nvl(bics.disable_date, SYSDATE) >= SYSDATE
AND bics.effectivity_date <= SYSDATE
AND bics.implementation_date IS NOT NULL
AND nvl(bics.eco_for_production, 2) = 2
--Filters
AND mst.organization_id = 82
AND mst.segment1 LIKE '96%'
ORDER BY 1, 2 NULLS FIRST, 3




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论