Below are the steps to create Supplier contacts in Oracle EBS R12.
AP_SUP_SITE_CONTACT_INT interface used in 11i for loading supplier contact. Currently in R12 contacts can not be loaded using the interface table.

ap_vendor_pub_pkg.create_vendor_contact API is used in R12 and the program has to be registered as a concurrent program.

### Sample R12 Code

BEGIN
v_party_usg_assignment_id := NULL;
v_relationship_id := NULL;
v_directional_flag := NULL;
v_rel_rowid := NULL;
fnd_file.put_line (fnd_file.LOG,
‘Vendor code :’
|| rec.vendor_name
|| ‘  Vendor site code :’
|| rec.vendor_site_code
|| ‘  Person Last Name : ‘
|| rec.person_last_name
);
l_vendor_contact.vendor_id := rec.vendor_id;
l_vendor_contact.vendor_site_id := rec.vendor_site_id;
l_vendor_contact.org_id := rec.org_id;
l_vendor_contact.person_first_name := rec.person_first_name;
l_vendor_contact.person_middle_name := rec.person_middle_name;
l_vendor_contact.person_last_name := rec.person_last_name;
l_vendor_contact.phone := rec.phone;
l_vendor_contact.email_address := rec.email_address;
p_init_msg_list := fnd_api.g_true;
p_commit := fnd_api.g_false;
x_return_status := NULL;
x_msg_count := NULL;
x_msg_data := NULL;

IF rec.process_flag = ‘I’
THEN
fnd_file.put_line (fnd_file.LOG, ‘Creating contacts….’);
ap_vendor_pub_pkg.create_vendor_contact
(p_api_version             => p_api_version,
p_init_msg_list           => p_init_msg_list,
p_commit                  => p_commit,
x_return_status           => x_return_status,
x_msg_count               => x_msg_count,
x_msg_data                => x_msg_data,
p_vendor_contact_rec      => l_vendor_contact,
x_vendor_contact_id       => l_vendor_contact.vendor_contact_id,
x_per_party_id            => l_vendor_contact.per_party_id,
x_rel_party_id            => l_vendor_contact.relationship_id,
x_rel_id                  => l_vendor_contact.rel_party_id,
x_org_contact_id          => l_vendor_contact.org_contact_id,
x_party_site_id           => l_vendor_contact.party_site_id
);
error_handling (rec.r_id, x_return_status, x_msg_count, x_msg_data);
fnd_file.put_line (fnd_file.LOG, ‘*************’);
END IF;
END;

How to create RMA in Oracle Order Management:

I am taking the case of creation of Return Sales Order with Receipt and Credit Memo.

1.Create New Sales Order with Order Type = “Return Only . ( we can take Mixed or any other that allow return line)

2.Since Header Order Type is “Return Only”, based on the transaction Type Setup ,  System will default Line Type .In transaction type set the Default RMA = “Return (Receipt)” , with this Setup system will populate the Line Type = “Return (Receipt)”  , enter other details like
Item #
Qty etc.

3.Go to Return tab ( Lines) and Enter Return Reason (There is LOV for Return Reason select any relevent value from LOV ).
4.Book the RMA.

5.Requery the RMA , check the Line Status , It should be “Awaiting Return”.

6.Select Receipt (Purchasing Responsibility) 

7.Goto Customer Tab and Enter the RMA Num .

8.Press Find Button.

9.Ignore the receipt Header , and go to Receipts form 

10.Select the line

11.Press Save,System will ask for the Sub Inventory.Best bet is enter “Stores” ( Here I am taking the case Routing = Direct Delivery)

12.Press Save Button. Save action will automatically submit the “Receiving Transaction Processor (RTP) concurrent Program.

13.Check Order line status , it should be “Returned”.

14.Go to View > request . Submit Concurrent Program “Workflow background Process”
              with Item Type = OM Order Line
              Process Deferred = Yes
              Process Timeout = No.

Query Order line again , Status Should be “Closed”

15.Step # 14 also submit “Autoinvoice” concurrent Program.
16.Goto Transaction (Receivable Responsibility)

            Go to Find Window
             Enter Sales Order # in Sales Order Number Field
             Press Find
System should display your Invoice (Credit memo)

Examine the Invoice and you are good to go.
This Post is about Oracle applications RFQ to Receipt Cycle.In this Post I will explain the Cycle from RFQ to PO Receipt with screen shots.

High -Lights of this Cycle is  to Create:

  • RFQ
  • Quote
  • Purchase Order
  • Receive against PO.

