Total Pageviews

Friday, April 19, 2013


New features Offered in R12 Oracle Payables (Invoicing).

1.In R12 Oracle Payables we have 3-tier hierarchical Invoice architecture
a.Header
b.Line
c.Distribution.

2.In R12 Oracle Payable Invoice line is now a Child of Invoice header and parent of invoice distribution entity.

3.Three different ways are available to enter an invoice from the Invoice workbench
a.Invoice header to Invoice Lines and then to Invoice Distributions.
b.Invoice as matched to a Purchase Order or Receipt, they will need to
manually look for and pick the matched records from searching result.
c.Quick match to have the matched data automatically fetched from PO or
Receipt, and then populated into the invoice.

4.The Invoice distribution entity will now exist as the child of the Invoice line entity. When the invoice lines are created, the distribution data are automatically generated and tied to the lines.

5.Another new feature is multi-period accounting entry , with this mechanism used cab create deferred accounting data for future data.

6.Now Oracle Payables enables invoice approval at both header and line levels.

7.The invoice corrections can be made with various types, including price corrections, quantity corrections and amount corrections, at invoice line level.

8.With invoice lines implementations, freight charge can be easily allocated to the real item lines on item.

9.User can apply the available prepayment onto the current invoices during the creation of standard invoices. Pre-Payment will be created a separate line in the Invoice and Gross amount of the invoice will be automatically reduced based on the Pre-payment amount.

10.During Invoice Validation process Oracle Payable validation process will check for validation of the various rules (set of invoices) , and of there is any violation of the tolerances rules then the invoice will be put on hold.

PO Match Approvals 

When working with Purchase Orders in the Oracle Apps, we generally hear the word Match Approvals. Even though you all know the definitions of the approval and how they effect the invoice, lot of us stuck when we try to get the details, if we have access to only database.

First we will just have look at what the Match Approvals. Match approval is a rule associated between Purchase Order and the Invoicing. There are three types of Match Approvals,
1. 2-Way - PO Line quantity and Invoice quantity should match
2. 3-Way - PO Line quantity, Received quantity and Invoiced quantity should match
3. 4-Way - PO Line quantity, Received quantity, Accepted quantity and Invoiced quantity should match

Now from the Backend how will we come to know a which match approval it is following. Here comes the explanation.

In the PO_LINE_LOCATIONS_ALL table, there exists two columns name INSPECTION_REQUIRED_FLAG and RECEIPT_REQUIRED_FLAG. These two column values decide what is the match approval.

INSPECTION_REQUIRED_FLAGRECEIPT_REQUIRED_FLAGMatch Approval
NN2-Way
NY3-Way
YY4-Way

Link Between AR and GL with XLA tables in R12 

SELECT b.NAME batch_name,
              b.description batch_description,
              h.je_category,
              h.je_source,
              h.period_name je_period_name,
              h.NAME journal_name,
             h.status journal_status,
             h.description je_description,
            l.je_line_num line_number
FROM
            gl_je_batches b,
            gl_je_headers h,
            gl_je_lines l,
            gl_code_combinations_kfv glcc,
            gl_import_references gir,
            xla_ae_lines xlal,
            xla_ae_headers xlah,
            xla_events xlae,
            xla.xla_transaction_entities xlate,
            ra_customer_trx_all rct,
WHERE
           b.je_batch_id = h.je_batch_id
AND   h.je_header_id = l.je_header_id
AND   xlal.code_combination_id = glcc.code_combination_id
AND    l.je_header_id = gir.je_header_id
AND    l.je_line_num = gir.je_line_num
AND    gir.gl_sl_link_table = xlal.gl_sl_link_table
AND    gir.gl_sl_link_id = xlal.gl_sl_link_id
AND    xlal.ae_header_id = xlah.ae_header_id
AND   xlah.event_id = xlae.event_id
AND   xlae.entity_id = xlate.entity_id
AND   xlae.application_id = xlate.application_id
AND   h.je_source = 'Receivables'
AND   h.period_name = '2009-10'
AND    rct.trx_number = xlate.transaction_number
AND   xlate.transaction_number ='<TranxName>'

AR Invoices Interface

Interafce Tables
-------------------
1. Ra_interface_lines_all
2. ra_interface_distributions_all
3. ra_interface_errors_all
Base tables
-----------
1. ra_customer_trx_all
2. ra_customer_trx_lines_all
3. ar_receivables_applications_all

