27 October, 2017

How to implement Sales Order UDA in Oracle Apps

UDA Introduction


Oracle Order Management enables you to record additional information at order and line levels using user defined attributes (UDA). These attributes are aggregated in user-defined attribute groups. Each group can have several attributes.
You must associate attribute groups with a particular business classification, which in the case of Order Management is the predefined classification, ADMIN_DEFINED.
An attribute group can have a maximum of 40 character fields, 20 number fields, and 10 date fields. However, you can associate as many attribute groups as you want to an UDA page which makes the number of additional attributes to an order or line unlimited.




UDA Setup steps: 

Create Attribute Group


Go to order management Super User responsibility
Navigate to Setup à Orders à User Defined Attributes.


Choose the Entity: Header or Line and Click on Go in the OM UDA Setup page.












Click on 
Create Button.
Fill the details as required.
Internal Name: Used for technical purpose.
Display name: Actual name to be displayed on User Interface.
Behavior: An attribute group can be multi-row or single-row. Multi-row attribute groups enable association of multiple sets of attribute values with the same attribute group, whereas single-row attribute groups allow a single attribute value for the attribute group.
Number of columns in the page layout: Columns you want to display on UDA User Interface. It’s 2 by default.
Click on Apply and Add Attributes button.


Generate Database View


This is optional setup to create the database view.
Click on button Generate Database View. It will automatically create customized database view of a group based on the attributes under the particular attribute group.

For example: here we have created database view: ONT_TEST_GRP1_AGV


If we check this view in database, we will get below description of view.



The custom name Test_attr1 is populated for the actual column c_EXT_ATTR1.
Note: If you are using this auto created database view in any development, then generate the view every time you make any change (Changes can be addition/ deletion/ rename of attribute) to the attribute group. It will refresh the view to reflect the changes made in group.

Create Attributes


Internal Name: Used for technical purpose.
Display Name: Name displayed on UDA user interface.
Sequence: Sequence of attribute to be appear on user interface.
Tip: Tip is the information message which appears just below the attribute in user interface.
Data Type: Select appropriate data type.
Column: columns will be populated as per the data type selected.
Example: For char it will populate is c_EXT_ATTR1, for number, It will populate as N_EXT_ATTR1 etc.
Display As: Type of display field on UI.
You can additionally assign value set and default value to the attribute.
Click on Apply button.



Associate Attribute Group with A Classification


Click on association tab.










Click on Add Attribute Groups.










Select the attribute groups from the list of available attribute groups. Click on Apply.
It adds the attribute groups to the predefined classification, ADMIN_DEFINED.

Create UDA Page


In the OM UDA Page Setup page select Page tab.
Select Create Page to create pages for a particular Classification. An UDA page is a group of attribute groups associated to a classification.














Display Name: Name to be displayed on UI.
Internal Name: Used for technical purpose.
Description: Information for page usage.
Sequence: Sequence of page to be displayed in UDA UI selection list.
Click Apply.

Attach Attribute Group to Page


Click on create symbol. 
Give the Sequence. Click on Display name LOV.


























Click on Go.












It will populate the list of the attribute groups created.
Select the desired attribute group and click on Apply.





Note: If you want the additional attributes to appear in different regions, then create multiple attribute groups and associate them to the predefined classification, and then to an UDA page.



Import User Defined Attributes


You can add and associate UDA to the orders created through Order Import/HVOP using order interface tables and the Import User Defined Attributes concurrent program.

Steps

1.       Create the sample sales order.
2.       Populate data into the following UDA interface tables:
o    OE_HEADERS_EXT_IFACE_ALL
o    OE_LINES_EXT_IFACE_ALL
3.       After data is populated in the UDA interface tables, submit the Import User Defined Attributes concurrent program by providing the Data Set ID parameter to import data into the following Order Extension base tables:
o    OE_ORDER_HEADERS_ALL_EXT_B
o    OE_ORDER_LINES_ALL_EXT_B
4.       The import program reports errors in the MTL_INTERFACE_ERRORS table.
After completing these steps, you can record information in the user defined attributes from the Sales Order window as shown in topic: UDA on User Interface.

Base tables

Below are few important tables for attribute and group information:
1.       EGO_ATTR_GROUPS_V
2.       EGO_DATA_LEVEL_B
3.       EGO_ATTRS_V

UDA on User Interface


Open sample sales order.
Click on Actions button present on order Line tab.
Select User Defined Attributes from the list.





















Below screenshot shows the sample UDA page for sample order line entity.



Note: similarly the order header entity, UDA will be accessed using below path.
Order Header à Actions à User Defined Attributes.


8 comments:

  1. Nice blog..! I really loved reading through this article... Thanks for sharing such an amazing post with us and keep blogging Call Paging System | Customer Call Paging Systems | Customer Order Display

    ReplyDelete
    Replies
    1. Thanks for your feedback :)
      More interesting blogs are on the way.

      Delete
  2. Hello, very usefull article but i have one query can we do the same on Shipping (Delivery) level inspite of order form?

    ReplyDelete
    Replies
    1. Hi Adamant,
      This setup allows only for Order header and order Line level.

      Delete
  3. Hi, really nice information, thanks.
    Have a API to fill the UDA?

    ReplyDelete
  4. Can we populate OE_LINES_EXT_IFACE_ALL directly? Please suggest if there is a way to do that

    ReplyDelete
  5. You can directly populate OE_LINES_EXT_IFACE_ALL for the UDA expected on lines level.

    ReplyDelete