[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 ...
随机推荐
- work_6
这次的作业是阅读C++11的新特性并提出问题,作为一个大部分代码都是用C++的基本语法并没有特别关注C++一代又一代新特性的学生来说,首先我阅读了一些关于新特性的文章.为了更快的理解,我首先选择了阅读 ...
- Struts2通配符映射
1.一个Web 应用可能有成百上千个 action 声明. 可以利用 struts 提供的通配符映射机制把多个彼此相似的映射关系简化为一个映射关系 2.通配符映射规则 –若找到多个匹配, 没有通配符的 ...
- log4j2使用总结
一.Log4j有三个主要的组件:Loggers,Appenders和Layouts,这里可简单理解为日志级别,日志要输出的地方和日志格式 1. Logger Logger的日志级别有6级,分别是TRA ...
- POJ 2502 Subway (最短路)
Subway 题目链接: http://acm.hust.edu.cn/vjudge/contest/122685#problem/L Description You have just moved ...
- POJ 3369 Meteor Shower (BFS,水题)
题意:给定 n 个炸弹的坐标和爆炸时间,问你能不能逃出去.如果能输出最短时间. 析:其实这个题并不难,只是当时没读懂,后来读懂后,很容易就AC了. 主要思路是这样的,先标记所有的炸弹的位置,和时间,在 ...
- C#引用传递
学过C#的人都知道,通过值或通过引用,值类型和引用类型都可以作为方法参数传递.在C#中,不管是值类型或者是引用类型,所有方法参数在默认情况下是通过值传递的. 1)通过值传递值类型 在通过值传递作为方法 ...
- Starter Set of Functional Interfaces
Java Development Kit 8 has a number of functional interfaces. Here we review the starter set-the int ...
- Mac使用指南
1.csrutil命令 简单来说 是苹果在新系统后加入的一个安全机制. Rootless讨论的前提是假定root账户是OS X(或者其他Unix系统)中对抗恶意程序保护操作系统的最后一道防线.意思是一 ...
- Windows下sqlmap的使用_01
环境:win8.1 64位 一.下载 首先,需下载SqlMap以及适用于Windows系统的Python.下载地址如下: 1.1.SqlMap下载地址:https://github.com/ ...
- android中broadcastreceiver的用法-manifest中注册。
package com.jinhoward.broadcast.activity; import com.jinhoward.broadcast.activity.R; import android. ...