Pages

OracleEBSpro is purely for knowledge sharing and learning purpose, with the main focus on Oracle E-Business Suite Product and other related Oracle Technologies.

I'm NOT responsible for any damages in whatever form caused by the usage of the content of this blog.

I share my Oracle knowledge through this blog. All my posts in this blog are based on my experience, reading oracle websites, books, forums and other blogs. I invite people to read and suggest ways to improve this blog.


Tuesday, November 22, 2016

Security Rule in R12

Security Rule allows restricting user access to various key flexfield segments list of value.
1. Enable security on the value set.To enable security for a value set, choose either Non-Hierarchical Security or Hierarchical Security for the Security Type.
With hierarchical security, a security rule that applies to a parent value also applies to its child values.
2. Navigate to System Administrator->Application->Flexfield->Key->Segments and query the Application,Title and Structure(Accounting flexfield structure)
3. Click on the segments button and after selecting the segment to which security rule is to be applied, click on open button.
4. Ensure that the “Security Enabled” check box is enabled.
5. Navigate to General Ledger Super User->Setup->Financials->Flexfields->Key->Security->Define
6. Query the Application,Title and Structure(Accounting flexfield structure).Then select the required Segment(Independent Segment)
7. Enter the Security Rule name,description and the error message that needs to be displayed.
8. Under security Rule Elements,select the segment values that needs to be included and excluded.By default all values will be excluded.From and To value can be selected same or a range(like From 100- To 300).Then save it.
9. Navigate to General Ledger Super User->Setup->Financials->Flexfields->Key->Security->Assign
10. Query the Application,Title and Structure(Accounting flexfield structure).Then select the required Segment(Independent Segment)
11. Select the application and responsibility to which security rule needs to be applied and set the Security Rule name under Security rules section.
12. Navigate to Responsibility against which security rule is set and try entering the segment value for security rule was set.
In above example,try navigating to iProcurement responsibility and try entering charge account.
It will allow to enter only values that are included for that segment.For others it will show the error message which we have set.
References:
https://govoracleapps.wordpress.com/2013/06/01/security-rule/
https://orafinappssetups.blogspot.com/2013/01/security-rules-in-r12.html
http://oracleapps88.blogspot.com/2011/08/gl-flexfield-security-rules.html

R12 AR Month End Close and Reconciliation

As requested by some of reader , Here are steps and checklist for R12 AR Month End Close and Reconciliation.
1. Complete All Transactions for the Period Being Closed
2. Complete and review your unapplied receipts
3. Reconcile Receipts to Bank Statement Activity for the Period
4. Change period status to Close Pending
Navigate ..Control>Accounting>Open/Close Periods
Donot get confused with various status of periods:
  • Closed: Journal entry, posting, and transaction entry are not allowed unless the accounting period is reopened. Receivables verifies that there are no unposted items in this period. Receivables does not let you close a period that contains unposted items.
  • Close Pending: Similar to Closed, but does not validate for Unposted items. Journal entry, posting, and transaction entry are not allowed unless the accounting period is reopened.
  • Future: This period is not yet open, but you can enter transactions in this period. However, you cannot post in this period until you open it.
  • Not Opened: This period has never been opened and journal entry and posting are not allowed.
  • Open: Journal entry and posting are allowed.
5.Create accounting
Due to the introduction of the Subledger Accounting Architecture in Release 12 this step is new, as it enables you to create accounting for your completed transactions, which will be feed into General Ledger.Check it out old Notes (hereherehere )for SLA Process.
6.Review Unposted Items Report
You can review the Unposted Items Report to determine if any exceptions have been encountered, that will need to be resolved, to ensure all accounting has been successful for all transactions.
7.Reconcile Transaction Activity for the Period (Transaction & Receipt)
  • Run Journal Entries Report
Transaction Register Total for Postable Items = Sales Journal by GL Account for the Receivable Account Type (Total DR–Total CR)
  • Receipt Register
  • Receipt Journals Report
In theory this step is unchanged between Release 11i and Release 12. It’s just important to note that you should not be trying to reconcile distributions on transactions to account balances, as these are not necessarily the final accounting for these transactions.
1.Check that Receivables Receipts Balance by running the Receipt Journal report and the Receipt Register for the same GL Date range.
2. Use the Receipt Journal to View information about Receipts that appear in your Journal Entries report. Use the Receipt Register to Review a list of receipts for the date range that you specify. The total of the Receipt Journal should equal the total of all receipts in the Receipt Register. These reports display information about both Invoice–Related and Miscellaneous Receipts.
8.Reconcile outstanding customer balances
  • Aging Report (last period)
  • Transaction Register
  • Adjustments Register
  • Invoice Exceptions
  • Applied Receipts Register
  • Unapplied Receipts Register
  • Aging Report (this period)
