--========================================================================

-- Procedure    : exploder_userexit

-- Parameters:    org_id        organization_id

--         order_by    1 - Op seq, item seq

--                 2 - Item seq, op seq

--         grp_id        unique value to identify current explosion

--                 use value from sequence bom_small_expl_temp_s

--         session_id    unique value to identify current session

--                  use value from bom_small_expl_temp_session_s

--         levels_to_explode

--         bom_or_eng    1 - BOM

--                 2 - ENG

--         impl_flag    1 - implemented only

--                 2 - both impl and unimpl

--         explode_option    1 - All

--                2 - Current

--                3 - Current and future

--        module        1 - Costing

--                2 - Bom

--                3 - Order entry

--        cst_type_id    cost type id for costed explosion

--        std_comp_flag    1 - explode only standard components

--                2 - all components

--        expl_qty    explosion quantity

--        item_id        item id of asembly to explode

--        list_id        unique id for lists in bom_lists for range

--        report_option    1 - cost rollup with report

--                2 - cost rollup no report

--                3 - temp cost rollup with report

--        cst_rlp_id    rollup_id

--        req_id        request id

--        prgm_appl_id    program application id

--        prg_id        program id

--        user_id        user id

--        lock_flag    1 - do not lock the table

--                2 - lock the table

--        alt_rtg_desg    alternate routing designator

--        rollup_option    1 - single level rollup

--                2 - full rollup

--        plan_factor_flag1 - Yes

--                2 - No

--        alt_desg    alternate bom designator

--        rev_date    explosion date

--        comp_code    concatenated component code lpad 16

--              show_rev        1 - obtain current revision of component

--                2 - don't obtain current revision

--        material_ctrl   1 - obtain subinventory locator

--                2 - don't obtain subinventory locator

--        lead_time    1 - calculate offset percent

--                2 - don't calculate offset percent

--        eff_control     1 - date effectivity

--                2 - serial effectivity

--        err_msg        error message out buffer

--        error_code    error code out.  returns sql error code

--                if sql error, 9999 if loop detected.

--========================================================================

DECLARE

ERR_MSG      VARCHAR2 (100);

ERROR_CODE   VARCHAR2 (100);

BEGIN

BOMPXINQ.EXPLODER_USEREXIT (VERIFY_FLAG         => 0          --DEFAULT   0

, ORG_ID              => 91 --select organization_id, name from hr_all_organization_units

, ORDER_BY            => 1          --DEFAULT   1

, GRP_ID              => 0          --user define

, SESSION_ID          => 0          --DEFAULT   0

, LEVELS_TO_EXPLODE   => 1          --DEFAULT   1

, BOM_OR_ENG          => 1          --DEFAULT   1

, IMPL_FLAG           => 1          --DEFAULT   1

, PLAN_FACTOR_FLAG    => 2          --DEFAULT   2

, EXPLODE_OPTION      => 2          --DEFAULT   2

, MODULE              => 2          --DEFAULT   2

, CST_TYPE_ID         => 0          --DEFAULT   0

, STD_COMP_FLAG       => 0          --DEFAULT   0

, EXPL_QTY            => 1          --DEFAULT   1

, ITEM_ID             => 11097 --select inventory_item_id from mtl_system_items_b where segment1 = 'ITEM-NAME'

, UNIT_NUMBER_FROM    => NULL                  --

, UNIT_NUMBER_TO      => NULL                  --

, ALT_DESG            => ''        --DEFAULT   ''

, COMP_CODE           => ''        --DEFAULT   ''

, REV_DATE            => SYSDATE --DEFAULT   sysdate

, SHOW_REV            => 2          --DEFAULT   2

, MATERIAL_CTRL       => 2          --DEFAULT   2

, LEAD_TIME           => 2          --DEFAULT   2

, ERR_MSG             => ERR_MSG               --

, ERROR_CODE          => ERROR_CODE            --

);

DBMS_OUTPUT.PUT_LINE ('ERR_MSG = ' || ERR_MSG);

DBMS_OUTPUT.PUT_LINE ('ERROR_CODE = ' || ERROR_CODE);

END;

-- Search Export bom list result

--========================================================================

DELETE FROM BOM_SMALL_EXPL_TEMP WHERE GROUP_ID = 0;

SELECT

EXP.ORGANIZATION_ID

, EXP.PLAN_LEVEL

