Oracle EBS OPM update material txn
--update_material_txn
--created by jenrry
DECLARE
p_mmti_rec mtl_transactions_interface%ROWTYPE;
p_mmli_tbl gme_common_pvt.mtl_trans_lots_inter_tbl;
x_return_status VARCHAR2 (2000);
p_validation_level NUMBER;
p_init_msg_list VARCHAR2 (2000);
p_commit VARCHAR2 (2000);
x_message_count NUMBER;
x_message_list VARCHAR2 (2000);
l_msg_count NUMBER;
l_msg_data VARCHAR2 (2000);
x_mmt_rec mtl_material_transactions%ROWTYPE;
x_mmln_tbl gme_common_pvt.mtl_trans_lots_num_tbl;
l_txn_count NUMBER;
l_count_t NUMBER;
l_count_i NUMBER;
setup_failure EXCEPTION;
p_org_code VARCHAR2 (3) := 'PR1';
g_debug VARCHAR2 (5) := fnd_profile.VALUE ('AFLOG_LEVEL');
l_user_name VARCHAR2 (80);
l_user_id NUMBER; CURSOR get_user_id (v_user_name IN VARCHAR2)
IS
SELECT user_id
FROM fnd_user
WHERE user_name = v_user_name; PROCEDURE display_messages (p_msg_count IN NUMBER)
IS
MESSAGE VARCHAR2 (2000);
dummy NUMBER;
l_api_name CONSTANT VARCHAR2 (30) := 'DISPLAY_MESSAGES';
BEGIN
FOR i IN 1 .. p_msg_count
LOOP
fnd_msg_pub.get (p_msg_index => i,
p_data => MESSAGE,
p_encoded => 'F',
p_msg_index_out => dummy
);
DBMS_OUTPUT.put_line ('Message ' || TO_CHAR (i) || ' ' || MESSAGE);
END LOOP;
EXCEPTION
WHEN OTHERS
THEN
fnd_msg_pub.add_exc_msg ('wrapper for Update_Material_Txn', l_api_name);
END display_messages;
BEGIN
DBMS_OUTPUT.ENABLE (20000);
l_user_name := 'PROCESS_OPS'; OPEN get_user_id (l_user_name); FETCH get_user_id
INTO l_user_id; IF get_user_id%NOTFOUND
THEN
DBMS_OUTPUT.put_line ('Invalid User ' || l_user_name); CLOSE get_user_id; RAISE NO_DATA_FOUND;
END IF; CLOSE get_user_id; fnd_profile.initialize (l_user_id);
fnd_global.apps_initialize (user_id => l_user_id,
resp_id => NULL,
resp_appl_id => NULL
);
x_return_status := fnd_api.g_ret_sts_success;
fnd_msg_pub.initialize;
gme_common_pvt.g_error_count := 0;
gme_common_pvt.set_timestamp;
gme_common_pvt.g_move_to_temp := fnd_api.g_false;
p_mmti_rec.source_code := 'OPM';
p_mmti_rec.source_header_id := 19492;
p_mmti_rec.transaction_source_id := 186706;
p_mmti_rec.trx_source_line_id := 19492;
--p_mmti_rec.last_updated_by := gme_common_pvt.g_user_ident;
--p_mmti_rec.last_update_login := gme_common_pvt.g_user_ident ;
--p_mmti_rec.last_update_date := gme_common_pvt.g_timestamp ;
--p_mmti_rec.creation_date := gme_common_pvt.g_timestamp ;
--p_mmti_rec.created_by := gme_common_pvt.g_user_ident;
p_mmti_rec.inventory_item_id := 178859;
p_mmti_rec.revision := NULL;
p_mmti_rec.organization_id := 1381;
p_mmti_rec.transaction_date := SYSDATE;
p_mmti_rec.transaction_type_id := gme_common_pvt.g_ing_issue;
p_mmti_rec.transaction_action_id := gme_common_pvt.g_ing_issue_txn_action;
p_mmti_rec.transaction_quantity := -8;
--p_mmti_rec.primary_quantity :=
p_mmti_rec.transaction_uom := 'LB';
p_mmti_rec.subinventory_code := 'PR0';
p_mmti_rec.locator_id := 1355;
p_mmti_rec.transaction_source_type_id := 5;
--p_mmti_rec.transaction_source_name :=
p_mmti_rec.wip_entity_type := 10;
--p_mmti_rec.reason_id := /* p_mmli_tbl(1). last_update_date := gme_common_pvt.g_timestamp ;
p_mmli_tbl(1). last_updated_by := gme_common_pvt.g_user_ident ;
p_mmli_tbl(1). creation_date := gme_common_pvt.g_timestamp ;
p_mmli_tbl(1). created_by := gme_common_pvt.g_user_ident ;
p_mmli_tbl(1). lot_number := 'TCS' ;
p_mmli_tbl(1). transaction_quantity := ; */
gme_api_pub.update_material_txn
(p_api_version => 2.0,
p_validation_level => gme_common_pvt.g_max_errors,
p_init_msg_list => fnd_api.g_false,
p_commit => fnd_api.g_true,
x_message_count => x_message_count,
x_message_list => x_message_list,
x_return_status => x_return_status,
p_transaction_id => 12137851,
p_mmti_rec => p_mmti_rec,
p_mmli_tbl => p_mmli_tbl,
p_create_lot => NULL,
p_generate_lot => NULL,
p_generate_parent_lot => NULL,
x_mmt_rec => x_mmt_rec,
x_mmln_tbl => x_mmln_tbl
);
DBMS_OUTPUT.put_line ( 'msg_count from process trxns='
|| TO_CHAR (l_msg_count)
); IF l_msg_count > 1
THEN
display_messages (l_msg_count);
END IF; DBMS_OUTPUT.put_line ( 'after process transactions x_return_status='
|| TO_CHAR (x_return_status)
);
-- Output the results
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.transaction_id = '
|| TO_CHAR (x_mmt_rec.transaction_id),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.transaction_type_id = '
|| TO_CHAR (x_mmt_rec.transaction_type_id),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.transaction_action_id = '
|| TO_CHAR (x_mmt_rec.transaction_action_id),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.transaction_source_id = '
|| TO_CHAR (x_mmt_rec.transaction_source_id),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.trx_source_line_id = '
|| TO_CHAR (x_mmt_rec.trx_source_line_id),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.source_line_id = '
|| TO_CHAR (x_mmt_rec.source_line_id),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.transaction_quantity = '
|| TO_CHAR (x_mmt_rec.transaction_quantity),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.transaction_uom = '
|| TO_CHAR (x_mmt_rec.transaction_uom),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.transaction_date = '
|| TO_CHAR (x_mmt_rec.transaction_date),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmln_tbl.count = '
|| TO_CHAR (x_mmln_tbl.COUNT),
1,
255
)
); IF (x_mmln_tbl.COUNT > 0)
THEN
FOR i IN 1 .. x_mmln_tbl.COUNT
LOOP
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmln_tbl((i).lot_number = '
|| TO_CHAR (x_mmln_tbl.COUNT),
1,
255
)
);
END LOOP;
END IF; DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.LAST_UPDATE_DATE = '
|| TO_CHAR (x_mmt_rec.last_update_date),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.LAST_UPDATED_BY = '
|| TO_CHAR (x_mmt_rec.last_updated_by),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.CREATION_DATE = '
|| TO_CHAR (x_mmt_rec.creation_date),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.CREATED_BY = '
|| TO_CHAR (x_mmt_rec.created_by),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ( 'x_mmt_rec.LAST_UPDATE_LOGIN = '
|| TO_CHAR (x_mmt_rec.last_update_login),
1,
255
)
);
DBMS_OUTPUT.put_line (SUBSTR ('x_return_status = ' || x_return_status,
1,
255
)
);
DBMS_OUTPUT.put_line ('x_message_count = ' || TO_CHAR (x_message_count));
DBMS_OUTPUT.put_line (SUBSTR ('x_message_list = ' || x_message_list, 1,
255)
);
gme_common_pvt.count_and_get (x_count => x_message_count,
p_encoded => fnd_api.g_false,
x_data => x_message_list
); IF x_message_count > 1
THEN
display_messages (x_message_count);
END IF;
EXCEPTION
WHEN setup_failure
THEN
DBMS_OUTPUT.put_line (' in setup failure');
WHEN OTHERS
THEN
DBMS_OUTPUT.put_line (SUBSTR ( 'Error '
|| TO_CHAR (SQLCODE)
|| ': '
|| SQLERRM,
1,
255
)
);
RAISE;
END;
/
Oracle EBS OPM update material txn的更多相关文章
- Oracle EBS OPM 生产批创建事务处理
--生产批创建事物处理 --created by jenrry DECLARE p_mmti_rec mtl_transactions_interface%ROWTYPE; p_mmli_tbl gm ...
- Oracle EBS OPM close batch
--close_batch --created by jenrry DECLARE x_message_count NUMBER; x_message_list VARCHAR2 (4000); x_ ...
- Oracle EBS OPM convert dtl reservation
--convert_dtl_reservation --created by jenrry DECLARE l_reservation_rec mtl_reservations%ROWTYPE; l_ ...
- Oracle EBS OPM complete step
--complete_step --created by jenrry DECLARE x_return_status VARCHAR2 (1); l_exception_material_tbl g ...
- Oracle EBS OPM reshedule batch
--reschedule_batch --created by jenrry DECLARE x_message_count NUMBER; x_message_list VARCHAR2 (2000 ...
- Oracle EBS OPM complete batch
--complete_batch --created by jenrry SET serveroutput on DECLARE x_return_status VARCHAR2 (1); l_exc ...
- Oracle EBS OPM 创建生产批
--创建生产批 --created by jenrry DECLARE x_message_count NUMBER; x_message_list VARCHAR2 (2000); x_return ...
- Oracle EBS OPM release step
--release_step生产批 --created by jenrry SET serveroutput on DECLARE x_return_status VARCHAR2 (1); l_ex ...
- Oracle EBS OPM 发放生产批
--发放生产批 --created by jenrry DECLARE x_return_status VARCHAR2 (1); l_exception_material_tbl gme_commo ...
随机推荐
- 全网最详细的Xshell或SecureCRT下spark-shell里出现无法退格或者删除的问题现象的解决办法(图文详解)
不多说,直接上干货! 前言 打开spark的命令行后,发现输错字符了,但是无法退格或者删除,这是比较苦恼的问题. 这个问题,得看你是用Xshell,还是SecureCRT. 一般是出现在SecureC ...
- Spring-web初始化流程简图
- Python时间系统
Python的time和datetime模块提供了时间日期工具, python中的时间有4种表示方式: datetime obj time obj/tuple posix timestamp time ...
- [总结]其他杂项数学相关(定理&证明&板子)
目录 写在前面 一类反演问题 莫比乌斯反演 快速莫比乌斯变换(反演)与子集卷积 莫比乌斯变换(反演) 子集卷积 二项式反演 内容 证明 应用举例 另一形式 斯特林反演 第一类斯特林数 第二类斯特林数 ...
- 在window环境下挂载mysql数据卷
1.提前在指定的目录下创建一个my.cnf文件,目录名最好为英文且不带特殊符号和空格,文件内容如下,注意:粘贴时要把每一行末尾的空格去除,否则运行时会报错说utf8编码错误 [mysqld] user ...
- [日常] Go语言圣经-文本和HTML模板习题
Go语言圣经-文本和HTML模板 练习 4.14: 创建一个web服务器,查询一次GitHub,然后生成BUG报告.里程碑和对应的用户信息. 1.查看下文档godoc net/http |grep H ...
- Java“毒丸”使用示例,实现取消任务
一.简介 在Java并发编程中,“毒丸”指的是将一个对象放在队列当中,当得到这个对象的时候立即停止执行 下面是一个使用“毒丸”来取消任务的一个示例 如图所示,我们假设一个任务从开始到结束需要经历4个步 ...
- Java虚拟机--内存模型与线程
Java虚拟机--内存模型与线程 高速缓存:处理器要与内存交互,如读取.存储运算结果,而计算机的存储设备和处理器的运算速度差异巨大,所以加入一层读写速度和处理器接近的高速缓存来作为内存和处理器之间的缓 ...
- Spring IOC 容器源码分析
声明!非原创,本文出处 Spring 最重要的概念是 IOC 和 AOP,本篇文章其实就是要带领大家来分析下 Spring 的 IOC 容器.既然大家平时都要用到 Spring,怎么可以不好好了解 S ...
- a/b + c/d(hdu2503)最大公约数问题
a/b + c/d Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...