Site menu:

Search Jobs
Standard Search
Keywords: Country: Advance Search



A) Status Column – Symbolizes the Journal entry in the table as either New/Update.

Accounting Date – Represents the date using which the corresponding period in the General Ledger is identified and accounting is applied.

Reference Columns – Represents additional/optional information pertaining to the batch/Journal Entrys belonging to sub-ledger modules such as AP & AR.

(REF.COLUMNS 1-10 -> Store Batch and Journal Entry names and description,)

(REF.COLUMNS 21-30-> Store information pertaining to sub-ledger modules. These Col’s are also populated as Ref. Col’s 1-10 in GL_ IMPORT_REFERENCES, GL_JE_LINES.)

 

7.       What is Actual Flag?

A) Actual flag represents the Journal type. A-Actual, B-Budget, E- Encumbrance.

 

8.       What is Encumbrance?

A) It is a process of Reservation of funds for anticipated expenditure from a budget. Encumbrance integrates GL, Purchasing and Payables modules.

 

9.       What are Budget Journal and Actual Journal?

 

10.   How many Key Flex Fields are there in General Ledger?

A)      One. Accounting Key Flex Field.

 

11.   What is a Value Set?

A) Value set is a collection of values that could be represented by a segment.

 

12.   How do we create Set of Books?

A)      The creation of Set of books involves four basic steps.

i) Define Functional Currency

ii) Define Calendar

iii) Define the Chart of Accounts

iv) Enter code combination of Retained Earnings account.

 

13.   How many types of Budgets are there?

A)      Two Types. Expenditure Budgets, Revenue Budgets.

 

14.   What are the Base Tables and Interface Tables for Journal Import?

Interface Tables: GL_INTERFACE, GL_BUDGET_INTERFACE

Base Tables: GL_JE_BATCHES, GL_JE_HEADERS, GL_JE_LINES,

GL_JE_SOURCES, GL_JE_CATEGORIES,

GL_SETS_OF_BOOKS, GL_DAILY_RATES, GL_BALANCES,

GL_PERIODS, GL_PERIOD_SETS, GL_CODE_COMBINATIONS

 

15.   What is the process of kicking Journal Import from PL/SQL?

A)      Using the procedure FND_SUBMIT.SUBMIT_REQUEST.

 

16.   How do we error out a concurrent program from PL/SQL?

A) Using API_SET=VALUE/STATUS (API is a Package).

 

17.   What are Spot Rate, Corporate Rate, Transaction Calendar and Accounting Calendar?

Spot Rate: An exchange rate which you enter to perform conversion based on the rate on a specific date. It applies to the immediate delivery of currency.

Corporate Rate: An Exchange rate that we define to standardize rates for our company. This rate is the standard market rate determined by the senior financial management for use through out the organization.

User Rate: Conversion rate that is defined by the user.

EMU Fixed Rate: An exchange rate that is provided automatically by the General Ledger while entering journals. It uses a foreign currency that has a fixed relationship with the euro.

Transaction Calendar: Defines the business days and holidays for any calendar.

Accounting Calendar: Defines different types of calendars namely Fiscal, Federal Fiscal, Month etc.

 

18. What are Segment Qualifiers?

Segment qualifiers hold extra information about individual segments such as if the account is an Asset, Liability or Expense, if you can post to the account and more.

 

When we define a segment value in the Segment Values window, we must also assign qualifiers which determine the account type (asset, liability, or expense), whether budgeting is allowed, whether posting is allowed and other information specific to the segment value.

 

Allow Budgeting, Allow Posting, Account Type, Control Account, Reconciliation Flag.

 

19. What are Flex Field Qualifiers?

A) They determine the hierarchy of the segments with in a flex field structure. They are of four different types, Balancing Segment Qualifier, Natural Accounting segment Qualifier, Cost Center Segment Qualifier, Inter Company Segment Qualifier.

 

20. What is MRC (Multiple Reporting Currency)?

Multiple Reporting Currency is a feature used to maintain transactions and account balances in multiple currencies. MRC is implemented at the transaction level where as Currency Translation is implemented in the Account Balances level. MRC in functionality replaces the usage of DUAL Currency and Translation processes in Oracle GL module.

 

21. What is Security Rule?

Security Rules are defined to control the access of a flexfield segment value (Financial information) at a responsibility level.

 

22. What are Cross Validation & ADI?

CVS – Cross validate segments – Allows only valid code combinations.

ADI – Allow dynamic inserts. – Allows any code combination irrespective of validity.

ADI would prevail if both of CVS and ADI are checked.

 

23. What is Translation?

A) Translation is a process used to convert functional currency to other reporting currencies at the account balances level.

 

24. What is Revaluation?

A) It is process used to revalue assets and liabilities denominated in foreign currency into functional currency based on period end exchange rate we specify. Unrealized gains/losses are resulted because of exchange rate fluctuations which are recorded in unrealized gain/loss account in GL.

 

25. What is FSG (Financial Statement Generator)?

A) Financial statement generator feature helps us to generate reports such as balance sheets and income statements with out programming. It also provides a high degree of control on the rows, columns, contents and calculations on the report. Different components such as row set, column set, content set, row order, display set have to be defined before a statement is generated, of which row set and column set are mandatory.

 

26. What is Consolidation?

A) Consolidation is a period-end process of combining the financial results of separate business subsidiaries with the parent company to form a single combined statement of financial results.

 

27. At what level General Ledger data is secured?

A) GL data is secured at Set of Book level. Subledger module data is secured at Responsibility level (i.e., at Operating Unit Level).

 

AR:

 

1. What is TCA? Tables?

A) Trading Community Architecture. It is a centralized repository of business entities such as Partners, Customers, and Organizations etc. It is a new framework developed in Oracle 11i.

HZ_PARTIES: The HZ_PARTIES table stores basic information about parties that can be shared with any relationship that the party might establish with another party. Although a record in the HZ_PARTIES table represents a unique party, multiple parties can have the same name. The parties can be one of four types:

Organization for example, Oracle Corporation
Person for example, Jane Doe
Group for example, World Wide Web Consortium
Relationship for example, Jane Doe at Oracle Corporation.

 

HZ_LOCATIONS: The HZ_LOCATIONS table stores information about a delivery or postal address such as building number, street address, postal code, and directions to a location. This table provides physical location information about parties (organizations and people) and customer accounts.

 

HZ_PARTY_SITES: The HZ_PARTY_SITES table links a party (see HZ_PARTIES) and a location (see HZ_LOCATIONS) and stores location-specific party information. One party can optionally have one or more party sites. One location can optionally be used by one or more parties. This party site can then be used for multiple customer accounts within the same party.

HZ_CUST_ACCT_SITES_ALL

HZ_CUST_SITE_USES_ALL

HZ_CUST_CONTACT_POINTS etc.

 

2. What are Base Tables or Interface Tables for Customer Conversions, Autolockbox, Auto Invoice?

A) Customer Conversion:

Interface Tables : RA_CUSTOMERS_INTERFACE_ALL, RA_CUSTOMER_PROFILES_INT_ALL,

RA_CONTACT_PHONES_INT_ALL,

RA_CUSTOMER_BANKS_INT_ALL,

RA_CUST_PAY_METHOD_INT_ALL

Base Tables : RA_CUSTOMERS, RA_ADDRESSES, RA_SITE_USES_ALL,

RA_CUSTOMER_PROFILES_ALL, RA_PHONES etc

B) Auto Invoice:

Interface Tables : RA_INTERFACE_LINES_ALL, RA_INTERFACE_DISTRIBUTIONS_ALL

RA_INTERFACE_SALESCREDITS_ALL, RA_INTERFACE_ERRORS_ALL

Base Tables : RA_CUSTOMER_TRX_ALL, RA_CUSTOMER_TRX_LINES_ALL,

RA_CUST_TRX_LINE_GL_DIST_ALL, RA_CUST_TRX_LINE_SALESREPS_ALL, RA_CUST_TRX_TYPES_ALL

C) AutoLockBox:

Interface Tables : AR_PAYMENTS_INTERFACE_ALL (POPULATED BY IMPORT PROCESS)

Interim tables : AR_INTERIM_CASH_RECEIPTS_ALL (All Populated by Submit Validation)

: AR_INTERIM_CASH_RCPT_LINES_ALL,

AR_INTERIM_POSTING

Base Tables : AR_CASH_RECEIPTS_ALL, AR_RECEIVABLE_APPLICATIONS_ALL,

AR_PAYMENT_SCHEDULES_ALL ( All Populated by post quick cash)

 

3. What are the tables in which Invoices/transactions information is stored?

A) RA_CUSTOMER_TRX_ALL, The RA_CUSTOMER_TRX_ALL table stores invoice, debit memo, commitment, bills receivable, and credit memo header information. Each row in this table includes general invoice information such as customer, transaction type, and printing instructions.

 

RA_CUSTOMER_TRX_LINES_ALL, The RA_CUSTOMER_TRX_LINES_ALL table stores information about invoice, debit memo, credit memo, bills receivable, and commitment lines (LINE, FREIGHT and TAX).

 

RA_CUST_TRX_LINE_SALESREPS_ALL, The RA_CUST_TRX_LINE_SALESREPS_ALL table stores sales credit assignments for invoice lines. If Receivables bases your invoice distributions on sales credits, a mapping exists between the sales credit assignments in this table with the RA_CUST_TRX_LINE_GL_DIST_ALL table.

 

The RA_CUST_TRX_LINE_GL_DIST_ALL table stores the accounting records for revenue, unearned revenue, and unbilled receivables for each invoice or credit memo line. Oracle Receivables creates one row for each accounting distribution, and at least one accounting distribution must exist for each invoice or credit memo line. Each row in this table includes the General Ledger account and the amount of the accounting entry.

 

The RA_CUST_TRX_LINE_SALESREPS_ALL table stores sales credit assignments for invoice lines. If Receivables bases your invoice distributions on sales credits, a mapping exists between the sales credit assignments in this table with the RA_CUST_TRX_LINE_GL_DIST_ALL table.

 

4. What are the tables In which Receipt information is stored?

A)

AR_PAYMENT_SCHEDULES_ALL, The AR_PAYMENT_SCHEDULES_ALL table stores all transactions except adjustments and miscellaneous cash receipts. Oracle Receivables updates this table when activity occurs against an invoice, debit memo, chargeback, credit memo, on-account credit, or receipt.

Transaction classes determine if a transaction relates to either the RA_CUSTOMER_TRX_ALL table or the AR_CASH_RECEIPTS_ALL table. Using the CUSTOMER_TRX_ID foreign key column, the AR_PAYMENT_SCHEDULES_ALL table joins to the RA_CUSTOMER_TRX_ALL table for non-payment transaction entries, such as the creation of credit memos, debit memos, invoices, chargebacks, or deposits. Using the CASH_RECEIPT_ID foreign key column, the AR_PAYMENT_SCHEDULES_ALL table joins to the AR_CASH_RECEIPTS_ALL table for invoice-related payment transactions.

 