, EXP.TOP_ITEM_ID

, EXP.ASSEMBLY_ITEM_ID

, EXP.COMPONENT_ITEM_ID

, (SELECT MSI.SEGMENT1 FROM MTL_SYSTEM_ITEMS_B MSI WHERE MSI.INVENTORY_ITEM_ID = EXP.TOP_ITEM_ID AND MSI.ORGANIZATION_ID = EXP.ORGANIZATION_ID) TOP_ITEM

, (SELECT MSI.SEGMENT1 FROM MTL_SYSTEM_ITEMS_B MSI WHERE MSI.INVENTORY_ITEM_ID = EXP.ASSEMBLY_ITEM_ID AND MSI.ORGANIZATION_ID = EXP.ORGANIZATION_ID) ASSEMBLY_ITEM

, (SELECT MSI.SEGMENT1 FROM MTL_SYSTEM_ITEMS_B MSI WHERE MSI.INVENTORY_ITEM_ID = EXP.COMPONENT_ITEM_ID AND MSI.ORGANIZATION_ID = EXP.ORGANIZATION_ID) COMPNENT_ITEM

, (SELECT MSI.PRIMARY_UOM_CODE FROM MTL_SYSTEM_ITEMS_B MSI WHERE MSI.INVENTORY_ITEM_ID = EXP.COMPONENT_ITEM_ID AND MSI.ORGANIZATION_ID = EXP.ORGANIZATION_ID) UNIT_OF_MEASURE

, (SELECT MSI.PRIMARY_UNIT_OF_MEASURE FROM MTL_SYSTEM_ITEMS_B MSI WHERE MSI.INVENTORY_ITEM_ID = EXP.COMPONENT_ITEM_ID AND MSI.ORGANIZATION_ID = EXP.ORGANIZATION_ID) UNIT_OF_MEASURE_NAME

, EXP.ITEM_NUM

, EXP.OPERATION_SEQ_NUM

, EXP.EXTENDED_QUANTITY

, EXP.SORT_ORDER

, EXP.GROUP_ID

, EXP.COMPONENT_YIELD_FACTOR

, EXP.ITEM_COST

, EXP.INCLUDE_IN_ROLLUP_FLAG

, EXP.BASED_ON_ROLLUP_FLAG

, EXP.ACTUAL_COST_TYPE_ID

, EXP.COMPONENT_QUANTITY

, EXP.SHRINKAGE_RATE

--, SO_BASIS, OPTIONAL, MUTUALLY_EXCLUSIVE_OPTIONS, CHECK_ATP, SHIPPING_ALLOWED, REQUIRED_TO_SHIP, REQUIRED_FOR_REVENUE, INCLUDE_ON_SHIP_DOCS

--, PICK_COMPONENTS, PRIMARY_UOM_CODE, PRIMARY_UNIT_OF_MEASURE, BASE_ITEM_ID, ATP_COMPONENTS_FLAG, ATP_FLAG, BOM_ITEM_TYPE, PICK_COMPONENTS_FLAG, REPLENISH_TO_ORDER_FLAG, SHIPPABLE_ITEM_FLAG, CUSTOMER_ORDER_FLAG, INTERNAL_ORDER_FLAG, CUSTOMER_ORDER_ENABLED_FLAG, INTERNAL_ORDER_ENABLED_FLAG, SO_TRANSACTIONS_FLAG, MTL_TRANSACTIONS_ENABLED_FLAG, STOCK_ENABLED_FLAG, DESCRIPTION,  CONFIGURATOR_FLAG, PRICE_LIST_ID, ROUNDING_FACTOR, PRICING_CONTEXT

, COMPONENT_CODE, LOOP_FLAG, INVENTORY_ASSET_FLAG, PLANNING_FACTOR, PARENT_BOM_ITEM_TYPE, WIP_SUPPLY_TYPE,  EFFECTIVITY_DATE, DISABLE_DATE, IMPLEMENTATION_DATE, SUPPLY_SUBINVENTORY, BASIS_TYPE

FROM BOM_SMALL_EXPL_TEMP EXP

WHERE 1 = 1

AND EXP.GROUP_ID = 0;

