Tuesday 1 May 2012

Oracle Applications



Oracle Applications
And
Order Management
Oracle Applications
v ERP-Enterprise Resource Planning
ERP means
E: Enterprise (any organization with different functionalities.)
R: Resources (4m's: Man, Machine, Money, Material)
P: Planning (making use of these resources in effective manner to gain profits)
ERP-Enterprise Resource Planning is a concept to integrate all the resources of anEnterprise and automate different Business and Operational processes.
It involves best industry practices.
SAP and Oracle Applications are two major softwares which implement this concept.
v Multiple Organization technical architecture
“Legal entity has more than one operating unit is called as multi org”
The multi-org Structure of Oracle Apps is,
Business Group-->Set of Books-->Legal Entity-->Operating Unit à Inventory Organization --> Sub Inventory -->Locator
Business Group (Top most level) - It Secures Human Transaction Information to which employees are assigned, which segregates the Oracle HR data.
Set of Books (2nd level) - It secures all the transaction information in Oracle General Ledger and is most important in the Multi-org structure.
Set of Books means Currency, Chart-of-accounts, and Calendar.
Currency: Reporting currency (reporting to BG) and Functional (reporting to government). The currency which is being used by the company.
Chart-of-accounts: the type of accounts followed by the company
Calendar: Two types of Calendar are Accounting calendar (Jan - Dec) and Financial Calendar (Apr- Mar).
Other Calendars are Business calendar, work day calendar For eg. Timesheets
Legal Entity (3rd level) –All legal Information in the Organization
Legal Entity is the organization level at which financial and tax reporting occurs. A legal entity links to a GL Set of Books.
Operating Unit (4th level) - It Uses Order management, Cash management, AR, AP and it may be Sales Office , Division, Department.
Operating Unit is the subdivision of an organization within a GL Set of Books. Other Oracle Apps subsystems like Receivables, Payables etc., are defined at the Operating unit level. Security may be defined at this level to disallow one Operating unit from entering or viewing data of another Operating Unit.
Inventory Organization (5th level) - Inventory Details
It is required for an organization that utilizes Inventory functionality. The inventory org typically represents different inventory locations such as a warehouse.
ACME Inc.(Business Group)
---------------------------
|
|
----------------------------- 
| |
------------- -----------
U.S.(SOB) Belgium(SOB)
------------- -----------
| |
----------------------- |
| | |
-------------- --------------- ---------------
U.S. Canada Belgium 
(Legal Entity) (Legal Entity) (Legal Entity) 
-------------- --------------- ----------------
| | 
--------------------- |
| | | 
--------------- --------------- --------------- 
Western Division Eastern Division Eastern Division
(Operating Unit) (Operating Unit) (Operating Unit)
--------------- --------------- ---------------
Important Terms and Glossary
v Interface
Interface Table is a table which is used as medium for transfer of data between two systems.
Types of Interfaces
INBOUND and OUT BOUND Interface
Inbound Interface:
For inbound interfaces, where these products are the destination, interface tables as well as supporting validation, processing and maintenance programs are provided.

Outbound Interface:
For outbound interfaces, where these products are the source, database views are provided and the destination application should provide the validation, processing and maintenance programs


Requests groups
a) Single Request: This allows us to submit an individual request.
b) Request Set: This allows us to submit a pre-defined set of requests.