AR_CASH_RECEIPTS_ALL, The AR_CASH_RECEIPTS_ALL table stores one record for each receipt that you enter. Oracle Receivables concurrently creates records in the AR_CASH_RECEIPT_HISTORY_ALL, AR_PAYMENT_SCHEDULES_ALL, and AR_RECEIVABLE_APPLICATIONS_ALL tables for invoice-related receipts. For receipts that are not related to invoices, such as miscellaneous receipts, Receivables creates records in the AR_MISC_CASH_DISTRIBUTIONS_ALL table instead of the AR_RECEIVABLE_APPLICATIONS_ALL table.

 

AR_RECEIVABLE_APPLICATIONS_ALL, The AR_CASH_RECEIPTS_ALL table stores one record for each receipt that you enter. Oracle Receivables concurrently creates records in the AR_CASH_RECEIPT_HISTORY_ALL, AR_PAYMENT_SCHEDULES_ALL, and AR_RECEIVABLE_APPLICATIONS_ALL tables for invoice-related receipts. For receipts that are not related to invoices, such as miscellaneous receipts, Receivables creates records in the AR_MISC_CASH_DISTRIBUTIONS_ALL table instead of the AR_RECEIVABLE_APPLICATIONS_ALL table. Cash receipts proceed through the confirmation, remittance, and clearance steps. Each step creates rows in the AR_CASH_RECEIPT_HISTORY table.

 

5. What are the tables in which Accounts information is stored?

RA_CUST_TRX_LINE_GL_DIST_ALL

 

6. What are the different statuses for Receipts?

A) Unidentified – Lack of Customer Information

Unapplied – Lack of Transaction/Invoice specific information (Ex- Invoice Number)

Applied – When all the required information is provided.

On-Account, Non-Sufficient Funds, Stop Payment, and Reversed receipt.

 

7. What Customization that you have done for Autolockbox?

 

8. What is Autolockbox?

A) Auto lockbox is a service that commercial banks offer corporate customers to enable them to out source their account receivable payment processing. Auto lockbox can also be used to transfer receivables from previous accounting systems into current receivables. It eliminates manual data entry by automatically processing receipts that are sent directly to banks. It involves three steps

  • Import (Formats data from bank file and populates the Interface Table),
  • Validation(Validates the data and then Populates data into Interim Tables),
  • Post Quick Cash(Applies Receipts and updates Balances in BaseTables).

 

9. What is Transmission Format?

A) Transmission Format specifies how data in the lockbox bank file should be organized such that it can be successfully imported into receivables interface tables. Example, Default, Convert, Cross Currency, Zengen are some of the standard formats provided by oracle.

 

10. What is Auto Invoice?

A) Autoinvoice is a tool used to import and validate transaction data from other financial systems and create invoices, debit-memos, credit memos, and on account credits in Oracle receivables. Using Custom Feeder programs transaction data is imported into the autoinvoice interface tables.

Autoinvoice interface program then selects data from interface tables and creates transactions in receivables (Populates receivable base tables) . Transactions with invalid information are rejected by receivables and are stored in RA_INTERFACE_ERRORS_ALL interface table.

 

11. What are the Mandatory Interface Tables in Auto Invoice?

RA_INTERFACE_LINES_ALL, RA_INTERFACE_DISTRIBUTIONS_ALL

RA_INTERFACE_SALESCREDITS_ALL.

 

12. What are the Set up required for Custom Conversion, Autolockbox and Auto Invoice?

A) Autoinvoice program Needs AutoAccounting to be defined prior to its execution.

 

13. What is AutoAccounting?

A) By defining AutoAccounting we specify how the receivables should determine the general ledger accounts for transactions manually entered or imported using Autoinvoice. Receivables automatically creates default accounts(Accounting Flex field values) for revenue, tax, freight, financial charge, unbilled receivable, and unearned revenue accounts using the AutoAccounting information.

 

14. What are Autocash rules?

A) Autocash rules are used to determine how to apply the receipts to the customers outstanding debit items. Autocash Rule Sets are used to determine the sequence of Autocash rules that Post Quickcash uses to update the customers account balances.

 

15. What are Grouping Rules? (Used by Autoinvoice)

A) Grouping rules specify the attributes that must be identical for lines to appear on the same transaction. After the grouping rules are defined autoinvoice uses them to group revenues and credit transactions into invoices debit memos, and credit memos.

 

16. What are Line Ordering Rules? (Used by Autoinvoice)

A) Line ordering rules are used to order transaction lines when grouping the transactions into invoices, debit memos and credit memos by autoinvoice program. For instance if transactions are being imported from oracle order management , and an invoice line ordering rule for sales_order _line is created then the invoice lists the lines in the same order of lines in sales order.

 

17. In which table you can see the amount due of a customer?

A) AR_PAYMENT_SCHEDULES_ALL

 

18. How do you tie Credit Memo to the Invoice?

At table level, In RA_CUSTOMER_TRX_ALL, If you entered a credit memo, the PREVIOUS_CUSTOMER_TRX_ID column stores the customer transaction ID of the invoice that you credited. In the case of on-account credits, which are not related to any invoice when the credits are created, the PREVIOUS_CUSTOMER_TRX_ID column is null.

 

19. What are the available Key Flex Fields in Oracle Receivables?

A) Sales Tax Location Flex field, It’s used for sales tax calculations.

Territory Flex field is used for capturing address information.

 

20. What are Transaction types? Types of Transactions in AR?

A) Transaction types are used to define accounting for different transactions such as Debit Memo, Credit Memo, On-Account Credits, Charge Backs, Commitments and invoices.

 

21. What is AutoAssociating?

 

22. What are the issues you faced in AutoInvoice and Autolockbox?

 

 

AP:-

1)       What are the different types of Interfaces?

Ans Refer Laxman Vendor import notes in scanned documents

a) Vendor conversion / Import

A vendor is any company or person that we buy goods or services from.

Interface table --- we need to create our own custom interface table.

Base tables

PO_VENDORS (Segment1-Vendor number is unique)

PO_VENDOR_CONTACTS

PO_VENDOR_SITES_ALL

b)      Legacy Invoice

Interface Tables

AP_INVOICE _INTERFACE is the header info

AP_INVOICES_LINES_INTERFACE is the lines table.

 

RUN PAYABLES INVOICE IMPORT CONCURRENT PROGRAM

Base Tables

AP_INVOICE_ALL is also the header information is stored.

AP_INVOICES_DISTRIBUTIONS_ALL is the lines information table.

AP_PAYMENTS_SCHEDULES_ALL (AMOUNT_REMAINING stores balance amount to be paid)

AP_INVOICE_PAYMENTS_ALL (INVOICE_ID)

AP_CHECKS_ALL (CHECK_ID)

 

AP_INTERFACE_REJECTIONS (REJECT_LOOKUP_CODE stores the error occurred during the invoice import ex: account required, invalid supplier site )

 

2)       What is the process of Vendor Conversion?

This is always custom work. There is no predefined program to import the vendors/supplier from legacy system to oracle. We need write the SQL*Loader file to custom interface table and write pl/sql programs to hit the base tables directly into the po_vendors table,po_vendor_sites_table and po_vendors_contacts.

 

3)       In which table and column Vendor Number stores?

In PO_VENDORS table SEGMENT1 stores the vendor number. User doesn’t know about the (vendor id) ids only the developer knows them.

 

4)       After conversions how do you get the Next Vendor column?

We need to resync the PO_UNIQUE_IDENTIFIER_CONTROL (field called CURRENT_MAX_UNIQUE_IDENTIFIER) with the sequence called PO_VENDORS_S. This resync was run after inserting into vendors and updating the info in the sites table. The current max unique identifier should be equal to the nextval in the po_vendors_s sequence.

 

5)       What are the setups required for vendor conversions?

Before loading from the legacy system to base table we need to define

Supplier type, Payment type, Payment terms, Payment group.

 

6)       Which module is the owner for vendor (supplier) tables?

Ans--- Purchasing module is the owner of the supplier table.

 

7)       What is the process of creating an Invoices and transferring it to GL?

1.       create batch

2.       create invoice

3.       create distribution

4.       validate the invoice

5.       actions -à approve

6.       if individual create accounting click ok

7.       If batch go to batch create accounting.

8.       Create accounting hits Payable Accounting(Transfer) ??Program which will create accounting.

9.       Run Transfer to GL Concurrent Program

10.   Journal Import

11.   Post journals

12.   Hits balances.

 

8)       How do u Transfer from AP to GL?

Ans---“Payables transfer to GL program” is used to transfer from AP to GL.

 

9)       What are the Interface and base Tables for payables/ open invoice ?

Ans---

 

10)   How many types of Transactions are there in AP?

1.       Standard Invoice : The amount is g

2.       Debit memo (increases balances owed to supplier)

1.       Raised by organization

2.       Raised by Supplier.

3.       Credit memo

4.       Prepayment

5.       Mixed Invoices both debit & credit

6.       Expense Report employees

7.       Quick Match

8.       P.O.Default

 

11)   Tell me about PO cycle( Procure To Pay )?

1.       Requisition

2.       Manager

3.       Approval

4.       Request For Quote (RFQ)

5.       Quotation

6.       Quote Analysis (Track/check record)

7.       Issue Purchase Order (PO)

8.       Goods Receipt Note(GRN)

9.       Invoice

10.   Transfer To GL (Payables transfer to GL program)

11.   Journal Import

12.   GL Balances

 

12)   How many types of purchase order types/agreements are there?

a) Standard Purchase Order

b) Planned PO : A planned purchase order is a long-term agreement committing to buy it

items or services from a single source. You must specify tentative delivery schedules and all details for goods or services that you want to buy, including charge account, quantities and estimated cost.

EX: Buying goods for Christmas from a specific dealer.

c) Contract PO : You create contract purchase agreement with your supplier to agree on specific terms and conditions without indicating the goods and services that you will be purchasing i.e. for $ amount you must supply this much quantity. You can later issue standard PO referencing your contracts and you can encumber these purchase orders if you use encumbrance accounting.

d) Blanket PO : You create blanket purchase agreements when you know the detail of goods or services you plan to buy from a specific supplier in a period , but you do not yet know the detail of your delivery schedules. You can use blanket purchase agreements to specify negotiated prices for your items before actually purchasing them.

A Blanket Purchase Agreement is a sort of contract between the you and ur supplier about the price at which you will purchase the items from the supplier in future. Here you enter the price of the item not the quantity of the items. When you create the release you enter the quantity of the items. The price is not updatable in the release. The quantity * price makes the Released Amount. Now suppose your contract with your supplier is such that you can only purchase the items worth a fixed amount against the contract.

 

13)   What is 2-way, 3-way, 4-way matching?

2-way matching: 2-way matching verifies that Purchase order and invoice quantities must match within your tolerances as follows:

Quantity billed <= Quantity Ordered

Invoice price <= Purchase order price

(<= sign is used because of tolerances)

Often used for services where no receiver is generated.

3-way matching: 3-way matching verifies that the receipt and invoice information match with the quantity tolerances defined:

Quantity billed <= Quantity received

4-way matching: 4-way matching verifies that acceptance documents and invoice information match within the quantity tolerances defined:

Quantity billed <= Quantity accepted.

(Acceptance is done at the time of Inspecting goods).

Whether a PO shipment has 2-way, 3-way or 4-way matching can be setup in the Shipment Details zone of the Enter PO form (character)

Receipt required Inspection required Matching

Yes Yes 4-way

Yes No 3-way

No No 2-way

 

ORDER MANAGEMENT:

 

1)       What are the Base Tables and Interface Tables for 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.

 

2)       What are the Base Tables and Interface Tables for 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.

3)       What is Order Import and What are the Setup's involved in Order Import?

A)      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.

B)      Setups:

·         Setup every aspect of order management that we want to use with imported orders, including customers, pricing, items, and bills.

·         Define and enable the order import sources using the order import source window.

 

4)       Explain the Order Cycle?

i)                     Enter the Sales Order

ii)                   Book the Sales Order(SO will not be processed until booked(Inventory confirmation))

iii)                  Release sales order(Pickslip Report is generated and Deliveries are created)

(Deliveries – details about the delivery. Belongs to shipping module (wsh_deliveries, wsh_new_deliveries, wsh_delivery_assignments etc) they explain how many items are being shipped and such details.

iv)                  Transaction Move Order (creates reservations determines the source and transfers the inventory into the staging areas)

v)                    Launch Pick Release (

vi)                  Ship Confirm (Shipping Documents(Pickslip report, Performa Invoice, Shipping Lables))

vii)                  

5) Explain the Order to Cash Flow?

         I.      Enter the Sales Order

       II.      Book the Sales Order(SO will not be processed until booked(Inventory confirmation))

      III.      Release sales order(Pickslip Report is generated and Deliveries are created)

(Deliveries – details about the delivery. Belongs to shipping module (wsh_deliveries, wsh_new_deliveries, wsh_delivery_assignments etc) they explain how many items are being shipped and such details.

    IV.      Transaction Move Order (Selects the serial number of the product which has to be moved/ shipped)

      V.      Launch Pick Release

    VI.      Ship Confirm (Shipping Documents(Pickslip report, Performa Invoice, Shipping Lables))

   VII.      AutoInvoice (Creation of Invoice in Accounts Receivable Module)

VIII.      Autolockbox ( Appling Receipts to Invoices In AR)

     IX.      Transfer to General Ledger ( Populates GL interface tables)

       X.      Journal Import ( Populates GL base tables)

     XI.      Posting ( Account Balances Updated).

 

5. What are the Process Constraints?

A. 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.

 

6. What are Validation Templates?

A) Validation Templates are used to define the validation conditions in process constraints. A validation template names a conditions and defines the semantic of how to validate that condition. These are used in processing constraints framework to specify the constraining conditions for a given constraint. These conditions are based on

·         Where the entity is in its work flow.

·         The state of attributes on an entity.

·         Any other validation condition that cannot be modeled using the above condition.

7. What are different types of Holds?

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

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

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

 

8. What is Document Sequence?

A) Document sequence is defined to automatically generate numbers for your orders or returns as you enter them. Single / multiple document sequences can be defined for different order types.

Document sequences can be defined as three types Automatic (Does not ensure that the numbers are contiguous), Gapless (Ensures that the numbering is contiguous), Manual Numbering. Order Management validates that the number specified is unique for order type.

 

9. What are Defaulting Rules?

A) 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

 

10. When an order cannot be cancelled?

A) 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.

 

11. When an order cannot be deleted?

A) you cannot delete an order line until there is a need for recording reason.

 

12. What is order type?

A) 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.

 

13. What are primary and secondary price lists?

A) Every order is associated to a price list as each item on the order ought to have a price. A price list is 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.

 

14. What is pick slip? Types?

A) It is an internal shipping document that pickers use to locate items to ship for an order.

·         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.

 

15. What is packing slip?

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

 

16. What are picking rules?

A) 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.

 

17. Where do you find the order status column?

A) In the base tables, Order Status is maintained both at the header and line level. The field that maintains the Order status is FLOW_STATUS_CODE. This field is available in both the OE_ORDER_HEADERS_ALL and OE_ORDER_LINES_ALL.

 

18. When the order import program is run it validates and the errors occurred can be seen in?

A) Responsibility: Order Management Super User

Navigation: Order, Returns > Import Orders > Corrections

 

 

INVENTORY:

 

1.       What is item import? How is it done?

A)                                          The process of converting inventory items from another inventory system, migrating assembly and component items from a legacy manufacturing system, converting purchase items from a custom purchasing system and importing new items from a product data management package into Oracle Inventory. This import mechanism is achieved through a concurrent program called Open Item Interface.

Custom programs are executed prior to item interface and this gets data from the external systems into the interface tables such as MTL_SYSTEM_ITEMS _INTERFACE and MTL_ITEM_REVISIONS_INTERFACE. Item Interface program is then run which actually imports the items and revision information from the above mentioned interface face tables into the base tables such as MTL_SYSTEM_ITEMS_B, MTL_ITEM_REVISIONS. Item Interface assigns defaults and validates the data to ensure data integrity before feeding data into base tables.

 

2. What are Interface and Base Tables?

Interface Tables : MTL_SYSTEM_ITEMS_INTERFACE

MTL_ITEM_REVISIONS_INTERFACE (Oracle Defaults)

MTL_ITEM_CATEGORIES_INTERFACE (Oracle has Provided certain default categories, if not specified)

MTL_INTERFACE_ERRORS

Base Tables : MTL_SYSTEM_ITEMS_B (Segment 1 stores Model # of Item)

MTL_ITEM_ATTRIBUTES, MTL_ITEM_CATEGORIES, MTL_ITEM_LOCATIONS, MTL_ITEM_REVISIONS

MTL_ITEM_STATUS (Status Active/Engineer etc)

MTL_ITEM_SUB_INVENTORIES

 

3. What are Item Attributes?

A) Attributes are the specific characteristics associated to every item, namely order cost, item status, revision control, COGS account etc.

 

4. What are Templates?

Templates are the defined set of attributes that can be used over and over to create similar items. Templates initial definition of items easier. Oracle has provided certain predefined templates such as (ATO MODEL, ATO OPTION CLASS, and FINISHED GOOD etc). Templates can also be User defined .

 

5) What are Status Codes?

A) Statuses are used to provide default values to certain item attributes to control the functionality of an item. Statuses typically default 8 item attributes namely, BOM allowed, build in WIP, Customer orders enabled, internal orders enabled, invoice enabled, transactable, purchasable, stockable.

Different status types include Active, Inactive, Engineer, obsolete, Phase-out, Prototype, OPM.

 

6. What are Categories and Category Sets?

A) Category is a code used to group items with similar characteristics such as plastics, metals or glass items etc.

A subset of categories grouped together is termed as a Category set. Typical category sets include purchasing, materials, costing and planning.

7. What is Pick Release?

A)

 

8. What are Lot Numbers and Serial Numbers?

A) Lot number is a number that identifies a specific batch of items.

Serial Number is a number assigned to each unit of an item and used to track the item.

 

9. What are Locators?

A) A locator is a physical area with in the sub inventory where you store material such as a row, aisle, shelf, or a bin etc.

10.   What is a Sub Inventory?

It is a subdivision of an organization representing a physical area or a logical grouping of items such as store room or a receiving dock.

 

11.   What are the flexfields in Inventory module?

A) Item Key Flexfield, Category Key Flexfield.

 

 

 

12. While importing items from the legacy system through items interface what profile options do u set.

 

There are two profile options that we need to check, before running the Item Import. They are

i) PRIMARY_UNIT_OF_MEASURE from INV: Define Primary Unit of Measure

ii) INVENTORY_ITEM_STATUS_CODE from INV: Define Item Status

 

 

PL/SQL

 

1.       What’s a PL/SQL table? Its purpose and Advantages?

A.      A PL/SQL table is one dimensional, indexed, unbounded sparsed collection of homogeneous

Data.

PLSQL tables are used to move data into and out of the database and between client side applications and stored sub-programs. They have attributes such as exits, prior, first, last, delete ,next . These attributes make PLSQL tables easier to use and applications easier to maintain.

Advantages:

·         PL\SQL tables give you the ability to hold multiple values in a structure in memory so that a PL\SQL block does not have to go to the database every time it needs to retrieve one of these values - it can retrieve it directly from the PL\SQL table in memory.

·         Global temporary tables act as performance enhancers when compared to standard tables as they greatly reduce the disk IO.

·         They also offer the ease-of-use of standard tables, since standard SQL can be used with them; no special array-processing syntax is required.

 

2. What is a Cursor? How many types of Cursor are there?

A) Cursor is an identifier/name to a work area that we can interact with to access its information. A cursor points to the current row in the result set fetched. There are three types of cursors. They are

·         Implicit cursors – created automatically by PL/SQL for all SQL-DML statements such as

Insert Update, delete and Select

·         Explicit cursors – Created explicitly. They create a storage area where the set of rows

Returned by a query are placed.

·         Dynamic Cursors – Ref Cursors( used for the runtime modification of the select querry).

Declaring the cursor, Opening the cursor, Fetching data , Closing the cursor(Releasing the work area) are the steps involved when using explicit cursors.

 

3. What is the difference between Function and Procedure?

·         Procedure is a sub program written to perform a set of actions and returns multiple values

Using out parameters or return no value at all.

·         Function is a subprogram written to perform certain computations and return a single value.

 

4.       What are the modes for passing parameters to Oracle?

A)      There are three modes for passing parameters to subprograms

·         IN - An In-parameter lets you pass values to the subprogram being called. In the subprogram it acts like a constant and cannot be assigned a value.

·         OUT – An out-parameter lets you return values to the caller of the subprogram. It acts like an initialized variable its value cannot be assigned to another variable or to itself.

·         INOUT – An in-out parameter lets you pass initial values to the subprogram being called and returns updated values to the caller.

 

5.       What is the difference between Truncate and Delete Statement?

·         Truncate – Data truncated by using truncate statement is lost permanently and cannot be retrieved even by rollback. Truncate command does not use rollback segment during its execution, hence it is fast.

·         Delete – Data deleted by using the delete statement can be retrieved back by Rollback. Delete statement does not free up the table object allocated space.

 

6.       What are Exceptions? How many types of Exceptions are there?

A)      Exceptions are conditions that cause the termination of a block. There are two types of exceptions

·         Pre-Defined – Predefined by PL/SQL and are associated with specific error codes.

·         User-Defined – Declared by the users and are rose on deliberate request. (Breaking a condition etc.)