Most of these reports haven’t changed between Release 11i and Release 12, except that they look at the SLA tables instead of the AR tables.
If you are coming from 11i to R12, you should note that there is change in Aging Repots(Aging - 7 Buckets ) Behaviour .
Few High Points of Changes are:[Adpoted User Guide]
  • In Release11i, the Aging Reports pull the data directly from the ar_payment_schedules_all table while in Release 12 the data is pulled from the SLA tables after when Create Accounting is run.
  • In release 11i, all the transactions used to appear on all the Aging Reports.
    • The transactions are classified into three sections, namely:
      1. Those transactions, which were accounted for in GL through the GL interface program.
      2. Those transactions, for which accounting could not be generated because they were created with the flag “Post to GL” as un-checked.
      3. Those transactions, which were created with transaction type having the flag “Post to GL” as checked but were however, not interfaced to GL.
9.Post Receivables transactions in General Ledger
10.Reconciling AR and GL Balances
The following is a list of the Critical Reports required for Reconciliation between AR and GL
  • Journal Entries Report (AR)
  • Sales Journal by GL Account Report (AR)
  • Receipt Journal Report (AR)
  • Account Analysis Subledger Detail-180 Char (GL)
  • Third Party Balance Report (New to R12)
  • AR Reconciliation Report (AR)
The Total Activity in a period is calculated as follows:
Transaction Register for the Period
(-) Applied Receipts Register for the Period
(-) Un-Applied Receipts Register for the Period
(+) Adjustments Register for the Period
(-) Invoice Exceptions for the Period
(+) Rounding Differences for the Period
(+) Credit Memo gain/loss for the Period
11.Close AR Period
  • Subledger Close Exception Period
From Receivables Responsibilities.
Navigate to Control --> Requests --> Run
Subledger Period Close Exceptions Report
  • Change Period status to Closed
  • Open next Period
Thats all about R12 Month End Close and Reconciliation of AR.
References:
http://www.oracleappshub.com/release12/r12/r12-ar-month-end-close-and-reconciliation/

Monday, November 21, 2016

i-Expense Common setup and Trouble Shoot

i-Expense Common setup and Trouble Shoot



Using Oracle iExpenses Module, employees can enter and submit expense reports. There is a Workflow process that is initiated behind when an expense report is submitted which automatically routes expense reports for approval. Oracle Internet Expenses(iExpenses) integrates with Oracle Payables to provide quick processing of expense reports for payment.

This article includes these topics:

Process Overview
Approval Hierarchy
Administrative features in iExpense
Workflow Notifications -- Error Handling


Process Overview:

The employees would be issued Corporate credit cards which could be used for organization's business expenses.
The bank would send in all the credit card transaction files on a daily basis or the agreed time interval.
These credit card transactions have to be loaded into AP_CREDIT_CARD_TRXNS_ALL table using credit card transaction
loader programs. After loading credit card transactions data into the AP_CREDIT_CARD_TRXNS_ALL table,
the Credit Card Transactions Validation program should be run to validate the loaded data. Once validated,
employees can enter these credit card transactions on expense reports to get re-imbursement from the company.

Once the employee vouchers the expenses through iExpense responsibility or
Expense report screen in Account Payables responsibility and submits it,
the workflow with the internal name APEXP is initiated which would validate the data entered, determine
the Approver, sends notifications to the approver. The Approver has to then Approve or Reject the notification accordingly.
Once the workflow activities are complete, use the concurrent program Expense Report Import to create Payables invoices
from expense reports you enter in Payables or Oracle Internet Expenses. You can then use Payables to validate and
pay these invoices and create accounting entries for them.


Approval Hierarchy in iExpense:

If the profile option "AME: Installed" is set to Yes, then the routing rules for approvals setup in Oracle Approvals Management are used, If set to No then the Employee/Supervisor Approval Process is used.
Employee/Supervisor Approval Process:
In the Employee/Supervisor Approval Process, the supervisor of the Expense report's owner would become the APPROVER. Every Employee should be assigned a Supervisor within Human Resources Responsibility- (New Hire: Assignments).An employee must be set up as a supplier prior to entering the expense report.
Managers can approve an expense report only if the total amount of the expense report does not exceed their signing limit. The Manager (Spending) Approval Process in the Expense Reporting workflow uses the signing limits you define(Navigation: Account Payables responsibility - Employees> Signing Limits )to determine which manager has authority to approve expense reports. If the amount on the expense report exceeds the signing limit of the approver, the expense report is automatically forwarded to the manager of the approver. This goes up the management hierarchy until an Approver is found who could approve the Expense report.

This process does not look at the purchasing Approval Hierarchy.
Administrative features in iExpense:
• Delegating the authorization to enter the expenses on one’s behalf:
You can authorize an employee to enter expense reports for another employee. An
employee who is assigned the responsibility to enter expense reports for another
employee is an authorized delegate
There are 2 ways this could be done:
• Go to System Administrator>Security> Users
Query for the User’s record. Under Securing Attributes tab, add the below details:
Attribute: ICX_HR_PERSON_ID
Application: Self-Service Web Applications
Value: Employee Id or the Person_id to whom the access to enter the expense reports has to be given.

 Go to the iExpense responsibility > Expense Preferences >Authorization Preferences
