|
最初由 sunweijie-22 发布
[B]楼上说的递归我也试过了,感觉不好,要考虑的问题很多,一般建议还是用oracle自带的那个包比较好 [/B]
一个例子:用BOMPXINQ.EXPORT_BOM得到展开结果。
-- Author : rolleaway
-- Created : 2006/02/17 AM 09:30:59
-- Purpose : export bill of material
--application version racle erp 11.5.7
--database version : oracle 8.1.7
--reference: Manufacturing APIs and Open Interfaces Manual
--premise:
/*create table cux_bom_export_temp
as
select *
from bom_small_expl_temp*/
--example :
declare
l_bom_export_tab BOMPXINQ.bomexporttabtype;
l_Err_Msg VARCHAR2(240);
l_Error_Code NUMBER;
begin
fnd_global.APPS_INITIALIZE(1911,50191,401);
BOMPXINQ.EXPORT_BOM( 0 ,
'组织层次结构' ,
62590 ,
84,
'',
2,
0,
l_bom_export_tab ,
l_Err_Msg ,
l_Error_Code
);
if(l_Error_Code<>0)then
dbms_output.put_line(l_Error_Code||'-'||l_Err_Msg);
end if;
for i in 1..l_bom_export_tab.count loop
insert into cux_bom_export_temp(TOP_BILL_SEQUENCE_ID ,
BILL_SEQUENCE_ID ,
ORGANIZATION_ID ,
COMPONENT_SEQUENCE_ID ,
COMPONENT_ITEM_ID ,
PLAN_LEVEL ,
EXTENDED_QUANTITY ,
SORT_ORDER ,
REQUEST_ID ,
PROGRAM_APPLICATION_ID ,
PROGRAM_ID ,
PROGRAM_UPDATE_DATE ,
GROUP_ID ,
SESSION_ID ,
SELECT_FLAG ,
SELECT_QUANTITY ,
EXTEND_COST_FLAG ,
TOP_ALTERNATE_DESIGNATOR ,
TOP_ITEM_ID ,
CONTEXT ,
ATTRIBUTE1 ,
ATTRIBUTE2 ,
ATTRIBUTE3 ,
ATTRIBUTE4 ,
ATTRIBUTE5 ,
ATTRIBUTE6 ,
ATTRIBUTE7 ,
ATTRIBUTE8 ,
ATTRIBUTE9 ,
ATTRIBUTE10 ,
ATTRIBUTE11 ,
ATTRIBUTE12 ,
ATTRIBUTE13 ,
ATTRIBUTE14 ,
ATTRIBUTE15 ,
HEADER_ID ,
LINE_ID ,
LIST_PRICE ,
SELLING_PRICE ,
COMPONENT_YIELD_FACTOR ,
ITEM_COST ,
INCLUDE_IN_ROLLUP_FLAG ,
BASED_ON_ROLLUP_FLAG ,
ACTUAL_COST_TYPE_ID ,
COMPONENT_QUANTITY ,
SHRINKAGE_RATE ,
SO_BASIS ,
OPTIONAL ,
MUTUALLY_EXCLUSIVE_OPTIONS ,
CHECK_ATP ,
SHIPPING_ALLOWED ,
REQUIRED_TO_SHIP ,
REQUIRED_FOR_REVENUE ,
INCLUDE_ON_SHIP_DOCS ,
INCLUDE_ON_BILL_DOCS ,
LOW_QUANTITY ,
HIGH_QUANTITY ,
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 ,
ASSEMBLY_ITEM_ID ,
CONFIGURATOR_FLAG ,
PRICE_LIST_ID ,
ROUNDING_FACTOR ,
PRICING_CONTEXT ,
PRICING_ATTRIBUTE1 ,
PRICING_ATTRIBUTE2 ,
PRICING_ATTRIBUTE3 ,
PRICING_ATTRIBUTE4 ,
PRICING_ATTRIBUTE5 ,
PRICING_ATTRIBUTE6 ,
PRICING_ATTRIBUTE7 ,
PRICING_ATTRIBUTE8 ,
PRICING_ATTRIBUTE9 ,
PRICING_ATTRIBUTE10 ,
PRICING_ATTRIBUTE11 ,
PRICING_ATTRIBUTE12 ,
PRICING_ATTRIBUTE13 ,
PRICING_ATTRIBUTE14 ,
PRICING_ATTRIBUTE15 ,
COMPONENT_CODE ,
LOOP_FLAG ,
INVENTORY_ASSET_FLAG ,
PLANNING_FACTOR ,
OPERATION_SEQ_NUM ,
PARENT_BOM_ITEM_TYPE ,
WIP_SUPPLY_TYPE ,
ITEM_NUM ,
EFFECTIVITY_DATE ,
DISABLE_DATE ,
IMPLEMENTATION_DATE ,
SUPPLY_SUBINVENTORY ,
SUPPLY_LOCATOR_ID ,
COMPONENT_REMARKS ,
CHANGE_NOTICE ,
OPERATION_LEAD_TIME_PERCENT ,
REXPLODE_FLAG ,
COMMON_BILL_SEQUENCE_ID ,
OPERATION_OFFSET ,
CURRENT_REVISION ,
LOCATOR ,
FROM_END_ITEM_UNIT_NUMBER ,
TO_END_ITEM_UNIT_NUMBER )
values(l_bom_export_tab(i).TOP_BILL_SEQUENCE_ID ,
l_bom_export_tab(i).BILL_SEQUENCE_ID ,
l_bom_export_tab(i).ORGANIZATION_ID ,
l_bom_export_tab(i).COMPONENT_SEQUENCE_ID ,
l_bom_export_tab(i).COMPONENT_ITEM_ID ,
l_bom_export_tab(i).PLAN_LEVEL ,
l_bom_export_tab(i).EXTENDED_QUANTITY ,
l_bom_export_tab(i).SORT_ORDER ,
l_bom_export_tab(i).REQUEST_ID ,
l_bom_export_tab(i).PROGRAM_APPLICATION_ID ,
l_bom_export_tab(i).PROGRAM_ID ,
l_bom_export_tab(i).PROGRAM_UPDATE_DATE ,
l_bom_export_tab(i).GROUP_ID ,
l_bom_export_tab(i).SESSION_ID ,
l_bom_export_tab(i).SELECT_FLAG ,
l_bom_export_tab(i).SELECT_QUANTITY ,
l_bom_export_tab(i).EXTEND_COST_FLAG ,
l_bom_export_tab(i).TOP_ALTERNATE_DESIGNATOR ,
l_bom_export_tab(i).TOP_ITEM_ID ,
l_bom_export_tab(i).CONTEXT ,
l_bom_export_tab(i).ATTRIBUTE1 ,
l_bom_export_tab(i).ATTRIBUTE2 ,
l_bom_export_tab(i).ATTRIBUTE3 ,
l_bom_export_tab(i).ATTRIBUTE4 ,
l_bom_export_tab(i).ATTRIBUTE5 ,
l_bom_export_tab(i).ATTRIBUTE6 ,
l_bom_export_tab(i).ATTRIBUTE7 ,
l_bom_export_tab(i).ATTRIBUTE8 ,
l_bom_export_tab(i).ATTRIBUTE9 ,
l_bom_export_tab(i).ATTRIBUTE10 ,
l_bom_export_tab(i).ATTRIBUTE11 ,
l_bom_export_tab(i).ATTRIBUTE12 ,
l_bom_export_tab(i).ATTRIBUTE13 ,
l_bom_export_tab(i).ATTRIBUTE14 ,
l_bom_export_tab(i).ATTRIBUTE15 ,
l_bom_export_tab(i).HEADER_ID ,
l_bom_export_tab(i).LINE_ID ,
l_bom_export_tab(i).LIST_PRICE ,
l_bom_export_tab(i).SELLING_PRICE ,
l_bom_export_tab(i).COMPONENT_YIELD_FACTOR ,
l_bom_export_tab(i).ITEM_COST ,
l_bom_export_tab(i).INCLUDE_IN_ROLLUP_FLAG ,
l_bom_export_tab(i).BASED_ON_ROLLUP_FLAG ,
l_bom_export_tab(i).ACTUAL_COST_TYPE_ID ,
l_bom_export_tab(i).COMPONENT_QUANTITY ,
l_bom_export_tab(i).SHRINKAGE_RATE ,
l_bom_export_tab(i).SO_BASIS ,
l_bom_export_tab(i).OPTIONAL ,
l_bom_export_tab(i).MUTUALLY_EXCLUSIVE_OPTIONS ,
l_bom_export_tab(i).CHECK_ATP ,
l_bom_export_tab(i).SHIPPING_ALLOWED ,
l_bom_export_tab(i).REQUIRED_TO_SHIP ,
l_bom_export_tab(i).REQUIRED_FOR_REVENUE ,
l_bom_export_tab(i).INCLUDE_ON_SHIP_DOCS ,
l_bom_export_tab(i).INCLUDE_ON_BILL_DOCS ,
l_bom_export_tab(i).LOW_QUANTITY ,
l_bom_export_tab(i).HIGH_QUANTITY ,
l_bom_export_tab(i).PICK_COMPONENTS ,
l_bom_export_tab(i).PRIMARY_UOM_CODE ,
l_bom_export_tab(i).PRIMARY_UNIT_OF_MEASURE ,
l_bom_export_tab(i).BASE_ITEM_ID ,
l_bom_export_tab(i).ATP_COMPONENTS_FLAG ,
l_bom_export_tab(i).ATP_FLAG ,
l_bom_export_tab(i).BOM_ITEM_TYPE ,
l_bom_export_tab(i).PICK_COMPONENTS_FLAG ,
l_bom_export_tab(i).REPLENISH_TO_ORDER_FLAG ,
l_bom_export_tab(i).SHIPPABLE_ITEM_FLAG ,
l_bom_export_tab(i).CUSTOMER_ORDER_FLAG ,
l_bom_export_tab(i).INTERNAL_ORDER_FLAG ,
l_bom_export_tab(i).CUSTOMER_ORDER_ENABLED_FLAG ,
l_bom_export_tab(i).INTERNAL_ORDER_ENABLED_FLAG ,
l_bom_export_tab(i).SO_TRANSACTIONS_FLAG ,
l_bom_export_tab(i).MTL_TRANSACTIONS_ENABLED_FLAG ,
l_bom_export_tab(i).STOCK_ENABLED_FLAG ,
l_bom_export_tab(i).DESCRIPTION ,
l_bom_export_tab(i).ASSEMBLY_ITEM_ID ,
l_bom_export_tab(i).CONFIGURATOR_FLAG ,
l_bom_export_tab(i).PRICE_LIST_ID ,
l_bom_export_tab(i).ROUNDING_FACTOR ,
l_bom_export_tab(i).PRICING_CONTEXT ,
l_bom_export_tab(i).PRICING_ATTRIBUTE1 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE2 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE3 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE4 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE5 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE6 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE7 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE8 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE9 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE10 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE11 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE12 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE13 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE14 ,
l_bom_export_tab(i).PRICING_ATTRIBUTE15 ,
l_bom_export_tab(i).COMPONENT_CODE ,
l_bom_export_tab(i).LOOP_FLAG ,
l_bom_export_tab(i).INVENTORY_ASSET_FLAG ,
l_bom_export_tab(i).PLANNING_FACTOR ,
l_bom_export_tab(i).OPERATION_SEQ_NUM ,
l_bom_export_tab(i).PARENT_BOM_ITEM_TYPE ,
l_bom_export_tab(i).WIP_SUPPLY_TYPE ,
l_bom_export_tab(i).ITEM_NUM ,
l_bom_export_tab(i).EFFECTIVITY_DATE ,
l_bom_export_tab(i).DISABLE_DATE ,
l_bom_export_tab(i).IMPLEMENTATION_DATE ,
l_bom_export_tab(i).SUPPLY_SUBINVENTORY ,
l_bom_export_tab(i).SUPPLY_LOCATOR_ID ,
l_bom_export_tab(i).COMPONENT_REMARKS ,
l_bom_export_tab(i).CHANGE_NOTICE ,
l_bom_export_tab(i).OPERATION_LEAD_TIME_PERCENT ,
l_bom_export_tab(i).REXPLODE_FLAG ,
l_bom_export_tab(i).COMMON_BILL_SEQUENCE_ID ,
l_bom_export_tab(i).OPERATION_OFFSET ,
l_bom_export_tab(i).CURRENT_REVISION ,
l_bom_export_tab(i).LOCATOR ,
l_bom_export_tab(i).FROM_END_ITEM_UNIT_NUMBER ,
l_bom_export_tab(i).TO_END_ITEM_UNIT_NUMBER );
end loop;
commit;
end ; |
|