Exception handlers are used to handle the exceptions that are raised. They prevent exceptions from propagating out of the block and define actions to be performed when exception is raised.

 

7.       What is a Pragma Exception_Init? Explain its usage?

A) Pragma Exception_Init is used to handle undefined exceptions. It issues a directive to the compiler asking it to associate an exception to the oracle error. There by displaying a specific error message pertaining to the error occurred.

Pragma Exception_Init (exception_name, oracle_error_name).

 

8. What is a Raise and Raise Application Error?

A)      Raise statement is used to raise a user defined exception.

B)      A raise application error is a procedure belonging to dbms_standard package. It allows to display a user defined error message from a stored subprogram.

 

8.       What is the difference between Package, Procedure and Functions?

·   A package is a database objects that logically groups related PL/SQL types, objects, and

Subprograms.

·   Procedure is a sub program written to perform a set of actions and can return multiple values.

·         Function is a subprogram written to perform certain computations and return a single value.

Unlike subprograms packages cannot be called, passed parameters or nested.

 

9.       How do you make a Function and Procedure as a Private?

A) Functions and Procedures can be made private to a package by not mentioning their declaration in the package specification and by just mentioning them in the package body.

 

10.   What is an Anonymous block?

A) Anonymous Block is a block of instructions in PL/SQL and SQL which is not saved under a name as an object in database schema. It is also not compiled and saved in server storage, so it needs to be parsed and executed each time it is run. However, this simple form of program can use variables, can have flow of control logic, can return query results into variables and can prompt the user for input using the SQL*Plus '&' feature as any stored procedure.

 

12. What are the two basic parameters that we have to pass while registering PL/SQL procedure?

A) Error code and Error Buffer.

 

11.   How do you kick a Concurrent program from PL/SQL?

A) Using FND_SUBMIT.SUBMIT_REQUEST.

 

12.   How to display messages in Log file and Output file?

A) Using FND_FILE.PUT_LINE

 

13.   What is a Trigger ? How many types of Triggers are there?

A) Trigger is a procedure that gets implicitly executed when an insert/update/delete statement is issued against an associated table. Triggers can only be defined on tables not on views, how ever triggers on the base table of a view are fired if an insert/update/delete statement is issued against a view.

There are two types of triggers, Statement level trigger and Row level trigger.

Insert

After / For each row

Trigger is fired / Update /

Before / For Each statement

Delete

 

14.   Can we use Commit in a Database Trigger, if ‘No’ then why?

A) No. Committing in a trigger will violate the integrity of the transaction.

 

15.   What is Commit, Rollback and Save point?

Commit – Makes changes to the current transaction permanent. It Erases the savepoints and releases the transaction locks.

Savepoint –Savepoints allow to arbitrarily hold work at any point of time with option of later committing. They are used to divide transactions into smaller portions.

Rollback – This statement is used to undo work.

 

16.   What is the difference between DDL, DML and DCL structures?

A) DDL statements are used for defining data. Ex: Create, Alter, Drop.

DML statements are used for manipulating data. Ex: Insert, update, truncate, delete, select.

DCL statements are used for to control the access of data. Ex; Grant, Revoke.

 

17.   How can u create a table in PL/SQL procedure?

A) By using execute immediate statement we can create a table in PLSQL.

Begin

Execute immediate ‘create table amit as select * from emp’;

End;

All DDL,DML,DCL commands can be performed by using this command.

 

18.   How do we Tune the Queries?

A) Queries can be tuned by Checking the logic (table joins), by creating Indexes on objects in the where clause, by avoiding full table scans. Finally use the trace utility to generate the trace file, use the TK-Prof utility to generate a statistical a nalysis about the query using which appropriate actions can be taken.

 

21. What is Explain Plan? How do u use Explain Plan in TOAD?

A) It is a utility provided by toad that gives the statistics about the performance of the query. It gives information such as number of full table scans occurred, cost, and usage of indexes

 

19.   What is a TK-PROF and its usage?

A) Tk-Prof is a utility that reads the trace files and generates more readable data that gives the statistics about the performance of the query on a line to line basis.

 

20.   What is Optimization? How many types of Optimization are there?

A) Rule based Optimization and Cost Based Optimization.

 

21.   What is the default optimization chosen by Oracle?

A) Cost based Optimization.

 

22.   What is the difference between When no data Found and cursor attribute % DATA FOUND?

A) When no Data Found is a predefined internal exception in PLSQL. Where as % Data found is a cursor attribute that returns YES when zero rows are retrieved and returns NO when at least one row is retrieved.

 

23.   What is the difference between the snapshot and synonym?

·         A snapshot refers to read-only copies of a master table or tables located on a remote node. A snapshot can be queried, but not updated; only the master table can be updated. A snapshot is periodically refreshed to reflect changes made to the master table. In this sense, a snapshot is really a view with periodicity.

·         A synonym is an alias for table, view, sequence or program unit. They are of two types private and public.

 

25. What is the difference between data types char and varchar?

A) Char reserves the number of memory locations mentioned in the variable declarations, even though not used (it can store a maximum of 255 bytes). Where as Varchar does not reserve any memory locations when the variable is declared, it stores the values only after they are assigned (it can store a maximum of 32767 bytes).

 

26. How can we place index to a second column in the table i.e. there is already one index and I want to place another index for the column on the table?

 

27. Items are imported from the legacy system using the item import interface using the SRS. How are items imported using the UNIX /PLSQL commands with out using SRS?

A) From the operating system, use CONCSUB to submit a concurrent program. It's an easiest way to test a concurrent program.

 

Normally, CONCSUB submits a concurrent request and returns control to the OS prompt/shell script without waiting for the request to complete. The CONCSUB WAIT parameter can be used to make CONCSUB wait until the request has completed before returning control to the OS prompt/shell script

 

By using the WAIT token, the utility checks the request status every 60 seconds and returns to the operating system prompt upon completion of the request. concurrent manager does not abort, shut down, or start up until the concurrent request completes. If your concurrent program is compatible with itself, we can check it for data integrity and deadlocks by submitting it many times so that it runs concurrently with itself.

 

Syntax: CONCSUB <ORACLE ID> <Responsibility Application Short Name> <Responsibility Name> <User Name> [WAIT=<Wait Flag] CONCURRENT <Concurrent Program Application Short Name> <Concurrent Program Name> [START=<Requested Start Date>] [REPEAT_DAYS=<Repeat Interval>] [REPEAT_END=<Request Resubmission End Date>] <Concurrent Program Arguments ...>

To pass null parameters to CONCSUB, use '""' without spaces for each null parameter.

In words: single quote double quote double quote single quote

Following is an example of CONCSUB syntax with null parameters:

CONCSUB oe/oe OE 'Order Entry Super User' JWALSH CONCURRENT XOE XOEPACK 4 3 '""' 3

 

B) To Invoke a Concurrent Program using PL/SQL:

i) Just insert a row in FND_CONCURRENT_REQUESTS with the apropriate parameters and commit.

ii) Invoke the SUBMIT_REQUEST procedure in FND_REQUEST package.

FND_REQUEST.SUBMIT_REQUEST( 'AR', 'RAXMTR', '', '', FALSE, 'Autoinvoice Master Program', sc_time, FALSE, 1, 1020, 'VRP', '01-JAN-00', chr(0), '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '');

 

28. What is pipelining?

29) How can the duplicate records be from the table?

SQL> create table table_name2 as select distinct * from table_name1;
SQL> drop table_name1;
SQL> rename table_name2 to table_name1;


30) What is the significance of _all tables?

A) _all tables are multi-org tables which are associated with the company as a whole. Multiple Organizations is enabled in Oracle

Applications by partitioning some database tables by the Operating Unit. Other tables are shared across Operating Units (and therefore across set of books). Examples of Applications with partitioned tables are Oracle Payables, Oracle Purchasing, Oracle Receivables, Oracle Projects, Oracle Sales & Marketing etc. The name of each corresponding partitioned table is the view name appended by '_ALL'

 

31)What are mutating tables? And what is mutating error?

A) A mutating table is a table that is currently being modified by an UPDATE, DELETE, or INSERT statement, or it is a table that might need to be updated by the effects of a declarative DELETE CASCADE referential integrity constraint.

A mutating error occurs when a trigger which fires when updation/deletion/insertion is done on a table A performs insertion/updation/deletion on the same table A. This error results in an infinite loop which is termed as a mutating error.

 

32) What is difference between oracle 7 and oracle 8?

A) Oracle 7 is a simple RDBMS, where as Oracle 8 is ORDBMS i.e., RDBMS with Object Support.

The main add-ons in version 8 are…

·         Abstract Data types

·         Varrays

·         PL/SQL Tables

·         Nested Tables

·         Partitioned Tables

 

33.What is Data cleaning and testing.

 

A) Data Cleaning: Transformation of data in its current state to a pre-defined, standardized format using packaged software or program modules.

 

Data Testing: The agreed upon conversion deliverables should be approved by the client representatives who are responsible for the success of the conversion. In addition, three levels of conversion testing have been identified and described in the prepare conversion test plans deliverables.

Eg: for Summary Balances in GL we set Test Criteria as Record Counts, Hash Totals, Balances, Journal Debit and Credit.

 

34. While registering a report and a pl/sql block we pass some parameters, for any pl/sql block we pass 2 additional parameters. Can u list them?

A) It requires two IN parameters for a PL/SQL procedure that's registered as a concurrent program in Apps. They are

1. Errcode IN VARCHAR2

2. Errbuff IN VARCHAR2

 

35) what is a trace file?

A) when ever an internal error is detected by a process in oracle it dumps the information about the error into a trace file.

Alter session set sql_trace=TRUE

36 ) When do you use Ref Cursors?

We base a query on a ref cursor when you want to:

 

i) More easily administer SQL

ii) Avoid the use of lexical parameters in your reports

iii) Share data sources with other applications, such as Form Builder

iv) Increase control and security

v) Encapsulate logic within a subprogram

 

 

Reports:

 

2.       What is a Lexical Parameter?

Lexical parameters are used to substitute multiple values at runtime and are identified by a preceding ‘&’. Lexicals can consist of as little a one line where clause to an entire select statement

Lexical Parameters are used to execute query dynamically.

Example: An example of a lexical parameter usage in a select statement is as follows

Select * from emp, deptno

&where.

In the properties of the 'where' user parameter, make sure that the data type of the 'where' user parameter is set as character. If you know the maximum length that your where clause is going be, You can set the width of the where parameter to be slightly greater than that number. Otherwise, set it to some number like 100.

If your lexical parameter ('where') width is not enough to hold the where condition assigned to it, you will receive one of the following errors depending on your Reports version.

REP-0450 - Unhandled exception,

and ORA-6502- PL/SQL numeric or value error.

or

REP-1401 - Fatal PL/SQL error in after trigger

and ORA-6502-PL/SQL numeric or value error.

 