Validations
------------
1. Batch source name- ra_batch_sources_all
2. trx number- should not be duplicate
3. Customer Number
4. Customer Site
5. GL date /AR Date - should be in open period
6. Tax code -
7. Payment Term
8. Exchange rate Type
9. Code combination ID
To Get The Ledger id in R12 :

select (select ledger_id from gl_ledgers where name=  mo_utils.Get_Ledger_Name( fnd_profile.value('ORG_ID') )) AS l_ledger_id from dual

Sunday, April 14, 2013


Oracle Order to Cash tables: O2C tables

Oracle Apps Order to Cash important tables:






Order entry


OE_ORDER_HEADERS_ALL1 record created in header table

OE_ORDER_LINES_ALL Lines for particular records

OE_PRICE_ADJUSTMENTSWhen discount gets applied

OE_ORDER_PRICE_ATTRIBS If line has price attributes then populated

OE_ORDER_HOLDS_ALL If any hold applied for order like credit check etc



Order Booked


OE_ORDER_HEADERS_ALL Booked_Flag=Y, Order booked.

WSH_DELIVERY_DETAILS Status Opened

WSH_DELIVERY_ASSIGNMENTS WSH_DELIVERY_ASSIGNMENTS.delivery_id will be NULL as still pick release operation is not performed as final delivery is not yet created.

MTL_DEMAND.‘Demand interface program’ is triggered in the background and demand of the item with specified quantity is created 



Order Scheduled/ReservedThis step is required for doing reservations SCHEDULE ORDER PROGRAM runs in the background(if scheduled) and quantities are reserved. 

OE_ORDER_LINES_ALL Awaiting Shipping

MTL_RESERVATIONSThis is only soft reservations. No physical movement of stock

WSH_DELIVERY_DETAILS R: Ready to Release: Line is ready to be released



Pick ReleasedPick Release is the process of putting reservation on on-hand quantity available in the inventory and pick them for particular sales order.

OE_ORDER_LINES_ALL 

WSH_DELIVERY_DETAILS S: Released to Warehouse

WSH_NEW_DELIVERIES A new record is created in WSH_NEW_DELIVERIES with status_code = ‘OP’ (Open). WSH_NEW_DELIVERIES has the delivery records.

WSH_DELIVERY_ASSIGNMENTS Deliveries get assigned

WSH_PICKING_BATCHES After batch is created for pick release

MTL_TXN_REQUEST_HEADERSA move order is created in Pick Release process which is used to pick and move the goods to staging area (here move order is just created but not transacted). MTL_TXN_REQUEST_HEADERS, MTL_TXN_REQUEST_LINES  are move order tables


MTL_TXN_REQUEST_LINESmove order line



Pick ConfirmPick Confirm is to transact the move order created in Pick Release process

OE_ORDER_LINES_ALLflow_status_code =’PICKED’

MTL_MATERIAL_TRANSACTIONS_TEMP (Record gets deleted from here and gets posted to MTL_MATERIAL_TRANSACTIONS)

MTL_MATERIAL_TRANSACTIONSMTL_MATERIAL_TRANSACTIONS is updated with Sales Order Pick Transaciton

MTL_TRANSACTION_ACCOUNTSupdated with accounting information for mtl_material Transactions

WSH_DELIVERY_DETAILS Y: Staged- Line has been picked and staged by Inventory

MTL_ONHAND_QUANTITIES



Ship ConfirmedThe goods are picked from staging area and given to shipping. “Interface Trip Stop” program runs in the backend.

OE_ORDER_LINES_ALL.flow_status_code =‘SHIPPED’ Shipped_Quantity get populated

WSH_DELIVERY_DETAILS Released_Status=C ;Shipped ;Delivery Note get printed Delivery assigned to trip stop quantity will be decreased 

MTL_TRANSACTIONS_INTERFACEData from MTL_TRANSACTIONS_INTERFACE is moved to MTL_MATERIAL_TRANACTIONS

MTL_MATERIAL_TRANSACTIONSupdated with Sales Order Issue transaction

WSH_NEW_DELIVERIES If Defer Interface is checked then OM & inventory not updated. If Defer Interface is not checked: Shipped

OE_ORDER_LINES_ALL 

WSH_DELIVERY_LEGS 1 leg is called as 1 trip.1 Pickup & drop up stop for each trip.

OE_ORDER_HEADERS_ALL If all the lines get shipped then only flag N

WSH_NEW_DELIVERIESData Deleted

MTL_RESERVATIONSData Deleted

MTL_DEMANDData Deleted