Under Expenses Entry Delegations, click on the Add another row and enter the name to whom the access to enter the expense reports on your behalf has to be given.

• Re-direct or Auto respond to the notifications:
If the approver is on leave, the notification could be delegated or forwarded to the desired approver using Create Vacation Rule.

Steps to create Vacation rule:
1. iExpense Responsibility> Expenses Home
2. Select the "Vacation Rule" link
3. Select the "Create New Rule" link
4. For Item Type select "Expenses" for all Notifications or select the desired Notification Type from List of Values
5. Select the "Next" link to proceed to the next setup page for the rule
6. Enter both a a valid Start and End Date for the new rule
7. Ensure the "Reassign" radio button is selected
8. Keep "All Employees and Users" in the menu box
9. Select the "Delegate" radio button - Assign/Reassign action is prohibited for Purchasing Notifications
10. Select the Flashlight icon next to the blank menu box for selecting a user
11. A new sub-screen should pop-up to perform the user search
12. For "Search By" select "Username" - (DO NOT search by Name)
13. Perform the needed wildcard (%) search at the top of the page to locate the desired
username
14. Click the radio button next to the desired name of the user to have the notifications sent to
15. Press the "Select" button followed by the "Apply" button
16. Continue on with the saving of the Vacation Rule for latter use

• Assigning the Card to another person to voucher the expenses on someone’s behalf
This could be done if a person has to access the outstanding credit card charges of another person to voucher them (temporarily). The disadvantage with this would be, the charges will be vouchered under the assignee’s name and would go to the assignee’s manager for Approval.

Workflow Notifications Error Handling:

In this section we will mainly focus on the notifications that are sent to the APPROVER for the approval as it is very important to see that such notifications reach the APPROVER on time so that there is no delay in the processing of the expense report to avoid late fee enforced by the Credit Card company. These notifications will have the message_name as 'OIE_REQ_EXPENSE_REPORT_APPRVL' in wf_notifications table. The mail status of the notification can be SENT, CANCELED, MAIL, UNAVAIL, ERROR, NULL. Let us see in detail about these and the actions required to get the notification to SENT status..
The below is the script to check the notification status:
select wn.notification_id,
aerh.invoice_num,
TO_CHAR(wn.begin_date,'DD-MON-YYYY hh:mi:ss') begin_date,
wn.to_user,
wn.from_user,
wr2.display_name preparer,
wr3.display_name reported_for,
wn.status,
wn.mail_status mail_status,
aerh.expense_status_code ,
WR.email_address ,
aerh.total,
aerh.report_submitted_date ,
aerh.description,
from wf_notifications wn,
wf_item_activity_statuses was,
wf_items wi,
ap_expense_report_headers_all aerh,
WF_ROLES WR,
wf_roles wr2,
fnd_user fu,
wf_roles wr3
where 1=1
and wn.notification_id = was.notification_id
and was.item_type = wi.item_type
and was.item_key = wi.item_key
and wn.status IN ( 'OPEN', 'CANCELED')
and wn.message_name = 'OIE_REQ_EXPENSE_REPORT_APPRVL'
and aerh.invoice_num = wi.user_key
and aerh.expense_status_code IN ( 'PENDMGR', 'RESOLUTN' )
and WN.recipient_role= WR.name (+)
and wi.owner_role = wr2.name
and aerh.employee_id = fu.employee_id
and fu.user_name = wr3.name (+)


SENT: The notification has been successfully sent to the APPROVER.
CANCELED: The system is setup to send the notifications n times (n can be set in the workflow attributes) with a timeout after 5 days. If the Approver does not approve or reject within the time frame, the workflow will cancel the notification automatically and then the notification will end up in the status CANCELED.
Action: In such cases, RETRY would not work instead ask the preparer to withdraw and re-
submit the expense report.
MAIL: If the notification is not SENT to the approver, the status would be MAIL.
Action: Ask the DBA to bounce the workflow. This would solve the problem most times. But if it doesn’t i.e if the status is still MAIL, then RETRY the activity ‘Request Approval from APPROVER’ using the Workflow Administrator responsibility (demo below). If yet not sent, check the Attributes like Approver’s email etc.
BLANK: Sometimes the value of the status would be NULL.
Action: Sometimes even if the status is BLANK, the notification is sent to the approver. First check with the Approver to see if the notification is sent. If not sent, RETRY the activity.

UNAVAIL: This would happen usually when there is problem with the Approver’s preferences or Email address.
Action: Check the notification preference of the Approver using the below:
SELECT WFU.NAME, WFU.display_name,WFU.notification_preference, email_address ,wfu.status
FROM WF_USERS WFU
WHERE WFU.name in (‘NAME’) (NAME would be the user_name in FND_USER table)
The notification_preference can be set to one of the below
MAILTEXT
QUERY
DISABLED
MAILHTM2
MAILHTML
MAILATTH
Make sure that it is set to MAILHTML
Also check if the email address returned in the above query is a valid one and matches with the one in HR Employee record (hr_employee table), fnd_user table and the outlook email address.
Also check if the status is ACTIVE in the above query, if the APPROVER is an existing employee and his FND_USER account is ACTIVE.



