Oracle EBS创建LPN
2014-09-27 13:00
791 查看
创建LPN
[align=left]PROCEDURE create_lpn(errbuf OUT VARCHAR2,[/align]
[align=left] retcode OUT VARCHAR2 ,[/align]
[align=left] p_organization_id IN NUMBER ,[/align]
[align=left] p_lpn_prefix IN VARCHAR2 ,[/align]
[align=left] p_lpn_suffix IN VARCHAR2 ,[/align]
[align=left] p_lpn IN VARCHAR2 ) IS[/align]
[align=left] BEGIN[/align]
[align=left] --Initialize[/align]
[align=left] wms_container_pvt.generate_lpn_cp(errbuf => errbuf,[/align]
[align=left] retcode => retcode,[/align]
[align=left] p_api_version => 1,[/align]
[align=left] p_organization_id => p_organization_id,[/align]
[align=left] p_container_item_id => NULL,[/align]
[align=left] p_revision => NULL,[/align]
[align=left] p_lot_number => NULL,[/align]
[align=left] p_from_serial_number => NULL,[/align]
[align=left] p_to_serial_number => NULL,[/align]
[align=left] p_subinventory => NULL,[/align]
[align=left] p_locator_id => NULL,[/align]
[align=left] p_org_parameters => 2,[/align]
[align=left] p_parm_dummy_1 => 'N',[/align]
[align=left] p_total_length => NULL,[/align]
[align=left] p_lpn_prefix => p_lpn_prefix,[/align]
[align=left] p_starting_num => p_lpn,[/align]
[align=left] p_ucc_128_suffix_flag => 2,[/align]
[align=left] p_parm_dummy_2 => 'N',[/align]
[align=left] p_lpn_suffix => p_lpn_suffix,[/align]
[align=left] p_quantity => 1,[/align]
[align=left] p_source => NULL,[/align]
[align=left] p_cost_group_id => NULL);[/align]
[align=left] END;[/align]
[align=left]
[/align]
[align=left]-- --------------------------------------------[/align]
-- Get LPN
Id
[align=left] -- --------------------------------------------[/align]
PROCEDURE get_lpn_id(x_lpn_id OUT NUMBER ,
p_lpn IN VARCHAR2) IS
--l_lpn_exist
NUMBER;
[align=left] BEGIN[/align]
[align=left] x_lpn_id := - 9999;[/align]
[align=left] SELECT lpn.lpn_id[/align]
[align=left] INTO x_lpn_id[/align]
FROM wms_license_plate_numbers
lpn
[align=left] WHERE 1 = 1[/align]
AND lpn.license_plate_number
= p_lpn;
[align=left] [/align]
[align=left] EXCEPTION[/align]
[align=left] WHEN no_data_found THEN[/align]
[align=left] x_lpn_id := - 1; --LPN不存在[/align]
[align=left] WHEN OTHERS THEN[/align]
[align=left] x_lpn_id := - 9999;[/align]
[align=left] END;[/align]
[align=left]
[/align]
[align=left]--创建LPN[/align]
[align=left]--检查LPN是否存在[/align]
[align=left]get_lpn_id(l_outer_lpn_id, p_n_lpn_num);[/align]
[align=left]--拆分LPN号[/align]
SELECT substr (p_n_lpn_num,
-1),
substr(p_n_lpn_num, 1 , length(p_n_lpn_num)
- 1)
INTO l_lpn_number,
l_lpn_prefix
[align=left] FROM dual;[/align]
[align=left]--创建LPN[/align]
IF l_outer_lpn_id
= -1 THEN
[align=left] create_lpn(errbuf => l_errbuf,[/align]
[align=left] retcode => l_retcode,[/align]
[align=left] p_organization_id => p_organization_id,[/align]
[align=left] p_lpn_prefix => l_lpn_prefix,[/align]
[align=left] p_lpn_suffix => NULL,[/align]
[align=left] p_lpn => l_lpn_number);[/align]
IF l_errbuf
<> '0' THEN
x_msg_data := l_msg_data || '创建LPN失败:' ||
l_errbuf;
[align=left] RAISE header_error;[/align]
[align=left] ELSE[/align]
[align=left] --获取创建后的LPN_ID[/align]
[align=left] get_lpn_id(l_new_lpn_id, p_n_lpn_num);[/align]
[align=left] --箱号添加毛重[/align]
[align=left] l_lpn_rec := NULL;[/align]
[align=left] l_lpn_rec.lpn_id := l_new_lpn_id;[/align]
[align=left] l_lpn_rec.gross_weight_uom_code := 'kg';[/align]
[align=left] l_lpn_rec.gross_weight := p_n_gross_weight;[/align]
[align=left] wms_container_pvt.modify_lpn(p_api_version => 1,[/align]
[align=left] p_init_msg_list => fnd_api.g_true,[/align]
[align=left] p_commit => fnd_api.g_false,[/align]
[align=left] x_return_status => l_return_status,[/align]
[align=left] x_msg_count => l_msg_count,[/align]
[align=left] x_msg_data => l_msg_data,[/align]
[align=left] p_caller => NULL,[/align]
[align=left] p_lpn => l_lpn_rec);[/align]
IF l_return_status
<> 'S' THEN
[align=left] x_msg_data := l_msg_data || '修改毛重失败' ;[/align]
[align=left] RAISE header_error;[/align]
[align=left] END IF ;[/align]
[align=left] END IF;[/align]
创建LPN
[align=left]PROCEDURE create_lpn(errbuf OUT VARCHAR2,[/align]
[align=left] retcode OUT VARCHAR2 ,[/align]
[align=left] p_organization_id IN NUMBER ,[/align]
[align=left] p_lpn_prefix IN VARCHAR2 ,[/align]
[align=left] p_lpn_suffix IN VARCHAR2 ,[/align]
[align=left] p_lpn IN VARCHAR2 ) IS[/align]
[align=left] BEGIN[/align]
[align=left] --Initialize[/align]
[align=left] wms_container_pvt.generate_lpn_cp(errbuf => errbuf,[/align]
[align=left] retcode => retcode,[/align]
[align=left] p_api_version => 1,[/align]
[align=left] p_organization_id => p_organization_id,[/align]
[align=left] p_container_item_id => NULL,[/align]
[align=left] p_revision => NULL,[/align]
[align=left] p_lot_number => NULL,[/align]
[align=left] p_from_serial_number => NULL,[/align]
[align=left] p_to_serial_number => NULL,[/align]
[align=left] p_subinventory => NULL,[/align]
[align=left] p_locator_id => NULL,[/align]
[align=left] p_org_parameters => 2,[/align]
[align=left] p_parm_dummy_1 => 'N',[/align]
[align=left] p_total_length => NULL,[/align]
[align=left] p_lpn_prefix => p_lpn_prefix,[/align]
[align=left] p_starting_num => p_lpn,[/align]
[align=left] p_ucc_128_suffix_flag => 2,[/align]
[align=left] p_parm_dummy_2 => 'N',[/align]
[align=left] p_lpn_suffix => p_lpn_suffix,[/align]
[align=left] p_quantity => 1,[/align]
[align=left] p_source => NULL,[/align]
[align=left] p_cost_group_id => NULL);[/align]
[align=left] END;[/align]
[align=left]
[/align]
[align=left]-- --------------------------------------------[/align]
-- Get LPN
Id
[align=left] -- --------------------------------------------[/align]
PROCEDURE get_lpn_id(x_lpn_id OUT NUMBER ,
p_lpn IN VARCHAR2) IS
--l_lpn_exist
NUMBER;
[align=left] BEGIN[/align]
[align=left] x_lpn_id := - 9999;[/align]
[align=left] SELECT lpn.lpn_id[/align]
[align=left] INTO x_lpn_id[/align]
FROM wms_license_plate_numbers
lpn
[align=left] WHERE 1 = 1[/align]
AND lpn.license_plate_number
= p_lpn;
[align=left] [/align]
[align=left] EXCEPTION[/align]
[align=left] WHEN no_data_found THEN[/align]
[align=left] x_lpn_id := - 1; --LPN不存在[/align]
[align=left] WHEN OTHERS THEN[/align]
[align=left] x_lpn_id := - 9999;[/align]
[align=left] END;[/align]
[align=left]
[/align]
[align=left]--创建LPN[/align]
[align=left]--检查LPN是否存在[/align]
[align=left]get_lpn_id(l_outer_lpn_id, p_n_lpn_num);[/align]
[align=left]--拆分LPN号[/align]
SELECT substr (p_n_lpn_num,
-1),
substr(p_n_lpn_num, 1 , length(p_n_lpn_num)
- 1)
INTO l_lpn_number,
l_lpn_prefix
[align=left] FROM dual;[/align]
[align=left]--创建LPN[/align]
IF l_outer_lpn_id
= -1 THEN
[align=left] create_lpn(errbuf => l_errbuf,[/align]
[align=left] retcode => l_retcode,[/align]
[align=left] p_organization_id => p_organization_id,[/align]
[align=left] p_lpn_prefix => l_lpn_prefix,[/align]
[align=left] p_lpn_suffix => NULL,[/align]
[align=left] p_lpn => l_lpn_number);[/align]
IF l_errbuf
<> '0' THEN
x_msg_data := l_msg_data || '创建LPN失败:' ||
l_errbuf;
[align=left] RAISE header_error;[/align]
[align=left] ELSE[/align]
[align=left] --获取创建后的LPN_ID[/align]
[align=left] get_lpn_id(l_new_lpn_id, p_n_lpn_num);[/align]
[align=left] --箱号添加毛重[/align]
[align=left] l_lpn_rec := NULL;[/align]
[align=left] l_lpn_rec.lpn_id := l_new_lpn_id;[/align]
[align=left] l_lpn_rec.gross_weight_uom_code := 'kg';[/align]
[align=left] l_lpn_rec.gross_weight := p_n_gross_weight;[/align]
[align=left] wms_container_pvt.modify_lpn(p_api_version => 1,[/align]
[align=left] p_init_msg_list => fnd_api.g_true,[/align]
[align=left] p_commit => fnd_api.g_false,[/align]
[align=left] x_return_status => l_return_status,[/align]
[align=left] x_msg_count => l_msg_count,[/align]
[align=left] x_msg_data => l_msg_data,[/align]
[align=left] p_caller => NULL,[/align]
[align=left] p_lpn => l_lpn_rec);[/align]
IF l_return_status
<> 'S' THEN
[align=left] x_msg_data := l_msg_data || '修改毛重失败' ;[/align]
[align=left] RAISE header_error;[/align]
[align=left] END IF ;[/align]
[align=left] END IF;[/align]
相关文章推荐
- Oracle EBS 已核销AP Invoice取消不能创建会计科目
- Oracle EBS 供应商分行创建
- ORACLE EBS CUX用户的创建(转)
- Oracle EBS PO 采购订单接口 创建后 点击发运后 未修改任何数据 需要保存
- Oracle EBS Form Builder使用Java beans创建窗体
- Oracle EBS新汇总模板创建系统余额表的记录
- Oracle EBS Interface/API(7)--创建WIP任务单
- 通过JDBC创建Oracle的存储过程
- 转:Oracle EBS借贷关系
- oracle中方案的创建
- 创建ORACLE索引
- oracle学习总结三(创建脚本)
- ORACLE创建用户
- 通过命令行创建Oracle的表空间
- oracle笔记整理五[创建数据库]
- Oracle创建实例的最少参数需求
- 如何创建oracle函数索引
- Oracle 9i创建数据库(图形界面方式)-数据库开发介绍
- 创建Oracle的主键反序索引
- oracle:SQL创建用户