MTL_ONHAND_QUANTITIESItem deducted from MTL_ONHAND_QUANTITIES

MTL_TRANSACTION_ACCOUNTS updated with accounting information.

WSH_TRIPS

WSH_TRIP_STOPS



Auto InvoiceAfter shipping the order the order lines gets eligible to get transfered to RA_INTERFACE_LINES_ALL. Workflow background engine picks those records and post it to RA_INTERFACE_LINES_ALL. 

OE_ORDER_LINES_ALLinvoice_interface_status_code = ‘YES’

WSH_DELIVERY_DETAILS Released_Status=I 

RA_INTERFACE_LINES_ALL Data will be populated after work flow process.

RA_CUSTOMER_TRX_ALL After running Auto Invoice Master Program for

RA_CUSTOMER_TRX_LINES_ALL Specific batch transaction tables get populated






Close OrderLast step of the process is to close the order which happens automatically once the goods are shipped

OE_ORDER_LINES_ALLflow_status_code =’CLOSED’ and open_flag = ‘N’

Oracle Apps R12 MOAC and its impact

Oracle R12 MOAC and its impact 


Setup the Security Profile: 

1.Create a Security Profile in HRMS Responsibility
    HRMS Manager>Security>Profile
    In this setup specify different Operating Units that you want to Access.

2.Run the Security List Maintenance
    This is a required step when you create a new Profile or modify existing one.


3.Setup the MO: Security Profile value to above created security profile.
     This "MO: Security Profile" Profile option has to be setup at the responsibility level.This will ensure that
     Responsibility will have access to the data of all the Operating units under the Security Profile.


Important profile option

MO: Security Profile:

MO: Operating Unit:
This comes from 11i and is still valid only its evaluated, if there is no value setup at MO:Security
Profile.

MO: Default Operating Unit
If the security profile is setup to access multiple operating units, this requires users to select
the Operating Unit every time user access the Sub ledger pages. To avoid this the Default Operating Unit profile can be setup.

How MOAC impacts the way we work in TOAD

11i
To set the Org id in TOAD
1. Get the Org_id from HR_ORGANIZATION_UNITS

2. In toad execute the below code
        begin
        fnd_client_info.set_org_context(&org_id);
        end;


To set the responsibility context in TOAD
1. Get the User id, Responsibility Id and Application id from Front end
    Help>Diagnostic>Examine and select BLOCK as "$PROFILES$" and then get the respective IDS

2. Using the IDs execute the below code in TOAD

      begin
      FND_GLOBAL.APPS_INITIALIZE(user_id in number,resp_id in number,resp_appl_id in
      number);
      end;

R12:
To set the Org id in TOAD
1. Get the Org_id from HR_ORGANIZATION_UNITS

2. In toad execute the below code
    --Sets the 201 as single Org id
    exec MO_GLOBAL.SET_POLICY_CONTEXT('S',201);
    Pass a value "S" in case you want your current session to work against Single ORG_ID
    Pass a value of "M" in case you want your current session to work against multiple ORG_ID's

To set the responsibility context and initiate MOAC in TOAD
1. Get the User id, Responsibility Id and Application id from Front end
     Help>Diagnostic>Examine and select BLOCK as "$PROFILES$" and then get the respective IDS

2. Using the IDs execute the below code in TOAD

       a. exec  FND_GLOBAL.INITIALIZE
          This will set your responsibility id, user_id etc

       b. call MO_GLOBAL.INIT('AR')
           This will read the MO profile option values for your responsibility/user, and will initialize the
           Multi Org Access.
        
MOAC for table access
In 11i _ALL Tables where non Org specific and Org specific views were created on these tables.
But in R12 its different concept
  a. For the table AP_INVOICES_ALL a synonym  AP_INVOICES_ALL is created in APPS.

  b. Also another synonym AP_INVOICES is created which refers to AP_INOICES_ALL.

  c. A Row Level security is applied to AP_INVOICES, using package function
      MO_GLOBAL.ORG_SECURITY.
     This can be double-checked by running SQL select * from all_policies where
      object_name='AP_INVOICES'

e. The effect of this policy is that,whenever you access AP_INVOICES, Oracle RLS will
    dynamically append WHERE CLAUSE similar to below

    SELECT * FROM AP_INVOICES
    WHERE EXISTS (SELECT 1 FROM mo_glob_org_access_tmp oa WHERE oa.organization_id =
     org_id)

Multi Org Structure in R12: An Overview


What is a Multi Org Structure?