Ad-hoc reportsAd-hoc Report is made to meet one-time reporting needs. Concerned with or formed for a particular purpose. For example, ad hoc tax codes or an ad hoc database query
v Difference between configuration, conversion, and customization
Conversion, customization and configuration are part of an oracle implementation project they come in this order
1. configuration/set up
2. Customization
3. Conversion
Configuration is setting up customer specific requirement which generally exist in oracle apps customization is filling the gap between oracle apps and Customer requirement by developing some extension and solution design
Customization is relatively different thing, something that is not a part of oracle apps core product but the client requirement demands it we go for Customization. If the functionality demanded by the client exists in the application, it is to be configured according to his needs by taking some data, this is called configuration
Conversion is structural change of customer data in a form which is compatible with oracle database. Conversion is the process of mapping the tables from a legacy system to apps system. Sometimes conversions can be from one version to other.
v Different execution methods in oracle apps
1. Host
2. Immediate
3. Java Stored Procedure
4. Java Concurrent Program
5. Multi Language Function
6. Oracle Reports
7. Request Set Stage Function
8. Pl/Sql Stored Procedure
9. Spawned
10. Sql*Lodar
11. Sql*Plus
12. Perl Concurrent Program
v APIs - Application Program Interface
Oracle has its own API facility to transfer data from a external source to oracle base table. So API is an standard oracle tool to transfer data to oracle database. It is a very simple method and a person with no technical background also can use API.Example-uploading journal and budget data through API.
v Profile options
Profile options are the prespecified instructions given to application to affect its behavior. We have to set values for these profile options. The valid values for profile options are subjective but the levels at which these values can be set are as:
1. User
2. Organization
3. Server
4. Responsibility
5. Application
6. Site
Application looks for profile option values in order 1->2->3->4->5->6. And as soon as it gets the value, it stops looking for other values.
v Value sets
Value sets are nothing but a list of values with some validations.
Type of Value sets
There are 8 types of value sets. They are
1. None
2. Independent
It contains list of values which does not depends on any other value
3. Dependent
It contains values which depends on any one of the Independent value
4. Table
It contains list of values from 1 or more than 1 table columns.
5. Special
It uses only one flex field structure to specify values.
6. Pair
It combines 2 flex fields together to specify range of valid values.
7. Translatable Independent
It is same as Dependant value set, only translated values are present.
8. Translatable Dependent
It is same as Independent value set, only translated values are present
v Flex field
A flex field is a customizable field that opens in a window from a regular Oracle Applications window.
· Structure certain identifiers required by Oracle Applications according to your own business environment
· Collect and display additional information for your business as needed.
Types of Flex Fields
1) Key flex fields build unique entity identifiers
Key Flex field is used to collect the key information.
Example: The Accounting Flex field is used to create and display account numbers. The Accounting Flex field is owned by Oracle General Ledger, but Accounting Flex field values are used by many of the financial applications.
Accounting Flex field structure consisting of five segments.
Company, Department, Account, sub account and product
2) Descriptive flex fields gather additional information
We can use descriptive flex fields to collect information beyond that collected by Oracle Applications. Using descriptive flex fields allows us to gather additional specialized information required by the business. The use of descriptive flex fields is optional.
Difference between KFF and DFF
Key Flex FieldDescriptive Flex Field
Collection of segmentsCollection of attributes
MandatoryOptional
Used to enter key information about org.
Used to enter extra information about organization.
Store their data in columns called SEGMENTn, where n is a numberStore their data in columns called ATTRIBUTEn, where n is a number.
v Different modules of Oracle Applications
Different modules in Oracle Applications can simply divided as
 MANUFACTURING,
DISTRIBUTION,
HRMS,
FINANCIAL,
CRM etc.
 
 MANUFACTURING having following modules:
Inventory
Bill of Material
WIP
Quality
Costing
MRP/MPS
 
Distribution having following modules:
Inventory
Purchasing (Procurement)
Order Management (OM)
Order Entry
 
Financial have the following modules
Account Payables
Account Receivables
General Ledger
Fixed Assets
Cost Management
 
Purchasing
Procure to Pay
1) When there is a Demand, the stock is verified from the inventory module. In case of any requirement, a requisition is raised with the specified UOM and the quantity required.
2) The Requisition goes into the purchasing module. In the purchasing/I procurement module, the requisition is converted to PO and sent to the supplier with the distribution Accounts.
3) Once the supplier sends the consignment and the invoice, it is received at the inventory, An Invoice is created in Payable modules. Accounting lines are created from the distribution lines of the PO. The new stock (Inventory activities ) is sent to General Ledger module.
4) The invoice is Paid .The Invoice and the payment accounting entries are transferred to Cash management module for reconciliation, General Ledger module for accounting in Set of Books.
Order Management
Order to Cash Flow
1) The customer places the Order for Items in Order Management module
2) The Order management checks the availability of Items in the Inventory module. In case the demand is not satisfied, the Cycle shifts to Purchasing module to satisfy the demand.
3) The Items are shipped to the customers along with the Invoice. The invoice is processed by Receivables module. The collection info goes into Cash Management module for Reconciliation as well as the General ledger module for accounting entries in Set of Books.
Fulfillment Process in OM:
In Order Management with discrete manufacturing, the fulfillment process can be divided into 3 different categories –
PTO - Pick To Order: This is a push based manufacturing system where the goods are manufactured based on forecasted demand. The goods are picked as and when the orders come in and fulfilled against the order.
ATO - Assemble To Order: This is a pull based manufacturing system where the parts are kept in stock but not manufactured until the actual order is created. Based on the order, the work order gets created (based on a predefined BOM) and fulfilled.
For example: Consider the buying of a computer. Now there are various sizes of monitor that can be available. Say X is the entire computer. If it’s a PTO, then the monitor given shall be the one that will be delivered. But if it’s an ATO then the user can select the monitor that is a 15" or a 17".
This is made possible in ATO items through the presence of Option Classes.
CTO - Configure To Order: This is also pull based. The main difference here is the dynamic creation of the BOM based on option classes defined. The configuration can be created during Order Processing based on which the BOM as well as the work order gets created for fulfillment.