Export BOM - BOMPXINQ.EXPLODER_USEREXIT API的更多相关文章

  1. EBS API及接口清单

    https://www.cnblogs.com/lizicheng/p/9521742.html 模块 应用场景 类型 API/接口 AP 付款核销 API ap_pay_invoice_pkg.ap ...

  2. 所有标准API

    序号 系统版本 模块 应用场景 类型 API/接口 参数规格 样例代码 备注 登记者 登记时间 关键字 1 12.1.3 AP 付款核销 API ap_pay_invoice_pkg.ap_pay_i ...

  3. vue项目实践-添加axios封装api请求

    安装 axios npm install axios --save 创建实例 (utils/fetch.js) axios 默认提交格式为:application/json 可使用 qs 模块(需要安 ...

  4. 简单封装axios api

    可以在代码逻辑中写axios请求,处理请求结果,但是随着项目越来越大,代码会很繁琐,不容易维护,所以,可以把一些在所有请求中都要处理的逻辑抽取出来,封装成api方法.比如每次请求中都要判断是否有权限, ...

  5. 前端API层架构,也许你做得还不够

    上午好,今天为大家分享下个人对于前端API层架构的一点经验和看法.架构设计是一条永远走不完的路,没有最好,只有更好.这个道理适用于软件设计的各个场景,前端API层的设计也不例外,如果您觉得在调用接口时 ...

  6. 探索 模块打包 exports和require 与 export和import 的用法和区别

    菜单快捷导航: CommonJS 之 exports和require用法 ES6 Module 之 export 和 import 用法 CommonJS和ES6 Module的区别 循环依赖 和 解 ...

  7. 【uni-app】uni.request二次封装,更好的管理api接口和使用

    前言 之前写了一个Vue.js的axios二次封装(点击跳转),这次是uni-app,uni-app是基于vue.js框架的,我觉得是很好用的一个框架,而且一套代码编译那么多平台,非常节省成本,当然, ...

  8. Javascript学习笔记

    Javascript 2016年12月19日整理 JS基础 Chapter1 JS是一门运行在浏览器客户端的脚本编程语言,前台语言 组成部分 1. ECMAscript JS标准 2. DOM 通过J ...

  9. 【腾讯Bugly干货分享】微信小程序开发思考总结——腾讯“信用卡还款”项目实践

    本文来自于腾讯bugly开发者社区,未经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/58212d0fa7a7574c4f4cc3c5 作者:peggy 小程序概述 1 ...

随机推荐

  1. python(三)一个文件读写操作的小程序

    我们要实现一个文件读写操作的小程序 首先我们有一个文件 我们要以"============"为界限,每一个角色分割成一个独立的txt文件,按照分割线走的话是分成 xiaoNa_1. ...

  2. shell 实现类似php的require_once函数

    config.sh #/bin/bash require_once() { #File the true path ,To prevent a symbolic link local realpath ...

  3. mysql group by优化

    mysql> explain select actor.first_name,actor.last_name,count(*) from sakila.film_actor inner join ...

  4. 操作数据(insert、update、delete)

    插入数据 使用Insert Into 插入 if(exists(select * from sys.databases where name = 'webDB')) drop database web ...

  5. css tricks

    http://css-tricks.com/styling-cross-browser-compatible-range-inputs-css/ http://css-tricks.com/brows ...

  6. 1034: [ZJOI2008]泡泡堂BNB - BZOJ

    Description 第XXXX届NOI期间,为了加强各省选手之间的交流,组委会决定组织一场省际电子竞技大赛,每一个省的代表队由n名选手组成,比赛的项目是老少咸宜的网络游戏泡泡堂.每一场比赛前,对阵 ...

  7. Java连接redis的使用示例

    在多线程下使用Jedis 在不同的线程中使用相同的Jedis实例会发生奇怪的错误.但是创建太多的实现也不好因为这意味着会建立很多sokcet连接,也会导致奇怪的错误发生.单一Jedis实例不是线程安全 ...

  8. flash链接需要后台调用时的插入flash方法

    <!--<textarea id="syslink" style="display:none;">// 1:打宝塔 2:山寨玩法 3:跨服竞技 ...

  9. 【斜率DP】BZOJ 1010:玩具装箱

    1010: [HNOI2008]玩具装箱toy Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 7537  Solved: 2888[Submit][St ...

  10. 返回canceled 代码 的原因

    ajax 不支持跨域操作jsonp,才导致返回canceled 代码. 解决的办法就是 <script>标签.jquery 也为我们提供了$.Ajax()方法或$.getScript()方 ...