3.       What is a Bind Variable?

Bind parameters are used to substitute single value at runtime for evaluation and are identified by a preceding ‘:’. An example of a bind parameter in a select statement is provided below, where :P_EMP is the bind parameter reference.

Select ename,empno

From emp

Where empno= :P_EMP

 

These are used as tokens while registering concurrent program.

 

4.                   Difference between lexical and bind variable?

Bind references are used to replace a single value in SQL or PL/SQL. Specifically, bind references may be used to replace expressions in SELECT, WHERE, GROUP BY, ORDER BY, HAVING, CONNECT BY, and START WITH clauses of queries. Binds may not be referenced in the FROM clause. An example is:

SELECT ORDID, TOTAL

FROM ORD

WHERE CUSTID = :CUST

Lexical references are placeholders for text that you embed in a SELECT statement. You can use lexical references to replace the clauses appearing after SELECT, FROM, WHERE, GROUP BY , ORDER BY , HAVING, CONNECT BY, and START WITH. You cannot make lexical references in PL/SQL. Before you reference a lexical parameter in a query you must have predefined the parameter and given it an initial value. An example is:

 

SELECT ORDID, TOTAL

FROM &ATABLE

 

5.       How many types of Triggers are there and what are they? Tell their sequence of execution.

Report triggers execute PL/SQL functions at specific times during the execution and formatting of your report. Using the conditional processing capabilities of PL/SQL for these triggers, you can do things such as customize the formatting of your report, perform initialization tasks, and access the database. To create or modify a report trigger, use Report Triggers in the Object Navigator. Report triggers must explicitly return TRUE or FALSE. Report Builder has five global report triggers (you cannot create new global report triggers):

 

Before Parameter Form trigger

After Parameter Form trigger

Before Report trigger

Between Pages trigger

After Report trigger

Before Report trigger and After Report trigger should be declared compulsory. In the Before Report trigger we declare the srw.user_exit(‘ fnd srwinit’) user exist and in the After Report trigger srw.user_exit (‘fnd srwexit’)

The sequence/order of events when a report is executed is as follows:

Before Parameter Form trigger is fired.
1 Runtime Parameter Form appears (if not suppressed).

2 After Parameter Form trigger is fired (unless the user cancels from the Runtime Parameter
Form).

3 Report is "compiled."

4 Queries are parsed.

5 Before Report trigger is fired.

6 SET TRANSACTION READONLY is executed (if specified via the READONLY argument
or setting).

7 The report is executed and the Between Pages trigger fires for each page except the last one.
(Note that data can be fetched at any time while the report is being formatted.) COMMITs
can occur during this time due to any of the following--user exit with DDL, SRW.DO_SQL
with DDL, or if ONFAILURE=COMMIT, and the report fails.

8 COMMIT is executed (if READONLY is specified) to end the transaction.

9 After Report trigger is fired.

10 COMMIT/ROLLBACK/NOACTION is executed based on what was specified via the
ONSUCCESS argument or setting.


Cautions
=========
1. In steps 4 through 9, avoid DDL statements that would modify the tables on which the
report is based. Step 3 takes a snapshot of the tables and the snapshot must remain valid
throughout the execution of the report. In steps 7 through 9, avoid DML statements that
would modify the contents of the tables on which the report is based. Queries may be
executed in any order, which makes DML statements unreliable (unless performed on tables
not used by the report).

2. If you specify READONLY, you should avoid DDL altogether. When you execute a DDL
statement (e.g., via SRW.DO_SQL or a user exit), a COMMIT is automatically issued. If you
are using READONLY, this will prematurely end the transaction begun by SET
TRANSACTION READONLY.


Report trigger restrictions
=============================
1. If you are sending your report output to the Runtime Previewer or Live Previewer, you

should note that some or all of the report triggers may be fired before you see the report
output. For example, suppose that you use SRW.MESSAGE to issue a message in the
Between Pages trigger when a condition is met. If there are forward references in the report
(e.g., a total number of pages displayed before the last page), Report Builder may have to
format ahead to compute the forward references. Hence, even though you have not yet seen
a page, it may already have been formatted and the trigger fired.

2. In report triggers, you can use the values of report-level columns and parameters. For
example, you might need to use the value of a parameter called COUNT1 in a condition
(e.g., IF :COUNT1 = 10). Note, though, that you cannot reference any page-dependent columns (i.e., a column with a Reset At of Page) or columns that rely on page-dependent columns.

3. In the Before and After Parameter Form, and Before and After Report triggers, you can set
the values of parameters (e.g., give them a value in an assignment statement, :COUNT1 =
15). In the Before and After Report triggers, you can also set the values of report-level,
placeholder columns.

4. In the Between Pages trigger, you cannot set the values of any data model objects. Note also
that the use of PL/SQL global variables to indirectly set the values of columns or parameters
is not recommended. If you do this, you may get unpredictable results.

5. If you run a report from Report Builder Runtime (i.e., not the command line or
SRW.RUN_REPORT), you should commit database changes you make in the Before
Parameter Form, After Parameter Form, and Validation triggers before the report runs.
When running in this way, these triggers will share the parent process’ database connection.
When the report is actually executed, however, it will establish its own database connection.

6. A lexical reference cannot be used to create additional bind variables after the After
Parameter Form trigger fires. For example, suppose you have a query like the following
(note that the WHERE clause is replaced by a lexical reference):
SELECT ENAME, SAL FROM EMP
&where_clause
If the value of the WHERE_CLAUSE parameter contains a reference to a bind variable, you
must specify the value in the After Parameter Form trigger or earlier. You would get an
error if you supplied the following value for the parameter in the Before Report trigger. If
you supplied this same value in the After Parameter Form trigger, the report would run.
WHERE SAL = :new_bind

 

6.       What is a Format Trigger?

Format triggers are PL/SQL functions executed before the object is formatted. The trigger can be used to dynamically change the formatting attributes of the object. The function must return a Boolean value (TRUE or FALSE). Depending on whether the function returns TRUE or FALSE, the current instance of the object is included or excluded from the report output. You can access format triggers from the Object Navigator, the Property Palette, or the PL/SQL Editor.

A format trigger is a PL/SQL function executed before an object is formatted. A trigger can be used to dynamically change the formatting attributes of the object.

 

7.       What is Anchoring?

It is a feature thru which we can control the position of the boiler plate or data fields in layout.

Anchors are used to determine the vertical and horizontal positioning of a child object relative to its parent. The end of the anchor with a symbol is attached to the parent object.

When you create a default layout, Reports will create some of its own implicit anchors. These are not visible. There may be occasions when you want to create your own explicit anchors to force objects to be positioned together or to conditionally specify when the object prints.

You create an explicit anchor as follows:

1. Select the Anchor tool in the Layout Tool Palette.

2. Click on an edge of the Child object.

3. Move the cursor to the edge of the Parent object and double click to fix the anchor.

You can position the anchor at any distance down the edge of the object. The distance is a percentage of the total length of the edge. You can adjust this position in the anchor property sheet.

Examples of using explicit anchors:

ANCHORING BOILERPLATE TO A FRAME

--------------------------------

You may want to display some boiler plate to the right of, and half way down a vertical list of records.

In this case, you would create an anchor from the child boilerplate to the parent, group or repeating frame. Ensure the parent end point is 50% down the right edge of the frame.

ANCHORING CONDITIONAL OBJECTS

----------------------------

To adjust the position of a layout object if the anchoring parent does not display, you can define your explicit anchor as collapsible either horizontally or vertically. The child layout object then collapses, to suppress additional spacing, if the parent object does not print.

An example of where you might use this would be on Mailing Labels.

Mailing Labels often include optional fields to allow variable number of lines in an address. You may want to suppress the fields that are null, so that the address in the labels does not have gaps between the lines.

For example:

f_name

f_address1

f_address2

f_address3

f_address4

where f_address2 is an optional field.

1. Select f_address2 in the layout editor and go into the property sheet.

2. In Reports V2.5, under the general layout tab, click on the Format Trigger

Edit button to create the following format trigger.

In other versions of Reports, under advanced layout, click on the Format

Trigger to create the following format trigger.

FUNCTION f_address2 RETURN BOOLEAN IS

BEGIN

IF :address2 IS NULL THEN

RETURN (FALSE);

ELSE

RETURN (TRUE);

END IF;

END;

3. Then create an anchor from f_address3 (the field below) upto to f_address2 (the optional field). In the anchor properties place a check in the collapse vertically check box.

4. Create another anchor, this time from f_address4 to f_address3, again setting it to collapse vertically. This process needs to be done for all the fields below the optional field to avoid any unwanted spaces.

 

8.       What is Frame and Repeating Frame?

Frames are used to surround other objects and protect them from being overwritten or pushed by other objects. For example, a frame might be used to surround all objects owned by a group, to surround column headings, or to surround summaries.

Repeating frames are place holders for records. Repeating frames print once for each record of a group and control record-level formatting. Reports will generate one repeating frame for each group when you create a default layout.

Reports will place containers of columns inside of the frames. Each repeating frame retrieves only one row in its fetch cycle for any one repetition. Until it is constrained by another frame, it will repeat itself until the while loop condition can no longer be satisfied.

We give group in data model as source to repeating frame.

 

9.       What are Confined Mode and Flex Mode?

Confined mode allows objects to be locked into the place in the layout. Objects are maintained within their containers.

CONFINE mode is not for a specific object, but applies to all objects on the layout when it is enabled (locked).When it is turned off (unlocked), you are allowed to move an object outside its surrounding frame. When it is turned on (locked), you are unable to move an object outside its surrounding frame. This is to prevent unnecessary 'Frequency Errors'.

Flex mode preserves the layout structure while allowing expanding and shrinking of the layout.

FLEX mode, when enabled, allows surrounding frames to grow as an object is resized or moved. Only one object at a time can be moved either vertically or horizontally, not diagonally.

 

10.   What are User Exits?

You build user exits when you want to pass control from Report Builder to a program you have written, which performs some function, and then returns control to Report Builder.

You can write the following types of user exits:

* ORACLE Precompiler user exits

* OCI (ORACLE Call Interface) user exits

* Non-ORACLE user exits.

User exits can perform the following tasks:

* Perform complex data manipulation

* Pass data to Report Builder from operating system text files

* Manipulate LONG RAW data

* Support PL/SQL blocks

* Control real time devices, such as a printer or a robot

You can use user exits for other tasks, such as mathematical processing.

However, it is recommended that you perform such tasks with PL/SQL within Report Builder itself.

Ex: FNDSRWINIT, FNDSRWEXIT.

 

11.   How do I Register a Custom Report?

               Step 1: Register a concurrent program executable  

Navigate to the Define Executable form (AOL Reference manual pg 9-84)

This determines the type of program being run,ie an Oracle Report. Fill in the executable name, application and execution method. For the Execution File, fill in just the filename. The concurrent manager will look in the appropriate directory under the application's top directory.