Tables in Order Management

Interface Tables:

OE_HEADERS_IFACE_ALL, 
OE_LINES_IFACE_ALL
OE_PRICE_ADJS_IFACE_ALL, 
OE_ACTIONS_IFACE_ALL
OE_CREDITS_IFACE_ALL (Order holds like credit check holds etc)
Base Tables:
OE_ORDER_HEADERS_ALL: Order Header Information
OE_ORDER_LINES_ALL: Items Information
OE_PRICE_ADJUSTMENTS: Discounts Information
OE_SALES_CREDITS: Sales Representative Credits.

Shipping Tables:

WSH_NEW_DELIVERIES
WSH_DELIVERY_DETAILS
WSH_DELIVERY_ASSIGNMENTS
WSH_DELIVERIES

Data flow for “Standard Order”

Normally standard sales order can be split into nine sub steps, which jointly carried out by some module like INV, OM, Pricing, Shipping and AR. These are based out of the flow which is available in 11.5.10.2.

1. Order Entry
This is first stage when an Order is enter in system. When the order is entered it basically create a record in order headers and Order Lines table.
  • oe_order_headers_all (flow_status_code as entered)
  • oe_order_lines_all (flow_status_code as entered) ( order number is generated)

2. Order Booking
This is next stage, when Order which is entered in step 1 is booked and Flow status changed from Entered to Booked. At this stage, these tables get affected.
  • oe_order_headers_all (flow_status_code as booked ,booked_flag updated)
  • oe_order_lines_all (flow_status_code as awaiting shipping, booked_flag updated)
  • wsh_new_deliveries (status_code OP open)
  • wsh_delivery_details (released_status as ready to release)
Same time, Demand interface program runs in background and insert into inventory tables mtl_demand
3. Reservation
This step is required for doing reservations SCHEDULE ORDER PROGRAM runs in the background and quantities are reserved. Once this program get successfully get completed , the mtl_reservations table get updated.
4. Pick Release
Ideally pick release is the process in which the items on the sales order are taken out from inventory.
Normally pick release SRS program runs in background. Once the program gets completed, these are the table gets affected:
  • oe_order_lines_all (flow_status_code as PICKED )
  • wsh_delivery_details (released_status as submitted for release )
  • mtl_txn_request_headers
  • mtl_txn_request_lines
    (move order tables. Here request is generated to move item from saleable to staging sub inventory)
  • Mtl_material_transactions_temp (link to above tables through move_order_header_id /line_id)
5. Pick Confirm
Items are transferred from saleable to staging Sub inventory.
  • mtl_material_transactions
  • mtl_transaction_accounts
  • wsh_delivery_details (released_status as Released)
  • wsh_delivery_assignments
6. Ship Confirm
Here ship confirm interface program runs in background. Data removed from wsh_new_deliveries
  • oe_order_lines_all (flow_status_code as shipped)
  • wsh_delivery_details (released_status as Shipped)
  • mtl_transaction_interface
  • mtl_material_transactions(linked through Transaction source header id)
  • mtl_transaction_accounts
  • Data deleted from mtl_demand,mtl_reservations
  • Item deducted from mtl_onhand_quantities
7. Enter Invoice
This is also called Receivables interface, which mean information moved to accounting area for invoicing details.
  • Invoicing workflow activity transfers shipped item information to Oracle Receivables.
  • ra_interface_lines_all (interface table into which the data is transferred from order management)T
  • Then Autoinvoice program imports data from this
  • Table which get affected into this stage are receivables base table.
    • ra_customer_trx_all (cust_trx_id is primary key to link it to trx_lines table and trx_number is the invoice number)
    • ra_customer_trx_lines_all (line_attribute_1 and line_attribute_6 are linked to header_id (or order number) and line_id of the orders)
8. Complete Line
In this stage order line level table get updated with Flow status and open flag.
  • oe_order_lines_all (flow_status_code as shipped, open_flag as N)
9. Close Order
This is last step of Order Processing. In this stage only oe_order_lines_all table get updated.
These are the table get affected in this step.
  • oe_order_lines_all (flow_status_code as closed, open_flag as N)
These are the typically data flow of an order to cash model for a standard order.
Important Concepts and Terms used in Order Management
Order Import:

Order Import is an open interface that consists of open interface tables and a set of API’s. It imports New, updated, or changed sales orders from other applications such as Legacy systems.
Order Import features include validations, Defaulting, Processing Constraints checks, Applying and releasing of order holds, scheduling of shipments, then ultimately inserting, updating or deleting orders from the OM base tables. Order management checks all the data during the import process to ensure its validity with OM. Valid Transactions are then converted into orders with lines, reservations, price adjustments, and sales credits in the OM base tables.