Once RFQ is created , Submit concurrent job “Request to Print the RFQ” for a supplier. On completion this job will increment print count for that supplier as shown below.

In below  Oracle Apps UIs we can see
  1. RFQ # 308,
  2. Supplier Info from Supplier List and
  3. Price Breaks.
 
Print RFQ for all the Suppliers by means of Concurrent Program available in Oracle Apps


Once we print the RFQ , status of RFQ become Printed , and print count will increment for all suppliers .Since we got response from the Office Supplier , Inc Site – OFFICESUPPLIER , Responded field populated for this supplier only . 

  
 
From the RFQ , Select Tools > Copy Doc .It will Create Quotations as shown below.
  1. Enter the Supplier Name for whom you want to create Quote.
  2. Press OK and it will Create Quotation.
  1.  Query for Quotation # 502.
  2. Create Purchase Order Agreement from Quotation by selected Tools > Copy Doc
  3. Press Ok and it will Create Purchase Order Agreement. 
 Query for PO Agreement and Approve it
Once Oracle Purchase agreement got approved , creates the releases for Blanket PO Agreement .In our example PO Agreement Release we have item Test001 , BUT Item Test001 has restricted to be ordered from supplier from “Approval Supplier list”, and as  our Supplier is not part of any Approve Supplier list , system will throw Error.
 
For my test , I just remove the Item Test001 and Approve the Oracle Purchase Order Release and finally did the receipt against PO.
YOur Work Flow mailer is triggering Mail often when you clone your Instance and you are unable to test the New stuff using work Flow Mailer 

Here is the solution for the Work flow mailer to stop sending older mails in the Test Instance 

UPDATE WF_NOTIFICATIONS

SET STATUS = ‘CLOSED’
where status =’OPEN’;
UPDATE WF_NOTIFICATIONS
SET MAIL_STATUS = ‘SENT’
where status =’OPEN’;

commit; 
Simple , but very Effective steps to Control your work flow mailer , sending old mails

Check this Steps:

Application Manager — > Application Dashboard ->

Application System– > Dev–> service Components –> Component Details

Set override Address : Dev: Work Flow Notification Mailer

Enter the Over Ride Address : *******. Mail .Com

Update the scripts:

update fnd_svc_comp_param_vals fscpv
set fscpv.PARAMETER_VALUE = ‘<override email address>’
where fscpv.parameter_id in (select fscpt.parameter_id
from fnd_svc_comp_params_tl fscpt
where fscpt.display_name = ‘Test Address’);

If this is Entered he/She will receive all the notification mails which has been triggered in the DEV or UAT 

Step 1Login to “Workflow Administrator Web Applications”
Image

Step 2
Ensure that Notification Mailer is running, and then click on icon as below
Image

Step 3
Click on “View Details”
Image

Step 4.
Click on “Set Override Address”
Image

Step 5.
Finally you can change the email address here. Please read the instructions in red carefully.
Image

OPM PROCESS EXECUTION TABLES R12

  • GME_BATCH_HEADER
  • GME_BATCH_HEADER_MIG
  • GME_BATCH_HISTORY
  • GME_BATCH_MAPPING_MIG
  • GME_BATCH_SALES_ORDERS
  • GME_BATCH_STEPS
  • GME_BATCH_STEPS_MIG
  • GME_BATCH_STEP_ACTIVITIES
  • GME_BATCH_STEP_ACTIV_MIG
  • GME_BATCH_STEP_CHARGES
  • GME_BATCH_STEP_CHARGES_MIG
  • GME_BATCH_STEP_DEPENDENCIES
  • GME_BATCH_STEP_DEP_MIG
  • GME_BATCH_STEP_ITEMS
  • GME_BATCH_STEP_ITEMS_MIG
  • GME_BATCH_STEP_RESOURCES
  • GME_BATCH_STEP_RESOURCES_MIG
  • GME_BATCH_STEP_RSRC_SUMMARY
  • GME_BATCH_STEP_TRANSFERS
  • GME_BATCH_STEP_TRANSFERS_MIG
  • GME_BATCH_TXNS_MIG
  • GME_ERES_GTMP
  • GME_EXCEPTIONS_GTMP
  • GME_GANTT_DOCUMENT_FILTER
  • GME_INVENTORY_TXNS_GTMP
  • GME_LAB_BATCH_LOTS
  • GME_MATERIAL_DETAILS
  • GME_MATERIAL_DETAILS_MIG
  • GME_MATERIAL_DISPENSING_GTMP
  • GME_MIGRATION_CONTROL
  • GME_PARAMETERS
  • GME_PENDING_PRODUCT_LOTS
  • GME_PROCESS_PARAMETERS
  • GME_PROCESS_PARAMETERS_MIG
  • GME_RESOURCE_TXNS
  • GME_RESOURCE_TXNS_GTMP
  • GME_RESOURCE_TXNS_MIG
  • GME_RESOURCE_TXNS_SUMMARY
  • GME_SCALE_DETAIL
  • GME_TEMP_EXCEPTIONS
  • GME_TEXT_HEADER
  • GME_TEXT__TL
  • GME_TRANSACTION_PAIRS
  • GME_UNALLOCATED_ITEMS_GTMP
