The following lines contain the word 'select', 'insert', 'update' or 'delete':
PROCEDURE update_locator_capacity
( x_return_status OUT NOCOPY VARCHAR2, -- return status (success/error/unexpected_error)
x_msg_count OUT NOCOPY NUMBER, -- number of messages in the message queue
x_msg_data OUT NOCOPY VARCHAR2, -- message text when x_msg_count>0
p_inventory_location_id IN NUMBER, -- identifier of locator
p_organization_id IN NUMBER, -- org of locator whose capacity is to be determined
p_client_code IN VARCHAR2, -- identifier of item
p_transaction_action_id IN NUMBER, -- transaction action id for pack,unpack,issue,receive,transfer
p_quantity IN NUMBER,
p_transaction_date IN DATE
)
IS
l_return_status VARCHAR2(1);
inv_trx_util_pub.TRACE('In update locator capcity ', 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('Locator ID' || p_inventory_location_id , 'update_current_capacity',4);
inv_trx_util_pub.TRACE('Client Code ' || p_client_code, 'update_current_capacity', 4);
Select *
INTO l_old_Record
FROM mtl_3pl_locator_occupancy
WHERE locator_id = p_inventory_location_id
and organization_id = p_organization_id
AND client_code = p_client_code;
inv_trx_util_pub.TRACE('Locator Record Exists in Occupancy table', 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('Locator Record Does not exist , creating a new record in Occupancy table', 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('p_transaction_date => ' ||p_transaction_date, 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('p_quantity => ' || p_quantity, 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('p_inventory_location_id => ' ||p_inventory_location_id, 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('p_transaction_date => ' ||p_transaction_date, 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('p_transaction_action_id => ' ||p_transaction_action_id, 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('p_organization_id => ' ||p_organization_id, 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('l_client_code => ' ||p_client_code, 'update_current_capacity', 4);
l_success := insert_3pl_loc_occupancy(
p_transaction_date ,
p_quantity ,
p_inventory_location_id ,
p_transaction_date ,
p_transaction_action_id ,
p_quantity ,
p_organization_id ,
p_client_code,
1
);
inv_trx_util_pub.TRACE('Updating The current record ', 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('Transaction action ID' || p_transaction_action_id, 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('Just before adding days .... :', 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('Transaction_date :' || p_transaction_date , 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('l_old_Record.Last_Receipt_Date :' || l_old_Record.Last_Receipt_Date , 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('l_number_of_days :' || l_number_of_days , 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('Inside 2nd if' || l_number_of_days , 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('New number of days' || l_number_of_days , 'update_current_capacity', 4);
inv_trx_util_pub.TRACE(' Calling update_3pl_loc_occupancy ', 'update_current_capacity', 4);
l_success := update_3pl_loc_occupancy(
l_Last_Receipt_Date ,
l_current_onhand ,
l_locator_id ,
l_transaction_date ,
l_transaction_action ,
l_transaction_quantity ,
l_organization_id,
l_client_code ,
l_number_of_days
);
inv_trx_util_pub.TRACE('For issue transactions', 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('Just before adding days .... :', 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('p_transaction_date :' || p_transaction_date , 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('l_old_Record.Last_Receipt_Date :' || l_old_Record.Last_Receipt_Date , 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('l_number_of_days :' || l_number_of_days , 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('p_quantity :' || p_quantity , 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('Before calling update_3pl_loc_occupancy ', 'update_current_capacity', 4);
l_success := update_3pl_loc_occupancy(
l_Last_Receipt_Date ,
l_current_onhand ,
l_locator_id ,
l_transaction_date ,
l_transaction_action ,
l_transaction_quantity ,
l_organization_id,
l_client_code,
l_number_of_days
);
inv_trx_util_pub.TRACE(' Exception in update_locator_capacity => '||sqlerrm, 'update_current_capacity', 4);
END update_locator_capacity;
Function update_3pl_loc_occupancy (
l_Last_Receipt_Date date,
l_current_onhand NUMBER ,
l_locator_id NUMBER ,
l_transaction_date DATE ,
l_transaction_action NUMBER ,
l_transaction_quantity NUMBER ,
l_organization_id NUMBER,
l_client_code VARCHAR2 ,
l_number_of_days number
) RETURN VARCHAR2
IS
cursor c is select client_code , locator_id , organization_id
FROM mtl_3pl_locator_occupancy
WHERE client_code = l_client_code
AND locator_id = l_locator_id
and organization_id = l_organization_id
FOR UPDATE nowait;
inv_trx_util_pub.TRACE('In update_3pl_loc_occupancy ', 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('recinfo.locator_id ' || recinfo.locator_id , 'update_current_capacity', 4);
inv_trx_util_pub.TRACE('recinfo.client_code ' || recinfo.client_code , 'update_current_capacity', 4);
Update mtl_3pl_locator_occupancy
set Last_Receipt_Date = l_Last_Receipt_Date,
current_onhand = l_current_onhand ,
transaction_date = l_transaction_date ,
transaction_action_id = l_transaction_action ,
transaction_quantity = l_transaction_quantity ,
number_of_days = l_number_of_days
where locator_id = recinfo.locator_id
and client_code = recinfo.client_code
and organization_id = recinfo.organization_id;
inv_trx_util_pub.TRACE(' Exception in update_3pl_loc_occupancy => '||sqlerrm, 'update_current_capacity', 4);
END update_3pl_loc_occupancy;
Function insert_3pl_loc_occupancy (
l_Last_Receipt_Date date,
l_current_onhand NUMBER ,
l_locator_id NUMBER ,
l_transaction_date DATE ,
l_transaction_action NUMBER ,
l_transaction_quantity NUMBER ,
l_organization_id NUMBER,
l_client_code VARCHAR2 ,
l_number_of_days number
) RETURN VARCHAR2
IS
BEGIN
IF (g_debug = 1) THEN
inv_trx_util_pub.TRACE('IN insert_3pl_loc_occupancy ','update_current_capacity', 4);
inv_trx_util_pub.TRACE('l_locator_id ' || l_locator_id,'update_current_capacity', 4);
inv_trx_util_pub.TRACE('IN l_client_code ' || l_client_code ,'update_current_capacity', 4);
INSERT INTO mtl_3pl_locator_occupancy
( Last_Receipt_Date,
current_onhand ,
transaction_date ,
transaction_action_id ,
transaction_quantity ,
last_invoiced_date ,
number_of_days ,
locator_id,
organization_id ,
client_code
)
VALUES
( l_Last_Receipt_Date,
l_current_onhand ,
l_transaction_date ,
l_transaction_action ,
l_transaction_quantity ,
NULL ,
l_number_of_days ,
l_locator_id,
l_organization_id ,
l_client_code
);
inv_trx_util_pub.TRACE(' Exception in insert_3pl_loc_occupancy => '||sqlerrm, 'update_current_capacity', 4);
END insert_3pl_loc_occupancy;