For spawned programs, the file must be in the bin directory, for Oracle Reports the rdf file must be in the srw directory.

For PLSQL concurrent programs, put the name of the stored procedure.

Step 2: Define the concurrent program

Navigate to the Define Concurrent Program form (AOL Reference manual pg 9-87)

This form links a concurrent program to the executable you just defined, as well as defines the programs parameters, incompatibilities, and other options.

Enter the concurrent program name, application, short name and description. Check Standard Submission if you want to be able to submit this program from the Standard Report Submission form.

Enter the name of the executable you defined and any report information if necessary. Also define any parameters your program needs here and any incompatibilities.

Step 3: Add the concurrent program to a Report Group

First you will need to find the name of the Report Group to use.

Go to Security->Responsibility and query the responsibility you want to run the program with.

It should show a Report Group name. Query this name in Security->Responsibility->Report

Add your new program to the list of available programs. Now when you go to submit a request with this responsibility, you will be able to submit your custom program.

 

12.   What is a Token?

Token is used to attach a bindvariable to a report parameter while registering the report as concurrent program.

 

13.   What is the use of ‘Send to Back’ and ‘Bring to Front’?

To change the order in which objects are layered on top of each other.

Send to Back to move the object behind all other objects.

Bring to Front to move the object in front of all other objects.

 

14.   If 2nd parameter value is based on 1st parameter then how do u declare it?

Let v2 be the value set definition of 2nd parameter and v1 be the value set definition for the first parameter then

In the value set definition of v2 = value $FLEX$.v1

 

15.   What are Summary Column, Place holder Column, and Formula Column?

A summary column performs a computation on another column's data. Using the Report Wizard or Data Wizard, you can create the following summaries: sum, average, count, minimum, maximum, % total. You can also create a summary column manually in the Data Model view, and use the Property Palette to create the following additional summaries: first, last, standard deviation, variance.

A placeholder is a column for which you set the data type and value in PL/SQL that you define. You can set the value of a placeholder column in the following places. A place holder column stores a value which we can refer in the layout.

A formula column performs a user-defined computation on another column(s) data, including placeholder columns. Formula columns should not be used to set values for parameters.

 

16.   How do u hide fields in a Report?

Ans: Using the Format Trigger we can hide the fields.

/* Suppose that you are building a master/detail report

** and, if no detail records are retrieved for a master

** record, you do not want the boilerplate labels to

** appear. To do this, you first create a summary

** column called MYCOUNT with a Function of Count in

** the source group of the master repeating frame.

** In the format trigger for the group frame that

** surrounds the detail repeating frame and its labels,

** you enter the following:

*/

function my_formtrig return BOOLEAN is

begin

if :mycount = 0 then

return (false);

else

return (true);

end if;

end;

 

17.   What kinds of reports u have worked on?

 

18.   Name Custom Reports and…-------------------------------------

 

19.   How many types of Report formats we have?

Custom Reports and Standard reports

 

20.   What is the minimum number of groups required for a Matrix type report?

To create a matrix report, you need at least four groups: one group must be a cross-product group, two of the groups must be within the cross-product group to furnish the "labels," and at least one group must provide the information to fill the cells. The groups can belong to a single query or to multiple queries.

A matrix (cross tab) report contains one row of labels, one column of labels, and information in a grid format that is related to the row and column labels. A distinguishing feature of matrix reports is that the number of columns is not known until the data is fetched from the database.

View the video report builder help

 

21.   What is the difference between Bitmap and Character based reports? Explain in detail.

Bitmap vs. Character-Mode Report Design

Here is an example to help explain how Oracle Reports are designed and printed in both the bitmap and character-mode environments.

Assume you wish to print "Cc" where "C" is a different font and a larger point size than "c" and is in boldface type (where "c" is not).

In Oracle Reports Designer, bitmap mode, you can make "C" bold and in a different font and point size than "c". This is because you are generating postscript output. Postscript is a universal printer language and any postscript printer is able to interpret your different design instructions.

In Oracle Reports Designer, character mode, the APPLICATIONS STANDARDS EQUIRE the report to be designed in ONE FONT/ ONE CHARACTER SIZE. Character mode reports generate ASCII output. In ASCII you cannot dynamically change the font and character size. The standard is in effect so a report prints as identically as possible from both conventional and postscript printers.

Bitmap vs. Character-Mode Report Printing

These sequences contrast the two printing environments. In postscript, "C" can be in a different font and point size than "c". Both or either could also be bold, for example.

In ASCII, "C" must be in the same font and character size as "c". Both or either could also be bold, for example.

Oracle Reports

Designer

|

| |----- ar20runb ------ Postscript ---- Postscript

--- "Cc"

| | executable language printer output

| |

"Cc"---

|

|

|----- ar20run ----*-- ASCII

--------- Printer ------ "cc"

executable | characters output

|

|

SRW driver

(for bold, underline,

page break escape sequences)

22.   What Printer Styles are used for? Did you develop any printer styles?

Srw.driver

 

23.   How do you fix a performance problem in a Report?

Check Report main query and fine tune it.

Create indexes on columns used in where condition (eliminate full table scan)

Enable Trace(set trace on in before report and set trace off in after report)

Before Report:

srw.do_sql('alter session set sql_trace=true');

After Report:

srw.do_sql('alter session set sql_trace=false');

Trace file will be generated at location:

select value from v$parameter

where name = 'user_dump_dest';

To better see execution plans in a trace file, you need to format the

generated trace file with tkprof statement.

 

24.   What is the significance of p_conc_request_id?

P_conc_request_id is declared as the user parameter for reports which will get org specific data. P_conc_request_id datatype is character and length is 15.

 

25.   How to call a stored procedure in the report? What is the use of that?

Package.prcedure

 

26.   The differences between forms 4.5 and forms 6i?

 

27.   How do you set ORG_ID in a SQL*Plus session?

Call the Below Anonymous pl/sql block.

BEGIN