FAILED:
Action RETRY would solve this case.
ERROR:
Action: Check the ERROR and act accordingly. Some sample Errors:

--Failed Activity AP Validate Expense Report 
Activity Type Function
Error Name -20001
Error Message ORA-20001: APP-SQLAP-10000: ORA-00984: column not allowed here occurred in AddDistributionLine with parameters (&PARAMETERS) while performing the following operation: parse cursor
Error Stack AP_WEB_EXPENSE_WF.APValidateExpenseReport(APEXP, 142459, 0, Call DoAPValidationORA-00984: column not allowed here occurred in AddDistributionLine with parameters (&PARAMETERS) while performing the following operation: parse cursor) Wf_Engine_Util.Function_Call(AP_WEB_EXPENSE_WF.APVALIDATEEXPENSEREPORT, APEXP, 142459, 175587, RUN)
Check if the code combinations are all passed in correct and if it exists. There is something wrong in the data which results in this error. If the expense report errors out in this Stage i.e it has not passed the validation, Status in expense report header would not be WEBEXPENSE and hence cannot see this in AP.

--. No Approver/Performer ERROR:

Check to see if there is any supervisor assigned in HR
Check to see if Supervisor exists in USERS list and in HR.
If everything is fine, In the status monitor, query for the Item key
Click on Active History
Check Request approval from APPROVER, hit Update attributes.
Fill in the appropriate Manager Id (Employee ID), Manager name(WF_USER.NAME), Manager Display Name(WF_user.display_name), approver ID, approver name ,Approver display name and hit Apply.

Go back to Active history, Check Request approval from APPROVER, hit Rewind.

--DISCARD folder error:
Failed Activity Request Approval from APPROVER
Activity Type Notice
Error Name WFRSPPR_BOUNCE
Error Message 2405: Notification '1251131' has bounced. Check mailer log and discard folder. STATUS=ERROR ROLE=ABHI

Ask the DBA to resend the notification from Workflow mailer. This is due to Mail Format or OUTLOOK version issues.
--Environment context Error:
Failed Activity Request Approval from APPROVER

Activity Type Notice

Error Name WF_ERROR 
Error Message [WF_ERROR] ERROR_MESSAGE=3835: Error '-20001 - ORA-20001: Oracle error -20001: ORA-20001: APP-FND-02500: Error occurred during product initialization for MO when executing 'begin MO_GLOBAL.INIT; end;'. SQLCODE = -20001 SQLERROR = ORA-20001: APP-FND-02902: Multi-Org profile option is required. Please set either MO: Security Profile or MO: Operating Unit profile option. has been detected in FND_GLOBAL.INITIALIZE.' encountered during execution of Generate function 'WF_XML.Generate' for event 'oracle.apps.wf.notification.send'. ERROR_STACK= Wf_Engine_Util.Function_Call(AP_WEB_EXPENSE_WF.CALLBACKFUNCTION, APEXP, 144392, SET_CTX) Wf_Engine_Util.Execute_Selector_Function(APEXP, 144392, SET_CTX) Wf_Engine_Util.Function_Call(AP_WEB_EXPENSE_WF.CALLBACKFUNCTION, APEXP, 144392, TEST_CTX) Wf_Engine_Util.Execute_Selector_Function(APEXP, 144392, TEST_CTX) Wf_Engine.CB(TESTCTX, APEXP:144392:175390, ::::) Wf_Engine.oldCB(TESTCTX, APEXP:144392:175390, ::::) WF_MAIL.SetContext(1252292) WF_XML.GenerateDoc(oracle.apps.wf.notification.send, 1252292) WF_XML.Generate(oracle.apps.wf.notification.send, 1252292) WF_XML.Generate(oracle.apps.wf.notification.send, 1252292) Wf_Event.setMessage(oracle.apps.wf.notification.send, 1252292, WF_XML.Generate) Wf_Event.dispatch_internal()
Error Stack

RETRY would resolve the problem.
If all the attempts were futile in sending the notification to the Approver, the last action to resolve would be to ask the approver to go to IExpense responsibility and approve manually.



RETRY Demo:• Log into Workflow Admin responsibility
• Go to Administrator Workflow > Status Monitor
• Key in the following values:
Type Internal Name: APEXP
User Key: Expense Report Number
• Click Go
• Select the Radio button and click on Activity History.



• Select the Activity you want to RETRY say “Request Approval from APPROVER” and click on the Retry button on the top.



• Click on Submit button in the next screen.

• Confirm the details in the next page by clicking the OK button.




