DECLARE
-- Common Declarations
l_api_version NUMBER := 1.0;
l_init_msg_list VARCHAR2(2) := FND_API.G_TRUE;
l_return_values VARCHAR2(2) := FND_API.G_FALSE;
l_commit VARCHAR2(2) := FND_API.G_FALSE;
x_return_status VARCHAR2(2);
x_msg_count NUMBER := 0;
x_msg_data VARCHAR2(255);
-- WHO columns
l_user_id NUMBER := -1;
l_resp_id NUMBER := -1;
l_application_id NUMBER := -1;
l_row_cnt NUMBER := 1;
l_user_name VARCHAR2(30) := 'OPERATIONS';
l_resp_name VARCHAR2(30) := 'MFG_AND_DIST_SUPER_USER_APS';
-- API specific declarations
l_header_id NUMBER := 0;
l_trohdr_rec INV_MOVE_ORDER_PUB.TROHDR_REC_TYPE;
l_trohdr_val_rec INV_MOVE_ORDER_PUB.TROHDR_VAL_REC_TYPE;
l_trolin_tbl INV_MOVE_ORDER_PUB.TROLIN_TBL_TYPE;
l_trolin_val_tbl INV_MOVE_ORDER_PUB.TROLIN_VAL_TBL_TYPE;
x_trolin_tbl INV_MOVE_ORDER_PUB.TROLIN_TBL_TYPE;
x_trolin_val_tbl INV_MOVE_ORDER_PUB.TROLIN_VAL_TBL_TYPE;
x_trohdr_rec INV_MOVE_ORDER_PUB.TROHDR_REC_TYPE;
x_trohdr_val_rec INV_MOVE_ORDER_PUB.TROHDR_VAL_REC_TYPE;
-- Cursor to load Move Order Headers
l_mold_tbl INV_MO_LINE_DETAIL_UTIL.g_mmtt_tbl_type;
x_mold_tbl INV_MO_LINE_DETAIL_UTIL.g_mmtt_tbl_type;
l_move_order_type NUMBER := 3;
BEGIN
FND_GLOBAL.APPS_INITIALIZE(1371, 50627, 660); -- Suhasini / Mfg Mgr / INV
dbms_output.put_line('Initialized applications context: '|| l_user_id || ' '|| l_resp_id ||' '|| l_application_id );
INV_MOVE_ORDER_PUB.Get_Move_Order(
P_API_VERSION_NUMBER => l_api_version
, P_INIT_MSG_LIST => l_init_msg_list
, P_RETURN_VALUES => l_return_values
, X_RETURN_STATUS => x_return_status
, X_MSG_COUNT => x_msg_count
, X_MSG_DATA => x_msg_data
, P_HEADER_ID => 242085--93023
, P_HEADER => NULL
, X_TROHDR_REC => l_trohdr_rec
, X_TROHDR_VAL_REC => l_trohdr_val_rec
, X_TROLIN_TBL => l_trolin_tbl
, X_TROLIN_VAL_TBL => l_trolin_val_tbl
);
-- Print the Move Order Header/Lines to be processed
IF (x_return_status = FND_API.G_RET_STS_SUCCESS) THEN
l_trohdr_rec.operation := INV_GLOBALS.G_OPR_UPDATE;
FOR i IN 1..l_trolin_tbl.COUNT LOOP
l_trolin_tbl(i).attribute1 := 'update move order test!';
l_trolin_tbl(i).operation := INV_GLOBALS.G_OPR_UPDATE;
END LOOP;
END IF;
INV_MOVE_ORDER_PUB.Process_Move_Order(
P_API_VERSION_NUMBER => l_api_version
, P_INIT_MSG_LIST => l_init_msg_list
, P_RETURN_VALUES => l_return_values
, P_COMMIT => l_commit
, X_RETURN_STATUS => x_return_status
, X_MSG_COUNT => x_msg_count
, X_MSG_DATA => x_msg_data
, P_TROHDR_REC => l_trohdr_rec
, P_TROHDR_VAL_REC => l_trohdr_val_rec
, P_TROLIN_TBL => l_trolin_tbl
, P_TROLIN_VAL_TBL => l_trolin_val_tbl
, X_TROHDR_REC => x_trohdr_rec
, X_TROHDR_VAL_REC => x_trohdr_val_rec
, X_TROLIN_TBL => x_trolin_tbl
, X_TROLIN_VAL_TBL => x_trolin_val_tbl
);
IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
DBMS_OUTPUT.PUT_LINE('Error Message :'||x_msg_data);
END IF;
-- END LOOP;
-- FOR i IN 1..l_trolin_tbl.COUNT LOOP
l_trolin_tbl := INV_Trolin_Util.Query_Rows(p_line_id => l_trolin_tbl(1).line_id);
l_mold_tbl := INV_MO_LINE_DETAIL_UTIL.query_rows(p_line_id => l_trolin_tbl(1).line_id);
INV_PICK_WAVE_PICK_CONFIRM_PUB.Pick_Confirm(p_api_version_number => l_api_version,
p_init_msg_list => l_init_msg_list,
p_commit => l_commit,
x_return_status => X_RETURN_STATUS,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
p_move_order_type => l_move_order_type,
p_transaction_mode => 1,
p_trolin_tbl => l_trolin_tbl,
p_mold_tbl => l_mold_tbl,
x_mmtt_tbl => x_mold_tbl,
x_trolin_tbl => x_trolin_tbl);
-- END LOOP;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE(SQLCODE ||':'||SQLERRM);
END;