Spec
Procedure XXXXXX_PO_REQ_CANCEL_PRG(errbuf out varchar2,retcode out varchar2,Req_num Number);
--------------------------------------------------------------------------
Body
Procedure XXXXXX_PO_REQ_CANCEL_PRG(errbuf out varchar2,retcode out varchar2,Req_num Number)
is
l_return_status VARCHAR2 (1000);
l_msg_count NUMBER;
l_msg_data VARCHAR2 (1000);
lv_header_id po_tbl_number;
lv_line_id po_tbl_number;
m NUMBER := NULL;
l_msg_dummy VARCHAR2 (2000);
l_output VARCHAR2 (2000);
Cursor lcur_req_can is
Select poh.requisition_header_id
,pol.requisition_line_id
,poh.authorization_status
,poh.Segment1 Po_Req_Num
,pol.item_description
,pol.line_num
,quantity
From po_requisition_headers_all poh
,po_requisition_lines_all pol
Where poh.authorization_status = 'APPROVED'
And poh.requisition_header_id = pol.requisition_header_id
And pol.line_location_id is null
And pol.source_type_code = 'VENDOR'
And nvl(pol.cancel_flag,'N') = 'N'
And poh.segment1 = nvl(Req_num,poh.segment1);
BEGIN
m := 1;
FOR i IN lcur_req_can LOOP
lv_header_id := po_tbl_number (i.requisition_header_id);
lv_line_id := po_tbl_number (i.requisition_line_id);
po_req_document_cancel_grp.cancel_requisition
(p_api_version => 1.0,
p_req_header_id => lv_header_id,
p_req_line_id => lv_line_id,
p_cancel_date => SYSDATE,
p_cancel_reason => 'Cancelled Requisition',
p_source => 'REQUISITION',
x_return_status => l_return_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data
);
END LOOP;
COMMIT;
FND_FILE.PUT_LINE(fnd_file.log,'Return Status is - '||l_return_status);
IF l_return_status <> 'S'
THEN
fnd_msg_pub.get (m, fnd_api.g_false, l_msg_data, l_msg_dummy);
l_output := (TO_CHAR (m) || ': ' || l_msg_data);
FND_FILE.PUT_LINE(fnd_file.log,'Out put is - '||l_output);
END IF;
END;
Procedure XXXXXX_PO_REQ_CANCEL_PRG(errbuf out varchar2,retcode out varchar2,Req_num Number);
--------------------------------------------------------------------------
Body
Procedure XXXXXX_PO_REQ_CANCEL_PRG(errbuf out varchar2,retcode out varchar2,Req_num Number)
is
l_return_status VARCHAR2 (1000);
l_msg_count NUMBER;
l_msg_data VARCHAR2 (1000);
lv_header_id po_tbl_number;
lv_line_id po_tbl_number;
m NUMBER := NULL;
l_msg_dummy VARCHAR2 (2000);
l_output VARCHAR2 (2000);
Cursor lcur_req_can is
Select poh.requisition_header_id
,pol.requisition_line_id
,poh.authorization_status
,poh.Segment1 Po_Req_Num
,pol.item_description
,pol.line_num
,quantity
From po_requisition_headers_all poh
,po_requisition_lines_all pol
Where poh.authorization_status = 'APPROVED'
And poh.requisition_header_id = pol.requisition_header_id
And pol.line_location_id is null
And pol.source_type_code = 'VENDOR'
And nvl(pol.cancel_flag,'N') = 'N'
And poh.segment1 = nvl(Req_num,poh.segment1);
BEGIN
m := 1;
FOR i IN lcur_req_can LOOP
lv_header_id := po_tbl_number (i.requisition_header_id);
lv_line_id := po_tbl_number (i.requisition_line_id);
po_req_document_cancel_grp.cancel_requisition
(p_api_version => 1.0,
p_req_header_id => lv_header_id,
p_req_line_id => lv_line_id,
p_cancel_date => SYSDATE,
p_cancel_reason => 'Cancelled Requisition',
p_source => 'REQUISITION',
x_return_status => l_return_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data
);
END LOOP;
COMMIT;
FND_FILE.PUT_LINE(fnd_file.log,'Return Status is - '||l_return_status);
IF l_return_status <> 'S'
THEN
fnd_msg_pub.get (m, fnd_api.g_false, l_msg_data, l_msg_dummy);
l_output := (TO_CHAR (m) || ': ' || l_msg_data);
FND_FILE.PUT_LINE(fnd_file.log,'Out put is - '||l_output);
END IF;
END;
No comments:
Post a Comment