REWIND Demo:• Log into Workflow Admin responsibility
• Go to Administrator Workflow > Status Monitor
• Key in the following values:
Type Internal Name: APEXP
User Key: Expense Report Number
• Click Go
• Select the Radio button and click on Activity History.



• Select the Activity which you want to REWIND for example say “Request Approval from APPROVER” and click on the Rewind button on the bottom.



• Choose the activity to which you want the workflow to return in the next screen and select the "Apply" button. This would REWIND the activity.


UPDATE ATTRIBUTES Demo:
In the “Activity History” screen, click on the “Update Attributes” Button at the bottom. This opens up a page with all the attributes where you could update the necessary and hit “Apply” button to save the changes.

References:
http://ajitraut.blogspot.com/2009/05/status-monitor-key-in-following-values.html?_sm_au_=ikV8klD8mL733pNF

iProcurement Setup Document and it's basic flows in R12.2

iProcurement Setup Document

Mandatory Setups for iProcurement:
  1. Profile Options
  2. Shopping Category Creation
  3. Category Hierarchy
    1. Top Category (Browsing Category) - Create Top-Level Category
      1. Child Category (Browsing Category) - Create Child
        1. Shopping Category (Item Category) - Insert Existing Child
  4. Purchasing Category Creation
  5. Category Mapping
  6. Item Creation and Purchasing Category Assignment
  7. Content Zone Creation
  8. Information Template Creation
  9. Smart Form Creation
  10. Create Stores
  11. Blanket Purchase Agreement Creation
  12. Personalization's (Profile Option - "Personalize Self-Service Defn = Yes")
1. Profile Options:
POR: Autocreate Shopping Category and Mapping = Yes
POR:Allow Manual Selection of Source = Yes
The rest of the profile options will leave it with defaulted values.
2. Shopping Category Creation:
We will build one case. Based on that we will define the categories and  then will do the Category Mappings.
Case:
It's a Top Down approach.
First we will have a Top level category (Root Category) called "Browsing Category". Under that, either we may have multiple child Browsing Categories or Shopping Categories.

First we should create the bottom level category called "Shopping Category"
Responsibility: iProcurement Catalog Administration
Navigation: iProcurement Administration: Home Page > Schema > Item Categories
Click "Create Category"
Enter the Category Details
Note:
1. Category Key: Once we enter the value and save, we can't modify.
2. Category Name & Category Description: We can change the values even after save by clicking "Update" button.
3. Category Key and Category Name values may be same.

Click "Apply"
Confirmation page will come. 
Search the Category Name and check the newly created Category. 
Now, we have successfully created the Shopping Category (iProcurement Category)
Now, we will see the "Category Hierarchy"

3. Category Hierarchy:
Root Category (Browsing Category) ===== > Outside Items
Child Category (Browsing Category) ===== > Direct Materials
Child Category (Shopping Category) ===== > Marketing Items

Create the Root Category (Browsing Category) first
Navigation: Schema > Category Hierarchy > Create Top-Level Category
Click on "Create Top-Level Category"
Enter the values in respective fields 
Click on "Apply"
Upon Apply, you will get the confirmation page and you can see the newly created category with Type as "Browsing". 
Select that newly created category "Outside items" and click "Create Child" to create another Browsing Category called "Direct Materials".
Click on "Create Child
Enter the details 
Click on "Apply"
Now, you can see "Direct Materials" Browsing Category under "Outside Items" category 
Now, you insert the Shopping Category "Marketing Items" into this Hierarchy
Select the Browsing Category "Direct Materials" and click on "Insert Existing Child


Click on "Insert Existing Child
Query the existing category "Marketing Items
Retrieved the existing category.
Select that category 
Click on "Apply"
Now, you can see the entire Category Hierarchy like below.
Outside Items ==== > Direct Materials ==== > Marketing Items
We have successfully created the Category Hierarchy.

4. Purchasing Category Creation:
Now we will create one new item in Inventory module with new Purchasing Category and then will map that Purchasing Category into our Shopping Category in iProcurement.
Lets create a new Purchasing Category called "Marketing Materials" in Inventory Module. To create the new category, we need to add these new values into Value set. To find out that KFF and Value Set, follow the below steps.

Step 1: Find out the "Default Category Set" for Purchasing
Navigation: Inventory > Setup > Items > Categories > Default Category Sets
Note down the category Set Name for the functional area "Purchasing"
Default Category Set for Purchasing = Purchasing

Step 2: Open the Category Set and note down the Flex Structure
Navigation: Inventory > Setup > Items > Categories > Category Sets 
Flex Structure = PO Item Category

Step 3: Find out the KFF Segments
Navigation: Inventory > Flexfields > Key > Segments
Query by
Application: Inventory Title : Item Categories
Once query retrieves the result, find out the Purchasing Flex Structure name "PO Item Category"

