DECLARE
l_hdr_rec inv_move_order_pub.trohdr_rec_type
:= inv_move_order_pub.g_miss_trohdr_rec;
l_line_tbl inv_move_order_pub.trolin_tbl_type
:= inv_move_order_pub.g_miss_trolin_tbl;
x_return_status VARCHAR2 (1);
x_msg_count NUMBER;
x_msg_data VARCHAR2 (4000);
x_hdr_rec inv_move_order_pub.trohdr_rec_type
:= inv_move_order_pub.g_miss_trohdr_rec;
x_hdr_val_rec inv_move_order_pub.trohdr_val_rec_type;
x_line_tbl inv_move_order_pub.trolin_tbl_type;
x_line_val_tbl inv_move_order_pub.trolin_val_tbl_type;
v_msg_index_out NUMBER;
l_rsr_type inv_reservation_global.mtl_reservation_tbl_type;
BEGIN
l_line_tbl.DELETE;
x_line_tbl.DELETE;
mo_global.set_policy_context ('S', 101);
inv_globals.set_org_id (101);
fnd_global.apps_initialize (1695, 20634, 401);
-------------------------------------------------------------
l_hdr_rec.date_required := SYSDATE;
l_hdr_rec.header_status := inv_globals.g_to_status_preapproved;
l_hdr_rec.organization_id := 103;
l_hdr_rec.status_date := SYSDATE;
l_hdr_rec.transaction_type_id := inv_globals.g_type_transfer_order_issue;
l_hdr_rec.move_order_type := inv_globals.g_move_order_requisition;
l_hdr_rec.db_flag := fnd_api.g_true;
l_hdr_rec.operation := inv_globals.g_opr_create;
l_hdr_rec.description := 'Mah Test Move Order';
l_hdr_rec.to_account_id := 12831;
l_hdr_rec.from_subinventory_code := 'Products';
-------------------------------------------------------------
l_line_tbl (1).date_required := SYSDATE;
l_line_tbl (1).inventory_item_id := 93;
l_line_tbl (1).line_id := fnd_api.g_miss_num;
l_line_tbl (1).line_number := 1;
l_line_tbl (1).line_status := inv_globals.g_to_status_preapproved;
l_line_tbl (1).transaction_type_id :=
inv_globals.g_type_transfer_order_issue;
l_line_tbl (1).organization_id := 103;
l_line_tbl (1).quantity := 1;
l_line_tbl (1).status_date := SYSDATE;
l_line_tbl (1).uom_code := 'Ea';
l_line_tbl (1).db_flag := fnd_api.g_true;
l_line_tbl (1).operation := inv_globals.g_opr_create;
l_line_tbl (1).from_subinventory_code := 'Products';
l_line_tbl (1).to_account_id := 12831;
-- l_line_tbl (1).lot_number := 'A01'; --If the item is lot controlled
-- l_line_tbl (1).serial_number_start := 'A01-0031';
--If the item is serial number controlled
-- l_line_tbl (1).serial_number_end := 'A01-0031';
--If the item is serial number controlled
-------------------------------------------------------------
inv_move_order_pub.process_move_order (p_api_version_number => 1.0,
p_init_msg_list => fnd_api.g_false,
p_return_values => fnd_api.g_false,
p_commit => fnd_api.g_false,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
p_trohdr_rec => l_hdr_rec,
p_trolin_tbl => l_line_tbl,
x_trohdr_rec => x_hdr_rec,
x_trohdr_val_rec => x_hdr_val_rec,
x_trolin_tbl => x_line_tbl,
x_trolin_val_tbl => x_line_val_tbl
);
DBMS_OUTPUT.put_line ('Return Status is :' || x_return_status);
DBMS_OUTPUT.put_line ('Message Count is :' || x_msg_count);
DBMS_OUTPUT.put_line ('Move Order Number is :' || x_hdr_rec.request_number);
DBMS_OUTPUT.put_line ('Number of Lines Created are :' || x_line_tbl.COUNT);
IF x_return_status = 'S'
THEN
COMMIT;
ELSE
ROLLBACK;
END IF;
IF x_msg_count > 0
THEN
FOR v_index IN 1 .. x_msg_count
LOOP
fnd_msg_pub.get (p_msg_index => v_index,
p_encoded => 'F',
p_data => x_msg_data,
p_msg_index_out => v_msg_index_out
);
x_msg_data := SUBSTR (x_msg_data, 1, 200);
DBMS_OUTPUT.put_line (x_msg_data);
DBMS_OUTPUT.put_line
('============================================================');
END LOOP;
END IF;
END;
l_hdr_rec inv_move_order_pub.trohdr_rec_type
:= inv_move_order_pub.g_miss_trohdr_rec;
l_line_tbl inv_move_order_pub.trolin_tbl_type
:= inv_move_order_pub.g_miss_trolin_tbl;
x_return_status VARCHAR2 (1);
x_msg_count NUMBER;
x_msg_data VARCHAR2 (4000);
x_hdr_rec inv_move_order_pub.trohdr_rec_type
:= inv_move_order_pub.g_miss_trohdr_rec;
x_hdr_val_rec inv_move_order_pub.trohdr_val_rec_type;
x_line_tbl inv_move_order_pub.trolin_tbl_type;
x_line_val_tbl inv_move_order_pub.trolin_val_tbl_type;
v_msg_index_out NUMBER;
l_rsr_type inv_reservation_global.mtl_reservation_tbl_type;
BEGIN
l_line_tbl.DELETE;
x_line_tbl.DELETE;
mo_global.set_policy_context ('S', 101);
inv_globals.set_org_id (101);
fnd_global.apps_initialize (1695, 20634, 401);
-------------------------------------------------------------
l_hdr_rec.date_required := SYSDATE;
l_hdr_rec.header_status := inv_globals.g_to_status_preapproved;
l_hdr_rec.organization_id := 103;
l_hdr_rec.status_date := SYSDATE;
l_hdr_rec.transaction_type_id := inv_globals.g_type_transfer_order_issue;
l_hdr_rec.move_order_type := inv_globals.g_move_order_requisition;
l_hdr_rec.db_flag := fnd_api.g_true;
l_hdr_rec.operation := inv_globals.g_opr_create;
l_hdr_rec.description := 'Mah Test Move Order';
l_hdr_rec.to_account_id := 12831;
l_hdr_rec.from_subinventory_code := 'Products';
-------------------------------------------------------------
l_line_tbl (1).date_required := SYSDATE;
l_line_tbl (1).inventory_item_id := 93;
l_line_tbl (1).line_id := fnd_api.g_miss_num;
l_line_tbl (1).line_number := 1;
l_line_tbl (1).line_status := inv_globals.g_to_status_preapproved;
l_line_tbl (1).transaction_type_id :=
inv_globals.g_type_transfer_order_issue;
l_line_tbl (1).organization_id := 103;
l_line_tbl (1).quantity := 1;
l_line_tbl (1).status_date := SYSDATE;
l_line_tbl (1).uom_code := 'Ea';
l_line_tbl (1).db_flag := fnd_api.g_true;
l_line_tbl (1).operation := inv_globals.g_opr_create;
l_line_tbl (1).from_subinventory_code := 'Products';
l_line_tbl (1).to_account_id := 12831;
-- l_line_tbl (1).lot_number := 'A01'; --If the item is lot controlled
-- l_line_tbl (1).serial_number_start := 'A01-0031';
--If the item is serial number controlled
-- l_line_tbl (1).serial_number_end := 'A01-0031';
--If the item is serial number controlled
-------------------------------------------------------------
inv_move_order_pub.process_move_order (p_api_version_number => 1.0,
p_init_msg_list => fnd_api.g_false,
p_return_values => fnd_api.g_false,
p_commit => fnd_api.g_false,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
p_trohdr_rec => l_hdr_rec,
p_trolin_tbl => l_line_tbl,
x_trohdr_rec => x_hdr_rec,
x_trohdr_val_rec => x_hdr_val_rec,
x_trolin_tbl => x_line_tbl,
x_trolin_val_tbl => x_line_val_tbl
);
DBMS_OUTPUT.put_line ('Return Status is :' || x_return_status);
DBMS_OUTPUT.put_line ('Message Count is :' || x_msg_count);
DBMS_OUTPUT.put_line ('Move Order Number is :' || x_hdr_rec.request_number);
DBMS_OUTPUT.put_line ('Number of Lines Created are :' || x_line_tbl.COUNT);
IF x_return_status = 'S'
THEN
COMMIT;
ELSE
ROLLBACK;
END IF;
IF x_msg_count > 0
THEN
FOR v_index IN 1 .. x_msg_count
LOOP
fnd_msg_pub.get (p_msg_index => v_index,
p_encoded => 'F',
p_data => x_msg_data,
p_msg_index_out => v_msg_index_out
);
x_msg_data := SUBSTR (x_msg_data, 1, 200);
DBMS_OUTPUT.put_line (x_msg_data);
DBMS_OUTPUT.put_line
('============================================================');
END LOOP;
END IF;
END;