OPM INVENTORY TABLE R12

  • BISOPM_ONHANDSALE_SUM
  • BIS_OPM_PROD_SUM
  • GMI_AUTO_ALLOCATION_BATCH
  • GMI_CATEGORY_SETS
  • GMI_CLOS_WAREHOUSES
  • GMI_DISCRETE_TRANSFERS
  • GMI_DISCRETE_TRANSFER_LINES
  • GMI_DISCRETE_TRANSFER_LOTS
  • GMI_ITEMS_XML_INTERFACE
  • GMI_ITEM_CATEGORIES
  • GMI_ITEM_CONV_AUDIT
  • GMI_ITEM_CONV_AUDIT_DETAILS
  • GMI_ITEM_ORGANIZATIONS
  • GMI_LOTS_CONV_XML_INTERFACE
  • GMI_LOTS_XML_INTERFACE
  • GMI_LOT_TRACE
  • GMI_MASSTRANS_CTL
  • GMI_MIGRATION_PARAMETERS
  • GMI_OBSOLETE_ITEM_COLUMNS
  • GMI_QUANTITY_XML_INTERFACE
  • GMI_SUBLOT_GENERATE
  • GMI_TRAN_TMP
  • IC_ADJS_JNL
  • IC_ALLC_CLS
  • IC_ALOT_PRM
  • IC_CLDR_DTL
  • IC_CLDR_HDR
  • IC_CLDR_HDR_B
  • IC_CLDR_HDR_TL
  • IC_COMD_CDS
  • IC_COST_CLS
  • IC_CRUL_CLS
  • IC_CTMS_CLS
  • IC_CYCL_ADT
  • IC_CYCL_DTL
  • IC_CYCL_ERR
  • IC_CYCL_HDR
  • IC_CYCL_MSC
  • IC_DECM_MST
  • IC_FRGT_CLS
  • IC_GLED_CLS
  • IC_INVN_CLS
  • IC_INVN_TYP
  • IC_ITEM_CDT
  • IC_ITEM_CNV
  • IC_ITEM_CPG
  • IC_ITEM_HIERARCHY
  • IC_ITEM_MST
  • IC_ITEM_MST_B
  • IC_ITEM_MST_B_MIG
  • IC_ITEM_MST_TL
  • IC_ITEM_WHS
  • IC_JRNL_MST
  • IC_LOCT_INV
  • IC_LOCT_MST
  • IC_LOTS_CPG
  • IC_LOTS_MST
  • IC_LOTS_MST_MIG
  • IC_LOTS_STS
  • IC_PERD_BAL
  • IC_PHYS_CNT
  • IC_PHYS_ERR
  • IC_PKGS_MST
  • IC_PLNT_INV
  • IC_PRCE_CLS
  • IC_PRCH_CLS
  • IC_PURG_PRM
  • IC_RANK_MST
  • IC_SALE_CLS
  • IC_SHIP_CLS
  • IC_STAT_RPT
  • IC_STOR_CLS
  • IC_SUMM_INV
  • IC_TAXN_ASC
  • IC_TAXN_CLS
  • IC_TEXT_HDR
  • IC_TEXT_TBL_TL
  • IC_TRAN_ARC
  • IC_TRAN_CMP
  • IC_TRAN_PND
  • IC_TXN_REQUEST_HEADERS
  • IC_TXN_REQUEST_LINES
  • IC_WHSE_INV
  • IC_WHSE_MST
  • IC_WHSE_REL
  • IC_WHSE_STS
  • IC_XFER_MST
  • IN_ADDR_MST
  • IN_CTRY_MST
  • IN_ITEM_MST
  • IN_REGN_MST
  • IN_STAT_CTL
  • IN_STAT_DTL
  • IN_STAT_HDR
  • IN_STAT_MSG
  • IN_TEXT_HDR
  • IN_TEXT_TBL_TL
  • IN_TOFD_MST
  • SY_WF_ITEM_ROLES