Oracle EBS API: 库存数量查询API示例 (Sample: Inventory quantity inquiry API )
本示例对Oracle INV的API进行封装, 实现了某个库存组织下物料的可用数量查询.
create or replace function query_item_qty(v_item_id number)
return integer is
l_onhand_qty NUMBER;
L_api_return_status VARCHAR2(200);
l_msg_count NUMBER;
l_msg_data VARCHAR2(200);
is_revision_control BOOLEAN;
l_qty_oh NUMBER;
l_qty_res_oh NUMBER;
l_qty_res NUMBER;
l_qty_att NUMBER;
l_qty_atr NUMBER;
l_qty_sug NUMBER;
begin
apps.inv_quantity_tree_grp.clear_quantity_cache;
apps.INV_Quantity_Tree_PUB.Query_Quantities (
p_api_version_number => 1.0
, p_init_msg_lst => apps.fnd_api.g_false
, x_return_status => L_api_return_status
, x_msg_count => l_msg_count
, x_msg_data => l_msg_data
, p_organization_id => 207
, p_inventory_item_id => v_item_id
, p_tree_mode => apps.INV_Quantity_Tree_PUB.g_transaction_mode
, p_onhand_source => 3
, p_is_revision_control=> false
, p_is_lot_control => FALSE
, p_is_serial_control => FALSE
, p_revision => NULL
, p_lot_number => NULL
, p_subinventory_code => ‘FGI’
, p_locator_id => NULL
, x_qoh => l_qty_oh
, x_rqoh => l_qty_res_oh
, x_qr => l_qty_res
, x_qs => l_qty_sug
, x_att => l_qty_att
, x_atr => l_qty_atr );
if L_api_return_status <> fnd_api.g_ret_sts_success then
l_onhand_qty := 0;
else
l_onhand_qty := l_qty_oh;
end if;
return(l_onhand_qty);
exception
when others then
log_error(’query_item_qty’, sqlerrm);
return(0);
end query_item_qty;
/
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/318394/viewspace-621030/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/318394/viewspace-621030/