If an enterprise or a business wants to implement multiple organizations such as multiple Ledgers (Sets of Books), or Legal Entities, or Business Groups within a single installation of Oracle Applications, then we can summarize that the enterprise is planning to implement a multi org setup.

How About a Close to Real Life Case Study?

Before we dive into this topic, let us draw a multi org structure on a whiteboard. It would help to analyze a real picture, as we pick at the concepts that go into designing a multi org structure.
The above is the organization structure for Office Smart Solutions, which is a major office supplies retailer, headquartered in Naperville, Illinois, USA. The organization operates in three countries – the US, Canada and India.
Office Smart has an organization structure with the following:
  • 2 Business Groups – one in the US, which controls the organization structure in North America, and one in India
  • 3 Legal Entities – one in the US, one in Canada, and one in India
  • 3 Primary Ledgers – one in the US, one in Canada, and one in India
  • 3 Operating Units – one in the US, one in Canada, and one in India
  • 5 Inventory organizations – two in the US, one in Canada, and two in India
  • Subinventories and locators exist beneath the inventory organizations, but they are not relevant for the session on multi org structures.
With this, let us step back and reflect…

The way it was in 11i

In 11i, a user working with a specific responsibility, under a given operating unit, would need to switch responsibilities, if she were to access a sales order that was created from a different operating unit. For this to happen, the user had to be assigned a second responsibility that was linked to the second operating unit.
From an implementation perspective, this implied that each responsibility could be linked to one and only one operating unit. Thus, if a user in Office Smart Canada, needed access to data in Office Smart US, then she would need to be assigned a responsibility that was tied to the US Operating Unit – Office Smart Operations.
Responsibilities were tied to operating units through the profile option MO: Operating Unit.

What R12 brings to the table

Release 12 brought with it, the philosophy of Multi Org Access Control (MOAC).
“Globalization is unstoppable. Regardless of geography, industry or income, companies are globalizing to gain new customers and access new markets. Is this a good thing? Nearly two-thirds of the CEOs we surveyed are positive about the impact that globalization will have on their organizations over the next three years.”

Source: 9th Annual Global CEO Survey – Globalization and Complexity; PwC 2006
With Release 12, Oracle Applications had to ensure that certain aspects of the applications were redesigned to meet the inevitable advance of Globalization.

Organizational changes in R12

The Set of Books evolved into Ledgers and Ledger Sets. The philosophy of Multiple Organization Access Control (MOAC) introduced in R12, ensured that the same user could perform multiple tasks across operating units without changing responsibilities. The use of Security Profiles was extended beyond HR to make MOAC possible.

Organization Access Control in R12

In a multi org environment, securing the data in each organization becomes a key task and concern for management and the implementation team. By creating custom responsibilities, management ensures that employees are given access to only those menus and functions that they need to perform their routine activities. However, an addition layer of security needs to be designed to ensure that using those menus and forms given to them, employees cannot trespass into an organization that they should not have access to.
As mentioned above, in 11i access to organizations was compartmentalized based on operating units. This ensured data security, but at the expense of making it a little cumbersome for the user to switch between organizations that belong to different operating units.
The Multi Org Access Control (MOAC) feature in R12 retains the data security aspect between organizations and users. However, it also brings with it a certain degree of user friendliness in navigating between different operating units.


R12: Setting up MOAC (Multi Org Access Control) in R12

Prior to R12, end users use to toggle / switch / change responsibilities in order to do transactions (like invoice / payment processing in AP) in different operating unit. This is a very time consuming and inefficient way of recording transactions when you have 100s of operating units specially Internet based organizations who have world wide operations in almost all the countries.

To address this, a new feature in R12 has been introduced in which user can switch between operating units within a responsibility something similar to "Change Organization" feature in inventory. Prior to R12, user would have to switch responsibilities in order to enter transactions in respective operating units (tagged to the responsibility).

To enable this feature, Oracle has provided MOAC (Multi Org Access Control) in R12 to achieve this functionality.
Most of the setup steps for this is similar to setting up of HR Security. So, if you know how to set HR security then setting MOAC is just a piece of cake.

Do the following setups as part of MOAC setup-

Step 1. Create Organization Hierarchy-Navigate to Human Resource responsibility > Define Organization Hierarchy

Create an Organization Hierarchy as shown below. Here I have named it as "XXTech Vision". This is my Org hierarchy name.
This has following heirarchy,

Organization name (This would show-up all Organizations in the current business group):
Vision Corporation
--Vision Services
--Vision Leasing
--Vision Utilities


