[Oracle EBS APIs]import Flow routing and DJ routing using BOM_RTG_PUB.PROCESS_RTG APIs
DJ routing --BOM模块的工艺路线
Flow routing -- Flow Manufacturing 模块使用的工艺路线,导入 Flow routing时先导入Line Operation,然后在导入Event.
CREATE OR REPLACE PROCEDURE SU_PROCESS_RTG_TEST AS /*
* Note:
* bom_rtg_globals.G_OPR_CREATE ==> 'CREATE';
* bom_rtg_globals.G_OPR_UPDATE ==> 'UPDATE';
* bom_rtg_globals.G_OPR_DELETE ==> 'DELETE';
* CFM_Routing_Flag: 1==>Flow Routing,2==>DJ Routing
* Operation_Type: 1==>Event,3==>Line Operation 2==>Process
* import order: Line Operation => Event =>Process
*/
-- API input variables
l_operation_tbl Bom_Rtg_Pub.Operation_Tbl_Type := Bom_Rtg_Pub.G_MISS_OPERATION_TBL;
l_rtg_header_rec Bom_Rtg_Pub.Rtg_Header_Rec_Type := Bom_Rtg_Pub.G_MISS_RTG_HEADER_REC;
l_rtg_revision_tbl Bom_Rtg_Pub.Rtg_Revision_Tbl_Type := Bom_Rtg_Pub.G_MISS_RTG_REVISION_TBL;
l_op_resource_tbl Bom_Rtg_Pub.Op_Resource_Tbl_Type := Bom_Rtg_Pub.G_MISS_OP_RESOURCE_TBL;
l_sub_resource_tbl Bom_Rtg_Pub.Sub_Resource_Tbl_Type := Bom_Rtg_Pub.G_MISS_SUB_RESOURCE_TBL;
l_op_network_tbl Bom_Rtg_Pub.Op_Network_Tbl_Type := Bom_Rtg_Pub.G_MISS_OP_NETWORK_TBL; -- API output variables
x_rtg_header_rec Bom_Rtg_Pub.Rtg_Header_Rec_Type; -- routing header record
x_rtg_revision_tbl Bom_Rtg_Pub.Rtg_Revision_Tbl_Type; -- routing revisions
x_operation_tbl Bom_Rtg_Pub.Operation_Tbl_Type; -- routing operations
x_op_resource_tbl Bom_Rtg_Pub.Op_Resource_Tbl_Type; -- oepration resources
x_sub_resource_tbl Bom_Rtg_Pub.Sub_Resource_Tbl_Type; -- sub operation resources
x_op_network_tbl Bom_Rtg_Pub.Op_Network_Tbl_Type; -- operation networks
x_message_list Error_Handler.Error_Tbl_Type; -- Other API variables
l_return_status VARCHAR2() := NULL;
l_msg_count NUMBER := ;
l_cnt NUMBER := ; -- WHO columns
l_user_id NUMBER := -;
l_resp_id NUMBER := -;
l_application_id NUMBER := -;
l_row_cnt NUMBER := ;
l_user_name VARCHAR2() := 'xxxxxx';
l_resp_name VARCHAR2() := 'xxxxx'; BEGIN -- Get the user_id
SELECT user_id
INTO l_user_id
FROM fnd_user
WHERE user_name = l_user_name; -- Get the application_id and responsibility_id
SELECT application_id, responsibility_id
INTO l_application_id, l_resp_id
FROM fnd_responsibility
WHERE responsibility_key = l_resp_name; -- Initialize applications information
FND_GLOBAL.APPS_INITIALIZE(l_user_id, l_resp_id, l_application_id); -- Mfg / Mfg & Dist Mgr / INV
dbms_output.put_line('Initialized applications context: ' || l_user_id || ' ' ||
l_resp_id || ' ' || l_application_id); -- Create the routing header
l_rtg_header_rec.Assembly_Item_Name := 'TEST20160811';
l_rtg_header_rec.Organization_Code := 'HAD';
l_rtg_header_rec.Alternate_Routing_Code := NULL;
l_rtg_header_rec.CFM_Routing_Flag := ; ---==>Flow Routing,==>DJ Routing
l_rtg_header_rec.Line_Code := 'LHA420';
l_rtg_header_rec.mixed_model_map_flag := ;
--l_rtg_header_rec.Completion_Subinventory := 'FGI';
l_rtg_header_rec.Transaction_Type := bom_rtg_globals.G_OPR_CREATE;
l_rtg_header_rec.Attribute1 := 'STD';
l_rtg_header_rec.eng_routing_flag := ;
-- Create the routing operations
--Line operation
l_operation_tbl(l_cnt).Assembly_Item_Name := 'TEST20160811';
l_operation_tbl(l_cnt).Organization_Code := 'HAD';
l_operation_tbl(l_cnt).Alternate_Routing_Code := NULL;
l_operation_tbl(l_cnt).Operation_Sequence_Number := '';
l_operation_tbl(l_cnt).Standard_Operation_Code := '';
l_operation_tbl(l_cnt).Operation_Type := ; ---Operation_Type:==>Event,==>Line Operation
l_operation_tbl(l_cnt).Start_Effective_Date := SYSDATE - ;
l_operation_tbl(l_cnt).Yield := 0.87;
l_operation_tbl(l_cnt).reference_flag :=;
l_operation_tbl(l_cnt).Transaction_Type := bom_rtg_globals.G_OPR_CREATE; --Line operation
l_cnt := l_cnt + ;
l_operation_tbl(l_cnt).Assembly_Item_Name := 'TEST20160811';
l_operation_tbl(l_cnt).Organization_Code := 'HAD';
l_operation_tbl(l_cnt).Alternate_Routing_Code := NULL;
l_operation_tbl(l_cnt).Operation_Sequence_Number := '';
l_operation_tbl(l_cnt).Standard_Operation_Code := '';
l_operation_tbl(l_cnt).Operation_Type := ;---Operation_Type:==>Event,==>Line Operation
l_operation_tbl(l_cnt).Start_Effective_Date := SYSDATE - ; -- should match timestamp for UPDATE
l_operation_tbl(l_cnt).Yield := 1.0;
l_operation_tbl(l_cnt).reference_flag :=;
l_operation_tbl(l_cnt).Transaction_Type := bom_rtg_globals.G_OPR_CREATE; --Event1
l_cnt := l_cnt + ;
l_operation_tbl(l_cnt).Assembly_Item_Name := 'TEST20160811';
l_operation_tbl(l_cnt).Organization_Code := 'HAD';
l_operation_tbl(l_cnt).Alternate_Routing_Code := NULL;
l_operation_tbl(l_cnt).Operation_Sequence_Number := '';
l_operation_tbl(l_cnt).Standard_Operation_Code := '';
l_operation_tbl(l_cnt).Operation_Type := ; ---Operation_Type:==>Event,==>Line Operation
l_operation_tbl(l_cnt).Line_Op_Seq_Number := ;
l_operation_tbl(l_cnt).Line_Op_Code := '';
l_operation_tbl(l_cnt).Start_Effective_Date := SYSDATE - ;
l_operation_tbl(l_cnt).Yield := 0.87;
l_operation_tbl(l_cnt).reference_flag :=;
l_operation_tbl(l_cnt).Transaction_Type := bom_rtg_globals.G_OPR_CREATE;
--Event2
l_cnt := l_cnt + ;
l_operation_tbl(l_cnt).Assembly_Item_Name := 'TEST20160811';
l_operation_tbl(l_cnt).Organization_Code := 'HAD';
l_operation_tbl(l_cnt).Alternate_Routing_Code := NULL;
l_operation_tbl(l_cnt).Operation_Sequence_Number := '';
l_operation_tbl(l_cnt).Standard_Operation_Code := '';
l_operation_tbl(l_cnt).Operation_Type := ; ---Operation_Type:==>Event,==>Line Operation
l_operation_tbl(l_cnt).Line_Op_Seq_Number := ;
l_operation_tbl(l_cnt).Line_Op_Code := '';
l_operation_tbl(l_cnt).Start_Effective_Date := SYSDATE - ;
l_operation_tbl(l_cnt).Yield := 0.87;
l_operation_tbl(l_cnt).reference_flag :=;
l_operation_tbl(l_cnt).Transaction_Type := bom_rtg_globals.G_OPR_CREATE; -- initialize error stack for logging errors
Error_Handler.initialize; -- call API to create / update routing
DBMS_OUTPUT.PUT_LINE('=======================================================');
DBMS_OUTPUT.PUT_LINE('Calling Bom_Rtg_Pub.Process_Rtg API'); BOM_RTG_PUB.PROCESS_RTG(p_bo_identifier => 'RTG',
p_api_version_number => '1.0',
p_init_msg_list => TRUE,
p_rtg_header_rec => l_rtg_header_rec,
p_rtg_revision_tbl => l_rtg_revision_tbl,
p_operation_tbl => l_operation_tbl,
p_op_resource_tbl => l_op_resource_tbl,
p_sub_resource_tbl => l_sub_resource_tbl,
p_op_network_tbl => l_op_network_tbl,
x_rtg_header_rec => x_rtg_header_rec,
x_rtg_revision_tbl => x_rtg_revision_tbl,
x_operation_tbl => x_operation_tbl,
x_op_resource_tbl => x_op_resource_tbl,
x_sub_resource_tbl => x_sub_resource_tbl,
x_op_network_tbl => x_op_network_tbl,
x_return_status => l_return_status,
x_msg_count => l_msg_count,
p_debug => 'N',
p_output_dir => '/usr/tmp/',
p_debug_filename => 'rtg_bo_debug.log'); DBMS_OUTPUT.PUT_LINE('=======================================================');
DBMS_OUTPUT.PUT_LINE('Return Status: ' || l_return_status); IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
dbms_output.put_line('x_msg_count:' || l_msg_count); Error_Handler.GET_MESSAGE_LIST(x_message_list => x_message_list);
DBMS_OUTPUT.PUT_LINE('Error Message Count :' || x_message_list.COUNT);
FOR i IN .. x_message_list.COUNT LOOP
DBMS_OUTPUT.PUT_LINE(to_char(i) || ':' || x_message_list(i)
.entity_index || ':' || x_message_list(i)
.table_name);
DBMS_OUTPUT.PUT_LINE(to_char(i) || ':' || x_message_list(i)
.message_text);
END LOOP;
END IF;
DBMS_OUTPUT.PUT_LINE('======================================================='); EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('Exception Occured :');
DBMS_OUTPUT.PUT_LINE(SQLCODE || ':' || SQLERRM);
DBMS_OUTPUT.PUT_LINE('=======================================================');
RAISE;
END;
[Oracle EBS APIs]import Flow routing and DJ routing using BOM_RTG_PUB.PROCESS_RTG APIs的更多相关文章
- Oracle EBS R12 WIP Component Issue&Return Process
oracleassemblytransactionscomponentsjobsreference 目录(?)[-] 定义BOM 定义Routing 定义WIP Discrete Job 发料 Mat ...
- Oracle EBS应用笔记整理 (转自IT++ flyingkite)
***************************************************** Author: Flyingkite Blog: http://space.itpub. ...
- Oracle EBS Form Builder使用Java beans创建窗体
最近有个项目,需要研究一下Oracle的E-Business Sutie(EBS),对于以前没接触此套件的我来说,简直太痛苦了.在网上找了一堆资料,试着进行Form二次开发,也遇到各类奇葩问题.目前遇 ...
- Oracle Order Management DropShip Flow for R12
Oracle Order Management DropShip Flow for R12 Email ThisBlogThis!Share to TwitterShare to FacebookSh ...
- Oracle EBS 12.2.6 on VirtualBox
Back in May, Oracle announced the general availability of Oracle VM Virtual Appliance for E-Business ...
- Oracle EBS WMS功能介绍(二)
Oracle EBS WMS功能介绍(二) (版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处.否则请与本人联系,违者必究) 出货物流逻辑主要包括 1. 打包.能够进 ...
- Oracle EBS Model Function Technical
♡.Oracle EBS(ERP)Oracle 是公司名字,这个我估计大家都知道.EBS是E-Business Suite的缩写,简单的说,就是Oracle做的一个企业级的信息化软件或者系统,里面包含 ...
- BPM与 SAP & Oracle EBS集成解决方案分享
一.需求分析 SAP和Oracle EBS都是作为全球顶级的的ERP产 品,得到了众多客户的青睐.然而由于系统庞大.价格昂贵以及定位不同,客户在实施过程中经常会面临以下困惑: 1.SAP如何实现&qu ...
- Oracle EBS - Doc
Oracle EBS spec.: http://vianet/IT/IT%20Dept/IT%20Project%20Update2/Active%20Projects%20%20Manufactu ...
随机推荐
- Node.js中的事件
var util = require("util"); //导入util模块 var events = require("events"); //导入event ...
- KVM背靠Linux好乘凉
虚拟化是走向云的第一步,同理,开源虚拟化是走向开源云的第一步.云计算所提供的产品与方案都是围绕着IT资源的新交付与消费模式.云的形式多样,私有云.公有云与混合云,无论哪种云都具有三个关键特征:虚拟化. ...
- How to interact with the Chef Server using the Chef Server API using Shell script
!/usr/bin/env bash _chef_dir () { # Helper function: # Recursive function that searches for chef c ...
- Linux下文件的权限
一.Linux下查看文件属性 命令为: [root@localhost ~]# ls -al 结果: ls是『list』的意思,重点在显示文件的文件名与相关属性.而选项『-al』则表示列出所有的文件详 ...
- UVALive 7457 Discrete Logarithm Problem (暴力枚举)
Discrete Logarithm Problem 题目链接: http://acm.hust.edu.cn/vjudge/contest/127401#problem/D Description ...
- How to include JavaScript file in JSF
In JSF 2.0, you can use <h:outputScript /> tag to render a HTML "script" element, an ...
- FIREDAC直连ORACLE数据库
UniDac对Oracle的Direct连接,不需要套Oracle客户端dll,deploy时真的时 方便又快捷.FireDac连接Oracle,在没有Oracle Client的情况下,是可以连接上 ...
- ASP.Net自定义重写Http Server标头
Net中我们为了安全或其他原因起见 可能需要修改我们的标头报文等 以下方法我们通过使用HTTP Module来使用编程的方式来去除或修改它 首先我们自定义一个类CustomServerHeaderMo ...
- Light oj 1197 - Help Hanzo (素数筛技巧)
题目链接:http://lightoj.com/volume_showproblem.php?problem=1197 给你a和b求a到b之间的素数个数. 先在小区间素数筛,大区间就用类似素数筛的想法 ...
- UVaLive 6862 Triples (数学+分类讨论)
题意:给定一个n和m,问你x^j + y^j = z^j 的数量有多少个,其中0 <= x <= y <= z <= m, j = 2, 3, 4, ... n. 析:是一个数 ...