Click on "Segments
Note down the Value Set Names for both the Segments
Segment1 = Item Category (Value Set = PO Item Category)
Segment2 = Commodity (Value Set = Commodity)
Click on "Value Set" for the SEGMENT1 "Item Category" and check the Validation Type
Note down the Validation Type. It's Independent.
Now, click the another segment "Commodity" and check for Value Set Validation Type.
It's "Dependent"
Step 4: Add the values into Value Set
Navigation: Inventory > Setup > Flexfields > Key > Values
Click Find
Add the new value "Marketing
Save 
Note: PO Item Category value set Validation Type is "Independent". So, what ever the values we are adding into this value set, all values will display. But, the "Commodity" value set is "Dependent" value set. So, We need to define the Dependent value from previous value set and then we need to add the new value.

Now, add the another value "Items" in the value set "Commodity"
While adding the new value in the Dependent Value Set, we need to mention the Independent Value of the previous value set. In our case, the previous value set is PO Item Category. So, we need to enter the value from that value set.
Add two new values like "Materials" and "Items"
Now, create the Purchasing category "Marketing Materials" and "Marketing Items" and assign it to Purchasing Category Set

Step 5: Create Purchasing Category Code
Navigation: Inventory > Setup > Items > Categories > Category Code
Click on "New"
Create a new Category Code like "Marketing.Items
Save
Step 6: Assign Category into Category Set
Navigation: Inventory > Setup > Items > Categories > Category Sets
Query the default "Purchasing" Category Set and add the Category "Marketing.Items" into that Purchasing Category Set
Save
5. Category Mapping:  
Query the newly created Purchasing Category and map it to Shopping Category.
In our case, the newly created Purchasing Category is "Marketing.Items" and Shopping Category is "Marketing.Items"
Responsibility: iProcurement Catalog Administration
Navigation: Schema > Category Mapping 
Query by either "Purchasing Category" name or "Shopping Category" name 
Select the check box 
Click on "Map
Query the Shopping Category "Marketing.Items"
Click "Apply"
Now, it's mapped.
Purchasing Category "Marketing.Items" have been mapped to Shopping Category "Marketing.Items"

6. Item Creation and Purchasing Category Assignment:
Now, create the new item and assign the newly created Purchasing Category "Marketing.Items"
Navigation: Inventory > Items > Master Items
Apply the Purchasing Template
Assign the Purchasing Category
Navigation: Tools > Categories
Change the default category name from "MISC.MISC" to "Marketing.Items"
Assign it to required organizations

7. Content Zone Creation:
Responsibility: iProcurement Catalog Administration
Navigation: Stores > Content Zones
Select the Action "Create Local Content Zone" option from the LOV and click on "Go"
Enter the Content Zone Name and Description. And select the "Suppliers", "Categories" and then assign the "Content Zone Security"
Note for Suppliers:
Include items from all suppliers: Users can create the requisitions for all the items for all the suppliers (It should have Blanket Purchase Agreements)
Include items from specific suppliers: Users can create the requisitions for the items which was assigned to a specific supplier. If we enable this option then we need to enter that specific supplier name (It should have Blanket Purchase Agreements)

Exclude items from specific suppliers: Users can not create the requisitions for the items which was assigned to a specific supplier.
Exclude items that are sourced from suppliers: Users can not create the requisitions for the items which was already sourced from the suppliers (ASL and Sourcing Rule).
Include items without suppliers: Without the Blanket Purchase Agreements, the users can create the requisitions for all the items. As soon as we create the items with purchasing category and if that purchasing category mapped into shopping category then we can raise a requisition. http://ebs12training.doyensys.com:8000/OA_HTML/cabo/images/swan/t.gif

In the above case, we have created the "Doyen Content Zone" and restricted by specific category "Marketing.Items" and operating Unit "OM_Operating Unit". So, we can raise a requisitions for all the items that belongs to "Marketing.Items" category without the Blanket Purchase Agreements.
Click "Apply"
Get the confirmation page and our newly created content zone "Doyen Content Zone".

8. Information Template Creation:
You can set up information templates to gather additional information in Oracle iProcurement to pass necessary order processing information to suppliers. When an information template is assigned to a category or item, the application prompts requesters to provide the information specified in the template when the item is added to the shopping cart. This information becomes a line-level attachment to the requisition.
For example, you can implement information templates for items such as business cards that require additional information (name, address, e-mail address, phone) from the requester. Oracle iProcurement prompts for name, address, e-mail address, and phone number when you order business cards. Each information template must be associated with an Oracle Purchasing item or item category. If an information template is associated with an item category, all items belonging to that category are also associated with the template.
Responsibility: Purchasing Super User
Navigation: Setup > Information Templates
Define the Template Name and enter all the other details
Created the "Doyen Information Template" and saved