Process Constraints

Process Constraints prevent users from adding updating, deleting, splitting lines and canceling order or return information beyond certain points in the order cycle.
Oracle has provided certain process constraints which prevent data integrity violations.
Process constraints are defined for entities and attributes.
Entities include regions on the sales order window such as order, line, order price adjustments, line price adjustments, order sales credits and line sales credits.
Attributes include individual fields (of a particular entity) such as warehouse, shit to location, or agreement.
Types of Holds

1)GSA(General Services Administration) Violation Hold(Ensures that specific customers always get better pricing for example Govt. Customers)

2) Credit Checking Hold( Used for credit checking feature Ex: Credit Limit)

3) Configurator Validation Hold (Cause: If we invalidate a configuration after booking)

Document Sequence

Document sequence is defined to automatically generate numbers for the orders or returns when we enter them. Single / multiple document sequences can be defined for different order types.
Document sequences can be defined as three types
i) Automatic: Does not ensure that the numbers are contiguous), ii) Gapless: Ensures that the numbering is contiguous),
iii) Manual Numbering: Order Management validates that the number specified is unique for order type.

Defaulting Rules
A defaulting rule is a value that OM automatically places in an order field of the sales order window. Defaulting rules reduce the amount of information one must enter. A defaulting rule is a collection of defaulting sources for objects and their attributes.
It involves the following steps
Defaulting Conditions - Conditions for Defaulting
Sequence – Priority for search
Source – Entity, Attribute, Value
Defaulting source/Value

An order cannot be cancelled if,
It has been closed
It has already been cancelled
A work order is open for an ATO line
Any part of the line has been shipped or invoiced
Any return line has been returned or credited.
Back order in OM
There are few reasons that a scheduled order could be Backordered during pick release process.
1. In-sufficient On hand Quantity.
2. Order might be put as ‘Pick release hold’
3. If it’s a lot controlled item being involved then some of the factors will be checking at picking rule setup (like Lot- expiration date, etc) and turned to ‘Backordered’ incase the criteria does not meet.
Order type
An order type is the classification of order. It controls the order work flow activity, order number sequence, credit check point and transaction type.
Order Type is associated to a work flow process which drives the processing of the order.

Primary and secondary price lists
Every order is associated to a price list as each item on the order ought to have a price. A price list contains basic list information and one or more pricing lines, pricing attributes, qualifiers, and secondary price lists.
The price list that is primarily associated to an order is termed as Primary price list.
The pricing engine uses a Secondary Price list if it cannot determine the price of the item ordered in the Primary price list.

Pick slip
It is an internal shipping document that pickers use to locate items to ship for an order.
Types of Pick slip
Standard Pick Slip – Each order will have its own pick slip with in each picking batch.
Consolidated Pickslip – Pick slip will have all the orders released in the each picking batch.

Packing slip

It is an external shipping document that accompanies the shipment itemizing the contents of the shipment.

P
icking rules
Picking rules define the sources and prioritization of sub inventories, lots, revisions and locators when the item is pick released by order management. They are user defined set of rules to define the priorities order management must use when picking items from finished goods inventory to ship to a customer.

AOL features in OM

Order Management uses the following AOL features
Document Sequences - Order Entry used Order Number Sources for order
numbering. It defines sequences that were used to automatically
number Orders and Returns. We can assign an Order Number source to an
Order Type.

Order Management uses the AOL Document Sequences feature to meet
Order Numbering requirements. This will allow us number Order and Returns
using Manual, Automatic or Gapless sequences. We can define Document Sequences using the AOL Define Document Sequences form. When we define an Order Transaction Type, the application automatically creates a Document Sequence Category of the same name. We can assign a pre-defined sequence to one or more Document Sequence Categories, using the AOL Sequence Assignments
form. When an Order is created, Order Management calls AOL Document
Sequence APIs to number the Order.
Attachments - In Order Entry, we could define Notes and addition rules regarding when they were attached to an Order or Line. We have to manually choose to add the eligible Notes to the Order or Line. we could also define how the Notes were printed on various Reports. Database triggers were used to duplicate Note definition data in AOL.

Order Management drives off the AOL Attachment functionality enabling you to attach images and web pages (in addition to short or long text). It also offers multi-lingual Document capability. Attachment definition and usage data is stored only in AOL. Automatic Addition rule definitions are stored in Order Management (OE_ATTACHMENT_RULES, OE_ATTACHMENT_RULE_ELEMENTS).
In addition to the attributes (Customer, Ship-to, Invoice-to, Order Type, Item, PO#) that were previously available, we can now define rules based on the Order Category, Line Category and Line Type.

No comments:

Post a Comment