Friday, May 10, 2013

Few iProcurement Requisitions Are Not Visible From Application

If you create a requisition from iProcurement and exits the creation before submitting it for approval, a requisition number will be assigned and the status of the requisition will be SYSTEM_SAVED. 

 select *
   from po_requisition_headers_all
  where authorization_status = 'SYSTEM_SAVED' ;

These System Saved Requisitions are not accessible from iProcurement/Core Purchasing.

You can avoid this by saving the cart after each step of before the approver adding step else a Concurrent Program "Purge System Saved Requisition" is available under the Purchasing  Responsibility to purge these type of requisitions.
         Parameter
         Age of Requisition: Number in days, it will purge all the requisitions having last update date less than (current date - number of days)

Selection Query of this program

select distinct prh.requisition_header_id,active_shopping_cart_flag
from po_requisition_headers_all prh, po_requisition_lines_all prl
where prh.authorization_status ='SYSTEM_SAVED'
      and prh.requisition_header_id = prl.requisition_header_id (+)
      and prh.last_update_date < (sysdate- <Age of Requisition>)
      and prl.line_location_id is null
order by prh.requisition_header_id;
 


You can use below script to purge specific requisition
 ------
declare
   v_requi_hdr_id number;
   v_requi_num    po_requisition_headers_all.segment1%type := <Requisition_number> ;
begin
   select requisition_header_id
     into v_requi_hdr_id
     from po_requisition_headers_all
    where authorization_status = 'SYSTEM_SAVED'
        and segment1 = v_requi_num ;
    -->'Purge System Saved Requisition' program calling por_purge_sys_saved_req.purge_req
    --  >> and internally below packaged procedure
   por_util_pkg.purge_requisition(v_requi_hdr_id);
   dbms_output.put_line('Reuisition '||v_requi_num||' Purged');
   -- Commit the changes
   commit;
exception
   when others then
      dbms_output.put_line('Error: '||sqlerrm);
end;
---------

For Project Requisitions, by default Oracle Projects defines these as a 'commitments'.

You can view these requisitions list as commitments in 'Project Status Inquiry' form
Projects Responsibility > Project Status Inquiry > Project Staus Inquiry

After running 'Purge System Saved Requisition' program you need to run 'PRC: Update Project Summary Amounts' from Projects responsibility.

2 comments:

  1. hello,

    thank you for your help, what will happen when i purge these requisitions? i have one PR and it's SYSTEM_SAVED while it showing pending in the WF but i need to complete this PR not purge it

    ReplyDelete