9. Smart Forms Creation:
Requesters can procure an item or service that is not found in the catalog. For these cases, they can use a non-catalog request. The non-catalog request offers the ability to add an item or service to the shopping cart based on a description of the item or service. Through the use of smart forms, companies can conveniently control both the list of fields and whether a particular field is enterable or pre-defined. For example, purchasing organizations can lock-down the purchasing category for certain requests and thereby more accurately categorize spend. Similarly, purchasing administrators can ensure spend is exclusively directed to preferred suppliers, and default contract numbers achieve touchless buying.
The following figure shows the non-catalog request that requesters can enter. In the Item Type field, requesters can enter goods billed by quantity, service billed by quantity, or goods or services billed as an amount.
the picture is described in the document text
In addition to this standard non-catalog request, you can create different smart forms and assign them to one or more stores.
Oracle iProcurement provides a default standard smart form. The catalog administrator can create multiple additional smart forms. For example, you can create a Computer Services smart form and an Office Services smart form. Once these smart forms are assigned to a store, both appear for the requester to select from.
To use the single, standard smart form that Oracle iProcurement provides, you do not need to perform any setup other than the profile options.
Responsibility: iProcurement Catalog Administration
Navigation: Stores > Smart Forms
Click "Create Smart Forms"
Create the Smart Form by entering Name, OU, Item Type and Default item Information and Default Supplier Information details.
Assign the "Information Template" which was created earlier
Attached the Information Template "Doyen Information Template" which was created earlier to this Smart Form.
Click "Apply"
Will get the Confirmation page and it will display the newly created Smart Form name.

10. Create Stores:
A store enables you to group content zones and smart forms into a single, searchable store. The store should be easy for requesters to understand - for example, a store containing all computer supplies or all office supplies.
Responsibility: iProcurement Catalog Administration
Navigation: Stores > Stores
Click on "Create Store"
Enter the Store details and assign the Content Zones and Smart Forms
Click on "Continue"
Sequence Stores:
Assign the "Sequence"
Click "Apply"
Store is created successfully. But, it's not in the front in the list.
Click "Sequence Stores"
Assign the Sequence Number to our Store "Doyen Store"
Click "Apply"
Now, it's sequenced and displayed in the front.

11. Create iProcurement Responsibility:
Responsibility: System Administrator
Navigation: Security > Responsibility > Define
User - Responsibility Assignment:
Assign it to User "Doyen1"
Navigation: Security > Users > Define


Profile Options:


Create the Requisition:

Case I - Item without and with List Price:

Responsibility: iProcurement, Doyensys
Navigation: iProcurement Home Page
Search our item "Banners" in our Store "Doyen Store"
Item not available in our Store

List Price at Master Organization level:
Check the Item's "List Price" in Item Master
Navigation: Inventory > Items > Master items
List Price is not available for this item "Banners"
Enter the List Price in Master Org level and then check whether it's available in iProcurement.
Entered List Price in Master Org is 12.
Now check whether this item is available in iProcurement for shopping.
Responsibility: iProcurement, Doyensys
Navigation: iProcurement Home Page
Search for the Item "Banners"
Still this item is not available for shopping.

List Price at Inventory Organization:
Now, enter the List Price in child Organization
Navigation: Items > Organization Items
Query the Item and enter the List Price as 13.
Now query this Item in iProcurement
Responsibility: iProcurement, Doyensys
Navigation: iProcurement Home Page
Search for the Item "Banners"
Now, this item is available for Shopping.
Create Catalog Requisition:
Click "Add to Cart"
Item have been added into Cart.
Click "View Cart and Checkout"
Click "Checkout
Click "Next
Note: Approval list has not been generated. Because, "Owner can Approve" is enabled and preparer have the limit to approve this document.
Click "Next"
Click "Submit"
Requisition# 10006 has been created and submitted.
To check the Requisition status navigate to "Requisitions" TAB
Requisition# 10006 has been Approved.
Check the "Requisition Summary"
It's a Purchase Requisition and it's in Approved status.
So, List Price is must at Inventory Organization level.

Case II - Item with Blanket Purchase Agreement and without List Price:
Create the new item "Flex Boards" and DON'T enter the LIST PRICE. Also assign the Purchasing Category "Marketing.Items".
Assign it to Inventory Organization "OM1
Now, check this item is available in iProcurement for shopping 
Item is not available in iProcurement for Shopping.
Create the Blanket Purchase Agreement for the item "Flex Boards" with Price USD 25.
Responsibility: Purchasing Super User
Navigation: Buyer Work Center > Agreements 
Create "Blanket Purchase Agreement" and click "Go"
Enter the Header Details 
Enter the Line Details 
Price of the item "Flex Boards" is 25 USD
Click on "Approval Options
It follows the hierarchy "PO Approval Hierarchy"
Click on "Submit Document
Blanket Purchase Agreement# 5004 has been Created and Submitted for Approval.
Check the BPA Status in "Purchase Order Summary" form 
BPA has been "Approved" successfully.
Now check this item in iProcurement 
Now, this item is available in iProcurement for shopping with Price of USD 25 which is from BPA and can see the Source as "Agreement 5004".
Case III - Item with List Price and Blanket Purchase Agreement:
Create a new Item "Pamphlets" and enter the List Price as 30 USD
Create the BPA for this item with Item Price as USD 40
Blanket Purchase Agreement# 5005 has been created and Approved for the Item "Pamphlets" with USD 40.
Now check this item in iProcurement
This item is available in iProcurement with List Price USD 40. This price is from BPA and not from List Price.