Once you set this up, you can see how your hierarchy looks like in the Organization Diagrammer as shown below,


Step 2- Create HR Security Profile as shown below (Navigation - Human Resources responsibility > Security > Profile)
Enter the values as shown in the below picture.



Step 3- The final step of the setup is to attach the HR security profile just created to the "MO:Security Profile" profile for the responsibility to which you want to have the MOAC functionality as shown in the below picture,



Step 4- Run "Security List Maintenance" concurrent request,This process maintains the list of employees, organizations, positions, payrolls and applicants that security profile holders have access to. Schedule this request to run every night during quite hours if possible. If it is run when the users are logged in then users may experience unexpected results while doing transactions like additional employees / OUs may become visible or previously visible employees may no longer be visible for a brief period of time. Once the process completes then everything would work normal. If it does not run due to some reason then this can be manually run as shown in the picture,



Step 5- Test the setup 
Now navigate to "Payables Manager" responsibility > Invoices Workbench > Click on the LOV of OU > It would show up all the organizations (setup as operating units that were part of the security profile > organization hierarchy as shown in the below picture,



Summary: 
With this new feature in R12, it can be seen that users just need to select the operating unit within same responsibility to do the transactions without leaving the responsibility and thus tremendously improve the processing efficiency.


Date parameter in Concurrent programs-FND_DATE

Hi All,

Normally when ever we want to use date parameter for pl/sql stored procedures we ecounter a common error saying that format string doenst match...

then we do a data conversion to_date(p_date,'RRRR/MM/DD HH24:MI:SS') and then use it..

The better way of doing it is define the data parameter as varchar2 and use the function FND_DATE.date_to_canonical(p_date).This will direclty convert the text string comming from the concurrent programs to date value

ln_processing_date := NVL (fnd_date.canonical_to_date (p_processing_date), SYSDATE);

Saturday, April 13, 2013


Oracle Apps Interview Question And Answers


What is Set of Books ? What are the four conditions when you change your SOBs?
Chart of Accounts, Currency & Calendar
It is similar to the bank passbook, used to record all the financial transactions. There could be one primary set of books and many reporting set of books. Defining COA, currency and calendar are pre-requisite to define the SOB.
What is an Invoice? How many types of invoices ar…
There are 9 types of Invoices in AP: Standard, Credit Memo, Debit Memo, Prepayment, Withholding Tax, Mixed Invoice, Expense Report, PO default and Quick Match.
There are 6 types of Invoice in AR : Invoice, Credit Memo, Debit Memo, Chargeback, Deposit and Guarantee.
What is the difference between data conversion and data migration?
Data Migration is upgrading from one version to another version fro e.g. from 11.5.9 to 11.5.10.. Data Conversion is receiving data from a legacy system or receiving data from another module ( e.g. PA), validating it and converting it to ur our the target module using the standard import program.
Set ups need to approve invoice in AP
For approving an invoice in AP we have to raise one invoice for raising an invoice we have some mandatory fields like supplier, supplier number, Payment terms, distribution sets, date, payment method, bank, payment document etc. After defining all the above we can raise a invoice, There’s no need of defining the approval group it s not a mandatory,

What is a profile option? What are the types?The profile options are available to every product in Oracle Applications. For each profile option, we give a brief overview of how Oracle Application Object Library uses the profile’s setting.
1) User Level
2) Responsibility Level
3) Application Level
4) Site Level.
What are _ALL tables in Oracle Apps?
_ALL tables in oracle applications give the info about multiple organizations info about these tables.
What is descriptive flex field and what is the useDescriptive Flexfileds r used to add additional informations, and these values r stored to the column attributes. Go to sysadmin application-flex fields-descriptive-segments
What is a FlexField? What are Descriptive and Key…
A flexfield is made up of sub-fields or segments.. A flexfield appers on ur form as a pop-up window that contains a prompt for each segment. Each segment has a name and a set of valid values..
Two types of Flex field..
Key Flexfield: Key flexfield are flexible enough to let any organization use the code scheme they want wothout programming.Key flexfield can be used to represent codes that is made up of meaningful segment to identify GL a/c Part no. and other business entities..Oracle app store these codes in key flexfields..
Descriptive Flexfield: They provide customizable “expansion space” on ur forms. You can use desc flexfields to tract additional information important and unique to ur business that would not otherwise be captured by the form.
What Credit memo / Debit MemoBoth Credit and Debit Memo are used for adjusting the suppliers balance and both is a negative amount. Debit Memo is created by you and send to the supplier and credit memo is recieved from the supplier and record it.
What is a request Sets? how to create a request Se..
Request set is a group of requests.It is made to perform the request in a certain sequence.Request se can be created from System administrator responsibility.
What are the types of Concurrent Managers?Ca…
There are many concurrent managers, each monitoring the flow within each apps area.
but there are 3 MASTER CONCURRENT MANAGERS:
1. Internal Conccurent Manager (ICM): This is the one which monitors all other CMs
2. Standard Manager (SM) : This takes care of report running and batch jobs
3. Conflict Resolution Manager (CRM): checks concurrent program definitions for incompatability checks.
We cannot delete a concurrent manager… but we can disable it… but it’s not recommended.
What is Multiple Organization technical architecture?
Multi Organization :Using a single installation of any oracle application product , to support any number of an organization even it has different Set Of Books Bussiness Level(It Secures Human TransactionInformation) Set Of Books(It secures all Transaction Information In Oracle Genral Ledger) Leagel Entry(All leagal Information in the Organization) Operating Unit(It Uses Order management, Cash managment,AR,AP…it may be Sales Office , Division,Department) Inventry Organization(Inventry Details)
before multi org existed, we could have only one bussiness group,set of books, legal entity, operating unit in one installation of oracle E-bussiness suite, and now with the multi organisation structure in place, we can have multiple bussiness groups, set of books, legal entity and operating unit and the best part is once these are set up intercompany accounting is automatically taken care of, say for example i have Two inventory organisation, and these use a common set of books(to start with) , now if we have sales order on one inventory organisation A1 and if that item is not available in A1, and we have inventory for the item in Inventory org A2, we need to take the order in A1 as internal order and run the order import concurrent program and for the item in inventory A1(org assignment) we need to set up the source(purchase tab) as inventory organisation A2,and also specify shipping network between A1 and A2, and once we have run the order import program and Oracle applications now imports the order to organisation A2, with the ship to address as A1 location. and after you perform pick release and pick confirm process, and run auto invoice in A2, it automatically sends invoice to inventory organisation A1 and now we can receive the item in Inventory organisation A1 from organisation A2.
and all transactions are taken care of, courtesy multi organisation structure.
What are different period types ?Year Quarter Month Week
What are the different types of files used in SQLDifferent types of files are Data File,Control File,Discard File,Bad file
What is Oracle Financials?
Oracle Financials products provide organizations with solutions to a wide range of long- and short-term accounting system issues. Regardless of the size of the business, Oracle Financials can meet accounting management demands with:
o Oracle Assets: Ensures that an organization’s property and equipment investment is accurate and that the correct asset tax accounting strategies are chosen.
o Oracle General Ledger: Offers a complete solution to journal entry, budgeting, allocations, consolidation, and financial reporting needs.
o Oracle Inventory: Helps an organization make better inventory decisions by minimizing stock and maximizing cash flow.
o Oracle Order Entry: Provides organizations with a sophisticated order entry system for managing customer commitments.
o Oracle Payables: Lets an organization process more invoices with fewer staff members and tighter controls. Helps save money through maximum discounts, bank float, and prevention of duplicate payment.
o Oracle Personnel: Improves the management of employee- related issues by retaining and making available every form of personnel data.
o Oracle Purchasing: Improves buying power, helps negotiate bigger discounts, eliminates paper flow, increases financial controls, and increases productivity.
o Oracle Receivables:. Improves cash flow by letting an organization process more payments faster, without off-line research. Helps correctly account for cash, reduce outstanding receivables, and improve collection effectiveness.
o Oracle Revenue Accounting: Gives an organization timely and accurate revenue and flexible commissions reporting.
o Oracle Sales Analysis: Allows for better forecasting, planning. and reporting of sales information.
What is the difference between Fields and FlexFields?
A field is a position on a form that one uses to enter, view, update, or delete information. A field prompt describes each field by telling what kind of information appears in the field, or alternatively, what kind of information should be entered in the field.
A flexfield is an Oracle Applications field made up of segments. Each segment has an assigned name and a set of valid values. Oracle Applications uses flexfields to capture information about your organization. There are two types of flexfields: key flexfields and descriptive flexfields.
Difference between Conversions and Interfaces.
Conversion is to bring the data from other (non-OraApps) system to Oracle-Application system. This is one time activity (bring account details, transactions, orders, receipts and so on). So conversion itself is a project.
Interfaces are Concurrent PRograms/Program sets (pl/sql, pro*C, unix scripts, executables) . Interfaces are basically of two types (Oracle supplied (vanila programs eg:Autoinvoice in AR) and created by developer).
Hope this clarifies the concepts.
Conversion means one time activityinterface means periodic activityexample:- to transfer the data old version to new version it is called conversion to transfer the data from staging table to interface table it is called interface , it is process on every day or every hour ……..
Which module is not a multiorg? 
General Ledger and CRM Foundation Modules
What are the types of Concurrent Managers?Can we delete a Concurrent Manager?
There are many concurrent managers, each monitoring the flow within each apps area.
but there are 3 MASTER CONCURRENT MANAGERS:
1. Internal Conccurent Manager (ICM): This is the one which monitors all other CMs
2. Standard Manager (SM) : This takes care of report running and batch jobs
3. Conflict Resolution Manager (CRM): checks concurrent program definitions for incompatability checks.
We cannot delete a concurrent manager… but we can disable it… but it’s not recommended.
Trading community Architecture(TCA)
ICA (Internet Computing Architecture)
What are AP setup steps ?setup—->suppliers….>invoices..>payments…..>reports……>periods…..>transfer to GL
What does US mean in appl_top/au/11.5.0/reports/US?
US is the language directory specifying that the source files to be placed under this dir is for English/American Language
This is the standard of apps directory structure that for very language you implement oracle apps there should be a language specific folder
What are SQLCODE and SQLERRM and why are they important for PL/SQL developers? 
SQLCODE returns the value of the error number for the last error encountered. The SQLERRM returns the actual error message for the last error encountered. They can be used in exception handling to report, or, store in an error log table, the error that occurred in the code. These are especially useful for the WHEN OTHERS exception.
What are the Back ground processes in Oracle and what are they.
There are basically 9 Processes.They do the house keeping activities for the Oracle and are common in any system.The various background processes in oracle are:
a) Data Base Writer(DBWR) :: Data Base Writer Writes Modified blocks from Database buffer cache to Data Files.This is required since the data is not written whenever a transaction is commited.
b)LogWriter(LGWR) :: LogWriter writes the redo log entries to disk. Redo Log data is generated in redo log buffer of SGA. As transaction commits and log buffer fills, LGWR writes log entries into a online redo log file.
c) System Monitor(SMON) :: The System Monitor performs instance recovery at instance startup.This is useful for recovery from system failure
d)Process Monitor(PMON) :: The Process Monitor peforms process recovery when user Process fails. Pmon Clears and Frees resources that process was using.
e) CheckPoint(CKPT) :: At Specified times, all modified database buffers in SGA are written to data files by DBWR at Checkpoints and Updating all data files and control files of database to indicate the
most recent checkpoint
f)Archieves(ARCH) :: The Archiver copies online redo log files to archival storal when they are busy.
g) Recoveror(RECO) :: The Recoveror is used to resolve the distributed transaction in network
h) Dispatcher (Dnnn) :: The Dispatcher is useful in Multi Threaded Architecture
i) Lckn :: We can have upto 10 lock processes for inter instance locking in parallel sql.
How many types of Sql Statements are there in Oracle
There are basically 6 types of sql statments.They are
a) Data Defination Language(DDL) :: The DDL statments define and maintain objects and drop objects.
b) Data Manipulation Language(DML) :: The DML statments manipulate database data.
c) Transaction Control Statements :: Manage change by DML
d) Session Control :: Used to control the properties of current session enabling and disabling roles and changing .e.g, Alter Statements,Set Role
e) System Control Statements :: Change Properties of Oracle Instance .e.g, Alter System
f) Embedded Sql :: Incorporate DDL,DML and T.C.S in Programming Language.e.g, Using the Sql Statements in languages such as ‘C’, Open,Fetch, execute and close
What is a Transaction in Oracle
A transaction is a Logical unit of work that compromises one or more SQL Statements executed by a single User. According to ANSI, a transaction begins with first executable statment and ends when it is explicitly commited or rolled back.
Key Words Used in Oracle
The Key words that are used in Oracle are ::
a) Commiting :: A transaction is said to be commited when the transaction makes permanent changes resulting from the SQL statements.
b) Rollback :: A transaction that retracts any of the changes resulting from SQL statements in Transaction.
c) SavePoint :: For long transactions that contain many SQL statements, intermediate markers or savepoints are declared. Savepoints can be used to divide a transactino into smaller points.
d) Rolling Forward :: Process of applying redo log during recovery is called rolling forward.
e) Cursor :: A cursor is a handle ( name or a pointer) for the memory associated with a specific stament. A cursor is basically an area allocated by Oracle for executing the Sql Statement. Oracle uses an implicit cursor statement for Single row query and Uses Explcit cursor for a multi row query.
f) System Global Area(SGA) :: The SGA is a shared memory region allocated by the Oracle that contains Data and control information for one Oracle Instance.It consists of Database Buffer Cache and Redo log Buffer.
g) Program Global Area (PGA) :: The PGA is a memory buffer that contains data and control information for server process.
g) Database Buffer Cache :: Databese Buffer of SGA stores the most recently used blocks of datatbase data.The set of database buffers in an instance is called Database Buffer Cache.
h) Redo log Buffer :: Redo log Buffer of SGA stores all the redo log entries.
i) Redo Log Files :: Redo log files are set of files that protect altered database data in memory that has not been written to Data Files. They are basically used for backup when a database crashes.
j) Process :: A Process is a ‘thread of control’ or mechansim in Operating System that executes series of steps.
What are Procedure,functions and Packages
* Procedures and functions consist of set of PL/SQL statements that are grouped together as a unit to solve a specific problem or perform set of related tasks.
* Procedures do not Return values while Functions return one One Value
*Packages :: Packages Provide a method of encapsulating and storing related procedures, functions, variables and other Package Contents
What are Database Triggers and Stored Procedures
Database Triggers :: Database Triggers are Procedures that are automatically executed as a result of insert in, update to, or delete from table. Database triggers have the values old and new to denote the old value in the table before it is deleted and the new indicated the new value that will be used. DT are useful for implementing complex business rules which cannot be enforced using the integrity rules.We can have the trigger as Before trigger or After Trigger and at Statement or Row level.
e.g:: operations insert,update ,delete 3
before ,after 3*2 A total of 6 combinatons
At statment level(once for the trigger) or row level( for every execution ) 6 * 2 A total of 12.
Thus a total of 12 combinations are there and the restriction of usage of 12 triggers has been lifted from Oracle 7.3 Onwards.
Stored Procedures :: Stored Procedures are Procedures that are stored in Compiled form in the database.The advantage of using the stored procedures is that many users can use the same procedure in compiled and ready to use format.
How many Integrity Rules are there and what are they
There are Three Integrity Rules. They are as follows ::
a) Entity Integrity Rule :: The Entity Integrity Rule enforces that the Primary key cannot be Null
b) Foreign Key Integrity Rule :: The FKIR denotes that the relationship between the foreign key and the primary key has to be enforced.When there is data in Child Tables the Master tables cannot be deleted.
c) Business Integrity Rules :: The Third Intigrity rule is about the complex business processes which cannot be implemented by the above 2 rules.
What are the Various Master and Detail Relation ships.
The various Master and Detail Relationship are
a) NonIsolated :: The Master cannot be deleted when a child is exisiting
b) Isolated :: The Master can be deleted when the child is exisiting
c) Cascading :: The child gets deleted when the Master is deleted.
What are the Various Block Coordination Properties
The various Block Coordination Properties are
a) Immediate
Default Setting. The Detail records are shown when the Master Record are shown.
b) Deffered with Auto Query
Oracle Forms defer fetching the detail records until the operator navigates to the detail block.
c) Deffered with No Auto Query
The operator must navigate to the detail block and explicitly execute a query
What are the Different Optimisation Techniques
The Various Optimisation techniques are
a) Execute Plan :: we can see the plan of the query and change it accordingly based on the indexes
b) Optimizer_hint ::
set_item_property(‘DeptBlock’,OPTIMIZER_HINT,’FIRST_ROWS’);
Select /*+ First_Rows */ Deptno,Dname,Loc,Rowid from dept
where (Deptno > 25)
c) Optimize_Sql ::
By setting the Optimize_Sql = No, Oracle Forms assigns a single cursor for all SQL statements.This slow downs the processing because for evertime the SQL must be parsed whenver they are executed.
f45run module = my_firstform userid = scott/tiger optimize_sql = No
d) Optimize_Tp ::
By setting the Optimize_Tp= No, Oracle Forms assigns seperate cursor only for each query SELECT statement. All other SQL statements reuse the cursor.
f45run module = my_firstform userid = scott/tiger optimize_Tp = No
Restrict ‘&’ in Sql*Plus
sql> set define off
This will restrict the use of ‘&’ in the sql*plus for that particular