fnd_client_info.set_org_context(‘204');

END;

Or

exec dbms_application_info.set_client_info(‘org_id’);

 

28.   The differences between reports 2.5 and 6i?

 

29.   While registering a report and a pl/sql block we pass some parameters, for any pl/sql block we pass two additional parameters. Can u list them?

p_errorcode and p_errorbuffer as out parameters in main procedure.

It requires 2 IN parameters for a PL/SQL procedure that's registered as a concurrent program in Apps. They are

1. errcode IN VARCHAR2

2. errbuff IN VARCHAR2

 

30.   How we can call from form to form, form to report?

Calling a Form from another Form: FND_EXECUTE(…);

NOTE: The calling and called Forms must be registered with Applications.

Calling a Report from a Form: FND_REQUEST.SUBMIT_REQUEST(…);

NOTE: This method can be used to call any concurrent program.

 

31.   What are logical page and physical page?

In the Runtime Previewer, you can scroll though a single page of report output, page through the entire report, and split the screen to view different sections of the same report concurrently.

A physical page (or panel) is the size of a page that will be output by your printer. A logical page is the size of one page of your actual report (it can be any number of physical pages wide or long). The Runtime Previewer displays the logical pages of your report output, one at a time.

 

32.   Why is ref cursor is used in the reports?

Dynamic cursor

33.   When we create a report we use the tables, there is some difference when we use the multi-org tables and ordinary tables, can u tell the difference?

Set p_conc_request_id for org specific tables.

 

34.   What is a template and what is its use. We have predefined template and we can define user-defined template. Can u tell why we use the user-defined template?

 

35.   I moved this field into that repeating frame, but I’m still getting a” frequency below its group” error?

 

36.   I must put a repeating frame around these fields. How do I do this easily?

 

37.   I switched the page size to 11 x 8.5, but the printer still prints in Portrait?

 

38.   We have 2 different databases, and each system has 2 tables. Know there is a link provided between them. The client want a report to be developed based on the 4 tables that r there in the 2 different databases. The solution must be efficient?

Use database links

 

 

INTERVIEW QUESTIONS

 

1.We have 2 different databases,and each system has 2 tables. Know there is a link provided between them. The client want a report to be developed based on the 4 tables that r there in the 2 different databases.The solution must be efficient.

 

Assume that the two databases be DB1 and DB2. At one time I could connect to only one database say DB1. Now I should able to access the tables in DB2 from DB1. First I create a DBlink in DB1 that access the tables in DB2. Using the DBlink, create snapshots for each of the tables in DB2. Now we can use these Snapshots in query, as if like tables in DB1.

 

The purpose for creating snapshot is both security and to reduce the network load, for each access of the tables in DB2.

 

2.what is the difference between _all and with underscore all tables.

 

Tables that end with all are belong to multi-org. They have a field called ORG_ID.

 

3.Differences between OE and OM.

 

None of the new features in R11i Order Management or Shipping Execution have been backported to R11 Order Entry or earlier. The data model changes make the effort impractical.

 

The database appears to support the older SO_% tables and the newer OE_% tables for Order Management.

 

The concurrent process, order import, pick up the data from SO_HEADERS_INTERFACE_ALL and populate both the older SO_HEADERS_ALL and the newer OE_ORDER_HEADERS_ALL table. The SO_HEADERS_ALL table is present for those customers who are upgrading from 10.7 to 11i. The tables are there as part of the installation to facilitate the upgrade process.

 

The 'OE:' profile options are still accessible even though these profile options are not used in 11i. These profile options have been replaced by the 'OM:' profile options.

 

4. we have a system with 10.7 apps,in that we have 2.5 reports and 4.5 forms. Now there is upgrade from 10.7 to 11i.in that case the reports and forms must be converted into 6i. What r the steps we perform.list them.

 

There are a minor changes in the PL/SQL Script in Forms 4.5 and Reports 2.5 with that of Forms6i and Reports6i. The differences are…

 

CHAR replaced by VARCHAR2

String length required for VARCHAR2

OUT and IN OUT default expressions removed

NULL added to RETURN in functions

Obsolete built-in

LENGTH function returns NULL for zero-length string

Passing NULL to overloaded subprogram does not resolve properly

Missing RETURN statement in function

 

5. The differences between reports 2.5 and 6i

 

<same as above>

 

6. The differences between forms 4.5 and forms 6i.

 

<same as above>

 

7. How is the stored procedures in the report are called. what is the use of that.

 

There is no sperate method for calling a database stored procedure in Oracle Reports. When a procedure is called form Oracle Report and a procedure with that name is available at several places namely Program Units, Attached Library and Database. The order will be..

 

1. Program Units

2. Attached Library

3. Database.

 

8.what is mutating table and mutating error .Through any example explain how we any over come that error.

 

A mutating table is a table that is currently being modified by an UPDATE, DELETE, or INSERT statement, or it is a table that might need to be updated by the effects of a declarative DELETE CASCADE referential integrity constraint. The restrictions on such a table apply only to the session that issued the statement in progress.

 

Tables are never considered mutating for statement triggers unless the trigger is fired as the result of a DELETE CASCADE. Views are not considered mutating in INSTEAD OF triggers.

 

For all row triggers, or for statement triggers that were fired as the result of a DELETE CASCADE, there are two important restrictions regarding mutating tables. These restrictions prevent a trigger from seeing an inconsistent set of data.

 

The SQL statements of a trigger cannot read from (query) or modify a mutating table of the triggering statement.

 

9.what r pl/sql table and explain were in ur project u have used that tables.what r the pl/sql records,and advantages of pl/sql tables and records.

 

A PL/SQL table can store rows (not just a column) of Oracle data. PL/SQL tables of records make it easy to move collections of data into and out of database tables or between client-side applications and stored subprograms. We can even use PL/SQL tables of records to simulate local database tables. Attributes are characteristics of an object. Every PL/SQL table has the attributes EXISTS, COUNT, FIRST, LAST, PRIOR, NEXT, and DELETE. They make PL/SQL tables easier to use and your applications easier to maintain.

 

PL\SQL tables give you the ability to hold multiple values in a structure in memory so that a PL\SQL block does not have to go to the database every time it needs to retrieve one of these values - it can retrieve it directly from the PL\SQL table in memory.

 

"global temporary tables" are not in-memory structures. But they do offer greatly-reduced disk I/O compared to standard tables (and therefore usually a significant performance improvement) and they also offer the ease-of-use of standard tables, since standard SQL can be used with them, no special array-processing syntax is required.

 

For processes where every bit of performance improvement is critical, PL\SQL tables are the best way to go.

 

10. what is data mapping and what type of mapping u have done in ur carrer or in the recent projects.

 

In this task, we map the data elements from the legacy systems to the target Oracle Applications.

 

11.What is Data cleaning and testing.

 

Data Cleaning: Transformation of data in its current state to a pre-defined, standardized format using packaged software or program modules.

 

Testing: The agreed upon conversion deliverables should be approved by the client representatives who are responsible for the success of the conversion. In addition, three levels of conversion testing have been identified and described in the prepare conversion test plans deliverables.

Eg: for Summary Balances in GL we set Test Criteria as Record Counts, Hash Totals, Balances, Journal Debit and Credit.

 

12.what r the differences between oracle data base 7 and 8.

 

Oracle 7 is a simple RDBMS, where as Oracle 8 is ORDBMS i.e., RDBMS with Object Support. The main add-ons in version 8 are…

Abstract Datatypes

Varrays

PL/SQL Tables

Nested Tables

Partitioned Tables

etc.,

 

13.what r the lexical parameters and were did u used this in ur project .

 

We define lexical parameters in Oracle Reports. Lexical parameters can dynamically replace clauses in the Select statement in the data model and even the whole select statement.

 

A lexical reference replaces any part of a SELECT statement, such as column names, the FROM clause, the WHERE clause, the ORDER BY clause. To create a lexical reference in a query, prefix the parameter name with an ampersand (&). If the parameter object does not exist, Report Builder does not create. We must always create the parameter for a lexical reference in the Object Navigator.

 

14.while registering a report and a pl/sql block we pass some parameters, for any pl/sql block we pass 2 additional parameters. Can u list them?

 

It requires 2 IN parameters for a PL/SQL procedure that's registered as a concurrent program in Apps. They are

1. errcode IN VARCHAR2

2. errbuff IN VARCHAR2

 

15.when “no data found” exception occurs, give any example.

 

A SELECT statement in a PL/SQL block should return one and only one row. If it fails to return a row, then we get this exception.

 

16.How u can delete the duplicate records from the table.

 

delete from <table_name> a

where a.rowid != (select max(b.rowid)

from <table_name> b

where a.<column_1> = b.<column_1> and

a.<column_2> = b.<column_2> ...

group by a.<column_1>, a.<column_2>...);

------------------------------------------------------------

Method 1:
SQL> DELETE FROM table_name A WHERE ROWID > (
2 SELECT min(rowid) FROM table_name B
3 WHERE A.key_values = B.key_values);

Method 2:
SQL> create table table_name2 as select distinct * from table_name1;
SQL> drop table_name1;
SQL> rename table_name2 to table_name1;

Method 3: (thanks to Kenneth R Vanluvanee)
SQL> Delete from my_table where rowid not in(
SQL> select max(rowid) from my_table
SQL> group by my_column_name );

Method 4: (thanks to Dennis Gurnick)
SQL> delete from my_table t1
SQL> where exists (select 'x' from my_table t2
SQL> where t2.key_value1 = t1.key_value1
SQL> and t2.key_value2 = t1.key_value2
SQL> and t2.rowid > t1.rowid);

 

17. In matrix reports minimum how many groups are required.

 

A matrix (crosstab) report contains one row of labels, one column of labels, and information in a grid format that is related to the row and column labels. A distinguishing feature of matrix reports is that the number of columns is not known until the data is fetched from the database.

 

To create a matrix report, you need at least four groups: one group must be a cross-product group, two of the groups must be within the cross-product group to furnish the "labels," and at least one group must provide the information to fill the cells. The groups can belong to a single query or to multiple queries.

 

18.How we can call from form to form, form to report.

 

Form to Form:

i) call_form('your form name', hide, do_replace);

ii) open_form('your form name');

The first version can be used to hide the calling form until the called form has been exited The second version leaves both forms open at the same time.

 

Form to Report:

Using the RUN_PRODUCT built-in procedure.

Eg: Run_Product(REPORTS, 'empreport', SYNCHRONOUS, RUNTIME, FILESYSTEM, pl_id, NULL);

Where pl_id is the parameter list through which we pass parameter values to the report.

 

19.why is ref cursor is used in the reports.

 

A ref cursor query uses PL/SQL to fetch data. Each ref cursor query is associated with a PL/SQL function that returns a strongly typed ref cursor. The function must ensure that the ref cursor is opened and associated with a SELECT statement that has a SELECT list that matches the type of the ref cursor. We base a query on a ref cursor when you want to:

 

i) More easily administer SQL

ii) Avoid the use of lexical parameters in your reports

iii) Share datasources with other applications, such as Form Builder

iv) Increase control and security

v) Encapsulate logic within a subprogram

 

Furthermore, if we use a stored program unit to implement ref cursors, we receive the added benefits that go along with storing your program units in the Oracle database.

 

20.what is pipelining.

 

 

 

21.what r the transaction types in OM.

 

With the release of Oracle Order Management 11i, Order Cycles have been replaced by Oracle Workflow definitions, and Order Types have been replaced by Order Management Transaction Types. Order Management provides seeded Workflow process definitions for both orders and lines, and Order Management also enables you to define both order header and Order Line transaction types.

 

Note: Order Management provides NO seeded transaction types. For existing Oracle Order Entry customers, Order Management will update existing Order Types to order and line transaction types during the upgrade process.

 

Order Management Transaction types:

i) Determine the workflow processes executed for both the order and line

ii) Can act as sources for order and line level attribute defaulting

iii) Can establish order or line level processing constraints

iv) Can default from the Customer, Ship To, Bill To, or Deliver-To site at the order header, and line transaction types can default from the order transaction type.

v) Enable you to group orders and lines

vi) Can specific processing controls for an order or line based upon the transaction type entered. For example, the Scheduling level controls the way scheduling works at the time of order entry for lines.

 

22.what r the different types of orders in OM.

 

<May be same as above>

 

23. where does u find the order status column, in which table. If the order which comes in from legacy fails due to some validation, where does the order goes from here. what is the next step to deal with that order.

 

In the base tables, Order Status is maintained both at the header and line level. The field that maintains the Order status is FLOW_STATUS_CODE. This field is available in both the OE_ORDER_HEADERS_ALL and OE_ORDER_LINES_ALL.

 

24.the order which comes from legacy while it may be a CRM (seibel).it is a service order it must not go to the shipping module ,it must go to AR directly how it will go. can u tell that

BASICALLY WHAT EVER ORDER COMES FROM LEGANCY IT COMES TO OM MODULE THEN THE STATUS IS CHANGED AND IT MAY GO TO INVENTORY OR SHIPPING THEN IT GOES TO AR, but for the service order it has to go to AR directly. How is it possible?

 

http://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=118171.1

 

25. what r the parameter passed to run a report.

 

P_CONC_REQUEST_ID

 

26. what is the schema attached to OA.

 

APPS schema.

 

27. when we run the order import program it validates and the errors occurred can be seen in ?

 

Responsibility: Order Management Super User

Navigation: Order, Returns > Import Orders > Corrections

 

28.when we create a report we use the tables, there is some difference when we use the multi-org tables and ordinary tables, can u tell the difference?

 

If we are using Multi-Org tables, we must define a user parameter, P_CONC_REQUEST_ID with Number(15).

 

29.what is a template and what is its use.we have predefined template and we can define user defined template.can u tell why we use the user definr=ed template.

 

We can define user-defined templates. Templates are like format that applied on the data. I didn't develop new template in the Reports.

 

30. How many libraries we can attach to a form

 

As such there is no limit

 

31. I moved this field into that repeating frame, but I’m still getting a ”frequency below it’s group” error.

 

http://www.dbasupport.com/oracle/faq/Detailed/351.shtml


Moving fields around does not change what enclosing object is considered it's parent group. Oracle carefully remembers what repeating frame a field was originally placed in and assigns that as it's parent. If you then reference a column further down the line of the query structure it will return that error. If you are not exactly sure which repeating frame a field belongs to, try dragging it out of all of them. Whichever frame will not allow it to escape is it's parent. To change a field's parent, first click on the lock button on the speedbutton bar. It should now look like an unlocked padlock. Now all of the fields on the layout can be repositioned regardless of their original parent items. When you are satisfied with the repositioning click the lock button again to lock the layout. Oracle will parse the layout and assumes that any item fully enclosed in a repeating frame is a child object of that frame.

 

Sometimes, for unknown and mysterious reasons, this method does not work. The alternative in this case is to highlight the field (or fields), cut it (cntrl-x), and then paste it into the desired frame. The paste does not initially set it into the right frame, but if we drag and drop it there before clicking on any other objects, and then click on something else, Oracle will usually figure what our intent was and assign the object(s) as a child of that frame.

 

One note though, if we are reassigning a group of fields, make sure the frame we are going to move them into is large enough to accept the whole group at once before we do the cut/paste.

 

If this technique also fails, we are probably going to have to delete and then recreate the objects within the desired frame. If the object has triggers attached, save yourself some typing by creating the new object in the right frame, copying over the trigger code, and then deleting the old object.

 

32. I switched the page size to 11x 8.5,but the printer still prints in Portriat.

 

http://www.orafaq.org/faqrep.htm

 

Even though we set the page size in the report properties, there is a another variable in the system parameters section under the data model in the object navigator called orientation. This sets the printer orientation. Oracle starts by setting it to "default" which means that no matter how we set the page size, the user's default printer setup will be used. We can also set it to either "Landscape" or "Portrait" to force the printer orientation no matter what the user has set as default.

 