Case IV - Item Without Shopping Category:
Step 1: Profile Option:
Set the Profile Option "POR: Autocreate Shopping Category and Mapping" to "Yes" (Site Level)

Step 2: Create new Purchasing Category "Purchase.Materials"
A). Navigation: Inventory > Setup > Flexfields > Segments
Query the KFF for "Item Categories" and check the Segments and Value Sets for "PO Item Category"
Note down the Value Set for both the Segments
Item Category  = PO Item Category
Commodity  = Commodity


B). Add the new values "Purchase" & "Materials" in both the value sets
Navigation: Inventory > Setup > Flexfields > Values
Add the new value "Purchase" in "PO Item Category" Value Set 
Add the new value "Materials" in "Commodity" Value Set 
C). Create the purchasing category as "Purchase.Materials"
Navigation: Inventory > Setup > Items > Categories > Category Codes
D). Add this new purchasing category "Purchase.Materials" into "Purchasing" Category Set
Navigation: Inventory > Setup > Items > Categories > Category Sets
Step 3: Item Creation:
Create a new item "Filter" with List Price USD 50 and assign the new Purchasing Category "Purchase.Materials".

Step 4: Check the Category Mapping:
Responsibility: iProcurement Catalog Administrator
Navigation: Schema > Category Mapping
Query the newly created purchasing category "Purchase.Materials"
Automatically Shopping Category has been created with the same Purchasing Category name and it's Mapped. This is because of that profile option.
Step 5: Item availability in iProcurement:
Check this item is available in iProcurement for shopping or not
Item not available in iProcurement. Because we have restricted the catalog by category name "Marketing.Items".
Step 6: Check our content zone "Doyen Content Zone" for our Store:
Responsibility: iProcurement Catalog Administrator
Navigation: Stores > Content Zones
Click on "Update" button for our content zone "Doyen Content Zone"
It's restricted to "Marketing Items" category.
Change this restriction and enable "Include items from all categories
Apply.
Now, check the item "Filter" is available in iProcurement for shopping or not 
Yes. Now, the item is available for shopping in iProcurement.
Case V - Internal Requisition through iProcurement

Step 1 - Profile Option:
Responsibility: System Administrator Navigation: Profile > System
Set the profile option "POR:Allow Manual Selection of Source" to "Yes

Step 2 - Create a Item and  Assign it to two Organizations:
Responsibility: Inventory Super User Navigation: Items > Master Items 
Created the Internal item "Internal Item2" with Purchasing Category "Purchase.Materials" and assigned to OM1 & OM2

Step 3 - Attach Inventory Organization into Location:
Navigation: Inventory > Setup > Organizations > Organizations
Query the Organization OM1 "OM_Inventory Organization" and note down the Location.
Location is "Doyen Newyork Location 1"
Now, attach the Inventory Org in Location.
Navigation: Inventory > Setup > Organizations > Locations
Query the Location "Doyen Newyork Location 1" and attach the Inventory Organization "OM1-OM_Inventory Organization"
Step 4 - Shipping Network:
Navigation: Inventory > Setup > Organizations > Shipping Networks
Define the Shipping Networks between both the Inventory Organizations OM1 and OM2 
Step 5 - Define Internal Order Transaction Type
Responsibility: Order Management Super User
Navigation: Setup > Transaction Types > Define
Defined the Internal Order "OM_Internal1"
Step 6 - Define Internal Customer
Responsibility: Order Management Super User
Navigation: Customers > Standard
Defined the Internal Customer "OM Internal Customer" and attached the internal location and organization in Ship To site.

Step 7 - Assign Internal Requisition Source Type in Purchasing Options
Responsibility: Purchasing Super User
Navigation: Setup > Organizations > Purchasing Option

Step 9 - Create Internal Requisition in iProcurement
Responsibility: iProcurement Navigation: iProcurement Home Page
Search for the item "Internal Item2
Click on "Click here to select a source" link 
We have the 100 quantities stock in OM_Inventory Organization2.
Select the Source as "Internal" and the organization is "OM_Inventory Organization2
Click on "Add to Cart
Click "View Cart and Checkout"
Click "Checkout"
Click "Next"
Click "Submit"


Step 10 - Requisition Summary
Check the Requisition Type and Status in Requisition Summary
Navigation: Purchasing > Requisitions > Requisition Summary

Step 11 - Run "Create Internal Orders" and "Import Orders" program

Step 12 - Query Internal Orders
Responsibility: Order Management Super User
Navigation: Orders, Returns > Order Organizer
Internal Order# 25001 has been created and it's Booked
Pick Release the order and do Shipping and then receive the item in OM1.
References:
http://oraclemasterminds.blogspot.com/2015/04/iprocurement-setup-document-and-its.html?_sm_au_=ikV8klD8mL733pNF