Information source - http://www.confluentminds.com/Trainings/SCM/Topic1.1_Ch1_Part4.html
1. Procure to Pay Cycle
Create requisition to procure goods
and service with supplier information, delivery instructions, multiple
accounting distributions, and notes to buyers, approvers, and
receivers.
A request for quotation (RFQ) is sent to a supplier to request pricing
and other information for an item. A quotation is the
supplier’s response to that RFQ. Identify requisitions that
require supplier quotations and automatically create a RFQ Or create
manually and send it thru’ Fax or iSupplier portal. Record
supplier quotations from a catalog, telephone conversation, or response
from your RFQ. You can also receive quotations electronically and
import as Quotations (catalog). Review, analyze, evaluate and approve
supplier quotations. Create standard purchase order, BPA and blanket
releases. Inform your suppliers of your shipment schedule requirements.
Record supplier acceptances of your purchase order’s terms
and conditions. Provide a quantity and price for each item you are
ordering. Alternatively, you should also be able to create your
purchase order simply by providing an amount if you are ordering a
service that you cannot break down by price and quantity. Enter goods
and service receipt information against the PO using routing controls
viz: Direct delivery, standard receipt or standard receipt with
inspection. Transfer and deliver goods using the Receiving Transactions
window. If you want to perform an inspection transaction, you can open
the Inspections window to specify accepted and rejected quantities.
1.1. Requisitions
Create a requisition, enter
Requisition type, which can be Purchase Requisition or Internal
Requisition. The Preparer defaults to ur employee name.Enter a line
Type , the default for this field is from the Purchasing Options
window. Line types are handled in three classes: amount–based,
quantity–based, and outside processing.
Enter the Quantity you want to request for the item. You can use the Catalog button to get price breaks for different quantities from catalog quotations or blanket purchase agreements.
Enter the Destination Type:
Expense – The goods are delivered to the requestor at an expense location. The destination subinventory is not applicable.
Inventory – The goods are received into inventory upon delivery.
Shop Floor – The goods are delivered to an outside processing operation defined by Work in Process.
Enter the name of the Requestor. The default is the requisition preparer. Enter the Organization, delivery location, Subinventory.
Enter the Source type. Inventory or the Supplier source type. For the Supplier source type, enter the suggested Supplier, Supplier Site, Contact, and Phone. For the Inventory source type, enter the Organization and Subinventory.
Enter the Quantity you want to request for the item. You can use the Catalog button to get price breaks for different quantities from catalog quotations or blanket purchase agreements.
Enter the Destination Type:
Expense – The goods are delivered to the requestor at an expense location. The destination subinventory is not applicable.
Inventory – The goods are received into inventory upon delivery.
Shop Floor – The goods are delivered to an outside processing operation defined by Work in Process.
Enter the name of the Requestor. The default is the requisition preparer. Enter the Organization, delivery location, Subinventory.
Enter the Source type. Inventory or the Supplier source type. For the Supplier source type, enter the suggested Supplier, Supplier Site, Contact, and Phone. For the Inventory source type, enter the Organization and Subinventory.
Enter
the unit Price for the item. If you create a requisition line for an
amount based line type, Purchasing sets the price to 1, and you cannot
change it. Enter the Need By date-time for the
requested items. This is required only for planned items. It should be
greater than or equal to the requisition creation date.
Save and Approve the document. The status will be changed to approved. Query the requisition and view its details.
Save and Approve the document. The status will be changed to approved. Query the requisition and view its details.
1.1.2. PO Requisition Architecture
PO_REQUISITION_HEADERS_ALL REQUISITION_HEADER_ID PREPARER_ID SEGMENT1 SUMMARY_FLAG ENABLED_FLAG START_DATE_ACTIVE END_DATE_ACTIVE DESCRIPTION AUTHORIZATION_STATUS NOTE_TO_AUTHORIZER TYPE_LOOKUP_CODE TRANSFERRED_TO_OE_FLAG ON_LINE_FLAG PRELIMINARY_RESEARCH_FLAG RESEARCH_COMPLETE_FLAG PREPARER_FINISHED_FLAG PREPARER_FINISHED_DATE AGENT_RETURN_FLAG AGENT_RETURN_NOTE CANCEL_FLAG |
PO_REQUISITION_LINES_ALL REQUISITION_LINE_ID REQUISITION_HEADER_ID LINE_NUM LINE_TYPE_ID CATEGORY_ID ITEM_DESCRIPTION UNIT_MEAS_LOOKUP_CODE UNIT_PRICE QUANTITY DELIVER_TO_LOCATION_ID TO_PERSON_ID SOURCE_TYPE_CODE ITEM_ID ITEM_REVISION QUANTITY_DELIVERED SUGGESTED_BUYER_ID ENCUMBERED_FLAG RFQ_REQUIRED_FLAG NEED_BY_DATE LINE_LOCATION_ID |
PO_REQ_DISTRIBUTIONS_ALL DISTRIBUTION_ID REQUISITION_LINE_ID SET_OF_BOOKS_ID CODE_COMBINATION_ID REQ_LINE_AMOUNT REQ_LINE_QUANTITY ENCUMBERED_FLAG GL_ENCUMBERED_DATE GL_ENCUMBERED_PERIOD_NAME |
Query to find Requisition header info : | |
set lines 150 set pages 150 execute fnd_client_info.set_org_context('204'); col Description form a40 col Req_type form a26 col type_lookup_code form a16 col PREPARER form a30 col APPROVER form a30 col NOTE_TO_APPROVER form a40 SELECT prh.segment1 Requisition , psp.manual_req_num_type req_num_type , ppf.full_name Preparer , prh.creation_date Creation_Date , prh.type_lookup_code , ppf1.full_name Approver , t.type_name Req_type , prh.description Description , pah.note Note_To_Approver , prh.requisition_header_id Req_header FROM po_requisition_headers prh , per_people_f ppf1 , per_people_f ppf , po_action_history pah , po_system_parameters psp , PO_DOCUMENT_TYPES_ALL_TL T , PO_DOCUMENT_TYPES_ALL_B B WHERE prh.REQUISITION_HEADER_ID=11675 and NVL(PRH.contractor_requisition_flag, 'N') <> 'Y' AND prh.preparer_id = ppf.person_id AND nvl(ppf.business_group_id, 0) = (select nvl(max(fsp.business_group_id), 0) from financials_system_parameters fsp) AND nvl(pah.action_code,'SUBMIT') in ('SUBMIT', 'FORWARD', 'REJECT', 'APPROVE', 'APPROVE AND RESERVE', 'RESERVE', 'ACCEPT','RETURN') --AND prh.segment1 = P_req_num_from AND EXISTS (SELECT null FROM po_requisition_lines prl WHERE prl.requisition_header_id = prh.requisition_header_id AND nvl(prl.modified_by_agent_flag,'N') = 'N' AND nvl(prl.closed_code,'OPEN') != 'FINALLY CLOSED') AND pah.object_id = prh.requisition_header_id AND pah.employee_id = ppf1.person_id AND pah.object_type_code = 'REQUISITION' AND pah.object_sub_type_code = prh.type_lookup_code AND pah.sequence_num = (SELECT max(sequence_num) FROM po_action_history pah WHERE pah.object_id = prh.requisition_header_id AND pah.object_type_code = 'REQUISITION' AND pah.object_sub_type_code = prh.type_lookup_code) and B.DOCUMENT_TYPE_CODE = T.DOCUMENT_TYPE_CODE AND B.DOCUMENT_SUBTYPE = T.DOCUMENT_SUBTYPE AND b.document_type_code = 'REQUISITION' AND b.document_subtype = prh.type_lookup_code AND NVL(B.ORG_ID, -99) = NVL(T.ORG_ID, -99) AND NVL(B.ORG_ID,NVL(TO_NUMBER(DECODE(SUBSTRB(USERENV('CLIENT_INFO'),1 ,1),' ', NULL,SUBSTRB(USERENV('CLIENT_INFO'),1,10))),-99)) = NVL(TO_NUMBER(DECODE(SUBSTRB(USERENV('CLIENT_INFO'),1,1),' ', NULL, SUBSTRB(USERENV('CLIENT_INFO'),1,10))),-99) AND T.LANGUAGE = USERENV('LANG') / |
|
Query to find Requisition details : | |
set lines 150 set pages 150 execute fnd_client_info.set_org_context('204'); col Justification form a24 col Item_Description form a36 col Source form a56 col Source_Type form a12 col Requestor form a20 col Line_Type form a12 col Item form a16 SELECT prl.line_num Line , plt.line_type Line_Type , prl.item_id prl_item_id , msi.segment1 Item , prl.item_revision Rev , prl.need_by_date Need_By_Date , prl.unit_meas_lookup_code Unit , round(prl.quantity,2) Quantity_Amount , prl.unit_price Unit_Price , DECODE (PRL.order_type_lookup_code, /* <SERVICES FPJ> */ 'FIXED PRICE', PRL.amount, 'RATE', PRL.amount, NVL(PRL.quantity, 1) * PRL.unit_price) C_AMOUNT , ppf.full_name Requestor , plc.displayed_field Source_Type , decode(prl.source_type_code,'INVENTORY',ood.organization_name||' - '||prl.source_subinventory,'VENDOR',prh.segment1||' - '||prl.suggested_vendor_name||' - '||prl.suggested_vendor_location||' - '||prl.suggested_vendor_contact||' - '||prl.suggested_buyer_id,null) Source , prl.item_description Item_Description , prd.req_line_quantity Distributions , prl.justification Justification , prl.requisition_header_id , prl.requisition_line_id FROM po_requisition_headers prh , po_requisition_lines prl , po_req_distributions prd , po_line_types plt , per_people_f ppf , org_organization_definitions ood , po_lookup_codes plc , mtl_system_items msi , mtl_categories mca , gl_code_combinations gcc, financials_system_parameters fsp , po_system_parameters psp WHERE prh.segment1 = '1713' AND prl.requisition_line_id = prd.requisition_line_id AND prl.requisition_header_id = prh.requisition_header_id AND prl.line_type_id = plt.line_type_id AND prl.to_person_id = ppf.person_id (+) AND prl.source_organization_id = ood.organization_id(+) AND plc.lookup_type = 'REQUISITION SOURCE TYPE' AND plc.lookup_code = prl.source_type_code AND nvl(ppf.business_group_id, 0) = (select nvl(max(fsp.business_group_id),0) from financials_system_parameters fsp) AND trunc(sysdate) BETWEEN nvl(ppf.effective_start_date, trunc(sysdate)) AND nvl(ppf.effective_end_date, trunc(sysdate)) AND prl.item_id = msi.inventory_item_id(+) AND msi.organization_id = 204 AND prl.category_id = mca.category_id AND prd.code_combination_id = gcc.code_combination_id AND nvl(prl.modified_by_agent_flag,'N') = 'N' AND nvl(prl.cancel_flag,'N') != 'Y' AND nvl(prl.closed_code,'OPEN') != 'FINALLY CLOSED' ORDER BY prl.line_num / |
1.1.3. PO Requisition Open Interface
Insert a single row into PO_REQUISITIONS_INTERFACE_ALL and PO_REQ_ DIST_INTERFACE_ALL table for each requisition line that you import. Then launch Requisition Import program. The Requisition Import program operates in three phases. In the first phase, the program validates your data and derives or defaults additional information. The program generates an error message for every validation that fails and creates a row in the PO_INTERFACE_ERRORS table. In the second phase, the program groups and numbers the validated requisition lines. If you specify a value in the REQ_NUMBER_SEGMENT1 column of the PO_REQUISITIONS_INTERFACE_ALL table, all lines with the same value for this column are grouped together under a requisition header. If you provide a value in the GROUP_CODE column, all lines with the same value in this column are grouped together under a requisition header. In the third phase, the program deletes all the successfully processed rows in the interface tables, and creates a report which lists the number of interface records that were successfully imported and the number that were not imported.Launch the Requisition Import Exceptions Report to view detailed errors.
Required Data for PO_REQUISITIONS_INTERFACE_ALL:
INTERFACE_SOURCE_CODE to identify the source of your imported requisitions
DESTINATION_TYPE_CODE
AUTHORIZATION_STATUS
PREPARER_ID or PREPARER_NAME
QUANTITY
CHARGE_ACCOUNT_ID
DESTINATION_ORGANIZATION_ID
DELIVER_TO_LOCATION_ID
DELIVER_TO_REQUESTOR_ID
Required columns for PO_REQ_DIST_INTERFACE_ALL:
CHARGE_ACCOUNT_ID or charge account segment values
DISTRIBUTION_NUMBER
DESTINATION_ORGANIZATION_ID
DESTINATION_TYPE_CODE
INTERFACE_SOURCE_CODE
Этот комментарий был удален автором.
ОтветитьУдалитьЭтот комментарий был удален автором.
ОтветитьУдалить