33. I must put a repeating frame around these fields. How do I do this easily?.

 

Oracle looks at the layout, as a sort of layered inheritance model such that anything created on top of and completely inside another object is by definition a child of that object. Creation order is therefore critical to the layout process.

 

First, you can place the new repeating frame in the correct place and then use the techniques shown above in the "I moved this field but am still getting a frequency error" to reassign the fields into the new frame.

 

A second choice, Go ahead and draw the new frame around the fields we want to have placed in it. Now if we try to click on one of the fields you will not be able to as they are fully covered by the new frame. Now go to the "Arrange" menu, use the "send backwards" option to move the frame backwards until all of the fields have popped to the front and are now enclosed in it. Oracle reassigns the new repeating frame as each object's parent as they pop to the front.

 

34. How do I change the printed value of a field at runtime. What is call form stack?

 

i) Use Format Trigger for that field. Format triggers are PL/SQL functions executed before the object is formatted. The trigger can be used to dynamically change the formatting attributes of the object. The function must return a Boolean value (TRUE or FALSE). Depending on whether the function returns TRUE or FALSE, the current instance of the object is included or excluded from the report output.

 

Format triggers do not affect the data retrieved by the report. i.e., the data for the field is retrieved even though the field does not appear in the output.

 

ii) When successive forms are loaded via the CALL_FORM procedure, the resulting module hierarchy is known as the call form stack.

 

The call form stack problem, typically happens when we mix OPEN_FORM and CALL_FORMs together. If A issues an OPEN_FORM to start B, and then we issue a CALL_FORM in A to start C, we cannot issue a CALL_FORM from B to start D because we can have only one call form stack open at one time.

 

35.what is the difference between the snapshot and synonym?

 

A synonym is another name assigned to a table for easy identification. For example, if we refer to tables residing in other accounts or databases, we may find it convenient to define a synonym for the long string of identifiers. If a table name changes, we can simply redefine the synonym rather than rewrite all related queries. This is particularly useful if we regularly refer to tables with long or oblique names. For example, we could create a synonym 'ORG' for the unwieldy FUNCTIONAL_ORGANIZATION_TABLE, or create an easier-to-remember synonym 'PRODUCT' for the LEDGER_PRODUCT_CHARTFIELD table.

 

A snapshot refers to read-only copies of a master table or tables located on a remote node. A snapshot can be queried, but not updated; only the master table can be updated. A snapshot is periodically refreshed to reflect changes made to the master table. In this sense, a snapshot is really a view with periodicity.

 

36. what is the difference between anonymous block and a procedure.

 

Anonymous Block is a block of instructions in PL/SQL and SQL which is not saved under a name as an object in database schema. It is also not compiled and saved in server storage, so it needs to be parsed and executed each time it is run. However, this simple form of program can use variables, can have flow of control logic, can return query results into variables and can prompt the user for input using the SQL*Plus '&' feature as any stored procedure.

 

A Stored Procedure is a named program running in the database that can take complex actions based on the inputs send to it. Using a stored procedure is faster than doing the same work on a client, because the program runs right inside the database server. Stored procedures are nomally written in PL/SQL.

 

The Stored Procedure needs to be validated, and if necessary to be recompile.Put it in a package and try pinning the package with dbms_shared_pool.keep('<package>')

 

37. What are user exits and why do u use them what is their use?

 

To access profile values, multiple organizations, or Oracle Applications user exits, and for program to be used with concurrent processing at all, we must have the first and last user exits called by your Oracle Reports program be FND SRWINIT and FND SRWEXIT.

 

38. While importing items from the legacy system through items interface what profile options do u set.

 

There are two profile options that we need to check, before running the Item Import. They are

i) PRIMARY_UNIT_OF_MEASURE from INV: Define Primary Unit of Measure

ii) INVENTORY_ITEM_STATUS_CODE from INV: Define Item Status

 

39. When customizing a form how do u pass values to the LOV.

 

Question is not correct.

 

40. Maximum how many libraries can u attach to a form.

 

This information is older one. It’s included here for conceptual understanding.

 

The libraries are attached to modules at design time, and although the actual program units are not loaded into memory until they are needed, the .lib file is attached and a file handle is held for future use. Under Windows there is currently a limit of 20 file handles per application, this limit is unchanged by the use of the FILES DOS variable. When using Oracle Forms for example, before the application is executed, Forms has taken up to 10 file handles already for itself. This clearly depletes the number left for the application.

The only modules this limit effects are the libraries, other CDE (Cooperative Development Environment) modules (fmx, mmx files etc.) when executed, are loaded into memory and then closed at the file level. This implies the need for 2 (to be safe) or more 'floating' file handles needed to perform this task.

This now leaves the application a maximum of 8 spare handles, which in turn only allows the application to attach up to 8 libraries. As this is a limit under Windows, there is little the application developer can do to work around this.

If this limit becomes an issue the only solution is to use the referencing facilities within the CDE products.

 

41. The vendor information in the purchasing module is distributed in 3 to 4 tables which column will keep the tables integrated to get the data I mean by which column we can track the data in different tables.

 

PO_VENDORS and PO_VENDOR_SITES_ALL are the primary vendor tables. They are connected by a column namely “VENDOR_ID”.

 

42. When a form call a pl/sql routine if there is an error in the pl/sql routine how do u place custom message in the form, which API will u use.

 

FND_MESSAGE.SHOW displays an informational message in a forms modal window or in a concurrent program log file only.

fnd_message.set_string('Message Text');

fnd_message.show;

 

FND_MESSAGE.HINT to display a message in the forms status line and FND_MESSAGE.ERASE to clear the forms status line. FND_MESSAGE.HINT takes its message from the stack, displays the message, and then clears that message from the message stack.

 

43. We can import items from legacy system using item import interface using the SRS. if I want to import using the UNIX Commands or pl/sql with out using SRS how do I do it.

 

From the operating system, use CONCSUB to submit a concurrent program. It's an easiest way to test a concurrent program.

 

Normally, CONCSUB submits a concurrent request and returns control to the OS prompt/shell script without waiting for the request to complete. The CONCSUB WAIT parameter can be used to make CONCSUB wait until the request has completed before returning control to the OS prompt/shell script

 

By using the WAIT token, the utility checks the request status every 60 seconds and returns to the operating system prompt upon completion of the request. concurrent manager does not abort, shut down, or start up until the concurrent request completes. If your concurrent program is compatible with itself, we can check it for data integrity and deadlocks by submitting it many times so that it runs concurrently with itself.

 

Syntax: CONCSUB <ORACLE ID> <Responsibility Application Short Name> <Responsibility Name> <User Name> [WAIT=<Wait Flag] CONCURRENT <Concurrent Program Application Short Name> <Concurrent Program Name> [START=<Requested Start Date>] [REPEAT_DAYS=<Repeat Interval>] [REPEAT_END=<Request Resubmission End Date>] <Concurrent Program Arguments ...>

To pass null parameters to CONCSUB, use '""' without spaces for each null parameter.

In words: single quote double quote double quote single quote

Following is an example of CONCSUB syntax with null parameters:

CONCSUB oe/oe OE 'Order Entry Super User' JWALSH CONCURRENT XOE XOEPACK 4 3 '""' 3

 

To Invoke a Concurrent Program using PL/SQL:

i) Just insert a row in FND_CONCURRENT_REQUESTS with the apropriate parameters and commit.

ii) Invoke the SUBMIT_REQUEST procedure in FND_REQUEST package.

FND_REQUEST.SUBMIT_REQUEST( 'AR', 'RAXMTR', '', '', FALSE, 'Autoinvoice Master Program', sc_time, FALSE, 1, 1020, 'VRP', '01-JAN-00', chr(0), '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '');

 

44. What is an anchor?

 

Anchors are used to determine the vertical and horizontal positioning of a child object relative to its parent.

 

Since the size of some layout objects may change when the report runs (and data is actually fetched), you need anchors to define where you want objects to appear relative to one another. An anchor defines the relative position of an object to the object to which it is anchored. Positioning is based on the size of the objects after the data has been fetched rather than on their size in the editor. It should also be noted that the position of the object in the Layout editor effects the final position in the report output. Any physical offset in the layout is incorporated into the percentage position specified in the Anchor property sheet.

 

45. How many types of repeating frames are there.

 

Repeating frames surround all of the fields that are created for a group’s columns. The repeating frame prints (is fired) once for each record of the group.

 

Use repeating frames to define record-level layout information. For example, you can specify the direction in which the records print (e.g., Down, Across, Across/Down, etc.) and the spacing between each record., they provide a subset of repeating frame functionality (e.g., they do not have a Maximum Records per Page property).

 

There are two types of repeating frames:

Default

user-created

 

Default Repeating Frames When you accept the Default Layout dialog box, Oracle Reports generates one repeating frame for each group in the data model, and places one field inside it for each of the group's columns. Repeating frames can enclose any layout object, including other repeating frames. Nested repeating frames are typically used to produce master/detail and break reports. For each record of the outer repeating frame, Oracle Reports will format all related records of the enclosed repeating frame.

 

User-created Repeating Frames Create a repeating frame in the Layout editor by clicking on the Repeating Frame tool, dragging a region, then specifying its properties in its property sheet.

 

46. What are the difficulties u faced when customizing a form.

 

There is no built-in functionality to validate duplicate record entry in a multi-record block. We need to build a logic to handle this validation.

 

47. What is the use of item category column in the items interface table.

You can use categories and category sets to group your items for various reports and programs. A category is a logical classification of items that have similar characteristics. A category set is a distinct grouping scheme and consists of categories. The flexibility of category sets allows you to report and inquire on items in a way that best suits your needs.

 

Multiple Organizations is enabled in Oracle

Applications by partitioning some database tables by the Operating Unit. Other tables are shared across Operating Units (and therefore across set of books). Examples of Applications with partitioned tables are Oracle Payables, Oracle Purchasing, Oracle Receivables, Oracle Projects, Oracle Sales & Marketing etc. The name of each corresponding partitioned table is the view name appended by '_ALL'.

 

 

46. What are the difficulties u faced when customizing a form.

 

There is no built-in functionality to validate duplicate record entry in a multi-record block. We need to build a logic to handle this validation.

 

42. When a form call a pl/sql routine if there is an error in the pl/sql routine how do u place custom message in the form, which API will u use.

 

FND_MESSAGE.SHOW displays an informational message in a forms modal window or in a concurrent program log file only.

fnd_message.set_string('Message Text');

fnd_message.show;

 

FND_MESSAGE.HINT to display a message in the forms status line and FND_MESSAGE.ERASE to clear the forms status line. FND_MESSAGE.HINT takes its message from the stack, displays the message, and then clears that message from the message stack.



Note :We respect the copyrights of your websites. If this material posted here violates your copyrights please let us know, accordingly we will take action . This material we received is through emails and forums.