Documente Academic
Documente Profesional
Documente Cultură
com/category/beginner/
Beginners Books for Oracle e-Business Suite
Long time back , I got a complementary copy of EBS books from author Roel
Hogendoorn.
These six books, roughly have 175-200 pages each, covering some of key areas of EBS.
• System Administration
• Workflow
• Flexfields
• Alert
• Reporting in E-Business Suite
• BI Publisher
I am so delighted with the content in these BOOK that I thought to share to rest of
community people.
Truly an excellent book and definitely a must for EBS beginners. In a world of ERP , this
book actually delivers a lot more than its cost. Roel, has provided an incredibly honest
approach to some of key attributes essential for EBS Implementer.
This is a very basic question for ERP consultants , what is basic difference into two
manufacturing operation : discrete manufacturing and process manufacturing . Lets
redefined and understand in simple words:
• Flow manufacturing
• Discrete manufacturing
• Process manufacturing
Discrete Manufacturing
Discrete manufacturing is distinguished by the production of distinct items that use bills
of material and routings to determine costs and lead times.
Typically they follows either a Product, Process or a Combination Layout these layouts
can be understood like:
• Product Layout - Processes come to the product . typical example are Ship
Building, Car Assembly Line, PC's, etc.
• Process Layout - Products go to Process areas Typical Example are Cabinets and
Casings, Sub-assemblies, Rubber Mixing, etc.
Discrete manufacturing is based on piece parts that are assembled or machined to make
larger assemblies.
Oracle Discrete Manufacturing has a great deal of
functionality to manage the Bills of Materials,
Routings and Engineering changes that are required
to adequately track assembly and cost the finished
product.
Flow Manufacturing
Flow manufacturing is also called Lean
Manufacturing or JIT(Just-In-Time) and uses the
principles of demand flow manufacturing to produce
product is required, for customer orders, quickly and
to meet the demand exactly on-time.
Usually, in order to use Flow a company needs to have production facilities that
subscribe to the principals of Lean Manufacturing. It is necessary to design production
facilities so that production lines, resources, machines, and labor are making only what is
needed for immediate customer orders.
Process Manufacturing
Typical examples are Food, pharmaceutical and other batched-based manufacturers such
as refineries, wineries, etc .
Process manufacturing is used at companies that make products that use formulas,
receipts and/or have co-products or by products. Typical users of OPM are manufactures
of food products or chemicals that have complex internal processes and need a high level
of control.
The OPM capabilities allow for multiple units of measure because the flexibility in batch
production is required in process industries.
• Supplier Accounts
• Taxes
• Payments
• Term Date Basis
• Due Date Basis
• Invoice Currency
• Holds
• Enter Suppliers
• Enter employees as Suppliers
• Merge duplicate Suppliers
Other Details
• Tax payer ID
• VAT registration number
• Inactive date (to prevent invoice/PO entry after a certain date)
•
o SEGMENT1 – SYSTEM GENERATED OR MANUALLY ENTERED
NUMBER FOR SUPPLIER (PO_UNIQUE_IDENTIFIER_CONTROL)
o VENDOR_ID – SYSTEM GENERATED UNIQUE NUMBER
o CREDIT STATUS –GOOD/POOR
o ORGANIZATION_TYPE_LOOKUP_CODE
o VENDOR_TYPE_LOOKUP_CODE – VENDOR/EMPLOYEE
(EMPLOYEE_ID)
o ONE_TIME_FLAG
• PO_VENDOR_SITES_ALL : This hold corresponding site information
Contains Details of the site like Full Address/Work of site
and its link with vendor_id.Important columns includes:
o PURCHASING_SITE_FLAG, VENDOR_SITE_CODE,
RFQ_ONLY_SITE_FLAG,
PAY_SITE_FLAG,HOLD_ALL_PAYMENTS_FLAG,
HOLD_FUTURE_PAYMENTS_FLAG,
HOLD_UNMATCHED_INVOICES_FLAG
• PO_VENDOR_CONTACTS : This hold supplier contact information for
respective sites.
select *
from po_vendor_sites pvs,
po_vendors pov
where pov.segment1 = '1001'
and pov.vendor_id = pvs.vendor_id;
select *
from po_vendor_contacts pvc,
po_vendor_sites pvs,
po_vendors pov
where pov.segment1 = '1001'
and pov.vendor_id = pvs.vendor_id
and pvs.VENDOR_SITE_ID = pvc.vendor_site_id;
Supplier Interface
Yes, that was one of the enhancement in oracle 11.5.10 release. Prior to that version,
there was no interface or Public exist for supplliers, thus it was a tricky to handle
supplier. As we have already seen AP availability of AP some time back.
If you are having 11.5.10+ version,and if you have requirement to create supplier from
your legacy data than use Supplier Interface, life will be easier. Is n't.
How we start
Step 1. Populate the new interface tables with data. This can be done via SQL*Loader or
typically used to load data in a table.
• AP_SUPPLIERS_INT
• AP_SUPPLIER_SITES_INT
• AP_SUP_SITE_CONTACT_INT
Alternatively, run the individual import programs to load one table at a time
• When you load the data it should be 'NEW' initially. After the Supplier Sites Open
Interface is run the status gets changed to PROCESSED'/'REJECTED'.
As we know in R12 Supplier is part of TCA , thus the link between PO_VENDORS and
HZ_PARTIES is PO_VENDORS.party_id. The link between
PO_VENDOR_SITES_ALL and HZ_PARTY_SITES is
PO_VENDOR_SITES_ALL.party_site_id.
When a Supplier is created Record will be Inserted in HZ_PARTIES. When the Supplier
Site is created Record will be Inserted in HZ_PARTY_SITES. When Address is created
it will be stored in HZ_LOCATIONS.
Steps 1:
• Define DFF fields in the custom tables
Then you should specify the name of the DFF (Say BTL_AR_DFF) and specify the
associated table.
Step 2:
• Copy TEMPLATE form has example descriptive flexfield which we can use
• Use the TEXT_ITEM_DESC_FLEX property class
• Attach ENABLE_LIST_LAMP_LOV for the field
2. Create a non-base table text item in the block with property class
TEXT_ITEM_DESC_FLEX
3. Make sure that DFF is mapped to fields (ATTRIBUTE) of the table and is enabled.
• Next is to call Flexfield Routines to add DFF built-ins in the form to invoke DFF.
o This consist of these steps:
FND_DESCR_FLEX.DEFINE(
Block => 'Name of the DFF block',
Field => 'BTL_DFF',
Appl_short_name => 'AR',
Desc_flex_name => 'BTL_AR_DFF',
Title => 'BPL AR More Info' );
• FND_FLEX.EVENT('PRE-QUERY');
• FND_FLEX.EVENT('POST-QUERY');
• FND_FLEX.EVENT('Pre-Query');
• FND_FLEX.EVENT('When-Validate-Record');
• FND_FLEX.EVENT('Post-Query');
• FND_FLEX.EVENT('When-New-Item-Instance');
• FND_FLEX.EVENT('Pre-Insert');
• FND_FLEX.EVENT('When-Validate-Item');
• FND_FLEX.EVENT('Pre-Update ');
The custom table should contain a field named as XXX_ID (where XXX means the
entity. For ex. PART_ID, CODE_COMBINATION_ID etc) to capture the selected code
combination ID.
Logon as
2. In the block, create two non-base table text items of data type CHAR (2000). One text
item is to store the code combinations (Say BTL_KFF ) and other one is to store
description of the code (Say BTL_KFF_DESC. Make this item as non-updateable).
The custom table should contain a field named as XXX_ID (where XXX means
the entity. For ex. PART_ID, CODE_COMBINATION_ID etc) to capture the
selected code combination ID.
this is typical registration of KFF. For Customization in custom development here are the
steps:
Fnd_Key_Flex.Define(
Block => ‘block_name’,
Field => ‘concatenated_segments_field_name’,
[Description => ‘description_field_name’,]
[ID => ‘Unique_ID_field’
Appl_Short_Name => ‘application_short_name’,
Code => ‘key_flexfield_code’,
Num => ‘structure_number’,
Usage
FND_KEY_FLEX.DEFINE(
block => 'Custom block',
Field => 'BTL_KFF',
Description => 'BTL_KFF_DESC',
ID => 'XXX_ID',
Appl_short_name => 'SQLGL',
Code => 'GL#',
Num => '101',
Vrule => 'GL_GLOBAL\nDETAIL_POSTING_ALLOWED \nE\nAPPL=''SQLGL'';
name=Parent Values are not allowed\nN'
);
FND_FLEX.EVENT('WHEN-NEW-ITEM-INSTANCE')
FND_FLEX.EVENT('KEY-EDIT');
FND_FLEX.EVENT('WHEN-VALIDATE-ITEM');
IF :CUSTOM_BLOCK.XXX_ID = -1 THEN
FND_MESSAGE.SET_STRING('You Have Selected An Undefined Code
Combination !');
FND_MESSAGE.SHOW;
RAISE FORM_TRIGGER_FAILURE;
END IF;
Lets take a close scan to understand some of the paramater used in Flex Field
defination.
1. [Validate=> ‘{FOR_INSERT|FULL|PARTIAL|NONE|
PARTIAL_IF_POSSIBLE}’,]
3.[Required=>’[Y|N’,]
• Global Data Elements mean the question will be asked for every occurrence of the
Descriptive Flexfield.
• Context Sensitive Elements are questions asked “depending†on the answer
to some other question. This “other†question can use a Reference field from
above for its answer.
• A DFF uses columns that are added onto a database table. The table contains any
columns that its entity requires.
The DFF columns provide ‘blank’ columns that you can use to store
information which is not already stored in another column of that table.
• A DFF requires one column for each possible segment and one additional column
in which to store structure information(i.e. The context value).
• You can define as many segments in a single structures as you have DFF columns
in your table.
The DFF columns are usually named as ATTRIBUTEn, where n is a number.
Drawbacks of DFF
We all know , oracle GL uses a KFF called Accounting flex field to uniquely identity a
GL account. Oracle have customized this KFF to include 6 segments like Company
Code, Cost Center, Product, Product Line and sub account. Valid values are available to
each segment and cross validation rules are provided for segment combinations. This
KFF can be customized depends upon the business needs.
When to use a KFF
• Used to uniquely identify an application entity with an intelligent key, where the
key can be multipart and each part can have some meaning.
• Use KFF that Oracle Applications provides to integrate your applications
seamlessly with Oracle Applications.
These are the things normally any business user want if implementation team and
management avoiding any customization.
The good things is that the above can be easily control and managed from screen, without
any extra(Ordinary) skill
In oracle application key Flexfield appears on three different types of application form :
1. Combinations Form
2. Foreign Key Form
3. Range Form
These form types correspond to the types of tables that contains key flexfield data.
• Use the flex field code combinations from a form with a foreign key reference to
the combinations table.
• Internally the underlying Table Uses a Foreign Key
• The unique ID primary key column of the combinations table serves as a foreign
key column here.
• Often the foreign key table contains a structure ID column as well. It can be best
represented as figure below,
Range From
Allow the defination of new flexfield combinations from forms with a foreign key
references, as mention in the following diagram.
Describe The Values In A Segment
• A segment qualifier is like the segment asking each value a question “What
type of value are you?â€
o For example, assign an account type of “Expense†to the Account
segment value 3003.
• Uses Segment Qualifiers with the Accounting Flexfield
o Detail Budgeting Allowed.
o Detail Posting Allowed.
o Account Type: Asset, Expense, Liability, Ownership/Stockholde’s
Equity, or Revenue.
• Set and change this property while defining the flexfield structure on the Define
• Key Flexfield Segments form.
o Sometimes this property is not technically feasible
o If the combinations table includes mandatory columns that can not be
filled by the flexfield.
o Who columns, CCID columns, and enabled/activation date information
can be filled by the flexfield.
This is all about the key flex field. Hopefully it would be good to start with , If you want
to learn more about the concept, please do refer Flexfield user guide. Next will take
another deep drive for DFF.
• Represent date and time graphically so that you can make a quick selection
without typing.
• Select only those dates or date ranges that are suitable for the current field.
• Allows multiple sets of books and multiple legal entities to be configured and to
operate in the same instance
• Provides support for data security between business units within a single
applications installation
• Permits users to sell and ship products from different legal entities (in different
sets of books) with automatic intercompany accounting
• Supports internal requisitions and purchasing/receiving products from different
inventory organizations (within the same set of books)
• Enables an enterprise to be housed in one database instance of Oracle, spanning
multiple countries, currencies, and legal entities without a reduction in response
times (architecture-related)
• Multiple Organizations Reporting enhances the reporting capabilities of Oracle
Applications products by allowing you to report at the:Set of Books level, Legal
entity level or Operating unit level
Multiple Organization in Oracle Applications depends primarily on defining your
organizational structure in the multi-level hierarchy used by Oracle Applications. The
levels are:
• Business groups
• Accounting sets of books
• Legal entities
• Operating units]
• Inventory organizations
Multiple sets of books can share the same business group if they share the same business
group attributes, including HR flex-field structures (Grade, positions flex-fields etc).
Accounting sets of books: A General Ledger concept for having separate financial
reporting entities for which chart of accounts, calendar, or functional currency differs. In
addition for scalability and ensuring independent numbering system for all the accounting
transactions as well as the ability to open and close each of the legal entities period
independently a separate set of books will be configured for each legal entity.
Legal entities: An organization that represents a legal company for which you prepare
fiscal or tax reports. You assign tax identifiers and other relevant legal company
information to this entity.
Operating units: An organization that partitions and uses data for Payables, Purchasing,
Order Management, Cash Management, Fixed Assets and Receivables. Operating Units
allow for configuration of the Oracle Applications across Multiple Business Groups using
a single installation of the software.
HR Organization
Internal Departments to which Employees are Assigned.
Asset Organizations
An asset organization is an organization that allows you to perform asset–related
activities for a specific Oracle Assets corporate depreciation book. Oracle Assets uses
only organizations designated as asset organizations
Search@Epicenter
• Customer
• Order entry (creation of order /booking of order )
• Order fulfillment
• Distribution
• Invoicing
• Customer payments /Collection
• Receipt
Order Management allows you to enter drop-ship sales orders as well as standard sales
orders.
It means you can receive orders for items that you do not stock or for which you lack
sufficient inventory, and have a supplier provide the items directly to your customer.
• Supplier
o Warehouse Item
o Ship order
o Shipment notification
• Order Entry
o Enter customer
o Enter order
o Demand order (optional)
o Cancel order (optional)
o Close order
• Purchasing
o Create and send
Purchase Order
o Enter shipment
notification in system
• Receivables
o Create invoice
o Collection of payment
o Receipt
• No inventory is required
• Reduced order fulfillment processing costs
• Reduced flow times
• Elimination of losses on non-sellable goods
• Elimination of packing and shipping costs
• Reduced inventory space requirements
• Reduced shipping time to your customer
• Allows you to offer a variety of products to your customers
To understand, here are the processes divided in sub process and the underline activity is
highlighted here:
1.Order Entry
3. The Purchase Release program passes information about eligible drop-ship order lines
to Oracle Purchasing.The interface table which gets populated is
po_requisitions_interface_all
4. After Purchase Release has completed successfully, run Requisition Import in Oracle
Purchasing to generate purchase requisitions for the processed order lines. The
Requisition Import program reads the table po_requisitions_interface_all validates your
data, derives or defaults additional information and writes an error message for every
validation that fails into the po_interface_errors table.The validated data is then inserted
into the requisition base tables
po_requisition_headers_all,po_requisition_lines_all,po_requisition_distributions_all.The
n use autocreate PO fuctionality to create purchase orders and then perform receipts
against these purchase orders
7. After the goods are successfully received invoices for vendors are created in accounts
payables as in normal purchase orders.
• Internal Requisition
• Purchase requisition
What is an Internal Requisition?
A requisition from the Purchasing system that will directly result in the generation of a
sales order in the Order Management system through the Order Import process in Order
Management.
HR_Employees : it's a view that contains information about employees. You must have
a row for each requestor, requisition preparer, approver , buyer or receiver . The primary
key is EMPLOYEE_ID.
PO_Requisition_Lines_All : This table stores the information about the requisition lines
like quantity , item , deliver to location , requestor etc. Primary Key is
REQUISTION_LINE_ID
MTL_System_Items_B : This is the definition table for items. This table holds the
definitions for inventory items, and purchasing items. The primary key is
INVENTORY_ITEM, ORGANIZATION_ID.
GL_CODE_Combinations: This table stores valid Accounting Flex Field segment value
combinations for each accounting flex field structure within your GL application.
GL_CODE_COMBINATIONS is populated by the system when a new accounting flex
field combination is used, either through dynamic insertion or manually.
Here are the drill down information for these two driving table:
1. PO_Requisition_Headers_All
2. PO_Requisition_Lines_ALL
• REQUISITION_LINE_ID Requisition line unique identifier
• REQUISITION_HEADER_ID Requisition header unique identifier
• LINE_NUM Line number
• QUANTITY Quantity of Line item
• LINE_LOCATION_ID Document shipment schedule unique identifier
• UNSPSC_CODE Standard UNSPSC CODE
How we map the Main screen for Requisition with database table.
Indeed, this is one of good area, where most of techies have lot of confusion and illusion
about when accounting comes. Many of consultant came from Technical background and
gradually moved into doing some techno -functional role or pure functional role, thus it is
essestintial to understand the basic accounting and Guided principal .
Normally, there are two basic accounting methods available in the business world:
• Cash
• Accrual
And most of the ERP accounting products weather its SUN system, Oracle financial or
SAP have functionality to capture on the basis of set up.
Then want is the difference:
We Most of us use the cash method to keep track of our personal financial activities.
The cash method recognizes revenue when payment is received, and recognizes expenses
when cash is paid out.
For example, our local grocery store's record is based on the cash method. Expenses are
recorded when cash is paid out and revenue is recorded when cash or check deposits are
received
If we summarize, under the cash basis accounting, revenues and expenses are recognized
as follows:
Take a note the word "cash" is not meant literally - it also covers payments by check,
credit card, barter, etc.
The accrual method of accounting requires that revenue be recognized and assigned to
the accounting period in which it is earned. Similarly, expenses must be recognized and
assigned to the accounting period in which they are incurred.
Then the underline question is what is accounting Period, Let explain like this normally a
company tracks the summary of the accounting activity in time intervals, which we
normally called as Accounting periods. These periods are usually a month long. It is also
common for a company to create an annual statement of records. This annual period is
also called a Fiscal or an Accounting Year.
In the accrual method relies on the principle of matching revenues and expenses. This
principle says that the expenses for a period, which are the costs of doing business to earn
income, should be compared to the revenues for the period, which are the income earned
as the result of those expenses. In other words, the expenses for the period should
accurately match up with the costs of producing revenue for the period.
Take a case:
Company is doing a business and they have to pay sales commissions expense, so sales
commissions expense should be reported in the period when the sales were made (and not
reported in the period when the commissions were paid). Similarly, Salary/Wage to
employees are reported as an expense in the week/month when the employees worked
and not in the week/month when the employees are paid. If a company agrees to give its
employees 2-month equivalent salary of its 2006 revenues as a bonus on January 25,
2007, the company should report the bonus as an expense in 2006 and the amount unpaid
at December 31, 2006 as a liability. This is most simple kind of matching principal
normally has.
In general, there are two types of adjustments that need to be made at the end of the
accounting period.
1. The first type of adjustment arises when more expense has been recorded than
was actually incurred or earned during the accounting period.
2. Similarly, there may be revenue that was received but not actually earned during
the accounting period. Also known as Un-earned Revenue.
The accrual method generates tax obligations before the cash has been collected (because
revenue leads to tax and revenue is recognized against receivable and not against receipt
of money).
If we summarize, under the accrual basis accounting, revenues and expenses are
recognized as follows:
• Using the cash method accounting, you would record a $1,500 payment for the
month of July, the month when the money is actually paid.
• Under the accrual method, you would record the $1,500 payment in May, when
you take the Laptop and become obligated to pay for it.
Cash-basis accounting defers all credit transactions to a later date. It is more conservative
for the seller in that it does not record revenue until cash receipt. In a growing company,
this results in a lower income compared to accrual-basis accounting.
If you want to know more about GAAP, weather US-GAAP, UK-GAAP , refer wikipedia
ERP/Oracle Financials
Oracle Financials have been developed to meet GAAP requirements as well as the special
needs of different countries. For example, in Oracle Payables you can choose whether to
record journal entries for invoices and payments on an accrual basis, a cash basis, or a
combined basis where accrual journal entries are posted to one set of books and cash
basis journal entries are sent to a second set of books.
Will continue with some additional accounting stuff, keep reading and commenting.