Sei sulla pagina 1di 235

Perbedaan procedure dan function

Function dibalikin satu nilai


Procedure balikin lebih dr 1 nilai

1. What is the Diff between APPS Schema and other Schemas?


Apps schema contains only Synonyms we can't create tables in apps schema,where
as other schema s contains tables, & all the objects. Here only we will create
the tables and giving grants on created tables. Almost all every time we will
connect to apps schema only.

2. What is meant by Custom Top and what is the Purpose?


Custom Top is nothing but Customer Top, which is created for customer only. we
can have multiple custom
tops based on client requirement. It is used to store developed & customized
components. whenever oracle
corp applying patches it will over ride on all the modules except custom top.
that's why we will use custom top.

3. What is the Significancy of US Folder?


It is nothing but language specification by default it is in american
language. We can have multiple languages folders based on installed
languages. from backend we can get it from
FND_LANGUAGES -- COL --INSTALLED_FLAG I,B,D
I--INSTALLED,
B--BASE,
D--DISABLE
select language_code,nls_language from fnd_languages where
installed_flag like 'B'
4. Where did U find the Applcation short name and basepath names?

select basepath,application_short_name from fnd_application from the backend.


From the from end we can get it Navigation Application Developer.----->
Application---->Register The application name we will get from
FND_APPLICATION_TL

5. Where can U find the release version from backend?


SELECT release_name from FND_PRODUCT_GROUPS; ---11.5.10.2

6.
What are the Folders we will find below the 11.5.0 Folder?
Reports,forms,sql,lib,log,out,bin,admin,html,xml,msg,def, etc
7.
Can we create Tables in the Apps Schema?
No.
8.
Can we have custom schema when it it required?
yes, we can have custom schema, when we want to create a new table we required
custom schema.
9.
What is meant by concurrent Program?
It is nothing but Instance of the execution along with parameters &
Incompatables. Here Incompatables nothing but if we are submiting cc programs
if any one can be execute in those program , which programs r not imp yet this
time we will mention those programs in incompatables tab.
10.
What are the steps we will follow to register Reports as Concurrent Program?
First develop the report & save it in local machine. upload into
custom_top/11.5.0/reports/us/ go to system administrator open executable
form create executable by mentioning executable method as reports ,executable

as report name which was created. go to cc program form create ccprogram by


attach executable name in executable section. then attach this ccprogram to
request group, Request group to Responsibility.Responsibility to
User.
11.
What is meant by Request group?
It is nothing but collection of cc programs.

12.
What is Application Top? What are the types and Purpose?
A) When we connect to the server we will find the top called application
top. Under application top we have
Product top.
Custom top
Product top is the default top built by the manufacturer. Custom top is
used to select the Client for his business purposes. Customizations are done
with the Custom top.
13.
What is US folder in the Custom Top?
It is a language specific folder used to store the G.U.I like
reports and forms.
14.
What are mandatory parameters of Procedures and what the use of those?
Errorbuf: It is used to returns the error messages and sent it to the log
file.
Retcode: It is used to show the status of the Procedure with 0, 1, and 2 0
for Completed Normal
1 for Completed Warning

2 for Completed Error


15
What is Apps Schema and Schema?
Schema: Schema is the location in database contains database objects like
views, tables, and synonyms.
Apps Schema: It is used to connect the all schemas to get the
information from The database.
16.
What is Token?
a) Use to transfer values to report builder and it is not case
sensitive.
17.
Difference between FORM, Function and Menu?
a) A menu is a hierarchical arrangement of functions and menus. Each
responsibility has a menu assigned to it. A function is a part of an
application that is registered under a unique name for the purpose of
assigning it to be including it from a menu.
18.
Tell me something about SQL-LOADER.

Sql * loader is a bulk loader utility used for moving data from external files
into the oracle database.
Sql* loader supports various load formats, selective loading, and multi-tables
loads.
1) Conventional --The conventional path loader essentially loads the data by
using standard insert statement.
2) Direct -- The direct path loader (direct = true) by possess of logic
involved with that, and loads directly in to the oracle data files.

EX:- My data.csv file


1001, scott tiger,1000,40
1002,gvreddy,2345,50
Load data
Infile c:\data\mydata.csv
insert Into table emp Fields terminated by , optionally enclosed by
(empno, empname,sal,deptno)
>sqlldr scott/tiger@vis control=loader.ctl log= gvlog.log bad=gvbad.bad
discard=gvdis.dsc .
19.
What is SET-OF-BOOKS?

Collection of Chart of Accounts and Currency and Calendars is called SOB


20.
Tell me what r the Base tables in the AR?

hz_parties (party_id) (store info about org, groups and people)


HZ_PARTIES stores information about parties such as organizations,
people, and groups, including the identifying address information for the
party.
hz_cust_accounts (cust_account_id)
HZ_CUST_ACCOUNTS stores information about customer relationships. If a
party becomes a customer, information about the customer account is stored in

this table. You can establish multiplecustomer relationships with a single


party, so each party can have multiple customer account records in this table.
hz_cust_acct_sites_all (cust_acct_site_id)
HZ_CUST_ACCT_SITES_ALL stores information about customer sites. One
customer account can have multiple sites. The address is maintained in
HZ_LOCATIONS.
hz_cust_site_uses_all (site_use_id)
HZ_CUST_SITE_USES_ALL stores information about site uses or business
purposes. A single customer site can have multiple site uses, such as bill to
or ship to, and each site use is stored as a record in this table.
hz_party_sites (party_site_id)
HZ_PARTY_SITES stores information about the relationship between Parties
and Locations. The same party can have multiple party sites. Physical
addresses are stored in HZ_LOCATIONS.
hz_locations (location_id)
HZ_LOCATIONS stores information about physical locations.
hz_Person_Profiles (person_profile_id)
HZ_PERSON_PROFILES stores detail information about people.
hz_Organization_Profiles (organization_profile_id)
HZ_ORGANIZATION_PROFILES stores credit rating, financial statistics,
socioeconomic and corporate linkage information for business sites. The
primary key for this table is ORGANIZATION_PROFILE_ID.
21.
FND USER EXITS:-

FND SRWINIT sets your profile option values, multiple organizations and allows
Oracle Application Object Library user exits to detect that they have been
called by an Oracle Reports program.
FND SRWEXIT ensures that all the memory allocated for AOL user exits have been
freed up properly.
FND FLEXIDVAL are used to display flex field information like prompt, value
etc
FND FLEXSQL these user exits allow you to use flex fields in your reports
FND FORMAT_CURRENCY is used to print currency in various formats by using
formula column
22.
What is Value Set?

The value set is a collection (or) container of values.


Whenever the value set associated with any report parameters. It provides list
of values to the end user to accept one of the values as report parameter
value.
If the list of values needed to be dynamic and ever changing and define a
table
based values set.
12)What are the validation types?
1) None -------- validation is minimal.
2) Independent ------input must exist on previously defined list of values
3) Dependent ------input is checked against a subset of values based on a
Prior value.

3) Table ----- input is checked against values in an application table


4) Special ------values set uses a flex field itself.
5) Pair ------ two flex fields together specify a range of valid values.
6) Translatable independent ----- input must exist on previously defined list
of values; translated values can be used.
7) Translatable dependent ------- input is checked against a subset of values
based on a prior values; translated value can be used.
23.
Form development process?

a) Open template form


b) Save as <your form>.fmb
c) Change the form module name as form name.
d) Delete the default blocks, window, and canvas
e) Create a window.
f) Assign the window property class to window
g) Create a canvas (subclass info)
h) Assign canvas property class to the canvas
I) assign the window to the canvas and canvas to the window
j) Create a data block
k) Modify the form level properties. (sub class item Text item)
l) Modify the app_custom package. In the program unit.
m) Modify the pre-form trigger (form level)

n) Modify the module level properties ((console window, First navigation


p) Save and compile the form.
Place the .fmx in the server directory.
24.
How does u customize the Reports?

a. Identify the Short name of the standard report in which module we have
to customize
Ex: - if u wants to customize in the AR module path is
Appl top\ar\11.5.0\reports\US\ .rdf
b. Open the .rdf file in Report builder and change the name of the module.
c. Open the data module and modify the query (what is client requirements)
assign the columns to the attributes.
d. Go to report wizard and select, what r the newly created columns.
e. Then Compile it. Then u will get a .rep file in the specified module. If it
is
not in the specified directory then we have to put in the server directory.
f. Then Register in the AOL Concurrent Executable and
Concurrent Program.
g. Go to system administrator Security Responsibility request.
h. Add and assign a concurrent program to a request group
25.
FLEX FIELDS?

Used to capture the additional business information.


DFF
KFF
Additional

Unique Info, Mandatory

Captured in attribute prefixed columns


Not reported on standard reports

Segment prefixed

Is reported on standard reports

To provide expansion space on your form With

the

help of [].

[] Represents descriptive Flex field.


FLEX FILED : DESCRIPTIVE : REGISTER
information

Used for entering and displaying key

For example Oracle General uses a key Flex field called Accounting Flex field
to uniquely identify a general account.
FLEX FILED : KEY : REGISTER
26.
Difference between Bind and Lexical parameters?
BIND VARIABLE:
are used to replace a single value in sql, pl/sql
bind variable may be used to replace expressions in select, where, group,
order
by, having, connect by, start with cause of queries.
bind reference may not be referenced in FROM clause (or) in place of
reserved words or clauses.
LEXICAL REFERENCE:
You can use lexical reference to replace the clauses appearing AFTER select,

from, group by, having, connect by, start with.


You cant make lexical reference in pl/sql statements.
27.
what is Flex mode and Confine mode?

Confine mode:
On: child objects cannot be moved outside their enclosing parent objects.
Off: child objects can be moved outside their enclosing parent objects.
Flex mode:
On: parent borders "stretch" when child objects are moved against them.
Off: parent borders remain fixed when child objects are moved against
them.
28.
What is Place holder Columns?

A placeholder is a column is an empty container at design time. The


placeholder can hold a value at run time has been calculated and placed in to
It by pl/sql code from anther object.
You can set the value of a placeholder column is in a Before Report trigger.
Store a Temporary value for future reference. EX. Store the current max salary
as records are retrieved.
29.
What is Formula Column?

A formula column performs a user-defined computation on another column(s)

data, including placeholder columns.


30.
What is Summary columns?

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.
31.
What is TCA (Trading Community Architecture)?

Ans. Oracle Trading Community Architecture (TCA) is a data model that


allows you to manage complex information about the parties, or customers, who
belong to your commercial community, including organizations, locations, and
the network of hierarchical relationships among them. This information is
maintained in the TCA Registry, which is the single source of trading
community information for Oracle E-Business Suite applications.
32.
Difference between Application Developer and System Administrator?

Ans.
Role of Technical Consultant:
a. Designing New Forms, Programs and Reports
b. Forms and Reports customization
c. Developing Interfaces
d. Developing PL/SQL stored procedures

e. Workflow automations
Role of System Administrator:
a. Define Logon Users
b. Define New/Custom Responsibility
c. Define Data Groups
d. Define Concurrent Managers
e. Define Printers
f. Test Network Preferences
g. Define/Add new Modules
Role of an Apps DBA:
a. Installing of Application
b. up gradation
c. Migration
d. Patches
e. Routing maintenance of QA
f. Cloning of OA
33.
What are Flex fields?

Ans.
Ans. A Flex field is a customizable field that opens in a window from a
regular Oracle Applications window. Defining flex fields enables you to tailor
Oracle Applications to your own business needs. By using flex fields, you can:
(a) Structure certain identifiers required by oracle applications according to

your own business environment.


(b) Collect and display additional information for your business as needed.
Key Flex fields: You use key flex fields to define your own structure for many
of the identifiers required by Oracle Applications. Profile Flexfields:Open
Key Window (FND_ID_FLEXS)
Descriptive Flex field: You use descriptive flex fields to gather additional
information about your business entities beyond the information required by
Oracle Applications. Profile Flex fields: Open Descr Window
(FND_DESCRIPTIVE_FLEXS)
34.
Report registration process?

Ans.
1. Create the report using the report builder.
2. Place the report definition file in the module specific reports directory.
3. Create an executable for the report definition file.
4. Create a concurrent program to that executable.
5. Associate the concurrent program to a request group.
35.
Define Request Group?

Ans.
A request security group is the collection of requests, request sets, and
concurrent programs that a user, operating under a given responsibility, can
select from the Submit Requests window.
36.
Value Sets?

Ans.
Oracle Application Object Library uses values, value sets and validation
tables as important components of key flex fields, descriptive flex fields,
Flex Builder, and Standard Request Submission.
When you first define your flex fields, you choose how many segments you want
to use and what order you want them to appear. You also choose how you want to
validate each of your segments. The decisions you make affect how you define
your value sets and your values.
You define your value sets first, either before or while you define your flex
field
segment structures. You typically define your individual values only after
your flex field has been completely defined (and frozen and compiled).
Depending on what type of value set you use, you may not need to predefine
individual values at all before you can use your flex field.
You can share value sets among segments in different flex fields, segments in
different structures of the same flex field, and even segments within the same
flex field structure. You can share value sets across key and descriptive flex
fields. You can also use value sets for report parameters for your reports
that use the Standard Report Submission feature.
Navigation Path:
Login Application Developer -> Application -> Validation -> Set
37.
Value Validation Types?

Ans.
1. Dependant
2. Independent
3. None

4. Pair
5. Special
6. Table
7. Translate Independent
8. Translate Dependent
38.
Incompatibility in report registration and Run Alone?

Ans.
Identify programs that should not run simultaneously with your concurrent
program because they might interfere with its execution.
You can specify your program as being incompatible with itself.
Application: Although the default for this field is the application of your
concurrent program, you can enter any valid application name.
Name: The program name and application you specify must uniquely identify a
concurrent program. Your list displays the user-friendly name of the program,
the short name, and the description of the program.
Scope: Enter Set or Program Only to specify whether your concurrent program is
zincompatible with this program and all its child requests (Set)
or only with this program (Program Only).
Run Alone: Indicate whether your program should run alone relative to all
other programs in the same logical database. If the execution of your program
interferes with the execution of all other programs in the same logical
database (in other words, if your program is incompatible with all programs in
its
logical database, including itself), it should run alone.

Oracle interview questions

1.
What are the various types of Exceptions ?
User defined and Predefined Exceptions.
2.
Can we define exceptions twice in same block ?
No.

3.
What is the difference between a procedure and a function ?
Functions return a single variable by value where as procedures do not return
any variable by value. Rather they return multiple variables by passing
variables by reference through their OUT parameter.

4.
Can you have two functions with the same name in a PL/SQL block ?
Yes.

5.
Can you have two stored functions with the same name ?
Yes.

6.
Can you call a stored function in the constraint of a table ?
No.

7.
What are the various types of parameter modes in a procedure ?
IN, OUT AND INOUT.

8.
What is Over Loading and what are its restrictions ?
OverLoading means an object performing different functions depending upon the
no. of parameters or the data type of the parameters passed to it.

9.
Can functions be overloaded ?
Yes.
10.
Can 2 functions have same name & input parameters but differ only by return
datatype
No.
11.
What is Ref Cursor in Oracle ?
By using Ref cursor we can change the select statement
dynamically at runtime which is available in the cursor

definition based on some validation.For this we need to


define ref cursor type by using following syntax.
type <type_name> is ref cursor return <return_type>;
here <type_name> is the name of the ref cursor and
<return_type> will be the return type of ref cursor it may
be %type/%rowtype/record type/plsql table type/nested table
type/varray type.
if <return_type> is mentioned we will called it as strong
ref cursor.
if <return_type> is not mentioned we will called it as weak
ref cursor.
after this we need to define ref cursor variable by using
the following syntax.
v_variable_name ref_cursor_type_name;
then based on validations we can change the ref cursor
dynamically.
for example
-----------------declare
type ref_cur is ref cursor;
v_ref_cur ref_cur;
v_deptno emp.deptno%type;
begin

select deptno into v_deptno from emp where empno=7788;


if v_deptno=20 then
open v_ref_cur for select * from emp;
elsif v_deptno=30 then
open v_ref_cur for select * from dept;
else
open v_ref_cur for select * from salgrade;
end if;
end;
What Is a Collection?
A collection is an ordered group of elements, all of the same type. It is a
general concept that encompasses lists, arrays,
and other familiar datatypes. Each element has a unique subscript that
determines its position in the collection.
PL/SQL offers these collection types:
Index-by tables, also known as associative arrays, let you look up elements
using arbitrary numbers and strings for subscript values.
(They are similar to hash tables in other programming languages.)
Nested tables hold an arbitrary number of elements. They use sequential
numbers as subscripts. You can define equivalent SQL types,
allowing nested tables to be stored in database tables and manipulated
through SQL.
Varrays (short for variable-size arrays) hold a fixed number of elements
(although you can change the number of elements at runtime).
They use sequential numbers as subscripts. You can define equivalent SQL
types, allowing varrays to be stored in database tables.
They can be stored and retrieved through SQL, but with less flexibility than

nested tables.
INBOUND INTERFACES
Invoice Inbound Interface
Interface Tables:
AP_INVOICES_INTERFACE
AP_INVOICE_LINES_INTERFACE
AP_INTERFACE_REJECTIONS (Error Table)
Base Tables:
AP_INVOICES_ALL
AP_INVOICE_LINES_ALL (in R12)
AP_INVOICE_DISTRIBUTIONS_ALL
Concurrent Program:
Payables Open Interface Import
Supplier Inbound Interface
Interface tables:
AP_SUPPLIERS_INT
AP_SUPPLIER_SITES_INT
AP_SUP_SITE_CONTACT_INT
AP_SUPPLIER_INT_REJECTIONS (Error table for Supplier, Site and Contact inbound
based on parent_table column)
Base Tables:
PO_VENDORS
PO_VENDOR_SITES_ALL
PO_VENDOR_CONTACTS

Concurrent programs:
Supplier Open Interface Import
Supplier Sites Open Interface Import
Supplier Site Contacts Open Interface Import
Request Set:
Supplier Open Interface Request Set (Contain all 3 above mentioned concurrent
programs)
Item Inbound Interface
Interface Tables:
MTL_SYSTEM_ITEMS_INTERFACE
MTL_ITEM_REVISIONS_INTERFACE
MTL_ITEM_CATEGORIES_INTERFACE
MTL_INTERFACE_ERRORS (Error Table)
Base Tables:
MTL_SYSTEM_ITEMS_B
MTL_ITEM_REVISIONS_B
MTL_CATEGORIES_B
MTL_CATEGORY_SETS_B
Concurrent program:
Import Items
Receipt Inbound Interface
Interface Tables:
RCV_TRANSACTIONS_INTERFACE

RCV_HEADERS_INTERFACE
PO_INTERFACE_ERRORS (Error Table)
Base Tables:
RCV_SHIPMENT_HEADERS
RCV_SHIPMENT_LINES
RCV_TRANSACTIONS
Concurrent Program:
Receiving Transaction Processor
Purchase Order Inbound Interface
Interface Tables:
PO_HEADERS_INTERFACE
PO_LINES_INTERFACE
PO_DISTRIBUTIONS_INTERFACE
PO_LINE_LOCATIONS_INTERFACE
PO_INTERFACE_ERRORS where interface_type = PO_DOCS_OPEN_INTERFACE (Error
Table)
Base Tables:
PO_HEADERS_ALL
PO_LINES_ALL
PO_DISTRIBUTIONS_ALL
PO_LINE_LOCATIONS_ALL
Concurrent Program:
Import Standard Purchase Orders (To import Standard Purchase Orders)
Import Price Catalogs(To import Catalog Quotations, Standard Quotations, and

Blanket Purchase Agreements)


Requisition Inbound Interface
Interface Tables:
PO_REQUISITIONS_INTERFACE_ALL
PO_REQ_DIST_INTERFACE_ALL
PO_INTERFACE_ERRORS where interface_type =REQIMPORT (Error Table)
Base Tables:
PO_REQUISITIONS_HEADERS_ALL
PO_REQUISITION_LINES_ALL
PO_REQ_DISTRIBUTIONS_ALL
Concurrent Program:
Requisition Import
Interview for general .......
*********************************************************.....................
..........***************************************************************
1) What is SET-OF-BOOKS OR Ledgers?

Collection of Chat of Accounts and Currency and Calendars, Convention is


called SOB
2) How can u call a standard interface program from sql or pl/sql code

FND_REQUEST.SUBMIT_REQUEST (PO,EXECUTABLE NAME,,,,PARAMETERS)


3) APIs FOR CUSTOMER INTERFACE

HZ_CUST_A/C_VZPUB.UPDATE_CUST_A/C
HZ_CUST_A/C_VZPUB.CREATE_CUST_A/C

4) PL/SQL stored procedure parameters or what are the two parameters that are
mandatory for pl/sql type concurrent program

Procedure/function (ERRBUF OUT RETCODE OUT .)


ERRBUF :- Used to write the error message to log or request file.
RETCODE :- Populate log request file with program submission details info.
5) What is Value Set

--The value set is a collection (or) container of values.


--When ever the value set associated with any report parameters. It provides
list of values to the end user to accept one of the values as report parameter
value.
-- If the list of values needed to be dynamic and ever changing and define a
table based values set.
6) What r the validation types

1) None -------- validation is minimal.


2) Independent ------input must exist on previously defined list of values
3) Dependent ------input is checked against a subset of values based on a
prior value.
3) Table ----- input is checked against values in an application table
4) Special ------values set uses a flex field itself.
5) Pair ------ two flex fields together specify a range of valid values.
6) Translatable independent ----- input must exist on previously defined list
of values;
translated values can be used.
7) Translatable dependent ------- input is checked against a subset of values

based on a prior values; translated value can be used.

7) What is template

a) The TEMPLATE form is the required starting point for all development of new
Forms.
b) The TEMPLATE form includes platformindependent attachments of several
Libraries.
APPSCORE :- It contains package and procedures that are required of all forms
to support the MENUS ,TOOLBARS.
APPSDAYPK :- It contains packages that control the oracle applications
CALENDER FEATURES.
FNDSQF :- it contains packages and procedures for MESSAGE DICTONARY, FLEX
FIELDS, PROFILES AND CONCURRENT PROCESSING.
CUSTOM :- it allows extension of oracle applications forms with out
modification of oracle application code, you can use the custom library for
customization such as zoom ( such as moving to another form and querying up
specific records)

8) What are ad-hoc reports


Ans.: Ad-hoc Report is made to meet one-time reporting needs. Concerned with
or formed for a
particular purpose. For example, ad hoc tax codes or an ad hoc database query

9) What is responsibility

Is collection of menus, request security groups and data groups


Menus: collection of forms is nothing but menus
Request security groups: collection of programs.
Data groups: is a group of modules to be made accessible by the user through

Responsibility
System admin

10) What are different execution methods of executabls


FlexRpt The execution file is wrnitten using the FlexReport API.
FlexSql The execution file is written using the FlexSql API.
Host The execution file is a host script.
Oracle Reports The execution file is an Oracle Reports file.
PL/SQL Stored Procedure The execution file is a stored procedure.
SQL Loader The execution file is a SQL script.
SQL Plus The execution file is a SQL Plus script.
SQL Report The execution file is a SQL Report script.
Spawned The execution file is a C or Pro C program.
Immediate The execution file is a program written to run as a subroutine of
the concurrent manager. We recommend against defining new immediate concurrent
programs, and suggest you use either a PL/SQL Stored Procedure or a Spawned C
Program instead.
Composite Data types :
PL/SQL TABLES / PL/SQL RECORDS / Nested TABLE / VARRAY
What is the sequence of functions group by, having , order by in a select
statements
Select..Group byHavingOrder by..
Difference between User and Super User
User : login user or front end user
Super user : it has full access of particular module

11) Oracle E-Business suite

Oracle apps + analytical components software.


(Oracle discover) (Oracle sales analyzer) (Oracle financial analyzer) (Oracle
marketing analyzer)

12) What is multi org

Legal entity has more than one operating unit is called as multi org
a) Business group --- Human resources information is secured by Business group
b) Legal entity. --- inter-company and fiscal/tax reporting.
operating unit.
c) Operating unit --- secures AR, OE, AP, PA and PO Information.
d) Organizations --- is a specialize unit of work at particular locations

13) What is ERP and Architecture of apps

A packaged business software system that lets a company automate and integrate
the majority of its business processes; share common data and practices across
the enterprise; [and] produce and access information in a real-time
environment.

14)How many types of Execution Methods


Host
Immediate
Java Stored Pricedure
Oracle reprots

PL/SQL Stored Procedures


Java concurrent Program
SQL * Loader
Sql * plus
spawned
perl concurrent program
request set stage function
15 Data Link
- Data links relate the results of multiple queries.
- A data link (Parent - Child Relation Ship) causes the child query to be
executed once for each instance of its parent group.

16 In which tables FF are stored

A) FND - ID - FLEXS
B) FND-ID-FLEX-STRUCTURES 5

17)Oracle Applications Architecture

- Internet computing Architecture is a frame work for 3-tired, distributed


computing that supports Oracle Applications products.
- The Three tiers are
1 Data Base Tier
2 Application Tier
3 Desk Top Tier
- Database tier manages Oracle 8i database.
- Application tier manages Oracle Applications and other tools.
- Desktop tier provides the user interface displace.
- With internet computing architecture, only the presentation layer of Oracle
Applications is on the Desk Top tier in the form of a plug-in to standard

internet brows

18) List of some APIS

FND_PROGRAM.EXECUTABLE
FND_PROGRAM.REGISTER
FND_PROGRAM.PARAMETER
FND_PROGRAM.ADD_TO_GROUP
FND_REQUEST.SUBMIT_REQUEST
FND_PROFILE.VALUE
FND_PROFILE.GET

19)How to get second parameter value based on first parameter


$FLEX$ value set name.

20)How to call WHO columns into the form

By using FND_STANDARD APIS


1. FND_STANDARD.FORM_INFO 6
Provides information about the form.
Should be called form when_new_form - instance - instance trigger.
2. FND_standard.set_who
loads WHO columns with proper user information.
Should be called from PRE_UPDTE and PRE_INSERT
Triggers for each block with WHO fields
If this is used FND-GLOBAL need not be called. (FND_GLOBAL.WHO)

3. FND_STANDARD.SYSTEM_DATE
This is a function which returns date.
Behave exactly like SYSDATE built-in.
4. FNID_STANDARD.USER
This is a function which returns varchar2
Behaves exactly like built in USER.
21) APPCORE APIS
APP_COMBO
APP_DATE
APP_EXCEPTION
APP_FIELD
APP_FIND
APP_ITEM
APP_ITEM_PROPERTY
APP_NAVIGATE
APP_RECORD
APP_REGION 7
APP_STANDARD
APP_WINDOW
22)FNDSQF APIS
FND_CURRENCY
FND_DATE
FND_GLOBAL

FND_ORG
FND_STANDARD
FND_UTILITIES.OPEN_URL
FND_UTILITIES. PARAM_EXISTS

23)How to call flex fields in the form


By using FND_FLEX.EVENT (EVENT varchar 2)
How to register an executable and define a concurrent program through backend
By using concurrent processing APIS
1. FND_CONC_GLOBAL.REQUES_DATA
.SET_REQUEST_GLOBALS
2. FND_CONCURRENT.AF_COMMIT
.AF_ROLLBACK
.GET_REQUEST_STATUS
.WAIT_FOR_REQUEST
.SET_COMPLETION_STATUS
3. FND_FILE . PUT
. PUT_LINE
.NEW_NAME 8
.PUT_NAMES
.CLOSE
4. FND-PROGRAM . MESSAGE
. EXECUTABLE

. REGISTER
. PARAMETER
. IN COMPATIBILITY
. EXECUTABLE_EXISTS
5. FND_REQUEST . SET-OPTIONS
.SET_REPEAT_OPTIONS
.SET_PRINT_OPTIONS
.SUBMIT_REQUEST
.SET_MODE
6. FND_REQUEST_INFO . GET_PARAM_NUMBER
. GET_PARAM_INFO
. GET_PROGRAM
. GET_PARAMETER
7. FND_SET . MESSAGE
.ADD_PROGRAM
.ADD_STAGE
.IN COMPATIBILITY
8. FND_SUBMIT . SET_MODE
.SET_REQUEST_STATUS
.SUBMIT_PROGRAM 9
.SUBMIT_SET
FND_PROGRAM.EXECUTABLE
- is used to define a concurent program executable

- it takes 8 parameters ( all are IN mode )


syntax procedure FND_PROGRAM.EXECUTABLE
(executable IN varchar2,
(Full name)
description IN varchar2 default null
execution_method IN varchar2,
execution_file_name IN varchar2 default null,
icon_name IN varchar2 default null,
language_code IN varchar2 default (VS)
FND_PROGRAM.REGISTER
- this procedure no used to define a concument program.
- It has 30 IN paranmeters. Out of which 9 are mandatory, the remaining are
default.
(program IN varchar2,
application IN varchar2,
enabled IN varchar2,
short_name IN varchar2,
description IN varchar2, default null, 10
executable_application IN varchar2,
mls_function_shelt_name IN varchar2,
mls_function_application IN varchar2,
inerementor IN varhcar2);

24. How to register a table and columns through back end

by using AD_DD package


- for registering a table
- AD_DD BPI doesnt check for the existence of the registered table or column
in the data base schema, but only updates the required SQL tables.
- It should be ensured that, all the tables and columns registered exist
actually and have the same format as that defined using AD_DD API.
- Views need not be registered.

25. How to write to a file through concurrent program.


By using FND_FILE package and it can be used only for log and output files.
1. FND_FILE.PUT
- this is used to write text to a file with out a new line character
- Multilane calls to FND_FILE.PUT will produce consummated text.
Procedure FND_FILE.PUT (which IN Number, Buff IN varchar2);
- can be FND_FILE.LOG or FND_FILE.OUTPUT.
2. FND_FILE.PUT_LINE 11
- this procedure as used to write a line of text to a file followed by a new
line character.
Procedure FND_FILE.PUT_LINE (which IN number, buff IN varchar2);
EX:- FND_FILE.PUT_LINE( FND_FILE.LOG, find_message_get);
3. FND_FILE.NEW_LINE
- this procedure is used to write line terminators to a file
procedure FND_FILE.NEW_LINE (which IN number LINES IN NATURAL:=1);
Ex:- to write two newline characters to a log file

Fnd_file.new_line (fnd_file.log,2);
4. FND_FILE.PUT_NAMES
- this procedure as used to set the temporary log file and output filenames
and the temporary directory to the user specified values.
- This should be called before calling my other FND_FILE procedure and only
once per a session.

26)Function FND_REQUEST.SUBMIT_REQUEST
( application in varchar2 default null,
program in varchar2 default null,
description in varchar2 default null,
start-time in varchar2 default null,
sub_request in bookan default False,
argument1,
arguemnt2,
argument 100) return number;
If this is submitted from oracle forms, all the arguments ( 1 to 100 ) must
be specified. 12

27. How to submit concurrent programs through OS


- From the operating system the utility .CONCSUB is used to submit is
concurrent propgram.
- This is basically used to test a concurrent program .
- By using the WAIT token. The utility checks the request status every 60
seconds and returns the OS prompt upon completion of the request.
- Concurrent manager doesnot abort, shutdown or start up until the concurrent

request completes.
If the concurrent program is compatible with it self, it can be checked for
data integrity and dead locks by submitting it many times so that it runs
concurrently with it self.
PL/SQL procedures can submit a request to run a program as a concurrent
process by calling.
FND_REQUEST. SUBMIT_REQUEST.
Before submitting a request, the following functions also should be called
optionally.
FND_REQUEST.SET_OPTIONS
FND_REQUEST.SET_REPEAT_OPTIONS
FND_REQUEST.SET_PRINT_OPTIONS
FND_REQUEST.SET_MODE

28. How to checks the request states


- A PL/SQL procedure can check the status of a concurrent request by calling.
FND_CONCURENT.GET_REQUEST_STATUS
FND_CONCURRENT.WAIT_FOR_REQUEST
- FND_CONCURRENT.GET_REQUEST_STATUS
- This function returns the status of a concurrent request
- If the request is already computed, it also returns the completion message.
- This function returns both user friendly (translatable) phase and status
values as well as developer phase and status vales that can drive program
logic. 13
( request_id in out number,
application in varchar2 default null,

program in varchar2 default null,


phase out varchar2,
status out varchar,
dev_phase out varchar2,
dev_status out varchar2,
message out varchar2) return BOOLEAN;
- when application and program are specified, the request_id of the last
request for the specified program should be returned to request_id.
- Phase, and status values should be taken from
FND_LOOKUPS
dev_phase dev_status
pending normal, standby, scheduled, paused
running normal, waiting, resuming, terminating.
Complete normal, Error, warning, cancelled, terminated
Inactive disabled, on-hold, No-manager, supended
- FND_REQUEST.WAIT_FOR_REQUEST
- This function waits for request completion, then returns the request
phase/status and completion message to the caller.
- Goes to sleep between checks for request completion.
Syntax
( request_id in number default null,
interval in number default 60,
max_wait in numbe default 0, 14
phase out varchar2,

status out varchar2,


dev_phase out varchar2,
dev_status out varchar2,
message out varchar2) return BOOLEN;
FND_CONCURRENT.SET_COMPLETION_STATUS
- this function should be called from a concurrent program to set its
completion states.
- This function returns TRUE on success, other wise FALSE.
ENT.SET_COMPLETION_STATUS
( status in varchar2,
message in varchar2) return BOOLEAN;
normal
status warning
Error

29. What is the reason for not getting any data when a multi org view is
quired
- to get the data correctly, the xxx-ALL must be referenced and the ORG_ID
value should be specified to extract portioned data.
- Multiorg views are partitioned by using ORG_ID.
- So access through multiorg views will not return any roes, as the
CLIENT_INFO Value is not set
- Use HR_OPERATING UNITS to identify the organization _id of the OU on which
query is based.
- Use FND_CLIENT_INFO package to set the value in CLIENT INPO using
set_org_contest.

- Execute fnd_client_info. Set_org_context (<org_id>);


- Now qurying of multiorg views can be done. 15

30. How do you find that muliorg is installed


- multi organization architecture is meant to allow muliple companies or
subsidiaries to store their records with in a single data base.
- Multiple organization Architecture allows this by partitioning data through
views in APPS schema.
- Implementation of Multi org generally includes more than one business group.
To know whether multiorg is existing or not
select multi_org_flag
form fnd_product_groups)
- if the result is Y means the database is group for multiorg

31. what are Handlers


Handler is a group of packaged procedures which is used by Oracle
Applications to organize . PL/SQL code in forms.
- Handlers provide a way to centralize the code so that it becomes easier to
develop, maintain and debug.
- The packaged procedures available in a handler are called form the triggers
by passing the name of the trigger as an argument for the procedure to
process.
Handlers are types :- 1) Item Handlers
2) Event Handlers
3) Table Handlers

4) Business Rules
- Handlers reside in program units in the form or in stored packed in the
database.

32)Adding Table handler Logic


Coding logic for window and alternative region control.
Adding fin-windows and/or ROW-LOVS and enable query-find.
Coding logic for item relations such as dependent fields.
Coding messages to use message dictionary. 16
Adding FF logic if required.
Adding choices to the special mence and logic to modify choices the default
menu and tool bar behavior is necessary.
Coding any other logic.
Creating a form function for the developed form and registering any sub
functions.
Testing the form by it self.
Registering the form with AOL.
Adding the form function to a menu or creating custom mence.
Assigning the menu to the responsibility and assigning the responsibility to
the user.
Testing the form within Oracle Applications.

33.what is the differnce between org_id and organization_id


org_id column tables are operating_unit tables,Organization_id tables are
inventory Related tables.

34. What is a Data Group


- A data group is a group of oracle applications and the Oracle IDs of each
application
- Oracle ID grants access privileges to tables in an Oracle Database
- Data group determines which Oracle Data base accounts a responsibilities
forms, concurrent programs and reports connect to.
35. What is a Responsibility
- Responsibility defines Applications Privileges
- A responsibility is a level of authority in Oracle Applications that lets
users only those Oracle Applications functions and data appropriate to their
roles in an organization.
- Each user has at list one or more responsibilities and several users can
share the same responsibility 22
Each responsibility allows access to
- a specific application or a set of applications.
- A set of books
- A restricted list of windows that an user can navigate
- Reports in a specific application.

36. What are security Attributes


- Security Attributes are used by Oracle self service web Applications to
allow rows of data to be visible to specified users responsibilities based on
the specific data contained in the row.

37. What is a Profile Option


- profile options are the set of changeable options that affects how the
application looks and behaves.

- By setting profile options, the applications can be made to react in


different ways for different users depending on the specific user attributes.

38. What are steps involved in developing a flex field


- designing the table structure
- creating fields on the form (Visible/Hidden)
- calling appropriate routines
- registration of the flex field.
- Definition of the flex field.
<Flex fields / key/ Register>
<Flex fields/Descriptions / Register>

39. What is an application /Module


- Application is a collection of forms, function and menus

40)FND_PROGRAM Package
FND_PROGRAM.Executable:Procedure FND_PROGRAM. Executable IS 23
(executable in Varchar2,
application in varchar2, (full name)
short_name in varchar2, (executable short name)
description in varchar2 default NULL,
execution_method in varchar2,

execution_file_name in varchar2 default null,


Subrowline_name in varchar2 default null, (only for spawned immediate)
Icon_name in varchar2 default null,
Language_code in varchar2 default US,
Execution_file_path in varchar2 default null);
For Java Concurrent Program.
FND. PROGRAM. REGISTER:Procedure FND_PROGRAM.Register IS
(Program in varchar2,
application in varchar2,
enabled in varchar2,
short_name in varchar2,
description in varchar2, default null,
executable_short_name in varchar2,
executable_application in varchar2,
execution_options in varchar2, default null,
priority in number default null,
save_output in varchar2 default Y, 24
print in varchar2 dafault Y,
cols in varchar2 default null,
rows in varchar2, default null,
style in varchar2, default null,
style_required in varchar2, default N,

printer in varchar2, default null,


Requets_Type in varchar2, default null,
Request_type_Application in varchar2 default null,
Use_in_Srs in varchar2, default N,
Allow_disabled_valuer in varchar2 default N,
Run_alone in varchar2 default N,
Output_type in varchar2 default TEXT,
Enable_trace in varchar2 default N,
Restart in varchar2 default Y,
nls_complaint in varchar2 default Y,
icon_name in varchar2 default null,
language_code in varchar2, default US,
mls_function_short_name in varchar2 default null,
mls_function_application in varchar2 default null,
incrementor in varchar2 default null);

41) How to submit concurrent program through pl/sql


fnd_request.submit_request(parameters) by using this we can submit the
concurrent program thru pl/sql.
FND_GLOBAL.APPS_INITIALIZE (user_id,resp_id, resp_appl_id)

42) What are the types of Concurrent Managers


3 MASTER CONCURRENT MANAGERS:
1. Internal Conccurent Manager (ICM): This is the one which monitors all other

CMs
2. Standard Manager (SM) : This takes care of report running and batch jobs
3. Conflict Resolution Manager (CRM): checks concurrent program definitions
for incompatability checks.
We cannot delete a concurrent manager... but we can disable it... but it's not
recommended.
43) multi org set up in pl/sql block
Begin dbms_application_info.set_client_info('ORG_ID');
end;

44. What is the relation between Responsibility, Menu and Request Group
Responsibility: - A responsibility is a set of authority in Oracle Apps that
lets users access only that functionality of the application appropriate to
their roles.
Menu: - A menu is a hierarchical arrangement of functions and menus of
functions that appears in the Navigator. Each responsibility has a menu
assigned to it.
Request Group: - it is a collection of reports or concurrent programs. A
system Administrator defines report groups in order to control user access to
reports and concurrent programs. Only a system administrator can create a
request group.

45. What is a function, how to create one


A function is apart of an applications functionality that is registered
under a unique name for the purpose of assigning to it to, or excluding it
from, a menu (and by extension, responsibility). There are several types of
functions: - Form Functions, SubFunctions, and
Non-form functions. We often refer to a form function simply as a form.

46. What is meant by APPL_TOP

Environment variable
An operating System variable that describes an aspect of the environment in
which your application runs. For example, you can define an environment
variable to specify a directory path. 26
$APPL_TOP: An environment variable that denotes the installation directory for
Oracle Application Object Library and your other Oracle applications.
$APPL_TOP is usually one directory level above each of the product directories
(which are often referred to as $PROD_TOP or $PRODUCT_TOP or $<prod>_TOP).

47. Explain briefly where are the Custom.pll, Forms, Reports, Sql Loader
Control files, Shell Script source
code and executables files kept
Custom.pll - $AU_TOP/resource
Forms - $PROD_TOP/Forms/US
Reports - $PROD_TOP/Reports/US
SQL Control Files - $PROD_TOP/Bin
Shell Scripts - $PROD_TOP/Bin

48. When is Custom.pll used


Custom.pll is used while making new or customizing standard oraclke forms in
apps. It contains all the forms libraries for apps.

49. What are profile options; at what levels can these be set
A user profile is a set of changeable options that affects the way the
applications run. Oracle
Applications object Library establishes a value for each option in a users
profile when the
User logs on or changes responsibility.

System Profile: - Profile option can be set for the user community.
User Profile: - Provide Oracle Apps with standard information which describes
a user,
Application, Responsibility and site. At each profile level user profile
options can be set.

50. How can you know the form (fmb) name when you open a form in Apps
Help

51. Where do you create a table and sequence in Apps

Is it APPS schema

In custom schema and then grant privileges on it to APPS schema.

52. Where are Views and Procedures created

27

Views: - Views are to be created only in APPS.


Procedures: - In custom schema and the grant it to APPS schema.

53. How can you tell who last updated a particular row in a form

54. You have logged onto a Responsibility, how do you know what operating unit
are you on

55) Can new profiles be created


Yes. Application Developer.

If so how

56)How do you register a report


concurrent program

Explain passing of parameters between a

Definition and report


After developing the report (.rdf), FTP it to the UNIX server.
Define executable.
Define concurrent program and attach the executable.
Attach the concurrent program to a request group.
57) What is the approach to create a new form to be used in Oracle Apps
The TEMPLATE form is the required starting point of all development of new
forms. Start
Developing each new form by copying the TEMPLATE.fmb file, located in
$AU_TOP/forms/US(or your language and platform equivalent), to local directory
and
Rename it as appropriate.

58. Explain Value Set


Value Set

Difference between a Table Validated and Independent

A set of values against which Oracle Application Object Library validates


values your end
users enter when running your program. You define your value set by specifying
validation 28
rules, format constraints and other properties. For example, you could define
a value set to
contain values that are character strings, validated from a table in your
application. You can
Specify that oracle application Object Library use the same value set to
validate different
Report parameters. You can also use value sets that you use in your flex

fields to validate
Your report parameters.

59. How do you create a table validated value set dependent on another value
set
Use :$FLEX$.<Value set name> in the where condition.

60. What is difference between a concurrent request and a concurrent request


set
Concurrenct Request means containing only one concurrent program,Concurrent
request set containing list of concurrenct programs(group of programs)

61. What are the two mandatory parameters required for running a PL/SQL
Procedure based concurrent program
Errbuf, Retcode

62. How can you ensure that only one instance of a concurrent program runs
Check the "Run Alone" check box in Concurrent program registration window.

63. Within a PL/SQL procedure which API is to be used to extract a profile


value
FND_PROFILE.GET

64. How do you set the operating unit context in a report


Begin
Dbms_application_info.set_client_info(<Organization_Id>);
End;

65. Can you submit a concurrent request from the operating system directly
Write a Shellscript.
Login to database
Run the function FND_REQUEST.Submit()

66. Explain how to generate a trace file for a pl/sql concurrent program for
tuning
Check theEnable Trace check box in concurrent program registration window.

67. How do you write to the concurrent request Log and Output file
FND_FILE.PUT(FND_FILE.LOG or FND_FILE.OUTPUT, <Text>);

68. What is the difference between Operating Unit and Inventory Organization
Operating Unit :- An Organization that uses Oracle Cash management, Order
management and Shipping Execution, Oracle Payables, Oracle Purchasing, and
Oracle Receivables. It may be a sales Office, a division, or a dept. An
operating unit is associated with a legal entity. Information is secured by
operating unit for these applications. Each user sees information only for
their operating unit. To run any of these applications, you choose a
responsibility associated with an organization classified as an operating
unit.
An organization for which you track inventory transactions and balances,
and/or an organization that manufactures or distributes products. Examples,
include (but are not limited to) manufacturing plants, warehouses,
distribution centers, and sales offices. The following applications secure
information by inventory organization: Oracle inventory, Bills of Material,
Engineering, and Work in Process, Master Scheduling/MRP, Capacity, and
Purchasing receiving functions. To run any of these applications, you must
choose an organization that has been classified as an inventory organization.

69. What is Set of Books

A financial reporting entity that uses a particular chart of accounts,


functional currency,
And accounting calendar. Oracle General Ledger secures transaction information
(such as journal entries and balances) by set of books. When you use Oracle
General Ledger, you choose a responsibility that specifies a set of books. You
then see information for that set of books only.

70. What is Item Validation Organization


The organization that contains your master list of items. You define it by
setting the OM: Item Validation Organization parameter. You must define all
items and bills in your Item Validation Organization, but you also need to
maintain your items and bills in separate organizations if you want to ship
them from other warehouses.

71. Mention the table or views where Inventory Org, Items, Set of Books, GL
Code Combinations,
Operating Unit, Location, Customers, Vendors, and Invoices are stored in Apps.
Inventory Org: - MTL_PARAMETERS/ORG_ORGANIZATION_DEFINITIONS
Items: - MTL_SYSTEM_ITEMS_B
Set of Books: - GL_SETS_OF_BOOKS
GL Code Combinations: - GL_CODE_COMBINATIONS
Operating Unit: - HR_ALL_OPERATING_UNITS
Location: - MTL_ITEM_LOCATIONS
Customers: - RA_CUSTOMERS
Vendors: - AP_SUPPLIER_CONTACTS_ALL
Invoices: - AP_INVOICES_ALL

72. What is the profile to be read to find out what Inventory Organization and

Operating Unit are you on


(mfg_organization_id is the Inventory Org)

73)What is Inventory Master Organization


Items are defined in an Inventory Master Organization.

74)What is the difference between key flexfield and Descriptive flexfield


Key Flexfield is used to describe unique identifiers that will have a better
meaning than using number IDs. e.g a part number, a cost centre etc Desc Flex
is used to just capture extra information. Key Flexfields have qualifiers
whereas Desc Flexfields do not. Desc Flexfields can have context sensitive
segments while Key flexfields cannot.
And one more differenct that KFF displays like text item but DFF displays like
[ ] .

75)Which procedure should be called to enable a DFF in a form


FND_DESCR_FLEX.DEFINE (BLOCK => 'BLOCK_NAME' ,FIELD => 'FORM_FIELD_NAME'
,APPL_SHORT_NAME => 'APP_NAME' ,DESC_FLEX_NAME => 'DFF_NAME' );

76)Which procedure should be used to make the DFF read only at run time
FND_DESCR_FLEX.UPDATE_DEFINITION()

77)What is the difference between flexfield qualifier and segment qualifier


Flexfiled qualifier identifies segement in a flexfield and segment qualifier
identifies value in a segment.
There are four types of flexfiled qualifier 1) Balancing segment qualifier 2)
cost center 3) natural account and 4) intercompnay

segemtn qualifier :- 1) allow budgeting 2) allow posting 3) account type 4)


contral account and 5) reconciliation flag

78)Where do concurrent request logfiles and output files go


The concurrent manager first looks for the environment variable $APPLCSF If
this is set, it creates a path using two other environment variables: $APPLLOG
and $APPLOUT It places log files in $APPLCSF/$APPLLOG Output files go in
$APPLCSF/$APPLOUT So for example, if you have this environment set: $APPLCSF =
/u01/appl/common $APPLLOG = log $APPLOUT = out The concurrent manager will
place log files in /u01/appl/common/log, and output files in
/u01/appl/common/out Note that $APPLCSF must be a full, absolute path, and the
other two are directory names. If $APPLCSF is not set, it places the files
under the product top of the application associated with the request. So for
example, a PO report would go under $PO_TOP/$APPLLOG and $PO_TOP/$APPLOUT
Logfiles go to: /u01/appl/po/9.0/log Output files to: /u01/appl/po/9.0/out Of
course, all these directories must exist and have the correct permissions.
Note that all concurrent requests produce a log file, but not necessarily an
output file.

79)How do I check if Multi-org is installed


SELECT MULTI_ORG_FLAG FROM FND_PRODUCT_GROUPS
If MULTI_ORG_FLAG is set to 'Y', Then its Multi Org.

80)How do I find out what the currently installed release of Applications is


/How do I find the name of a form
We can also find out through Help > About Oracle Applications

81)Why does Help->Tools->Examine ask for a password


Navigate to the Update System Profile Screen.
(\ navigate profile system) 32
- Select Level: Site

- Query up Utilities:Diagnostics in the User Profile Options Zone.


If the profile option Utilities:Diagnostics is set to NO, people with access
to the Utilities Menu must enter the password for the ORACLE ID of the current
responsibility to use Examine. If set to Yes, a password will not be required.

82)What are the API used in PO cancellation


Ans. For Partial cancellation -> To modify the Ordered quantity
v_return_flag := apps.gems_public_apis_pkg.po_update_po
( x_po_number => v_po_number
, x_release_number => NULL
, x_revision_number => v_revision_num
, x_line_number => v_line_number
, x_shipment_number => v_shipment_num
, new_quantity => p_quantity
, new_price => NULL
, new_promised_date => NULL
, launch_approvals_flag => 'Y'
, update_source => NULL
, x_interface_type => NULL
, x_transaction_id => NULL
, version => '1.0');
For Full cancellation ->
apps.gems_public_apis_pkg.po_control_document
( p_api_version => v_api_version_number

, p_init_msg_list => apps.fnd_api.g_true


, p_commit => apps.fnd_api.g_false
, x_return_status => p_return_status
, p_doc_type => 'PO'
, p_doc_subtype => v_sub_type
, p_doc_id => v_po_header_id
, p_doc_num => NULL
, p_release_id => NULL
, p_release_num => NULL
, p_doc_line_id => v_po_line_id
, p_doc_line_num => NULL
, p_doc_line_loc_id => p_line_loc_id
, p_doc_shipment_num => NULL
, p_action => 'CANCEL'
, p_action_date => SYSDATE
, p_cancel_reason => 'GPO_WAREHOUSE_DENIAL'
, p_cancel_reqs_flag => 'N'
, p_print_flag => 'N'
, p_note_to_vendor => apps.fnd_api.g_miss_char); 33

83)How an API is initialized


Ans. apps.gems_public_apis_pkg.fnd_apps_initialize
( user_id => p_user_id

, resp_id => p_resp_id


, resp_appl_id => p_resp_appl_id)

84)What is the name of the API parameter when they are True,False and NULL
Ans. apps.fnd_api.g_true, apps.fnd_api.g_false and apps.fnd_api.g_miss_char
respectively.
85)What are the different steps in sending a mail from PL/SQL
Ans. PROCEDURE glp_send_mail_po_cancel
( p_org_id IN VARCHAR2
, p_feeder_source IN VARCHAR2
, p_subject IN VARCHAR2
, p_message_body IN VARCHAR2
, p_return_status OUT VARCHAR2
, p_error_message OUT VARCHAR2
)
v_host_name := utl_inaddr.get_host_name();
v_host_ip := utl_inaddr.get_host_address(v_host_name);
v_mailconn := utl_smtp.open_connection(v_host_ip, 25);
utl_smtp.helo(v_mailconn,v_host_ip);
utl_smtp.mail(v_mailconn,v_from_email_id);
utl_smtp.rcpt(v_mailconn,v_to_email_tab(v_addr_cnt));
v_message := v_message || 'To: ' || v_to_email_tab(v_addr_cnt) || '>' || crlf;
utl_smtp.data(v_mailconn,v_message); -- calling mail procedure

utl_smtp.quit(v_mailconn);

86)How do u call a mail program from Shell program


Ans. for file in `find . -name " .com ~$5" -print |cut -c3-120`
do
echo $file
frm=`echo $file | cut -d'~' -f1`
tom=`echo $file | cut -d'~' -f2 | sed 's/,/ /g'`
echo $frm
echo $tom
echo "Sending mail to $tom"
mailx -r "$frm" -s 'Order Shipment Confirmation' "$tom" < "$file"
rc=$
if [ $rc != 0 ]
then
echo 'invalid file name'
fi 34
rm -f "$file"
rc=$
if [ $rc != 0 ]
then
echo 'invalid file name'
fi

done

87)How do submit a concurrent program from PL/SQL


Ans. apps.fnd_global.apps_initialize
(user_id => p_user_id
,resp_id => p_resp_id
,resp_appl_id => p_resp_appl_id)
;
/ p_error_message := p_error_message ||'Calling Receiving transaction
processor'||chr(10);
v_request_id := apps.fnd_request.submit_request
('PO'
,'RVCTP'
,NULL
,NULL
,FALSE
,'BATCH'
,p_batch_id
);
dbms_output.put_line('request id is :'||v_request_id); COMMIT;
p_error_message := p_error_message ||'Receiving Transaction Processing Request
id :'||v_request_id ||chr(10) ;
IF (v_request_id > 0) THEN
v_complete := FND_CONCURRENT.wait_for_request ( request_id => v_request_id

, interval => 10
, max_wait => 0
, phase => v_phase
, status => v_status
, dev_phase => v_dev_phase 35
, dev_status => v_dev_status
, message => v_message);

88)How do u register a concurrent program from PL/SQL


Ans. apps.fnd_program.executable_exists -> To check if executable file exists
apps.fnd_program.executable -> To make executable file
fnd_program.program_exists -> To check if program is defined
apps.fnd_program.register -> To register/define the program
apps.fnd_program.parameter -> To add parameters
apps.fnd_program.request_group -> To add to a request group

89)How do u initialize an API


Ans. apps.gems_public_apis_pkg.fnd_apps_initialize
( user_id => p_user_id
, resp_id => p_resp_id
, resp_appl_id => p_resp_appl_id)
And U can get the parameters from the following script ->
SELECT DISTINCT f5.user_id

, f4.responsibility_name responsibility_name
, f4.responsibility_id responsibility_id
--INTO
--v_user_id
--, v_responsibility_name
--, v_responsibility_id
FROM applsys.fnd_user_resp_groups f6
, apps.fnd_user f5
, apps.fnd_profile_options f1
, apps.fnd_profile_option_values f2
, apps.fnd_responsibility f3
, apps.fnd_responsibility_tl f4
WHERE SYSDATE BETWEEN f6.start_date AND NVL(f6.end_date,SYSDATE)
AND f5.user_id = f6.user_id
AND UPPER(f5.user_name) like '%GLOBALPARTS%'
AND f6.responsibility_id = f4.responsibility_id
AND f2.profile_option_value = TO_CHAR(13) -- Putting the ORG ID Value
AND f2.profile_option_id = f1.profile_option_id
AND f1.profile_option_name = 'ORG_ID'
AND f3.application_id = 201
AND f2.level_value = f3.responsibility_id
AND f3.responsibility_id = f4.responsibility_id
AND UPPER(f4.responsibility_name) LIKE UPPER('GEMS%PO%MANAGER%') 36

AND ROWNUM = 1;

90)How Do u register a table & a column


Ans. EXECUTE ad_dd.register_table( 'GEMSQA', 'gems_qa_iqa_lookup_codes', 'T',
512, 10, 70);
EXECUTE ad_dd.register_column('GEMSQA', 'gems_qa_iqa_lookup_codes',
'LOOKUP_CODE', 1, 'VARCHAR2', 25, 'N', 'N');

91) What resources are provided for developing applications which will be
integrated into Oracle Applications Release 11
a. The Oracle Applications Developer's Guide Release 11 and the Oracle
Applications User Interface Standards Release 11.
b. The AU_TOP/forms/US/TEMPLATE.fmb for developing a new form.
c. The AU_TOP/forms/US/APPSTAND.fmb contains standard property classes
for your runtime platform.
d. The AU_TOP/resource/FNDSQF.pll contains routines for Flexfields,
Function Security, User Profiles, Message Dictionary.
e. The AU_TOP/resource/APPCORE.pll contains standard User Interface routines.
f. The AU_TOP/resource/APPDAYPK.pll contains the Calendar Widget routines.
g. The AU_TOP/resource/CUSTOM.pll for adding custom code which affects Oracle
Applications forms without changing Oracle Applications code.
h. The AU_TOP/resource/GLOBE.pll allows Oracle Applications developers to
incorporate global or regional features into Oracle Applications forms
without modifying the base Oracle Applications forms. Globe calls routines

JA, JE, and JL libraries.


i. The AU_TOP/resource/JA.pll called from Globe and contains Asia/Pacific
code.
j. The AU_TOP/resource/JE.pll called from Globe and contains EMEA
(Europe/Middle East/Africa) code.
k. The AU_TOP/resource/JL.pll called from Globe and contains Latin America
code.
l. The AU_TOP/resource/VERT.pll allows Oracle Applications developers to
incorporate vertical industry features (for automotive, consumer packaged
goods, energy, and other industries) into Oracle Applications forms
without modifying the base Oracle Applications forms. 37
m. Oracle Developer/2000 Server Release 1.6.1.
NOTE: All FMB and PLL files must be migrated to your desktop if you intend to
develop and integrate custom applications into Oracle Applications
Release 11.

92. What are the supported versions of Forms and Reports used for developing
on Oracle Applications Release
Answer-----a. The following supported versions are provided in Developer/2000
Release 1.6.1:
i. Forms 4.5
ii. Reports 2.5

93. How do I compile and/or generate an Oracle Applications form


Answer-----a. UNIX
cd $AU_TOP/forms/US
f45gen module=FNDSCAUS.fmb userid=APPS/APPS output_file=
/appl/v1100000/fnd/11.0.28/forms/US/FNDSCAUS.fmx module_type=form
batch=no compile_all=special
b. Windows NT
cd F:\applr11\au\11.0.28\forms\US
f45gen32 userid=APPS/APPS module=FNDSCAUS.fmb output_file=
applr11\fnd\forms\US\FNDSCAUS.fmx module_type=form batch=no
compile_all=special

94. How do I open, compile and/or generate a custom Oracle Applications form
on my desktop
Answer

a. To port the AU_TOP/forms/US and AU_TOP/resource files to your Windows


desktop:
i. Make copies of all required files.
ii. Replicate the AU_TOP directory structure on your desktop.
iii. Move the files to their appropriate AU_TOP/forms/US for FMB and
AU_TOP/resource for PLL.
iv. Include the AU_TOP/forms/US and AU_TOP/resource directories in

your FORMS45_PATH.
v. Open, compile and/or generate forms.
NOTE: The FORMS45_PATH is specified either in your Registry or oracle.ini.
NOTE: It may sometimes be necessary to convert FMB -> FMT and PLL -> PLD
before 38
porting from a Unix platform to your desktop.

95. How do I add a CUSTOM_TOP to Oracle Applications


Answer
a. Replicate an existing Oracle Applications product directory structure
underneath your APPL_TOP:
APPL_TOP
|
XXCUS_TOP
|
bin------forms-----html-----lib-----log-----mesg-----out-----reports
| |
US US
b. Make sure all the permissions on the files and directories are the same
as the other product directories.
c. Add the full path to this CUSTOM_TOP to your APPLSYS.env ( Source your
APPLSYS.env) or your Windows NT Registry:
UNIX: /u01/oracle/apps/vd11/xxcus/11.0.28
Windows NT: D:\oa\appltst\vd11\xxcus\11.0.28

d. Login to Oracle Applications using the System Administrator or Application


Developer Responsibility.
e. Navigate: Application -> Register and add your new CUSTOM_TOP to Oracle
Applications.
Application Short Name Basepath Description
-----------------------------------------------------------------------------Custom Application XXCUS XXCUS_TOP Custom Application
f. Shutdown and restart your Internal Concurrent Manager (ICM) so that the
concurrent manager will recognize the change to the environment that was
made to the APPLSYS.env and Registry.

96. How to get the data from the views in Multi_ORG views
A. Using the profiles and client info package.
Eg:
SELECT

FROM po_headers this is multi org view

If we cant get the data with the above query then we have to write a
procedure as shown below.
DECLARE
x NUMBER:=0; 39
BEGIN
x:=fnd_profile.value('org_id');
fnd_client_info.set_org_context (204);
END;

Compile and run the query once again.

97) What is Responsibility / Request Group


Ans: Responsibility is used for security reason like which Responsibility can
do what type of jobs etc.
Set of Responsibility is attached with a Request group. When we attach the
request group to a concurrent program, that can be perform using all the
Responsibilities those are attached with Request group.

98) What is DFF


Ans: The Descriptive Flexi field is a field that we can customize to enter
additional information for which Oracle Apps product has not provided a field.
Ex. ATP program calculates for those warehouses where Inventory Org Type is DC
or Warehouse in DFF Attribute11 of MTL_PARAMETERS table.

99) What is Value Set


Ans: Value Sets define and store the valid items of data, which may be entered
into a field.
Key Flexfields, Descriptive Flexfields and many standard fields use Value
Sets.
Oracle already comes with hundreds of Value Sets.
We define additional Value Sets to support our own user-defined Key and
Descriptive Flexfields (although we may use any existing standard Value Sets
if they suit our purpose).
In defining a new Value Set, we are defining the physical format of valid
data, which can reside in that Value Set.
Data in a Value Set can be of several types:
Independently loaded into a Value Set (through a standard form).

Resident in a table (to which we direct the Value Set definition).


There could be No Validation (any data can go into the field, but still
subject to the formatting rules.)
Dependent on the value of data in a preceding Independent segment (loaded
through a standard form).
Ex: For Supplies & Accessories CC in ATP, we define GEMS_GPO_ASSIGN_SET value
set for the assignment set associated with that OU.

100) What is multi-org


Ans: It is data security functionality in Oracle 10.6 and above. Applicable
User responsibilities are created and attached to specific Operating Unit.
User can access the data that belongs to the Operating unit they login under.
40
The benefit is it enables multiple operating units to use a single
installation of various modules, while keeping transaction data separate and
secure by operating unit.
It has an effect on the following modules:
Order Entry
Receivable
Payable
Purchasing
Project Accounting

101) Can you explain the Organization structure


Ans:
a) Business Unit / Group : It represents the highest level in Organization
structure and has no accounting impact. It determines which employees will be
available to Set Of Books and Operating Units.

Ex: Consolidated Enterprise / a major division / an operating company.


b) Set Of Books: It is a financial reporting entity that uses a particular
Chart of accounts,
Functional currency and
Accounting calendar.
It is the highest level with accounting significance. Document Sequencing
(important in Europe) is at the Set of Books level. Also Period open/close is
at the Set of Books level.
A Set of Books is associated with only one Business Group. A Business Group
may be assigned several Sets of Books i.e Multiple sets of books can share the
same business group if they share the same business group attributes.
Base Table: apps.gl_sets_of_books
c) Legal Entity: A legal company for which you prepare fiscal or tax reports.
Each Legal Entity is associated with only one Set of Books. A Set of Books may
have multiple Legal Entities.
Base Table: apps.hr_legal_entities
d) Operating Unit: An organization that uses oracle order management, cash
management, shipping execution, payables, purchasing and receivables.
It may be a sales office, a division, or a department. Standard reports are at
the Operating Unit level.
An operating unit is associated with a legal entity.
Base Table: apps.hr_operating_units
e) Inventory Organization : An organization for which you track inventory
transactions and balances, and/or an organization that manufactures or
distributes products.
An Operating Unit may have multiple Inventory Organizations.
Ex: manufacturing plants, warehouses, distribution centers, and sales offices.
41

Base View: apps.org_organization_definitions


f) Subinventory: An inventory organization has a number of subinventories
associated with it.
Base Table: apps.mtl_secondary_inventories (secondary_inventory_name =
subinventory name)
g) Locator : These are the different locations in side a subinventory.
Base Table: apps.mtl_item_locations

105)What are the mandatory parameters in Concurrent program


Ans: errbuf and Retcode (In case pl/sql store procedure)
p_conc_request_id (In case Oracle Report, it is an user-parameter)

106)Why we use token field for Concurrent program


Ans: The Token is used as for binding purpose. The parameter value is passed
to the .rdf/procedure through this token. The input (user) parameter value
passes to the report / stored procedure after binding with this token. The
concurrent program wont get impact even the user parameter names get
changed, but got impacted when the token name changed.

107) What are the mandatory parameters in concurrent programs


Ans: errbuf
errcode.

108)Those are IN or OUT parameters.


Ans: Out Parameters

109)What is Request group


Ans: Responsibility is used for security reason like which Responsibility can
do what type of jobs etc.
Set of Responsibility is attached with a Request group. When we attach the
request group to a concurrent program, that can be perform using all the
Responsibilities those are attached with Request group.

110)What is MultiOrg

42

Ans: It is data security functionality in Oracle 10.6 and above. Applicable


User responsibilities are created and attached to specific Operating Unit.
User can access the data that belongs to the Operating unit they login under.
The benefit is it enables multiple operating units to use a single
installation of various modules, while keeping transaction data separate and
secure by operating unit.
It has an effect on the following modules:
Order Entry
Receivable
Payable
Purchasing
Project Accounting

111)There is an Object type Spawned in concurrent program. What is the use


Ans: It is used for Proc C in executable field

112)How can we call a Report from Form in Apps


Thru concurrent prog

113) what are the setup we need to do before running into Oracle Apps.
Ans: Go to Oracle Apps > System Administraror (Responsibility) > Create a User
using SSO > Add responsibility
Switch to COE Dev Sys Administrator (Responsibility) > Add the Responsibility
that is attached to the newly created User > menue > exclude / include the
function according to the requirement

114) What is multi_org


Ans: It is data security functionality in Oracle 10.6 and above. Applicable
User responsibilities are created and attached to specific Operating Unit.
User can access the data that belongs to the Operating unit they login under.
The benefit is it enables multiple operating units to use a single
installation of various modules, while keeping transaction data separate and
secure by operating unit.
It has an effect on the following modules:
Order Entry
Receivable
Payable
Purchasing
Project Accounting

115) What is the difference between po_headers & po_headers_all


Ans: Here comes the concept of multi_org. po_headers contains data that is
irrespective of multi_org i.e any supplier can view all the records. In case
of po_headers_all 43

116) What is the basic requirement that we need to set before starting a form
in Oracle Apps

Ans:
a) FTP the templet.fmb From $au_top/bin To Local m/c
b) Rename the templet.fmb as User defined name
c) Trigger Level Change: Pre_Form : app_window.set_window_position('BLK_ORG',
'FIRST_WINDOW'); -- 1st Window Name
set_window_property('BLK_ORG',title,'Form name') -- 1st Window Name, caption
Block Level Change: Rename Default_block
Form Level Change: Property Panel > Navigation > First Navigation Data Block >
(Set A Block Name)
Program Unit Level: App_custom > (set the 1st window name)

118) What is the API we use to see the message from log file
Ans:
When we use an API, it automatically stores the error message in a pl/sql
table i.e creating a log of the errors.
We can see those error messages thougt fnd_message_pub API

119)There is a check box called Use in SRS. What is its use


SRS stands for Standard Request Submit. We can execute concurrent program by
directly passing parameters. On checking this Use In SRS check box, we can
independently use the concurrent program.

120)Do you know Extension table


Ans: Unlike database table, it store outside the database like BFile (content
store outside the DB but the location store in DB like pointer). It contains
metadata only. So no DML operation (except SELECT, Group by, Order By) can

possible.

121)Why do we call FND SRWINIT from Before Report Trigger


A. FND SRWINIT fetches concurrent request information and sets up the profile
options. It must be included if one is using any ORACLE APPLICATION OBJECT
LIBRARY features in his report (such as concurrent processing)

122)Why do we call FND SRWEXIT from After Report Trigger


A. FND SRWEXIT frees all the memory allocations done in other Oracle
Applications user exits. It must be included if one is using any ORACLE
APPLICATION OBJECT LIBRARY features in his report (such as concurrent
processing)

123) Why do we call FND FLEXSQL from the Before Report Trigger
A. One need to pass the concatenated segment values from the underlying code
combinations table to the user exit so that it can display appropriate data
and derive any description and values from switched value sets as needed. One
gets this information by calling the AOL user exit FND FLEXSQL from the before
report Trigger. 44

124. If u call the user exit FND FLEXSQL with MODE = WHERE from the Before
Report Trigger. What will it do
A. This user exit populates a lexical parameter that you specify with the
appropriate SQL fragment at run time. You include this lexical parameter in
the WHERE clause of the report query. This user exit is called once for each
lexical to be changed.

125. If u call the user exit FND FLEXSQL with MODE = ORDER BY from the
Before Report Trigger. What will it do
A. This user Exit populates the lexical parameter that one specifies with the
appropriate SQL fragment at run time. One includes this lexical parameter in

the ORDER BY clause of the report query. This user exit is called once for
each lexical to be changed.

126. How can we display flexfield segment values, descriptions, and prompts on
the report
A. Create a formula Column. Call the user exit FND FLEXIDVAL as the formula
for this column. This user exit automatically fetches more complicated
information such as descriptions and prompts so that one does not has to use
complicated table joins to the flex field tables.

127. Name some options of the FND FLEXSQL user exit


A CODE, APP_SHORT_NAME, OUTPUT, MODE, DISPLAY, SHOWDEPSEG, NUM or MULTINUM,
TABLEALIAS, OPERATOR, OPERAND1, OPERAND2.

128. Describe CODE option of the FND FLEXSQL user exit


A. Specify the flex field code for the report (for example, GL#, MCAT).

129. Describe the APP_SHORT_NAME option of the FND FLEXSQL user exit
A. Specifies the short name of the application that owns the flex field (for
example: SQLGL, INV)

130. Describe the OUTPUT option of the FND FLEXSQL user exit
A. Specify the name of the lexical parameter to store the SQl fragment. One
uses this lexical later in the report when defining the SQL statement that
selects the flexfield values. the datatype of this parameter should be
character.

131. Describe the MODE option of the FND FLEXSQL user exit

A. Specify the mode to use to generate the SQL fragment . valid mode are :
SELECT: Retrieves all segments values in an internal (non- displayable
format).
WHERE: Restrict the query by specifying constraints on flexfield columns. The
fragment returned includes the correct decode statement if one specifies
MULTINUM. One must also specify an OPERATOR and OPERANDS.
HAVING: Same calling procedures and functionality as WHERE.
ORDER BY: Order required information by flexfield columns. The fragment Orders
your flexfield columns and separates them with a comma. The fragment returned
includes the correct decode statement, one specifies in MULTINUM.

132. Describe the DISPLAY option of the FND FLEXSQL user exit
A. One uses the DISPLAY token with the MODE token . the DISPLAY parameter
allows you to specify segments that represent specified flexfield qualifiers
or specified segments numbers , 45
where the segment numbers are the order in that the segments appear in the
flexfield window, not the segment number specified in the Define Key Segments
form.
Eg. If your MODE is SELECT and you specify DISPLAY = ALL then the SELECT
statement includes all the segments of the flexfield. . Similarly, if your
MODE is WHERE and you specify DISPLAY = ALL, then your WHERE clause includes
all segments.

133. Describe the SHOWDEPSEG option of the FND FLEXSQL user exit
A. SHOWDEPSEG = N disables automatic addition of depended upon segments to
the order criteria. The default is Y. This token is valid only for MODE =
ODER BY In FLEXSQL.

134. Describe the NUM option of the FND FLEXSQL user exit
A. Specify the name or lexical or source column that contains the flexfield
structure information. If the flexfield uses just one structure, specify NUM

only and use a lexical parameter to hold the value. If the flexfield uses
multiple structures, specify MULTINUM only and use a source column to hold the
value. The default value is 101.

135. Describe the TABLE ALIAS option of the FND FLEXSQL user exit
A. You use TABLE ALIAS if your SELECT joins to other flexfield tables or uses
a self join.

136. Describe the OPERATOR option of the FND FLEXSQL user exit
A. Specify an operator to use in the WHERE clause.

137. Describe the OPERAND1 option of the FND FLEXSQL user exit
A. Specify an operand to use in the WHERE clause,

138. Describe the OPERAND2 option of the FND FLEXSQL user exit
A. Specify a second operand to use with OPERATOR = BETWEEN

139. Where is FND FLEXIDVAL user exit used


A. Call this user exit to populate fields for display. You pass
fields data retrieved by the query into this user exit from the
column. With this exit you can display values, descriptions and
passing appropriate token (any one of VALUE, DECRIPTION<APROMPT

140) Name the interface tables used for the customer interface
A. 1. RA_CUSTOMERS_INTERFACE_ALL
2. RA_CUSTOMER_BANKS_INT_ALL

the key flex


formula
prompts by
or LPROMPT).

3. RA_CUST_PAY_METHOD_INT_ALL
4. RA_CUSTOMER_PROFILES_INT_ALL
5. RA_CONTACT_PHONES_INT_ALL

141) What is the name of the column in CUSTOMER_INTERFACE_TABLE that indicates


whether you
are inserting new or updating existing information
A: When importing data into the interface tables, the column
INSERT_UPDATE_FLAG indicates whether you are inserting new or updating
existing information. This column is required in RA_CUSTOMERS_INTERFACE. 46

142) If the INSERT_UPDATE_FLAG is not set correctly or the required column is


missing the value, will CUSTOMER INTERFACE reject the entire record or just
the attributes u want to update
A Reject the entire record.

143) List some of the required columns for the RA_CUSTOMERS_INTERFACE


A. ORIG_SYSTEM_CUSTOMER_REF
INSERT_UPDATE_FLAG
CUSTOMER_NAME
CUSTOMER_NUMBER (if you are not using Automatic Customer Numbering)
CUSTOMER_STATUS
LAST_UPDATED_BY
LAST_UPDATE_DATE
CREATED_BY
CREATION_DATE

If you are importing an address and a business purpose, you must also populate
the following columns:
PRIMARY_SITE_USE_FLAG (if you are inserting an address)
LOCATION (if you are not using Automatic Site Numbering)
SITE_USE_CODE (if you are inserting an address)
ADDRESS1

144) List some of the production tables that Customer Interface transfers
customer data from the interface tables into
A. AR_CUSTOMER_PROFILES
AR_CUSTOMER_PROFILE_AMOUNTS
RA_ADDRESSES
RA_CONTACTS
RA_CUSTOMERS
RA_CUSTOMER_RELATIONSHIPS
RA_CUST_RECEIPT_METHODS
RA_PHONES
RA_SITE_USES
AP_BANK_ACCOUNT_USES
AP_BANK_ACCOUNTS
AP_BANK_BRANCHES

145). What validation must be given on the customer_number


A Must be null if you are using Automatic Customer Numbering. Must exist if

you are not using Automatic Customer Numbering. This value must be unique
within RA_CUSTOMERS.

146) What validation must be given on the CUSTOMER_STATUS

A Must equal 'A' for Active or I for Inactive.

147) Name some of the Oracle receivables Interfaces

A a) Auto Invoice
b) Auto Lockbox
c) Customer Interface 47
d) Sales Tax rate Interface
e) Tax Vendor Extension

148) Give some of the Oracle Payables interface

A. a) Credit Card Transaction Interface


b) Invoice Import Interface
c) Payables Open Interface
d) Purchase Order Matching

149). Name some of the oracle general ledger Interface

A a) Budget Upload
b) Importing Journals
c) Loading Daily rates

150). What are the names of the parameters u pass to the Procedure which u
register in the apps

A. 1) retcode in varchar2
2) errbuf in varchar2
151). What is the use of Auto lock Box
A Auto Lockbox (or Lockbox) is a service that commercial banks offer corporate
customers to enable them to outsource their accounts receivable payment
processing.

152). Auto Lockbox is a three-step process, what are those

A. a) Import
b) Validation
c) PostQuickCash

153). What is the order in which Autolock box searches for the types of the
matching number

A. 1. Transaction Number
2. Sales Order Number

3. Purchase Order Number


4. Consolidated Billing Invoice Number
5. Other, user-defined number.

154. What is application short name for General Ledger you specify in FND
FLEXSQL user exit
A. SQLGL

155) . What are validations to be done in Journal Import interface.

A. Batch level: Set of Books, Period Name, and Batch Name


Journal Level: Set of books, Period name, Source name, Journal entry name,
Currency code, Category name, Actual flag, Encumbrance type ID, User
conversion type, Accounting date, Budget version ID

156) What subclass in forms6i

A Specifies module, storage & name information about the source object and
source module for a referenced objects.

157) What is the clause in SQL

Loader to program to override data into table

A. REPLACE

158). How do you set profile in oracle applications In Application Developer


responsibility

A Open "Profile" Function

159). What is the syntax for loading data through SQL


files simultaneously

Loader from multiple

A. Sqlldr scott/tiger@orcl control = ctlfile


parfile -- parameter file: name of file that contains parameter specifications
parallel -- do parallel load (Default FALSE)

160) What is the table name for items in Oracle Inventory

A MTL_SYSTEM_ITEMS, MTL_CATEGORIES

161). Tell me names of important production tables & their purpose AP, AR, GL,
PO

A AP: AP_INVOICES_ALL, AP_INVOICE_LINES_ALL

To store invoices
AR: RA_SHIPMENT_HEADERS/ _LINES, RA_CUSTOMERS, RA_CONTACTS
PO: PO_VENDORS, PO_VENDOR_SITES - For storing vendor data.

162). Name the interface tables used for the LockBox Interface

A Interface table : AR_PAYMENTS_INTERFACE_ALL


Lockbox transfers the receipts that pass validation to the Receivables interim
tables AR_INTERIM_CASH_RECEIPTS_ALL and AR_INTERIM_CASH_RCPT_LINES_ALL

When you run Post QuickCash, the receipt data is transferred from the
QuickCash tables to the following Receipt tables:
AR_CASH_RECEIPTS_ALL
AR_RECEIVABLES_APPLICATIONS_ALL
AR_CASH_RECEIPT_HISTORY_ALL

163) Name the interface tables used for the Auto Invoice Interface.
A Auto Invoice transfers transaction data from the interface tables
RA_INTERFACE_LINES_ALL,
RA_INTERFACE_SALESCREDITS_ALL, and
RA_INTERFACE_DISTRIBUTIONS_ALL
into the following Receivables tables:
RA_BATCHES_ALL
RA_CUSTOMER_TRX _ALL
RA_CUSTOMER_TRX_LINES _ALL
RA_CUST_TRX_LINE_GL_DIST_ALL
RA_CUST_TRX_LINE_SALESREPS_ALL
AR_PAYMENT_SCHEDULES_ALL
AR_RECEIVABLE_APPLICATIONS_ALL 49
AR_ADJUSTMENTS_ALL

164). Different Type of Value Sets. What is exactly Translatable independent


and Translatable Dependent Value Sets (Introduced in latest version of 11i).

Ans:- There are 8 types of Values Sets.


a. None (Non Validate at all) (Validation is Minimal)
b. Independent (Input must exist on previous defined list of values)
c. Dependent (Input is checked against a subset of values based on prior
Value)
d. Table (Input is checked against a subset of values in an application table)
e. Special (advanced) (Value set uses a flexfield itself)
f. Pair (advanced) (Two Flexfields together specify a range of valid values)
g. Translatable Independent (Input must exist on previous defined list of
values. Translated value can be used)
h. Translatable Dependent. (Input is checked against a subset of values based
on a prior value; translated value can be used)
(Note:- When you first define your flexfields, you choose how many segments
You want to use and what order you want them to appear. You also
Choose how you want to validate each of your segments. The decisions
You make affect how you define your value sets and your values.)

165) How to run a concurrent program. What all concurrent programs u have
created.

Ans:- (Definition :- A concurrent program is an instance of an execution file,


along with
parameter definitions and incompatibilities. Concurrent programs use
concurrent program executables to locate the correct execution file.)
Oracle Tool Concurrent Program

A concurrent program written in

Oracle Reports, PL/SQL package procedures,

SQL Loader, SQL Plus, Host Scripting.


How to Run :

Write a execution file and place in correct directory.

Establish executables in Oracle apps specify execution file and method.


Define Concurrent Program (Program, Parameters and Incompatibilities)
Call your Program (- Thu application form, from other concurrent program.
- OR through standard request submission, you must check the USE in SRS check
box and register your program parameters when you define your concurrent
program. Add your program into the request security group for your custom
application.)
I have created reports through concurrent program, load(sql loader/pl-sql pkgproc) the file through concurrent program.

166) What is parameter in apps and from where u can create it.

Ans:- Parameters only using in report, you can create in defining the report
in
apps (you can create the parameter there only).

167)What all are the tables used in the modules u have worked on.
In GL I have worked on GL_JE_HEADERS(JOURNALS HEADER),GL_JE_LINES(JOURNAL
LINES), GL_JE_BACHES(JOURNAL BATCHES), GL_SET_OF_BOOK(SET_OF_BOOK_ID),
In PO- I have worked on PO_HEADER_ALL..

168)What is Profile

Explain different levels of Profile.

Ans:- A user profile is a set of changeable options that affects the way your
applications run. Oracle Application Object Library establishes a value
for each option in a users profile when the user logs on or changes 50
responsibility. Your user can change the value of profile options at any
time a) To create Profile Option. ( Profile Option can created by developer in
application developer area) b)set the value (Values of the profile option ,
who will have what value at various levels is set by SYSADMIN). Oracle
Application Object Library provides many options that. (Edit profile feature
for every user is available to set any value to allow the user).your users can
set to alter the user interface of your applications to satisfy their
individual preferences.
Profile Option set at run time like User Related, responsibility,
Sequence, Printer, Security.
Values in 4 Levels(HIEARCHY WISE) :A. USER
B. RESPONSIBILITY
C. APPLICATION
D. SITE
Application Developer create the profile.
System Administrator make profile option.
(NOTE:- If any change in value, it will active when you re-login or switch
to the responsibility.)
( Usage in the multi-tier, the profile is biggest impact)

169)How to restrict the data for a responsibility as per the ORG-ID


Ans:-Through Multi Org(MO) u can restrict the data for a responsibility as
per the ORG-ID. Only in GL- Set of book Id you set the value to restrict the
data for a responsibility.

170) What is Flexfield


qualifier

What is flexfield qualifier and what is segment

Ans:- A flexfield is made up a segments (Which are actually table columns).


Each segment has a name that can be assigned, and set of valid value.
Purpose and Application:Flexibility to implement code structure.
Flexibility to capture additional information.
Two Types of Flexfields in oracle apps.
1. Key Flexfields (KFF)
2. Descriptive Flexfields (DFF)
A key flexfield segment has a name you assign, and set of valid values you
specify. Each value has a meaning which can be specified.
Flexfield Qualifier:-A flexfield qualifier identifies a particular segment of
a key flexfield..
Usually an application needs some method of identifying a particular
segment for some application purpose such as security or computations.
However, since a key flexfield can be customized so that segments appear in
any order with any prompts, the application needs a mechanism other than the
segment name or segment order to
use for segment identification.
Segment Qualifier :- A segment qualifier identifies a particular type of value
in a single
segment of a key flexfield.
In the Oracle Applications, only the. Accounting Flexfield uses segment
qualifiers. You can think of a segment qualifier as an identification tag
for a value. In the Accounting Flexfield, segment qualifiers can identify the

account type

171) Which flexfield qualifiers are mandatory

Ans:- "Balancing Segment" flexfield qualifier is mandatory.

172) Difference Between versions of Apps.(Front end & Database)

Ans:- In backend- Client server architecture (old)/ Three tire architecture


In font end- Client Server Application (old)/ Web Based application

173)What is MULTI-ORG and what is structure of multi-org.

Ans:- Use a single installation of any oracle applications product to support


any number of organizations. if those organizations use different set of
books.
Support any number or legal entities with a single installation of oracle
applications.
Secure access to data so that users can access only the information that is
relevant to them.
Structure :- Business Unit
-HRMS(Employee)
-GL(Set of Books)(Currency, Calendar, Chart of Account)
|
Balancing Segment(You can do multiple balancing segment)

-Operating Units (Purchase, Selling, Fixed Asset, Payable,


Receivables)
-Inventory Organizations (Storing Items, Transaction Happening,
Ware Housing)
(Note:- Means if you maintaining GL(set of book id), If u have operating unit,
if you
have inventory then its called MULTI-ORG)

174)What is difference between ORG_ID and ORGANIZATION_ID in Multi-Org.


At where we can set ORG_ID and ORGANIZATION_ID level it comes in the
structure.

Ans:-A Global Variable exists in the oracle database called CLIENT_INFO, which
is 64 bytes long. The first 10 bytes are used to store the operating unit
ID(or ORG_ID) for the multiple organization support feature.
Multi-Org views are partitioned by ORG_ID. The ORG_ID value is stored in
CLIENT_INFO variable.(It comes in AP,PO,AR,OM level)
ORGANIZATION_ID Its for Inventory, Mfg, & BOM.

175)ORG_ID can be set at master levels or transaction level.

Ans:- ORG_ID can be set at transaction Level.

176)Differnet type of execution methods in Conc.Progs. Explain Each Type.

Ans:- a.Oracle Reports- You can register your report as executable file type
is oracle reports.
b. PL/SQL Package Procedure - You can register your PL/SQL Package Procedure
as executable file type is oracle PL/SQL Package Procedure.
1. SQL Loader- You can register your SQL Loader SQL Loader is your executable
file type.(for data loading)
2. SQL Plus :- You can register your SQL script as SQL Plus executable type.
3. Host Scripting:- You can write down Unix Host scripting and register here.

177) What is difference between oracle schema and apps schema.

Ans:-Database SchemaThe APPS schema- is an ORACLE schema that has access to the
complete Oracle Applications data model. This schema is maintained
by Auto Install .

178)What are the objects APPS schema contain. 52

Ans:- The APPS schema contains synonyms to all tables and


sequences as well as all serverside code (stored procedures, views,
and database triggers).
For ERP applications, data partitioning is performed by database
views. These views reside in the APPS Oracle schema and derive the
appropriate operating unit context from an RDBMS variable.

179)When will a New version of flint60 be released


flint60 is a developer/development tool. Since flint60 can change at any time,
the most current flint60 will always obsolete all prior releases. In other
words, the development standards implemented in the most current flint60 are
the standards to which everyone using flint60 must adhere.
1. How do I register a custom concurrent program
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, a C program, a shell script etc. 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

180)How do I compile a custom C program


Spawned programs:

Step 1: Write the code Self-explanatory


Step 2: Compile the source You must use the makefile under $FND_TOP/usrxit
Use: make -f $FND_TOP/usrxit/Makefile program.o We do not support using any
other makefile
Step 3: Link the program This part is a little tricky. You need to create a
custom makefile for this step. Use $FND_TOP/lib/sample.mk as a starting point.
Copy this file to the lib directory under your applications top directory.
Rename it <short name>.mk (ie fnd.mk, gl.mk etc) Modify this file according to
the directions in it. Basically you need to 53
add a target and build commands for your executable. Next, use adrelink to
link the executable: adrelink force=y ranlib=y 'shortname programname'
Step 4: Register the program as in the above question
Immediate programs: Just don't do it.

181)How do I run a shell script as a concurrent program


1: Write the script and call it <name>.prog Place the script under the bin
directory under your applications top directory. For example, call the script
CUSTOM.prog and place it under $CUSTOM_TOP/bin
bin
2: Make a symbolic link from your script to $FND_TOP/bin/fndcpesr For example,
if the script is called CUSTOM.prog use this: ln -s $FND_TOP/bin/fndcpesr
CUSTOM This link should be named the same as your script without the .prog
extension It should be in the same directory as the script.
3: Register a concurrent program as described above, using an execution method
of 'Host' Use the name of your script without the .prog extension as the name
of the executable For the example above, you would use CUSTOM CUSTOM
4: Your script will be passed at least 4 parameters, in $1 through $4 These
will be: orauser/pwd, userid, username, request_id Any other parameters you
define will be passed in $5 and higher. Make sure your script returns an exit
status.
define will be passed in $5 and higher. Make sure your script returns an exit

status.
5: If your script returns a failure exit status but the concurrent manager
does not report the error (shows it as still running normal) apply patch
442824

182)How will u register RDF file and run it

Tell the Sequence

Steps a. Save the copy of ur reports in rdf file in ur local directory.


b. Transfer or copy the rdf file to cus_top under reports directory through
ftp.
C. Then go concurrent program under executable menu where u define executable
file and program name
d. Then go to define the program name (which ur executable file name ) and
check the srs box and define the parameter and give the parameter name in
token
e. Attach the program(request to ur responsibility )
d run the program and view the out put is srs through ur responsibility
What are different types of value sets

183)What is translatable Independent & Dependent


The value set used to support the multilingual value set.

185))How do I submit a concurrent request from PL/SQL

ans : using fnd_request.submit_request .


begin

v_request_id := fnd_request.submit_request(applicationshortname,
concurrentprogramshortname,
description,
paramers)
end
commit;
if v_request_id > 0 then
dbms_output.put_line('Successfully submitted')
else
dbms_output.put_line('Not Submitted');
end;
note : to submit a conc program from UNIX/shell scrip we use CONSUB

186) How do I cancel a running concurrent request


Navigate to the Concurrent Request Summary form Select a request The Sysadmin
responsibility can cancel or hold any running request

187) What is the difference between organization id and org_id


Organization_id stores inventory organization id ( like 204 for M1)
Org_id stores the OU id corresponding to a operating unit .

188) What is the difference between conversion and interfaces

conversion means one time activity interface means periodic activity


example:- to transfer the data old version to new version it is called
conversionto transfer the data from staging table to interface table it is
called interface , it is process on every day or every hour ........

189) What are the different types of value sets and also explain each briefly
Different types of Value sets are,
1) Independent- This Value set contains list of values which does not depends
on any other value
2) Dependant- It contains values which depends on any one of the Independant
value
3) Pair- combines 2 flex field together to specify range of valid values
4) Special- Uses only 1 flex field structure to specify values
5) Table- This Value set contains list of values from 1 or more than 1 table
columns
6) Translatable Dependant- Same as Dependant value set, only translated values
are present
7) Translatable Independant- Same as Independant value set, only translated
values are present

190) How do you register a table and columns in Oracle Apps>


To register the table and columns in AOL the navigation is: Open Appliaction
Developer---> Appliaction--->Database--->table.(In table mention the table
name(which you want to register), user table name,columns,user column name).
The table & columns which you are going to register should be present in your
module specific schema

195) What can we find TEMPLATE.FMB file


$AU_TOP/forms/US
Template.fmb file can be found in AU_TOP resource directory. This file
contains all the Common characterstics all the forms. And also Contains
Diffrent libraries. like CUSTOM.pll,APPCORE,APPCOREE2,FNDSQF,
JE,JL,JA,VERT,GLOBE etc.. And Template.fmb cotains Diffrent propery classes
for all the objects. This Template.fmb can be used for developing the new form
55

196) What are the libraries attached to TEMPLATE form


The Template form required 19 .pll in 11i version. Those pll names are :
APPCORE.pll APPCORE2.pll FNDSQF.pll APPDAYPK.pll GLOBE.pll JE.pll JL.pll
JA.pll VERT.pll GHR.pll PQH_GEN.pll PSAC.pll PSB.pll PSA.pll IGILUTIL.pll
IGILUTIL2.pll CUSTOM.pll GMS.pll FV.pll OPM.pll

197)What is Concurrent Programming


Concurrent Processing in Oracle Apps simultaneously executes programs running
in the Background with on line operations to fully utilize your hardware
capacity.
Use Concurrent Programming for
Long Running Data intensive tasks such as Posting a Journal or generating a
report.

198)What is the Role of Concurrent Managers

A Concurrent Manager is a component of Concurrent processing that monitors and


runs tasks without tying up your computer.

199)What is AOL
Oracle Applications are constructed and maintained using the Application
Object Library (AOL).
The Three main areas of AOL are
o Applications Security
o Operating Profile
o Concurrent Processing
1. What is the Flex field

What are the types of Flex field

o Flex Field is Flexible Field


o A Flexfield is made up of Segments.
o Each segment has a name that can be assigned and has set of valid values.
o There are two types of Flex field Key Flex Field and Descriptive Flex
Fields.

1. What are the tables related to flex field


o FND_FLEX_VALUES
o FND_FLEX_VALUE_SETS
o FND_FLEX_VALUES_TL
1. What is AD_DD package
AD_DD Package is used to register the Table, Columns, and Primary Key in
Oracle Applications.
PROCEDURE REGISTER_TABLE
Arguments:

o P_APPL_SHORT_NAME
o P_TAB_NAME
o P_TAB_TYPE
o P_NEXT_EXTENT
o P_PCT_FREE
o P_PCT_USED
PROCEDURE REGISTER_COLUMN
Arguments
P_APPL_SHORT_NAME
P_TAB_NAME
P_COL_NAME
P_COL_SEQ
P_COL_TYPE
P_COL_WIDTH
P_NULLABLE
P_TRANSLATE
P_PRECISION
P_SCALE

***********************************************************...................
................***********************************************************

224) What is parameter in apps and from where u can create it. Ans:Parameters only using in report, you can create in defining the report in
apps (you can create the parameter there only).

225)What all are the tables used in the modules u have worked on. In GL I
have worked on GL_JE_HEADERS(JOURNALS HEADER),GL_JE_LINES(JOURNAL LINES),
GL_JE_BACHES(JOURNAL BATCHES), GL_SET_OF_BOOK(SET_OF_BOOK_ID),
In PO- I have worked on PO_HEADER_ALL..

226)What is Profile Explain different levels of Profile. Ans:- A user


profile is a set of changeable options that affects the way your
applications run. Oracle Application Object Library establishes a value
for each option in a users profile when the user logs on or changes
responsibility. Your user can change the value of profile options at any
time a) To create Profile Option. ( Profile Option can created by developer in
application developer area) b)set the value (Values of the profile option ,
who will have what value at various levels is set by SYSADMIN). Oracle
Application Object Library provides many options that. (Edit profile feature
for every user is available to set any value to allow the user).your users can
set to alter the user interface of your applications to satisfy their
individual preferences. Profile Option set at run time like User Related,
responsibility, Sequence, Printer, Security.
61 Values in 4 Levels(HIEARCHY WISE) :- E. USER
F. RESPONSIBILITY
G. APPLICATION
H. SITE
Application Developer create the profile. System Administrator make profile
option. (NOTE:- If any change in value, it will active when you re-login or
switch to the responsibility.)
( Usage in the multi-tier, the profile is biggest impact)

227)How to restrict the data for a responsibility as per the ORG-ID Ans:Through Multi Org(MO) u can restrict the data for a responsibility as per
the ORG-ID. Only in GL- Set of book Id you set the value to restrict the data
for a responsibility.

228) is Flexfield

What is flexfield qualifier and what is segment qualifier

Ans:- A flexfield is made up a segments (Which are actually table columns).


Each segment has a name that can be assigned, and set of valid value.
Purpose and Application:Flexibility to implement code structure.
Flexibility to capture additional information.
Two Types of Flexfields in oracle apps.
1. Key Flexfields (KFF)
2. Descriptive Flexfields (DFF)
A key flexfield segment has a name you assign, and set of valid values you
specify. Each value has a meaning which can be specified. Flexfield
Qualifier:-A flexfield qualifier identifies a particular segment of a key
flexfield.. Usually an application needs some method of identifying a
particular
segment for some application purpose such as security or computations.
However, since a key flexfield can be customized so that segments appear in
any order with any prompts, the application needs a mechanism other than the
segment name or segment order to
use for segment identification.
Segment Qualifier :- A segment qualifier identifies a particular type of value
in a single segment of a key flexfield.
In the Oracle Applications, only the. Accounting Flexfield uses segment
qualifiers. You can think of a segment qualifier as an identification tag for
a value. In the Accounting Flexfield, segment qualifiers can identify the
account type

229)Which flexfield qualifiers are mandatory


field qualifier is mandatory.

Ans:- Balancing Segment flex

230)Difference Between versions of Apps.(Front end & Database) Ans:- In


backend- Client server architecture (old)/ Three tire architecture
In font end- Client Server Application (old)/ Web Based application

231)What is MULTI-ORG and what is structure of multi-org. Ans:- Use a single


installation of any oracle applications product to support any number of
organizations. if those organizations use different set of books.

Support any number or legal entities with a single installation of oracle


applications. 62 Secure access to data so that users can access only the
information that is relevant to them. Structure :- Business Unit
-HRMS(Employee)
-GL(Set of Books)(Currency, Calendar, Chart of Account)
|
Balancing Segment(You can do multiple balancing segment)
-Operating Units (Purchase, Selling, Fixed Asset, Payable,
Receivables)
-Inventory Organizations (Storing Items, Transaction Happening,
Ware Housing)
(Note:- Means if you maintaining GL(set of book id), If u have operating unit,
if you
have inventory then its called MULTI-ORG)

232)What is difference between ORG_ID and ORGANIZATION_ID in Multi-Org.


At where we can set ORG_ID and ORGANIZATION_ID level it comes in the
structure. Ans:-A Global Variable exists in the oracle database called
CLIENT_INFO, which is 64 bytes long. The first 10 bytes are used to store the
operating unit ID(or ORG_ID) for the multiple organization support feature.
Multi-Org views are partitioned by ORG_ID. The ORG_ID value is stored in
CLIENT_INFO variable.(It comes in AP,PO,AR,OM level)
ORGANIZATION_ID Its for Inventory, Mfg, & BOM.

233)ORG_ID can be set at master levels or transaction level. Ans:- ORG_ID can
be set at transaction Level.

234)Differnet type of execution methods in Conc.Progs. Explain Each Type.


Ans:- a.Oracle Reports- You can register your report as executable file type
is oracle reports.

b. PL/SQL Package Procedure - You can register your PL/SQL Package Procedure
as executable file type is oracle PL/SQL Package Procedure.
1. SQL Loader- You can register your SQL Loader SQL Loader is your executable
file type.(for data loading)
2. SQL Plus :- You can register your SQL script as SQL Plus executable type.
3. Host Scripting:- You can write down Unix Host scripting and register here.

235)What is difference between oracle schema and apps schema. Ans:-Database


SchemaThe APPS schema- is an ORACLE schema that has access to the
complete Oracle Applications data model. This schema is maintained
by AutoInstall.

236) What are the objects APPS schema contain. Ans:- The APPS schema contains
synonyms to all tables and
sequences as well as all serverside code (stored procedures, views,
and database triggers).
For ERP applications, data partitioning is performed by database
views. These views reside in the APPS Oracle schema and derive the 63
appropriate operating unit context from an RDBMS variable.

237)What are the names of the parameters u pass to the Procedure which u
register in the apps B. 1) retcode in varchar2
2) errbuf in varchar2

238) What is application short name for General Ledger you specify in FND
FLEXSQL user exit A. SQLGL

239)How do you set profile in oracle applications In Application Developer


responsibility A Open "Profile" Function

240) What is the syntax for loading data through SQL


Loader from multiple
files simultaneously A. Sqlldr scott/tiger@orcl control = ctlfile
parfile -- parameter file: name of file that contains parameter specifications
parallel -- do parallel load (Default FALSE)

241)Give the relation between categories and items table. MTL_SYSTEM_ITEMS


MTL_CATEGORIES_B
Relation INVENTORY_ITEM_ID

242)In which tables are the categories of an item stored. MTL_CATEGORIES_B


MTL_ITEM_CATEGORIES

243)Significance of ALL in apps tables. Tables which are related with Multiorg
is suffixed with ALL.

244)Explain about flexfield in GL.In what way it is useful A KFF is a set of


segments, each segment will identify a unique characterstic of an entity. it
can be termed as intelligent key. we can define our business requirements
without doing any programming.
A DFF is a set of segments which can be used to capture extra info. without
any customisation.

245)Execution methods
Ans. a. Host b. Immediate
c. Java Stored Procedure
d. Java Concurrent Program
e. Multi Language Function
f. Oracle Reports

64 g. PL/SQL Stored Procedure


h. Request Set Stage Function
i. Spawned
j. SQL Loader
k. SQL Plus

246) What is TCA (Trading Community Architecture)


Ans. Oracle Trading Community Architecture (TCA) is a data model that allows
you to manage complex information about the parties, or customers, who belong
to your commercial community, including organizations, locations, and the
network of hierarchical relationships among them. This information is
maintained in the TCA Registry, which is the single source of trading
community information for Oracle E-Business Suite applications.

247) Difference between Application Developer and System Administrator


of Technical Consultant:
1. Designing New Forms, Programs and Reports
2. Forms and Reports customization
3. Developing Interfaces
4. Developing PL/SQL stored procedures
5. Workflow automations
Role of System Administrator:
1. Define Logon Users
2. Define New/Custom Responsibility
3. Define Data Groups
4. Define Concurrent Managers
5. Define Printers
6. Test Network Preferences
7. Define/Add new Modules

Role

Role of an Apps DBA:


1. Installing of Application
2. Upgradation
3. Migration
4. Patches
5. Routing maintenance of QA
6. Cloning of OA

248)What are Flexfields


Ans. A Flexfield is a customizable field that opens in a window from a regular
Oracle Applications window. Defining flexfields enables you to tailor Oracle
Applications to your own business needs. By using flexfields, you can: (a)
Structure certain identifiers required by oracle applications according to
your own business environment.
(b) Collect and display additional information for your business as needed.
Key Flexfields: You use key flexfields to define your own structure for many
of the identifiers required by Oracle Applications. Profile Flexfields:Open
Key Window (FND_ID_FLEXS)
Descriptive Flexfield: You use descriptive flexfields to gather additional
information about your business entities beyong the information required by
Oracle Applications. Profile Flexfields: Open Descr Window
(FND_DESCRIPTIVE_FLEXS) 249) Request Set and where do you define it
Ans. Request sets allow you to submit multiple requests together using
multiple execution path. A request set is a collection of reports and /or
programs that are grouped together. A stage is a component of a request set
used to group requests within the set. All of the requests in a given stage
are executed in parallel. Advantages of stages are the ability to execute
several requests in parallel and then move sequentially to the next stage.
Responsibility: System Administrator
Nav: Concurrent -> Set

249) Which flexfield qualifiers are mandatory

Ans:- Balancing Segment flexfield qualifier is mandatory.

250) Difference Between versions of Apps.(Front end & Database)

Ans:- In backend- Client server architecture (old)/ Three tire architecture


In font end- Client Server Application (old)/ Web Based application

173)What is MULTI-ORG and what is structure of multi-org.

Ans:- Use a single installation of any oracle applications product to support


any number of organizations. if those organizations use different set of
books.
Support any number or legal entities with a single installation of oracle
applications.
Secure access to data so that users can access only the information that is
relevant to them.
Structure :- Business Unit
-HRMS(Employee)
-GL(Set of Books)(Currency, Calendar, Chart of Account)
|
Balancing Segment(You can do multiple balancing segment)
-Operating Units (Purchase, Selling, Fixed Asset, Payable,
Receivables)
-Inventory Organizations (Storing Items, Transaction Happening,
Ware Housing)
(Note:- Means if you maintaining GL(set of book id), If u have operating unit,
if you
have inventory then its called MULTI-ORG)

174)What is difference between ORG_ID and ORGANIZATION_ID in Multi-Org.


At where we can set ORG_ID and ORGANIZATION_ID level it comes in the
structure.

Ans:-A Global Variable exists in the oracle database called CLIENT_INFO, which
is 64 bytes long. The first 10 bytes are used to store the operating unit
ID(or ORG_ID) for the multiple organization support feature.
Multi-Org views are partitioned by ORG_ID. The ORG_ID value is stored in
CLIENT_INFO variable.(It comes in AP,PO,AR,OM level)
ORGANIZATION_ID Its for Inventory, Mfg, & BOM.

15.Q.What are the default types of parameters. What is the use of each one of
it.
Ans:-

175)ORG_ID can be set at master levels or transaction level.

Ans:- ORG_ID can be set at transaction Level.

176)Differnet type of execution methods in Conc.Progs. Explain Each Type.

Ans:- a.Oracle Reports- You can register your report as executable file type
is oracle reports.
b. PL/SQL Package Procedure - You can register your PL/SQL Package Procedure
as executable file type is oracle PL/SQL Package Procedure.
1. SQL Loader- You can register your SQL Loader SQL Loader is your executable
file type.(for data loading)
2. SQL Plus :- You can register your SQL script as SQL Plus executable type.
3. Host Scripting:- You can write down Unix Host scripting and register here.

177) What is difference between oracle schema and apps schema.

Ans:-Database SchemaThe APPS schema- is an ORACLE schema that has access to the
complete Oracle Applications data model. This schema is maintained
by Auto Install .

178)What are the objects APPS schema contain. 52

Ans:- The APPS schema contains synonyms to all tables and


sequences as well as all serverside code (stored procedures, views,
and database triggers).
For ERP applications, data partitioning is performed by database
views. These views reside in the APPS Oracle schema and derive the
appropriate operating unit context from an RDBMS variable.

179)When will a New version of flint60 be released


flint60 is a developer/development tool. Since flint60 can change at any time,
the most current flint60 will always obsolete all prior releases. In other
words, the development standards implemented in the most current flint60 are
the standards to which everyone using flint60 must adhere.
1. How do I register a custom concurrent program
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, a C program, a shell script etc. 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 applications 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

180)How do I compile a custom C program


Spawned programs:
Step 1: Write the code Self-explanatory
Step 2: Compile the source You must use the makefile under $FND_TOP/usrxit
Use: make -f $FND_TOP/usrxit/Makefile program.o We do not support using any
other makefile
Step 3: Link the program This part is a little tricky. You need to create a
custom makefile for this step. Use $FND_TOP/lib/sample.mk as a starting point.
Copy this file to the lib directory under your applications top directory.
Rename it <short name>.mk (ie fnd.mk, gl.mk etc) Modify this file according to
the directions in it. Basically you need to 53
add a target and build commands for your executable. Next, use adrelink to
link the executable: adrelink force=y ranlib=y shortname programname
Step 4: Register the program as in the above question
Immediate programs: Just dont do it.

181)How do I run a shell script as a concurrent program


1: Write the script and call it <name>.prog Place the script under the bin
directory under your applications top directory. For example, call the script
CUSTOM.prog and place it under $CUSTOM_TOP/bin
bin
2: Make a symbolic link from your script to $FND_TOP/bin/fndcpesr For example,
if the script is called CUSTOM.prog use this: ln -s $FND_TOP/bin/fndcpesr
CUSTOM This link should be named the same as your script without the .prog
extension It should be in the same directory as the script.
3: Register a concurrent program as described above, using an execution method
of Host Use the name of your script without the .prog extension as the name of
the executable For the example above, you would use CUSTOM CUSTOM
4: Your script will be passed at least 4 parameters, in $1 through $4 These
will be: orauser/pwd, userid, username, request_id Any other parameters you
define will be passed in $5 and higher. Make sure your script returns an exit
status.
define will be passed in $5 and higher. Make sure your script returns an exit
status.

5: If your script returns a failure exit status but the concurrent manager
does not report the error (shows it as still running normal) apply patch
442824

182)How will u register RDF file and run it

Tell the Sequence

Steps a. Save the copy of ur reports in rdf file in ur local directory.


b. Transfer or copy the rdf file to cus_top under reports directory through
ftp.
C. Then go concurrent program under executable menu where u define executable
file and program name
d. Then go to define the program name (which ur executable file name ) and
check the srs box and define the parameter and give the parameter name in
token
e. Attach the program(request to ur responsibility )
d run the program and view the out put is srs through ur responsibility
What are different types of value sets
183)What is translatable Independent & Dependent
The value set used to support the multilingual value set.

185))How do I submit a concurrent request from PL/SQL

ans : using fnd_request.submit_request .


begin
v_request_id := fnd_request.submit_request(applicationshortname,
concurrentprogramshortname,
description,
paramers)
end 54
commit;
if v_request_id > 0 then

dbms_output.put_line('Successfully submitted')
else
dbms_output.put_line('Not Submitted');
end;
note : to submit a conc program from UNIX/shell scrip we use CONSUB

186) How do I cancel a running concurrent request


Navigate to the Concurrent Request Summary form Select a request The Sysadmin
responsibility can cancel or hold any running request

187) What is the difference between organization id and org_id


Organization_id stores inventory organization id ( like 204 for M1)
Org_id stores the OU id corresponding to a operating unit .
188) What is the difference between conversion and interfaces
conversion means one time activity interface means periodic activity
example:- to transfer the data old version to new version it is called
conversionto transfer the data from staging table to interface table it is
called interface , it is process on every day or every hour ........

189) What are the different types of value sets and also explain each briefly
Different types of Value sets are,
1) Independent- This Value set contains list of values which does not depends
on any other value
2) Dependant- It contains values which depends on any one of the Independant
value
3) Pair- combines 2 flex field together to specify range of valid values
4) Special- Uses only 1 flex field structure to specify values
5) Table- This Value set contains list of values from 1 or more than 1 table
columns
6) Translatable Dependant- Same as Dependant value set, only translated values
are present

7) Translatable Independant- Same as Independant value set, only translated


values are present

190) How do you register a table and columns in Oracle Apps>


To register the table and columns in AOL the navigation is: Open Appliaction
Developer---> Appliaction--->Database--->table.(In table mention the table
name(which you want to register), user table name,columns,user column name).
The table & columns which you are going to register should be present in your
module specific schema

195) What can we find TEMPLATE.FMB file


$AU_TOP/forms/US
Template.fmb file can be found in AU_TOP resource directory. This file
contains all the Common characterstics all the forms. And also Contains
Diffrent libraries. like CUSTOM.pll,APPCORE,APPCOREE2,FNDSQF,
JE,JL,JA,VERT,GLOBE etc.. And Template.fmb cotains Diffrent propery classes
for all the objects. This Template.fmb can be used for developing the new form
55

196) What are the libraries attached to TEMPLATE form


The Template form required 19 .pll in 11i version. Those pll names are :
APPCORE.pll APPCORE2.pll FNDSQF.pll APPDAYPK.pll GLOBE.pll JE.pll JL.pll
JA.pll VERT.pll GHR.pll PQH_GEN.pll PSAC.pll PSB.pll PSA.pll IGILUTIL.pll
IGILUTIL2.pll CUSTOM.pll GMS.pll FV.pll OPM.pll

197)What is Concurrent Programming


Concurrent Processing in Oracle Apps simultaneously executes programs running
in the Background with on line operations to fully utilize your hardware
capacity.
Use Concurrent Programming for
Long Running Data intensive tasks such as Posting a Journal or generating a
report.

198)What is the Role of Concurrent Managers

A Concurrent Manager is a component of Concurrent processing that monitors and


runs tasks without tying up your computer.

199)What is AOL
Oracle Applications are constructed and maintained using the Application
Object Library (AOL).
The Three main areas of AOL are
o Applications Security
o Operating Profile
o Concurrent Processing
1. What is the Flex field

What are the types of Flex field

o Flex Field is Flexible Field


o A Flexfield is made up of Segments.
o Each segment has a name that can be assigned and has set of valid values.
o There are two types of Flex field Key Flex Field and Descriptive Flex
Fields.
56
1. What are the tables related to flex field
o FND_FLEX_VALUES
o FND_FLEX_VALUE_SETS
o FND_FLEX_VALUES_TL
1. What is AD_DD package
AD_DD Package is used to register the Table, Columns, and Primary Key in
Oracle Applications.
PROCEDURE REGISTER_TABLE
Arguments:
o P_APPL_SHORT_NAME
o P_TAB_NAME
o P_TAB_TYPE

o P_NEXT_EXTENT
o P_PCT_FREE
o P_PCT_USED
PROCEDURE REGISTER_COLUMN
Arguments
P_APPL_SHORT_NAME
P_TAB_NAME
P_COL_NAME
P_COL_SEQ
P_COL_TYPE
P_COL_WIDTH
P_NULLABLE
P_TRANSLATE
P_PRECISION
P_SCALE
1. What are the Special and Pair Flex Field
Special Value Sets uses FlexField itself
Pair Two Flex Fields together specifies a range of valid values.
1. What are the Translatable Dependent and Independent Flex Fields
Translatable Independent Input must exist on previously defined set List of
Values. Translated value can be used. 57
Translatable Dependent means Input is checked against a subset of values
Based on a prior value. Translated value can be used.
1. What is FND_REQUEST.SUBMIT_REQUEST
Submits a Concurrent Request for Processing by a Concurrent Manager.
Arguments Application,program,description,start_time,sub_request,arg1..

1. What is Client Info


By calling this Program in SQL PLUS or reports with correct parameters user
can achieve concurrent program environment for testing.
FND_CLIENT_INFO.setup_client_info(application_id Number,
Responsibility_id Number,
User_id Number,
Security_Group_id Number);

Which is the most commonly used package in apps that uses Autonomous Transaction?
FND_LOG, this is used for debugging. This has a procedure named string, which does a
commit.
Hence your debug messages are not lost in the event of rollback during unhandled exception.

What is one of the limitations of Forms Personalization?


You can not display interactive messages as you can using fnd_message

How to use Flexfields in reports ?


Ans : Most common way is to use FND user exits provided by oracle applications.
Other way is to directly use the DB views (TableName || _KFV or _DFV) created by apps, and
use the concatenated_segments column which holds the concatenated segments of the key or
descriptive flexfields.

What are Autonomous transactions ? Give a scenario where you have used Autonomous
transaction in your reports ?
Ans: An autonomous transaction is an independent transaction started by another transaction,
the main transaction. Autonomous transactions let you suspend the main transaction, do SQL
operations, commit or roll back those operations, then resume the main transaction.

Once started, an autonomous transaction is fully independent. It shares no locks, resources, or


commit-dependencies with the main transaction. So, you can log events, increment retry
counters, and so on, even if the main transaction rolls back.
More important, autonomous transactions help you build modular, reusable software
components. For example, stored procedures can start and finish autonomous transactions on
their own. A calling application need not know about a procedure's autonomous operations, and
the procedure need not know about the application's transaction context. That makes
autonomous transactions less error-prone than regular transactions and easier to use.
Furthermore, autonomous transactions have all the functionality of regular transactions. They
allow parallel queries, distributed processing, and all the transaction control statements
including SET TRANSACTION.
Scenario : You can use autonomous transaction in your report for writing error messages in
your database tables.

What is record group ?


Ans: Record group are used with LOVs to hold sql query for your list of values. The record
group can contain static data as well it can access data from database tables thru sql queries.

What is a FlexField ? What are Descriptive and Key Flexfields ?


Ans: An Oracle Applications field made up of segments. Each segment has an assigned name
and a set of valid values. Oracle Applications uses flexfields to capture information about your
organization.

What are different report triggers and what is their firing sequence ?

Ans. : There are five report trigger :

Before Report

After Report

Before Parameter Form

After Parameter Form

Between Pages

The Firing sequence for report triggers is


Before Parameter Form After Parameter Form Before Report Between Pages
After Report.

What is the use of cursors in PL/SQL ? What is REF Cursor ?


Ans. : The cursor are used to handle multiple row query in PL/SQL. Oracle uses implicit cursors
to handle all its queries. Oracle uses unnamed memory spaces to store data used in implicit
cursors, with REF cursors you can define a cursor variable which will point to that memory
space and can be used like pointers in our 3GLs.

How to attach reports in Oracle Applications ?


Ans: The steps are as follows :

Design your report in D2K

Generate the executable file of the report as .rdf.

Move the executable as well as source file to the appropriate products folder.

Register the report as concurrent executable.

Define the concurrent program for the executable registered.

Add the concurrent program to the request group of the responsibility.

What is the use of triggers in Forms ?

Ans : Triggers are used in forms for event handling. You can write PL/SQL code in triggers to
respond to a particular event occurred in your forms like when user presses a button or when he
commits the form.
The different type of triggers available in forms are :

Key-triggers

Navigational-triggers

Transaction-triggers

Message-triggers

Error-triggers

Query based-triggers

What is the use of Temp tables in Interface programs ?


Ans : Temporary tables are used in Interface programs to hold the intermediate data. The data
is loaded into temporary tables first and then, after validating through the PL/SQL programs, the
data is loaded into the interface tables.

What are the steps to register concurrent programs in Apps ?


Ans : The steps to register concurrent programs in apps are as follows :

Register the program as concurrent executable.

Define the concurrent program for the executable registered.

Add the concurrent program to the request group of the responsibility

How to pass parameters to a report ? do you have to register them with AOL ?
Ans: You can define parameters in the define concurrent program form. There is no need to
register the parameters with AOL. But you may have to register the value sets for those
parameters.

Do you have to register feeder programs of interface to AOL ?


Ans : Yes ! you have to register the feeder programs as concurrent programs to Apps.

What are forms customization steps ?


Ans: The steps are as follows :

Copy the template.fmb and Appstand.fmb from AU_TOP/forms/us.Put it in custom directory.


The libraries (FNDSQF, APPCORE, APPDAYPK, GLOBE, CUSTOM, JE, JA, JL, VERT) are
automatically attached .

CREATE OR OPEN NEW FORMS. THEN CUSTOMIZE.

Save this Form in Corresponding Modules.

What is Key and Descriptive Flexfield.


Ans : Key Flexfield: #unique identifier, storing key information
# Used for entering and displaying key information.
For example Oracle General uses a key Flexfield called Accounting
Flexfield to uniquely identifies a general account.
Descriptive Flexfield: # To Capture additional information.
# to provide expansion space on your form
With the help of [] . [] Represents descriptive
Flexfield.
Difference between Key and Descriptive Flexfield?
Ans :

KEY FLEXFIELD

DESCRIPTIVE FLEFIELD

1. Unique Identifier

1.To capture extra information

2. Key Flexfield are stored in segment

2.Stored in attributes

3.For key flexfield there are flexfield

3. Context-sensitive flexfield is a feature

Qualifier and segment Qualifier

of DFF. (descriptive flexfield)

What are the steps in Customer Interface ?


Ans:
How to handle errors in Customer interface ?
Ans:
What was your role in Customer Interface?
Ans:
What is the use of CUSTOM Library in Oracle Apps?
Ans:
Can you call APPCORE library in CUSTOM library ?
Ans : you cannot attach the APPCORE library to CUSTOM because it would cause a recursion
problem
(because CUSTOM is attached to APPCORE). As of Oracle Applications Release 11i,
you may
attach the APPCORE2 library to CUSTOM. The APPCORE2 library duplicates most
APPCORE
routines with the following packages:

APP_ITEM_PROPERTY2

APP_DATE2

APP_SPECIAL2

These packages contain the same routines as the corresponding


APPCORE packages. Follow the documentation for the corresponding
APPCORE routines, but add a 2 to the package names.
Can you use REF cursors in CUSTOM library?
Ans:

What is FlexField?

Ans: Oracle Application uses Flexfield to capture information about


Your organization. Flexfield have flexible structure for storing key information.
Like Company, Cost Center, and Account. They also give u highly adaptable
Structure for storing customized information in oracle Applications.

How many Flexfields are there in AR and what are they ?


Ans:

What are User Exits and what are different types of User Exits in Oracle Apps ?
Ans:

What is MRC and what are its use?


Ans: The Multi Reporting Currency Feature allows you to report and maintain records at the
transaction level in more than one functional currency. You can do by defining one or more set of
books in addition to primary set of books.

How many reporting currencies can be attached to Primary Set Of Books ?


Ans:
What are the new features in Release 11I ?
Ans:

What are ad-hoc reports ?


Ans: Ad-hoc Report is made to meet one-time reporting needs. Concerned with or formed for a
particular purpose. For example, ad hoc tax codes or an ad hoc database query

What is FSG and what is its use ?


Ans: FSG is a powerful and flexible tool you can use to build your own custom reports without
programming. FSG is only available with GL.

What are different types of transactions in AR ?


Ans:

What are value sets ?


Ans:
What do you mean by HZ_ in customer tables ?
Ans:

How can you handle multiple rows without using loops in PL/SQL ?
Ans:

What are the different types of files used in SQL Loader ?


Ans:

What are Interface table in AP, AR,GL ?


Ans: AP INTERFACE TABLE: 1). AP_INTERFACE_CONTROLS.
2). AP_INTERFACE_REJECTIONS
3). AP_INVOICE_INTERFACE
4). AP_INVOICE_LINES_INTERFACE.
AR INTERFACE TABLE:
1). AR_PAYMENTS_INTERFACE_ALL
2). AR_TAX_INTERFACE

3). HZ_PARTY_INTERFACE
4). HZ_PARTY_INTERFACE_ERRORS
5). RA_CUSTOMERS_INTERFACE_ALL
6). RA_INTERFACE_DISTRIBUTIONS_ALL
7). RA_INTERFACE_ERRORS_ALL
8). RA_INTERFACE_LINES_ALL
9). RA_INTERFACE_SALESCREDITS_ALL
GLINTERFACE TABLE:
1). GL_BUDGET_INTERFACE
2). GL_DAILY_RATES_INTERFACE
3). GL_IEA_INTERFACE
4). GL_interface
5). GL_INTERFACE_CONTROL
6). GL_INTERFACE_HISTORY
Question: How will you migrate Oracle General Ledger Currencies and Sets of Books Definitions fromone
environment to another without reKeying? Will you use FNDLOAD?
Answer: FNDLOAD can not be used in the scenario. You can use migrator available in "Oracle iSetup" Responsibility
Question: This is a very tough one, almost impossible to answer, but yet I will ask. Which Form in Oracle
Applications has most number of Form Functions?
Answer: "Run Reports". And why not, the Form Function for this screen has a parameter to which we pass name of
the "Request Group", hence securing the list of Concurrent Programs that are visible in "Run Request" Form. Just so
that you know, there are over 600 form functions for "Run Reports"
Question: Which responsibility do you need to extract Self Service Personalizations?
Answer:Functional Administrator
Question: Can you list any one single limitation of Forms Personalization feature that was delivered with 11.5.10
Answer:You can not implement interactive messages, i.e. a message will give multiple options for Response. The
best you can get from Forms Personalization to do is popup up Message with OK option.
Question: You have just created two concurrent programs namely "XX PO Prog1" & "XX PO Prog2". Now you wish to
create a menu for Concurrent Request submission such that only these two Concurrent Programs are visible from
that Run Request menu. Please explain the steps to implement this?
Answer:
a) Define a request group, lets say with name "XX_PO_PROGS"
b) Add these two concurrent programs to the request group "XX_PO_PROGS"
c) Define a new Form Function that is attached to Form "Run Reports"
d) In the parameter field of Form Function screen, enter
REQUEST_GROUP_CODE="XX_PO_PROGS" REQUEST_GROUP_APPL_SHORT_NAME="XXPO"

TITLE="XXPO:XX_PO_PROGS"
e) Attach this form function to the desired menu.

Question: Does Oracle 10g support rule based optimization?


Answer: The official stance is that RBO is no longer supported by 10g.

Question: Does oracle support partitioning of tables in Oracle Apps?


Answer: Yes, Oracle does support partitioning of tables in Oracle Applications. There are several implementations
that partition on GL_BALANCES. However your client must buy licenses to if they desire to partition tables. To avoid
the cost of licensing you may suggest the clients may decide to permanently close their older GL Periods, such that
historical records can be archived.
Note: Before running the archival process the second time, you must clear down the archive table
GL_ARCHIVE_BALANCES (dont forget to export archive data to a tape).

Question: What will be your partitioning strategy on GL_BALANCES? Your views please?
Answer: This really depends upon how many periods are regularly reported upon, how many periods are left open
etc. You can then decide to partition on period_name, or period ranges, or on the status of the GL Period.

Question: Does Oracle support running of gather stats on SYS schema in Oracle Apps?
Answer: If your Oracle Applications instance is on 10g, then you can decide to run stats for SYS schema. This can
be done by exec dbms_stats.gather_schema_stats('SYS');
Alternately using command dbms_stats.gather_schema_stats('SYS',cascade=>TRUE,degree=>20);
I will prefer the former with default values.
If you wish to delete the stats for SYS use exec dbms_stats.delete_schema_stats('SYS');
You can schedule a dbms_job for running stats for SYS schema.

Question: Can you use concurrent program "Gather Schema Statistics" to gather stats on sys schema in oracle
apps?
Answer: No, "Gather Schema Statistics" has no parameters for SYS schema. Please use dbms_job.

Question: Which table is used to provide drill down from Oracle GL into sub-ledger?
Answer: GL_IMPORT_REFERENCES
Question: What is the significance of profile option Node Trust Level in Oracle Apps.
Answer: If this profile option is set to a value of external against a server, then it signifies that the specific mid-tier
is External i.e. it will be exposed to the www. In other words this server is not within the firewall of your client. The
idea behind this profile option is to flag such middle-tier so that special restrictions can be applied against its
security, which means a very restricted set of responsibilities will be available from such Middle-Tier.
Question: What is the significance of profile option Responsibility Trust Level.
Answer: In order to make a responsibility accessible from an external web tier, you must set profile option
Responsibility Trust Level at responsibility level to External. Only those responsibilities that have this profile
option against them will be accessible from External Middle tiers.
Question: What else can you suggest to restrict the access to screens from external web tiers?

Answer: You may use URL filtering within Apache.


Question: What is the role of Document Manager in Oracle Purchasing?
Answer: POXCON is an immediate concurrent program. It receives pipe signal from the application when a request
is made for approval/reservations/receipts.
Question: How to debug a document manager in Oracle Apps?
Answer: Document manger runs within the concurrent manager in Oracle Applications. When an application uses
a Document Manager, it sends a pipe signal which is picked up by the document manager.
There are two mechanisms by which to trace the document manager
1. Set the debugging on by using profile option
STEP 1. Set profile option "Concurrent:Debug Flags" to TCTM1
This profile should only generate debugs when set at Site level(I think, as I have only tried site), because
Document Manager runs
in a different session.
STEP 2. Bounce the Document Managers
STEP 3. Retry the Workflow to generate debugs.
STEP 4. Reset profile option "Concurrent:Debug Flags" to blank
STEP 5. have a look at debug information in table fnd_concurrent_debug_info
2. Enable tracing for the document managers
This can be done by setting profile option Initialization SQL Statement Custom against your username before
reproducing the issue. The value of this profile will be set so as to enable trace using event 10046, level 12.

Question: You have written a Java Concurrent Program in Oracle Apps. You want to modify the CLASSPATH such
that new class CLASSPATH is effective just for this program.
Answer: In the options field of the concurrent program you can enter something similar to below.
-cp <your custom lib pathused by Java Conc Prog>
:/home/xxvisiondev/XXDEVDB/comn/java/appsborg.zip:/home/xxvisiondev/XXDEVDB/comn/java

Question: How will you open a bc4j package in jdeveloper?


Answer: Oracle ships a file named server.xml with each bc4j package. You will need to ftp that file alongside other
bc4j objects(VOs, EOs, AM, Classes etc).
Opening the server.xml will load the complete package starting from AM(application module). This is a mandatory
step when building Extensions to framework.

Question: In OA Framework Self-Service screen, you wish to disable a tab. How will you do it?
Answer: Generally speaking, the tabs on a OA Framework page are nothing but the SubMenus. By entering menu
exclusion against the responsibility, you can remove the tab from self service page.
Question: In self service, you wish to change the background color and the foreground text of the OA Framework
screens to meet your corporate standards. How will you do it?
Answer: You will need to do the below steps
a.Go to Mid Tier, and open $OA_HTML/cabo/styles/custom.xss
bEnter below text( change colours as needed)
<style name="DarkBackground">
<property name="background-color">#000066</property>
</style>
<style name="TextForeground">
<property name="color">#0000FF</property>
</style>

c cd $OA_HTML/cabo/styles/cache
dTake a backup of all the css files.
eDelete all the files of following pattern oracle-desktop*.css
The idea here is to delete the cache. Next time when you logon to Oracle Apps Self Service, the Framework will
rebuild the css file if found missing for your browser.

Question: Can you extend and substitue a root AM ( Application Module) in OA Framework using JDeveloper.
Answer: You can extend the AM in jDeveloper, but it doesnt work( at least it didnt work in 11.5.9). I am hopeful
that Oracle will deliver a solution to this in the future.
Question: In a workflow notification, you have a free text response field where the user enters the Vendor Number
for the new vendor. You want to validate the value entered in the notification response field upon the submission of
a response. How will you do it?
Answer: You will need to attach a post notification function to the Workflow Notification.
The PL/SQL code will look similar to below:The below code will display an error in the notification when user attempts to create a Duplicate Vendor Number.
PROCEDURE validate_response_from_notif
(
itemtype IN VARCHAR2
,itemkey IN VARCHAR2
,actid

IN NUMBER

,funcmode IN VARCHAR2
,RESULT IN OUT VARCHAR2
) IS
l_nid

NUMBER;

l_activity_result_code

VARCHAR2(200);

v_newly_entered_vendor_num VARCHAR2(50);
CURSOR c_get_response_for_new_vendor IS
SELECT wl.lookup_code
FROM wf_notification_attributes wna
,wf_notifications

wn

,wf_message_attributes_vl wma
,wf_lookups

wl

WHERE wna.notification_id = l_nid


AND

wna.notification_id = wn.notification_id

AND

wn.message_name = wma.message_name

AND

wn.message_type = wma.message_type

AND

wna.NAME = wma.NAME

AND

wma.SUBTYPE = 'RESPOND'

AND

wma.format = wl.lookup_type

AND

wna.text_value = wl.lookup_code

AND

wma.TYPE = 'LOOKUP'

AND

decode(wma.NAME, 'RESULT', 'RESULT', 'NORESULT') = 'RESULT';

BEGIN
IF (funcmode IN ('RESPOND'))
THEN
l_nid := wf_engine.context_nid;

OPEN c_get_response_for_new_vendor;
FETCH c_get_response_for_new_vendor
INTO l_activity_result_code;
CLOSE c_get_response_for_new_vendor;
v_newly_entered_vendor_num := wf_notification.getattrtext(l_nid,'NEWLY_ENTERED_VENDOR_NUM_4_PO');
IF l_activity_result_code = 'NEW_VENDOR'
AND does_vendor_exist(p_vendor => v_newly_entered_vendor_num)
THEN
RESULT := 'ERROR: VendorNumber you entered already exists';
RETURN;
END IF;
END IF;
EXCEPTION
WHEN OTHERS THEN
RESULT := SQLERRM;
END validate_response_from_notif;

Question: How to make concurrent program end with warning?


Answer: If the concurrent program is of type PL/SQL, you can assign a value of 1 to the retcode OUT Parameter.
For a Java Concurrent program, use the code similar to below
ReqCompletion lRC;
//get handle on request completion object for reporting status
lRC = pCpContext.getReqCompletion();
lRC.setCompletion(ReqCompletion.WARNING, "WARNING");

Question: How do you link a Host type concurrent program to Concurrent Manager?
Answer: Assuming your executable script is LOADPO.prog, then use the commands below
cd $XXPO_TOP/bin
ln -s $FND_TOP/bin/fndcpesr $XXPO_TOP/bin/LOADPO

Question: How do you know if a specific Oracle patch has been applied in apps to your environment.
Answer: Use table ad_bugs, in which column bug_number is the patch number.
SELECT bug_number
,to_char(creation_date, 'DD-MON-YYYY HH24:MI:SS') dated
FROM apps.ad_bugs
WHERE bug_number = TRIM('&bug_number') ;

Question: How do you send a particular Oracle Apps Workflow Activity/Function within a workflow process into
background mode.
Answer: If cost of the workflow activity is greater than 50, then the workflow activity will be processed in
background mode only, and it wont be processed in online mode.
Question: What are the various ways to kick-off a workflow
Answer: You can eiter use wf_engine.start_process or you can attach a runnable process such ghat it subscribes to

a workflow event.
Question: When starting (kicking off) an oracle workflow process, how do you ensure that it happens in a
background mode?
--a)if initiating the process using start_process, do the below
wf_engine.threshold := -1;
wf_engine.createprocess(l_itemtype
,l_itemkey
,'<YOUR PROCESS NAME>');
wf_engine.startprocess(l_itemtype, l_itemkey)
--B) When initiating the workflow process through an event subscription, set the Execution Condition Phase to be
equal to or above 100 for it to be executed by background process.

Question: On 10g, how will you use awr?


Answer: By running below scripts. These are both the same scripts, but with differing parameters.
$ORACLE_HOME/rdbms/admin/awrrpt.sql
$ORACLE_HOME/rdbms/admin/awrrpti.sql
Question : How will you configure Apache to run in Debug mode, specifically usefull when debugging iProcurement
( prior to 11.5.10).
Answer: After 11.5.10, FND Logging can be used for debugging Oracle iProcurement.
Prior to 11.5.10
----STEPS IN A NUTSHELL----cd $ORACLE_HOME/../iAS/Apache
vi $ORACLE_HOME/../iAS/Apache/Jserv/etc/ssp_init.txt
DebugOutput=/home/<<SID>>/ora9/iAS/Apache/Apache/logs/debug.log
DebugLevel=5
DebugSwitch=ON
vi $ORACLE_HOME/../iAS/Apache/Jserv/etc/jserv.conf
ApJServLogLevel debug
vi $ORACLE_HOME/../iAS/Apache/Jserv/etc/jserv.properties
log=true

Question: How will you add a new column to a List Of Values ( LOV ) in Oracle Applications Framework? Can this be
done without customization?
Answer: Yes, this can be done without customization, i.e. by using OA Framework Extension coupled with
Personalization. Implement the following Steps :a) Extend the VO ( View Object ), to implement the new SQL required to support the LOV.
b) Substitute the base VO, by using jpximport [ similar to as explained in Link ]
c) Personalize the LOV Region, by clicking on Add New Item. While adding the new Item, you will cross reference the
newly added column to VO.

Question: Can you do fnd_request.submit_request from SQL Plus in Oracle?

Answer: You will need to initialize the global variables first using fnd_global.initialize
DECLARE
v_session_id INTEGER := userenv('sessionid') ;
BEGIN
fnd_global.initialize
(
SESSION_ID

=>

v_session_id

,USER_ID

=>

<your user id from fnd_user.user_id>

,RESP_ID

=>

<You may use Examine from the screen PROFILE/RESP_ID>

,RESP_APPL_ID

=>

,SECURITY_GROUP_ID
,SITE_ID
,LOGIN_ID

=>

3115003--Any number here


=>

,PROG_APPL_ID

=>

,CONC_PROGRAM_ID
,CONC_REQUEST_ID

NULL

=>

,CONC_LOGIN_ID

<You may use Examine from the screen PROFILE/RESP_APPL_ID>


=>

NULL
NULL

=>
=>

NULL
NULL

,CONC_PRIORITY_REQUEST =>

NULL

);
commit ;
END ;
/
Optionally you may use fnd_global.apps_initialize, which internally calls fnd_global.initialize
fnd_global.apps_initialize(user_id => :user_id,
resp_id => :resp_id,
resp_appl_id => :resp_appl_id,
security_group_id => :security_group_id,
server_id => :server_id);
By doing the above, your global variables upon which Concurrent Managers depend upon will be populated. This will
be equivalent to logging into Oracle Apps and submitting the concurrent request from a responsibility.
Question: You are told that the certain steps in the Oracle Apps Form/Screen are running slow, and you are asked
to tune it. How do you go about it.
Answer: First thing to do is to enable trace. Preferably, enable the trace with Bind Variables. This can be done by
selecting menu Help/Diagnostics/Trace/Trace With Binds and Wait
Internally Oracle Forms issues a statement similar to below:alter session set events='10046 trace name context forever, level 12' ;

Enable Trace with Bind Variables in Apps


This will enable the trace with Bind Variable values being shown in the trace file.
The screen in Oracle Apps will also provide the name of the trace file which is located in directly identified by
select value from v$parameter where name like '%us%r%dump%'
Doing a tkprof with explain plan option, reviewing plans and stats in trace file can help identify the slow performing
SQL.

Question: What is the difference between running Gather Stats and Program Optimizer[RGOPTM] in Oracle
General Ledger?
Answer: Gather Stats will simply gather the stats against existing tables, indexes etc. However Gather Stats does
not create any new indexes. But Program Optimizer[RGOPTM] can create indexes on GL_CODE_COMBINATIONS,
provided accounting segment has the indexed flag enabled,
Question: You have written a piece of code in POR_CUSTOM_PKG for Oracle iProcurement, but its not taking any
effect? What may be the reason?
Answer: Depending upon which procedure in POR_CUSTOM_PKG has been programmed, one or more of the below
profile options must be set to Yes
POR: Enable Req Header Customization
POR: Enable Requisition Line Customization
POR: Enable Req Distribution Customization
Question: What is the key benefit of punching out to suppliers catalogs rather than loading their catalogs locally in
Oracle iProcurement?
Answer: Punchout has several advantages like, Catalogs dont need to be loaded locally saves space on your
system. You can get up-to-date list of catalogs by punching out and also you get the benefit of up-to-date pricing
information on vendor items.

Question: Does oracle have a test environment on exchange?


Answer: http://testexchange.oracle.com

Question: Does Oracle Grants use its own schema or does it uses Oracle Project Accounting schema?
Answer: Although Oracle Grants has its own schema i.e. GMS, it reuses many of the tables with in Oracle Projects
Schema like PA_PROJECTS_ALL, PA_EXPENDITURE_ITEMS_ALL, PA_EXPENDITURE_TYPES etc.

Question: How to make an Oracle Report Type concurrent program produce an excel friendly output?
Answer: Comma can be concatenated between the column values, however a better option is to create tab
delimited file, as it takes care of commas within the string.
For this, use SQL similar to below in the report
select 'a' || chr(9) || 'b' from dual;

Question: What are the settings needed for printing bitmap reports?
Answer: Get your DBA to configure two files i.e. uiprint.txt & default.ppd
For details, refer to Metalink Note 189708.1

Question: For a PL/SQL based concurrent program do you have to issue a commit at the end?
Answer: The concurrent program runs within its own new session. In APPS, the default database setting enforces a
commit at the end of each session. Hence no explicit COMMIT is required.

Question: What is the best way to add debugging to the code in apps?
Answer: Use fnd_log.string , i.e. FND Logging. Behind the scenes Oracles FND Logging uses autonomous
transaction to insert records in a table named fnd_log_messages.
For example
DECLARE
BEGIN
fnd_log.STRING(log_level => fnd_log.level_statement
,module

=> 'xxxx ' || 'pkg/procedurename '

,message => 'your debug message here');


END ;
Three profile options effecting FND Logging are
FND: Debug Log Mode
FND: Debug Log Enabled
FND: Debug Log Module

Question: If you wish to trigger of an update or insert in bespoke table or take some action in response to a TCA
record being created or modified, how would you do it? Will you write a database triggers on TCA Tables?
Answer: There are various pre-defined Events that are invoked from the Oracle TCA APIs.
TCA was Oracles first initiative towards a fully API based approach, which means the screen and the processes all
use the same set of APIs for doing same task.
In order to take an action when these events occur, you can subscribe a custom PL/SQL procedure or a Custom
Workflow to these events. Some of the important TCA events are listed below:oracle.apps.ar.hz.ContactPoint.update
oracle.apps.ar.hz.CustAccount.create
oracle.apps.ar.hz.CustAccount.update
oracle.apps.ar.hz.CustAcctSite.create
oracle.apps.ar.hz.CustAcctSite.update
oracle.apps.ar.hz.CustAcctSiteUse.create
oracle.apps.ar.hz.CustAcctSiteUse.update
oracle.apps.ar.hz.Location.create

oracle.apps.ar.hz.Location.update
oracle.apps.ar.hz.Organization.create
oracle.apps.ar.hz.Organization.update
oracle.apps.ar.hz.PartySite.create
oracle.apps.ar.hz.PartySite.update
oracle.apps.ar.hz.PartySiteUse.create
oracle.apps.ar.hz.PartySiteUse.update
oracle.apps.ar.hz.Person.create
oracle.apps.ar.hz.Person.update

Question: In Oracle OA Framework, is the MDS page/document definition stored in database or in the file system?
Answer: The MDS document details are loaded into database, in the following sets of tables.
JDR_ATTRIBUTES
JDR_ATTRIBUTES_TRANS
JDR_COMPONENTS
JDR_PATHS
The Document is loaded via XMLImporter, as detailed in XMLImporter Article

Question: In a Oracle Report data group, you have a data link between two queries. How do you ensure that the
data link is made Outer Joined?
Answer: The data link is an Outer Join by default.

Question: How does substitution work in OA Framework?


What are the benefits of using Substitution in OA Framework?
Answer: Based on the user that has logged into OA Framework, MDS defines the context of the logged in user.
Based upon this logged in context, all applicable personalization are applied by MDS. Given that substitutions are
loaded as site level personalizations, MDS applies the substituted BC4J objects along with the personalizations. The
above listed steps occur as soon as Root Application module has been loaded.
The benefit of using Substitution is to extend the OA Framework without customization of the underlying code. This
is of great help during Upgrades. Entity Objects and Validation Objects can be substituted. I think Root AMs cant be
substituted given that substitution kicks off after Root AM gets loaded.
Question: In OA Framework, once your application has been extended by substitutions, is it possible to revert back
to remove those substitutions?
Answer: yes, by setting profile option Disable Self-Service Personal% to Yes, keeping in mind that all your
personalizations will get disabled by this profile option. This profile is also very useful when debugging your OA
Framework based application in the event of some error. By disabling the personalization via profile, you can isolate
the error, i.e. is being caused by your extension/substitution code or by Oracles standard functionality.
Question: How can you import invoices into Oracle Receivables?
Answer: You can either use AutoInvoice by populating tables RA_INTERFACE_LINES_ALL,
RA_INTERFACE_DISTRIBUTIONS_ALL & RA_INTERFACE_SALESCREDITS_ALL.
Alternately you may decide to use API ar_invoice_api_pub.create_single_invoice for Receivables Invoice Import.
Question: How do you setup a context sensitive flexfield
Answer: Note: I will publish a white paper to sho step by step approach.
But for the purpose of your interview, a brief explanation isa)Create a reference field, b) Use that reference field

in Context Field section of DFF Segment screen c) For each possible value of the context field, you will need to
create one record in section Context Field Value ( beneath the global data elements).
Question: Does Oracle iProcurement use same tables as Oracle Purchasing?
Answer: Yes, iProcurement uses the same set of requisition tables as are used by Core Purchasing.
Question: What is the name of the schema for tables in tca
Answer: AR (at least till 11.5.10, not sure about 11.5.10).
Question: Are suppliers a part of TCA?
Answer: Unfortunately not yet. However, Release 12 will be merging Suppliers into TCA.
Question: What is the link between order management and purchasing
Answer: Internal Requisitions get translated into Internal Sales Orders.
Question: How would you know if the purchase order XML has been transmitted to vendor, looking at the tables.
Answer: The XML delivery status can be found from a table named ecx_oxta_logmsg. Use the query below
SELECT edoc.document_number
,decode(eol.result_code, 1000, 'Success', 'Failure') AS status
,eol.result_text
FROM ecx_oxta_logmsg eol
,ecx_doclogs

edoc

,ecx_outbound_logs eog
WHERE edoc.msgid = eol.sender_message_id
AND

eog.out_msgid = edoc.msgid

ORDER BY edoc.document_number
Question: You have done forms personalization, now how will you move it from one environment to another?
Answer: Use FNDLOAD. For examples visit FNDLOAD Article

Question: What are the key benefits of forms personalization over custom.pll?
Answer:
-->Multiple users can develop forms personalization at any given point in time.
-->It is fairly easy to enable and disable forms personalizations.
-->A programmer is not required to do simple things such as hide/disable fields or buttons.
-->Provides more visibility on customizations to the screen.
Question: Tell me some limitations of forms personalization when compared to CUSTOM.pll?
Answer:
-->Can't create record group queries, hence cant implement LOV Query changes.
-->Can't make things interactive, i.e. cant have a message box that gives multiple choices for example Proceed or
Stop etc.

Question: Give me one example where apps uses partitioning?


Answer: WF_LOCAL_ROLES

Question: Give me one example of securing attributes in iProcurement.

Answer: You can define Realm to bundle suppliers into a Category. Such realm can then be assigned to the User
using Define User Screen. Security Attribute ICX_POR_REALM_ID can be used. By doing so, the user will only be
made visible those Punchout suppliers that belong to the realm against their securing attributes.

Question: Can you send blob attachments via workflow notifications?


Answer: Yes, you can send BLOB Attachments.
For details on how to do this, refer to link for BLOG atachments to notifications

How many reporting currencies can be attached to Primary Set of Books?


We can have a total of 8 SOBs (including the Primary SOB). Therefore, we can have 7 Reporting SOB.
What are Different types of transactions in AR?
There are 7 type of transactions in AR- Invoice, Debitmemo, Creditmemo, Chargeback, Deposits, Guarenty, and Bills
Recivable.
What is the use of lockboxes?
AutoLockbox (or Lockbox) is a service that commercial banks offer corporate customers to enable them to outsource their
accounts receivable payment processing. An AutoLockbox operation can process millions of transactions a month.
AutoLockbox eliminates manual data entry by automatically processing receipts that are sent directly to your bank. You
specify how you want this information transmitted and Receivables ensures that the data is valid before creating
QuickCash receipt batches.
Steps for lock box are :
1. The first step involves reading and formatting data from your bank file into AutoLockbox tables.
2. The second step involves submitting the validation program which checks data in the AutoLockbox tables for
compatibility with Receivables.
3. Once data is validated, it is transferred into QuickCash tables. At this point, you can optionally query your receipts in
the QuickCash window and change how they will be applied before submitting the final step,
4. Post QuickCash. Submitting Post QuickCash updates your customers balances.
What are the interface tables used for ar invoices, customers, receipts for conversion process?
Customer interface tables:
Ra_customer_interface

ra_contant_phones_interface
ra_customer_banks_interface
ra_customer_profiles_interface

ra_cust_pay_method_interface
Invoice interface tables:
ra_interface_lines_all
ra_interface_sales_credits
ra_interface_distributions
Following are the Validation for Autoinvoice:
1-

AR Transaction Type Validation : Check if the Transaction type provided in data file is defined in AR transaction
types(RA_CUST_TRX_TYPES_ALL)

22- Transaction Batch Source Validation: Check if the source provided in data file is defined in AR transaction Batch source
(RA_BATCH_SOURCES_ALL).
3- Invoice Currency Validation: Check if the currency provided in data file is defined in AR Currency
(FND_CURRENCIES).
4- Customer Validation: Check if the Bill to Customer Number, Ship to Customer Number, Bill to Custom Location, Ship
to Customer Location provided in the data file is defined in AR Customer(ra_customers).
5- Primary Sales Representative Validation: Sales representative number to be hardcode to -3 for No Sales Credit.
6- Term Name : Check if the Term name provided in the data file is defined in Payment terms (RA_TERMS)
7- Validate Sales Credit Type : Sales Credit to hardcode to Quota Sales Credit
8- Inventory Item Validation: Check if the Item provided in data file is defined in Inventory Items
(MTL_SYSTEM_ITEMS).
9- Unit of Measurement validation: Check if the UOM provided is defined in MTL_UNITS_OF_MEASURE Table
10- Invoice Tax Code Validation : Check if the Tax Code provided in data file is defined in AR_VAT_TAX_ALL_B Table.
11- Invoice GL Date Validation : Check if the GL Data of provided invoices is in open period.Used
ARP_UTIL.IS_GL_DATE_VALID API to validate.
Following are the base tableshz_parties
hz_cust_accounts
hz_cust_acct_sites_all
hz_cust_sit_use_all
hz_party_sites
hz_locations
hz_party_site_uses

hz_customer_profiles
hz_organization_profiles
hz_person_profiles
What is Auto Invoicing? Explain?
Auto Invoicing is a process of Importing Invoice related information from External / Internal Sources.External will be
your business Legacy Systems like Main Frame / AS400 or Non Oracle ERP systems like SAP / JDE or From Custom
Oracle Applications. The data is placed into Interface tables and from there either from Application or from PL/SQL , you
can call Auto Invoice Concurrent request to validate and transfer data into AR Transaction tables. The data from these
tables can be seen when queries from Transaction Screens. Auto Invoicing is a process of creating an invoice automatically
in AR when a sales order has been shipped and closed. This process is triggered by a concurrent request AUTO INVOICE
MASTER PROGRAM. Auto invoicing is used to import the AR invoices direclty into the AR module.
What is AUTO Accounting what are the steps for setting up auto accounting?
Auto Accounting is a mechnism for generating defualt accounting flexfields for revenue , receivables, frieght and tax
based on the other parameters associated with the invoice you are entering.. since auto accounting looks at the following
tables to get the data so please set/define the following depending upon your requirement.
1.Salesrep.
2.Transaction Types.
3.Standard Lines.
4.Taxes.
5.Customer bill-to-site
Receivables uses the Auto Accounting rules to determine the GL Accounts that you Enter manually or import using Auto
invoice. Receivables creates the Default accounts for the Receivable, revenue, Freight, Tax, Unerned revenue, Finance
charges, Unbilled receivables, Bills receivables, and Auto invoice Clearing Accoutns.You need to define these accoutns
before you start entering the transactions in AR. However, you can overide these accounts during the Transaction Entry in
AR.Setup Autoaccounting:AR>Setup>Transactions>AutoAccountingSelect the Type of the accoutn you wish to define the
auto accoutning.In the Segments Block:Choose the segment for which you wish to assign the Auto accounting.Choose the
Table Name : Sales Rep, Trxn Type, Site, Std Lines.If you wish to use a Default Constant value, then enter the value in the
Constant Field.
What are the standard concurent programs for auto invoice interface and customer interfaces?
Autoinvoice Import Program for auto invoice program
Customer Interface Master Conc Program > for Customer Interface

AR Complete Cycle (hoping that GL is already implemented)Define Transaction SetupsDefine


Receipt and Receipt Application SetupsDefine CustomerCreate an InvoiceCreate a ReceiptApply

Receipt to InvoiceReview Customer balances (Collections). The BASIC process of Receivables


involves the following:
1. Creation of Customer Invoices.
3. Remittance fo the same to the bank.

How do we segregate debit & credit transactions in Receivables and where we will do it?
Basically the debit and credit transaction are classified by the transaction class.
Whether we are defining customer in AR? If it is in AR then how are we placing the order and how the shipment
will be done?
Customers and the associated information is stored in TCA structure, which is shared across All oracle application
modules. If you add a customer in AR, it gets stored TCA underlying tables. When you want to create an Order in Order
Management, the customer LOV displays data from Record Group that is created on TCA tables.
The basic Oracle ERP data model is the single Data model shared (integrated) by multiple application. The owner of the
creation of customer is the AR schema and is shared by other application such as OM. These are usually called as shared
entities (Supplier,Partners,Items etc)
How To Close Periods In AR?
After raising transactions and receiving the RECEIPT amount, transfer the all TRANSATIONS and RECEIPTS to the
GENERAL LEDGER. And then only close the PERIOD in AR.
Explain about Party and Customer in AR?
Party could be a person or an organization which has no business relation with your entreprise, if you establish a sales
relation with a department in a party then that particular department is your customer.

What is MRC and what is its use?


The Multi Reporting Currency Feature allows you to report and maintain records at the transaction level in more
than one functional currency. You can do by defining one or more set of books in addition to primary set of books.

Accointing for invoice in advance

a) Receivable A/c Dr.


To Unearned revenue a/c
(when we raise the invoice with invoicing rule as advance)

b) Unearned Revenue A/c .. Dr.

To Revenue A/c
(when we receive the payment, the number of journal entry (b) is depend upon the
accounting rules which can be fixed or variable)
Accounting for invoice in arrear
a) Unbilled receivable a/c ..Dr.
To Revenue a/c
(when we receive the payment of unbilled invoice, the number of journal entry (a) is
depend upon the accounting rules which can be fixed or variable))
b) Receivable a/c .Dr.
To Unbilled receivable a/c
(when we raise the invoice, with invoicing rule arrear)
What is the use of Transaction Flexfield in Autoinvoice ?
Transaction Flexfield actually identifies the the uniqueness among the Multiple lines of a
single Invoice
What are value sets?
Value sets are the defined as list of possible values for a specific purpose. These are
assigned to flexfields. These are the only possible values to be choosen from. This
eliminates the data entry errors.
Value set is a set of possible values.
There are 8 value set types:

1.Dependent
2.Independent
3.Table
4. None
5.Pair
6.Translatable Dependent
7.Translatable Independent
8. Special
Describe the main tables involved in AR, and what is the data stored in them?

RA_BATCHES_ALL Information about Transaction BATCHES


RA_CUSTOMER_TRX_ALL Header information about Transaction
RA_CUSTOMER_TRX_LINES_ALL Lines information about Transaction
RA_CUST_TRX_LINE_GL_DIST_ALL Distribution information about Transaction

RA_CUST_TRX_LINE_SALESREPS_ALL Sales representative of Transaction Information


AR_PAYMENT_SCHDULES_ALL Information about Payment Schedules
AR_APPLICATION_PAYABLES_ALL
RA_INTERFACE_ERRORS Errors in AutoInvoice Interface Data
RA_INTERFACE_LINES_ALL Use this table to enter Header and Lines information in
AutoInvoice Interface program
RA_INTERFACE_DISTRIBUTIONS_ALL Distribution Table in AutoInvoice Interface
program
RA_INTERFACE_SALESCREDITS_ALL Sales Credits information in AutoInvoice Interface

What do you mean by HZ_ in customer tables?


HZ stands for Human Zone(HZ_). Anytihing which is related to the human like Customer
profiles, their accounts, locations, relationships are stored in these tables only. From
release 11i TCA came into picture in Accounts Recievable module, where oracle has
grouped all the customer information at one place. Most important tables in TCA areHZ_PARTIES,
HZ_CUST_ACCOUNTS_ALL,

HZ_CUST_ACCT_SITES_ALL,
HZ_CUST_SITE_USES_ALL,
HZ_LOCATIONS,
HZ_PARTY_SITES,
HZ_PARTY_SITE_USES,
HZ_CONTACT_POINTS. few to name.

What is the difference between _all, _tl, _vl, _v tables in Oracle Apps ? Also
name various other table suffix.
_ALL : Table holds all the information about different operating units. Multi-Org
environment. You can also set the client_info to specific operating unit to see the data
specific to that operating unit only.
_TL are tables corresponding to another table with the same name minus the _TL. These
tables provide multiple language support. For each item in the table without _TL there
can be many rows in the _TL table, but all with different values in the LANGUAGE
column.
_B these are the BASE tables. They are very important and the data is stored in the
table with all validations. It is supposed that these table will always contain the perfect
format data. If anything happens to the BASE table data, then it is a data corruption
issue.

_F these are date tracked tables, which occur in HR and Payroll. For these there are two
date columns EFFECTIVE_START_DATE and EFFECTIVE_END_DATE which together with
the PK identifies a row uniquely. The date intervals cannot overlap. Many think they are
Secured data. Guess someone from Oracle confirms.
_V tables are the views created on base tables _VL are views for multi language tables
which combines the row of the base table with the corresponding row of the _TL table
where the LANGUAGE = USERENV(LANG).
_S are sequences, used for finding new values for the primary key of a table.
_A are Audit Shadow Tables
_AVN and _ACN are Audit Shadow Views (when data was changed, and with what
values)
How many Flex fields are there in AR and what are they?
Required Key Flex fields:
1. Territory Flex field
2. Sales Tax Location flex field
Optional Key Flex fields:

1. Transaction flex field (requied only if Auto Invoicing is enabled)

2. System Items Flex field (If Inventory or OM is installed this should be defined there.
other wise, it should be set up in AR).

1. Advantages of stored functions and procedures

Applications can be modularized.

Easy maintenance.

Routines can be modified online without interfering other users.

One routine can be modified to effect multiple applications.


* Improved data security and integrity.

Indirect access to database objects can be controlled from non-privileged users with
security privileges.
* Improved performance.

Reparsing for multiple users can be avoided by exploiting the shared SQL area.

PL/SQL parsing at run-time can be avoided by pursing at compile time.

Number of calls to the database can be reduced and network traffic decreased by
bundling commands.
* Improved code clarity.

The clarity of code increases by using appropriate identifier names to describe the
action of the routines which reduces the need for comments.

2. Difference between a function and a procedure

Functions

* Invoke as a part of an expression.


* Must contain a RETURN clause in the header.

Procedures

Execute as a PL/SQL statement.


Do not contain a RETURN

Clause in the header.


* Must return a single value.

Can return none, one or many

values.
* Must contain at fast one RETURN

Can contain a RETURN

Statement.
* Do not contain OUT and INOUT

Can contain IN, Out and

IN OUT parameters.

IN OUT Parameters.

3. About Cursors
-

Oracle server uses some private work areas to execute SQL statements and to store
processing information.
* By using PL/SQL cursors these private SQL areas can be named and the stored
information can be accessed.

Two Types:

* Implicit Cursors.
-

Implicit cursors are declared by PL/SQL implicitly for all DML and PL/SQL select
statements, including queries that return only one row.

Oracle Server implicitly opens a cursor to process each SQL statement not associated
with on explicitly declared cursor.

The most recent implicit cursor can be returned as the SQL cursor.

* Explicit Cursors
-

For queries that return more than one row, explicit cursors are declared and named by
the programmers and manipulated through specific statements in the blocks executable
actions.

Explicit cursors are used to individually process each row returned by a multiple-row
SELECT statement.

The set of rows returned by a multiple row query is called as active set.

Declare

Open

Fetch

Empty?

Close

Cursor Attributes:Attribute

Type

Description

% is open

Boolean

Evaluates to TRUE if the cursor is open.

% not found

Boolean

Evaluates to TRUE if the most recent fetch


doesnt return a row.

% found

Boolean

Evaluate to TRUE if the most recent fetch

returns a row. Complement of % not found.


% Row Count

Number

Evaluates the total number of rows returned so

far.

Parameterized Cursors:Parameters can be passed to the cursor in a cursor for loop.

It allow to open and close an explicit cursor several times in a block, returning a
different active set on each occasion for each execution, the previous cursor is closed
and reopened with a new set of parameters.

Sizes should not be mentioned for the data types of parameters the parameters names
are for references in the query expression of the cursor.

4. Confined Mode:-

If it is on, child objects cannot be moved outside their enclosing parent objects.

If it is off child objects can be moved out sides their enclosing parent objects.

Flex Mode:If it is on, parent borders stretch when child objects are moved against them.

If it is off, parent borders remain fixed when child objects are moved against them.

5. Parameters
-

A parameter is a variable whose value can be set at runtime (from the run time
parameter of the command line).

User parameters are created by the user and system parameters are created by Report
Builder.

System parameters cannot be renamed or deleted.

Bind Parameters (Variables)


-

Bind references (or Variables) are used to replace a single value in SQL or PL/SQL, such
as a character string, number or date.

Bind references may be used to replace expressions in SELECT, WHERE, GROUP BY,
ORDER BY, HAVING, CONNECT BY and START WITH clauses of queries.

Bind references cannot be referenced in FROM clauses.

Bind variables can be referenced by entering a colon (:) followed immediately by the
column or parameter name.

If the parameter / column are not created before making a bind reference, report
builder will create a parameter.

Lexical Parameters (Variables)


-

Lexical references are place holders for text that is embedded in a SELECT statement.

Lexical Variables can replace the clauses appearing after SLECT, FROM, WHERE, GROUP
BY, ORDER BY, HAVING, CONNECT BY, and START WITH.

6. What is % Row type


-

% Row types is used to declare a record based on a collection of columns in a database


table or view.

The fields in the record take their names and data types from the columns of the table
or view.

The record can also store an entire row of data fetched from a cursor or cursor variable.

% Row type should be prefixed with the database table.


Ex: Declare
Emp_record employee 5% row type.
Then emp_record will have a structure consisting of all the fields each representing a
column in the employees table.

7. What is a Ref Cursor?


-

Oracle server uses unnamed memory spaces to store data used in implicit cursors.

Ref cursors are used to define a cursor variable, which will point to that memory space
and can be used like pointers in SQL S.

8. About Exceptions
-

An exception is an identifier in PL/SQL that is raised during the execution of a black that
terminates its main body of actions.

A block always terminates when PL/SQL raises an exception so that an exception handler
should be specified to perform final actions.
* Exception can be raised in two ways exception is raised automatically.
Ex:- when no rows are retrieved from the database in a SELECT statement, then
error
ORA-01403 occurs and the exception NO-DATA-FOUND is raised by PL/SQL.
1.

Ex:- Exception can be raised explicitly by issuing the RAISE statement with in the
block.

2.

The exception being raised may be either.

User-Defined or Pre Defined


Trapping an exception:-

If the exception is raised in executable section of the block, processing branches to the
corresponding exception handler in the exception section of the block.

If PL/SQL successfully handles the exception, then the exception doesnt propagate to
the enclosing block or calling environment.

The PL/SQL block terminates successfully.

Propagating an exception:If the exception is raised in the executable section of the block and there is no
corresponding exception handler, the PL/SQL block terminates with failure and the
exception will be propagated to the calling environment.

Types of exceptions:A) Pre-Defined Oracle Server Exceptions. - Implicitly Raised.


B) Non-Pre defined Oracle server exceptions. - Implicitly Raised.
C) User-defined exceptions - Explicitly Raised.

Pre-Defined Oracle Server Exceptions:These are the error (20) that occurs most often in PL/SQL code.
These exceptions need not be declared and raised implicitly by Oracle Server, NO-DATAFOUND, LOGIN_DENIED, ZERO_DIVIDE.
Non-Pre-Defined Oracle Server Exceptions:These are the other standard Oracle Server errors.
These exceptions need to be declared ion the declarative section and raised by Oracle
server implicitly.

User Defined Exceptions:These are the conditions that the developer determines as abnormal.

These need to be declared and raised explicitly.

PRAGMA EXCEPTION_INIT
Statement is used to associate a declared exception with the standard Oracle Server error
number.

Syntax: - PRAGMA EXCEPTION_INIT (exception, error number)

* SQLCODE, SQL ERRM are two functions which can be used to identify the associated
error code or error message when exception occurs.
-

SQLCODE function returns the numeric value for the error code.
SQLERRM function returns the character data containing the message associated with
the error number.
SQLCODE f SQLERRM cannot be used directly in SQL statements.

9. What is Dynamic SQL?


-

Dynamic SQL is a SQL statement that contains variables that can change during runtime.

It is a SQL statement with place holders and is stored as a character string.

Dynamic SQL enables DDL, DCL or session control statements to be written and executed
(by) from PL/SQL.
* Dynamic SQL can be written in two ways.

A) DBMS_SQL. - 8i
B) Native Dynamic SQL. - 8i

Basically Dynamic SQL means creating the SQL statements dynamically at runtime by
using variables.
Ex: - Dynamic SQL can be used to create a procedure that operates on a table whose name
is not known until runtime or to execute DDL/DCL/SCS statements.
---- In Pl/SQL such statements cannot be executed statically.
-- EXECUTE IMMEDIATE Statement can perform dynamic single row queries.

Declare
D_str varchar2 (200);
Val varchar2 (20);
Begin
D_str= insert into table1 values (;val);
Val= Bye Execute Immediate str using val; end;

10.What are Autonomous Transactions?


-

Autonomous transactions are the processes run independently of its parent.

By means of Autonomous Transaction, the current transaction can be temporarily


suspended and another operation can be begun.

The basic idea behind this is to have some operation take place independently of the
current transaction.

Ex:- to allow error messages written to table to be committed but to rollback everything
else that has taken place prior to the error.
-

The autonomous or child transaction can commit or rollback as applicable with the
execution of the parent transaction being resumed upon its completion.

The parent may then perform further operations of any operations performed with in
the child transaction.

By using Autonomous Transactions, modular and reusable components can be developed


more easily.

In fact Oracle already uses similar functionality internally, known as recu transactions
to handle the updating of system resources.

Ex:- When one application selects nextval from a non eached sequence, the value is in

the database.
-

Thus a second application will always get the incremented application has committed or
rolled back.
Autonomous Transaction should be defined in PL/SQL in the following manner.

PRAGMA AUTONOMOUS_TRANSACTION;
-

Autonomous transaction also can be nested.

The parent transaction remains active while any statements specified in the declare
section of the autonomous unit are executed.

As the code unit exits and control returns to the parent the main (parent) transaction is
resumed and the transaction context is switched back to the parent.

11.What is Bulk binding of Bilk collect?

Bulkbind:-

The assignment of values to PL/SQL variables in SQL statements is called binding.

The binding of an entire collection at once is refilled to as bulk binding.

Bulk bind improves performance by minimizing the number of context switches between
PL/SQL and SQL engines while they pass an entire collection of elements (varay, nested
tables, index-by table or host array) as bind variables back and forth.

Prior to Oracle 81, the execution of every SQL statements required a switch between
the Pl/SQL and SQL engines, where as bulk binds use only one context switch.
* Bulk binding includes the following

A) Input collections; use the FORALL statement.


B) Output collections, use the BULK COLLECT clause.

Input Collections:Input collections are data passed from Pl/SQL engine to the SQL engine to execute
INSERT, UPDATE and DELETE statements.
Syntax:- FORALL index in lower_bound.. upper_bound sql_statement;

Output Collections:Output collections are the data passed from the SQL engine to the PL/SQL engine as a
result of SELECT or FETCH statements.
The keyword BULK COLLECT can be used with SLECT INTO, FETCH INTO and RETURNING
INTO clauses.
Syntax:- BULK COLLECT into collection_name,

12.What are Materialized Views and Snapshots?

Materialized View:-

A Materialized view is a replica of a target master from a single point in time.

In Oracle 7, it is terned as SNAPSHOT

Oracle 7.1.6 -- Uptable Snapshots

Oracle 7.3 - Primary Key Snapshots

Oracle 8 - Materialized view

Oracle 9 - Multifier Materialized View.

Materialized views can be used both for creating summaries to be utilized in data
warehouse environments.

* Replicating data in distributed environments.


Target Master - The table(s) which is (are) referenced by the MVIEW query.
Best Table - The tables are that is (are) created by MVIEW create statement and that
stores data that satisfy the MVIEW query.
Syntax:- Create materialized view <name>
Refresh fast
Start with sysdate
Next sysdate +1 as
Select *from <master table>;
-

Since this is a fast refreshed MVIEW the master table should have a log (Master log) to
record the changes on it that can be created by running.

Create materialized view log on master_table;

- this statement creats the following objects


-

a table called MLOG$_Master_table

an internal trigger on Master_table that populates the log table.


* Master Log tables (MLOG$) are used by fast refresh procedure.

Refreshing Materialized Views:-

Initially a materialized view contains the same data as in the master table.

After the MVIEW is created, changes can be made to the master table and possibly also
to the MVIEW.

To keep a MVIEW data relatively current with the data in the master table, the MVIEW
must be periodically refreshed.
* Refresh can be accomplished by one of the following procedures.
Dbms_mview.refresh (<mview list>, <Refresh types>)
Dbms _ refresh.refresh (<Refresh Groups>)

Refresh Types - Complete Refresh, Fast Refresh, Force Refresh


* Complete Refresh is performed by deleting the rows from the snapshot and inserting the
rows satisfying the MVIEW query.
* In Fast refresh only the rows updated since last refresh are pulled from the master table
to insert into MVIEW.
* This requires a log table called as MVIEW Log to be created on the Master Table.
* Force refresh first tries to run a Fast refresh if possible.
* If fast refresh is not possible, it performs complete refresh.

Refresh Groups
These are used to refresh multiple snapshots in a transitionally consistent manner.
When a refresh group is refreshed all MVIEWS in that group are populated with data
from a consistent point in time.
Refresh groups are managed by using the procedures in the package DBMS REFRESH.
DBMS-REFRESH, MAKE of DBMS-REFRESH.ADD are used to create a refresh group and add
new snap shots to an existing group.

Types of Materialized Views:1. Read-only materialized views

DML cannot be performed on the snapshots in this category.

2. Up datable materialized views

These MVIEWS eliminates the restriction of DMLs on snapshots.

Sub query materialized views

These are the MVIEWS that are created with sub queries in the WHERE clause of a
MVIEW query.

Row id Vs Primary Key materialized views

MVIEWS that use Row id for refresh are called Row id MVIEWs (Oracle 7).

MVIEWS that use primary key for refresh are called primary key MVIES (Oracle 8).
* Fast refresh requires some association (mapping)
Between rows at snapshot and master tables.

Multifier materialized views (Oracle 9)

In this type MVIEW, its master table itself is a MVIEW.

This feature enables fast refresh of MVIEWS that have MVIEWS as their masters.

Many companies are structured on at least three levels

A) International
B) National
C) Local

Many nodes at both the national and local levels are required

The best possible solution in such cases is to use multifier MVIEWS.

Simple Vs Complex MVIEWS.

MVIEWS being simple or complex determines whether it can be fast refreshed or not.

A MVIEW is fast refreshable if it is simple.

A MVIEW is not fast refreshable if it is complex.

A MVIEW can be considered CONNECT BY, INTERSECT, MINUS or UNION or UNION ALL
clauses in its detining query.
* The following data types are not supported in MVIEW replication.

A) LONG

B) LONG RAW

C) BFILE

D) UROWID

MVIEWS are typically used in data ware house or decision support systems.

Snapshots
1. Snapshots are mirror or replace of tables in a single point of time.
2. A Snapshot is a local copy of a table data that originates from one or more remote master
tables.
3. To keep snapshots data current with the data of its master the Oracle server must
periodically refresh the snapshot.

VIEWS
1. Views are built using the columns from one or more tables.
2. The single table view can be updated, but the view with multiple tables cannot be
updated.
- A snapshot contains a complete or partial copy of a target master table from a single
point in time.
- A snapshot may be read only or up datable.

13. How duplicate rows are deleted?


3. Duplicate rows are deleted by using ROWID
Syntax delete from <Table>
Where ROWID not in (Select max (ROWID) from <Table>
Group by <Column_name>);

14. How do you call function and procedure in PL/SQL as well as in SQL prompt?
isql*plus EXECUTE < Function/Procedure name > ;
(SQL prompt)

PL/SQL < Procedure Name / Function Name>;


(from another procedure)
Development Tools <Procedure name>;

15. Difference between IN and OUT parameters.


Three types of parameters
1. IN
2. OUT
3. IN OUT

IN parameter:

This parameter passes values from the calling environment into the procedure.

This is the default mode

A formal parameter of In mode cannot be assigned a value ( we IN parameter cannot be


modified in the body of the procedure )

IN parameters can be assigned a default value in the parameter list.

IN parameters are passed by reference.


OUT parameters:

OUT parameter must be assigned a value before returning to the calling environment.

OUT parameter passes a value from the procedure to the calling environment

OUT parameter can not be assigned a default value in the parameter list.
IN OUT parameter:

this type of parameter pass a value from the calling environment into the procedure and
a possibly different value from the procedure back to calling environment using the same
parameter.

IN OUT parameter cannot be assigned a default value. * By default OUT & IN OUT
parameters are passed by value.

These can be passed by reference by using NOCOPY.

16. Triggers:

A trigger is a PL/SQL block or a PL/SQL procedure associated with a table view schema or
the database.
The code in the trigger executes implicitly whenever a particular event occurs.

Two types of triggers:

Application trigger

fires whenever an event occurs with in a particular application

Database Trigger

Fires whenever a data event (Such as DML ) or system event (such as log on or shut
down) occurs on a schema or database.

Executes implicitly when a data event. Such as DML on a table (insert, delete or
Update), an INSTEAD OF trigger on a VIEW or DDL statements are issued no matter which
user is connected or which application is used.

Also executes implicitly when some user or data base system actions occur.

Ex. When user logs on to the system.

When DBA shuts down the data base.

Date base triggers can be defined on tables and on views.

If a DML operations as issued on a view, the INSTEAD OF trigger defines what action
takes place, if these actions include any DML operations on tables, then any triggers on
the base tables are fired.
Data base triggers can be system triggers on a data base or a schema.
With a data base, triggers fire for each event for all users, with a schema, triggers fire
for each event for the specific user.

Recursive trigger :

This is a trigger that contains a DML operation changing the very same table.

Cascading Trigger:

The action of one trigger cascades to another trigger, causing this second trigger to fire.

Oracle server allows up to 32 triggers to cascade at any one time.

This number can be changed by changing the value of the OPEN - CORSORS. Data bases
initialization parameter. ( default value is 50 ).
* A triggering statement should contain

1 Trigger Timing
Instead of

Before, After (For Table)


(For View)

Determines when the trigger needs to be fired in relation to the triggering event.
2 Triggering Event

Determines which on the table or view causes the trigger to fire.


3 Trigger Type

Insert, Update, Delete

Statements, Row

Determines how many times the trigger body executes


4 Table name

Table, View

5 Trigger body PL/SQL block

Determines what actions the trigger should perform.

* INSTEAD of triggers are used to provide a transparent way to modifying views that
Can not be modified directly through SQL, DML statements because the view is not
modifiable.
- INSTEAD of triggers provide writing of Insert, Update and Delete statements against
the view.

The INSTEAD if trigger works invisibly in the background performing the action coded in
the trigger body directly on the underlying tables.
INSTEAD of trigger execute the trigger body instead of the triggering statement.

Statement Triggers

In this type of triggers, the trigger body executes once for the triggering event.

This is the default.

Statement trigger fires once, even if no rows are affected at all.

Row Trigger

In this type, the trigger body executes once for each row affected by the triggering
event.

Row trigger is not executed if the triggering event affects no rows.

* A view cannot be modified by normal DML if the view query contains set operators,
group functions, group by, connect By, start with clauses or joins.

Mutating Table

A Mutating table is a table that is currently being modified by an UPDATE, DELETE OR


INSERT statement, or a table that might need to be updated by the effects of a declarative
DELETE CASCADE referential integrity action.
A table is not considered mutating for statement triggers.
A mutating table cannot be changed because the resulting DML could change data that is
in consistent state.

17.What is SQL Trace?

SQL Trace is the main method for collecting SQL execution information in Oracle
collecting a wide range of information and statistics that can be used to tune SQL
operations.

The SQL Trace facility can be enabled / disabled for an individual session or at the
instance level.
If the initialization parameter SQL-TRACE is set to TRUE in the init.ora of an
instance, then all sessions will be traced.
SQL-TRACE can be set at the instance level by using the initialization
parameter SQL-TRACE.
SQL-TRACE can also be enabled / disabled at the system/session level by using.
Alter system/session set SQL-TRACE = TRUE/FALSE.

Explain Plan
Explain plan command generates information that details the execution plan that will be
used on a particular query.
A uses a pre created table (PLAN_TABLE) in the current schema to store information
about the execution plan chosen by the optimizer.

Creating the plan table

Plan table is created by using the script utl x plan, sql


(Oracle Home / RDBMS / admin / uti x plan.sql)

Unix $ ORACLE_HOME / rdbms / admin

This script creates an output table, called PLAN-TABLE for holding the output of the
explain command.

Populating the PLAN TABLE

PLAN TABLE is populated using the explain plan.


SQL> Explain Plan for select * from emp where emp no = 1000;

This command inserts the execution plan of the SQL statement into the plan table.

A name tag can be added to explain information by using the set statement_id clause.

Displaying the Execution Plan

Once the table has been populated, the explain info needs to be retrieved and
formatted.
Number of scripts are available to format the plan table data.

$ ORACLE_HOME / rdbms / admin / utlxpls. Sql to format serial explain plans.


$ ORACLE_HOME/ rdbms/admin/utlxpil. Sql to format parallel explain plans.

* AUTOTRACE

The AUTOTRACE facility in SQL* plus allows analysts to view the execution pan d some
useful statistics for a SQL statement within a SQL*plus session.

AUTOTRACE needs to be initiated in the SQL*Plus session prior to executing the


statement.

SET AUTOTRACE [OPTIONS] [EXPLAIN] [STATISTICS]

As with the explain plan command, to obtain an execution plan the PLAN-TABLE must be
created in the users schema prior to Auto Tracing.

SQL> Set Auto trace trace only explain


SQL> Select * from dual;

To enable viewing of STATISTICS data, the auto tracing user must have access to dynamic
performance tables.
To achieve this, grant PLUS TRACE role to the user.

PLUS TRACE role is created by the plus trace. Sql script


$ ORACLE_HOME / sql plus admin
SYS user must run this script.
DBA can them grant the role to the users who wish to use the AUTOTRACE.

TK PROF

Tk prof facility accepts as input a SQL Trace File and produces a formatted output file.

Tk Prof Filename_source filename_output EXPLAIN = [user name / password] sys =


[yes/no] TABLE = [Table Name]

A) How do you add trace to a report?


4. By using the package SRW.TRACE_ADD_OPTION
B) How do you execute a specified DDL in a report?
5. BY using the package PW.DO_SQL
C) How do you generate message in reports?
- By using the packages PW.MESSAGE (Reg Num,

);

D) Explain BLOBS of CLOBS?

LOB A LOB is a data type that is used to store large, unstructured data such as text,
graphic images, video, clippings etc.
* Four large object data types.

BLOB : Represents a binary large object


CLOB : Represents a character large object
NCLOB: Represents a multibyte character object.

BFILE: Represents a binary file store of in an os binary file outside the data base.
LOBS Internal LOBS (CLOB, BLOB, NCLOB)
external Files (BFILE)

Depending on the storage aspects and their interpretation by Oracle server.


* LONG_TO_LOB API is used to migrate LONG columns to LOB columns.

LOBS
LOB Locator

A table can have multiple LOB columns

The maximum size of a LOB can be 4 GB

LOBS return the locator

LOBS store a locator in the table end data in a different segment unless the data is less
than 4000 bytes.

LOB LOB value (real data)


LOB locator (pointer to the location of the LOB value)

A LOB column doesnt contain the data and it contains the located of the LOB value.

When a table is created with LOB column, the default storage is ENABLE STORAGE IN
ROW.

If DISABLE storage in Row option is used the LOB value is not stored in the ROW even if
the size is less then 4000 bytes.

Internal LOBS
Stored inside the Oracle server.

BLOB, NCLOB, CLOB.

BFILE
BFILES are external LOBS.

These are stored in OS files out side the database table spaces.

The data type is BFILE.

BFILE data file stores a locator to the physical file.

BFILE can be GIF, JPEG, MPEG, text or other formats.

*DBMS_LO.READ of DBMS_lob.WRITE are used to manipulate LOBS.

18. What is sub query and correlated sub query?

Sub Query :

A Sub Query is a SELECT statement that is embedded in a clause of other SQL statements
called the parent statement.

Sub query (Inner Query) returns a value that is used by the outer query.

Scalar sub query is a sub query that returns exactly one column value from one row.
Correlated Sub Query

Correlated sub query are used for row by row processing.

Each sub query is executed once for every row of the outer query.

A correlated sub query is one way of reading (data) every row in a table and comparing
values in each row against related data.

Oracle server performs correlated sub query when the sub query references a column
from a table in the parent query.

The inner query is driven by the outer query in correlated sub queries.

19. What is Decode function?

Decode function decodes an expression in a way similar to the IF_THEN_ELSE logic


used in various languages.
Decode function decodes expression after comparing it to each search condition.
If the expression is the same as search, result is returned.
If the default value is committed, a null value is returned where a search value
does not match any of the result values.
DECODE function facilitates conditional inquiries by doing the work of a CASE or
IF_THEN_ELSE statement.
DECODE (column, expression, search1, result1, search2, result2, ..);
Ex:- Select last_name, job, alary,

DECODE (

IT_PROG, 1.10*SALARY,
ST_CLERK, 1.15*SALARY,

ST_REP, 1.20*SALARY,
SALARY) REVISED_SALARY from employees;

1) What is SET-OF-BOOKS?
Collection of Chat of Accounts and Currency and Calendars is called SO
2) How can u call a standard interface program from sql or pl/sql code?
FND_REQUEST.SUBMIT_REQUEST (PO,EXECUTABLE NAME,,,,PARAMETERS)
3) APIs FOR CUSTOMER INTERFACE?
HZ_CUST_A/C_VZPUB.UPDATE_CUST_A/C
HZ_CUST_A/C_VZPUB.CREATE_CUST_A/C
FND_PROFILES
FND_APPLICATIONS
FND_GLOBAL
FND-FILE
FND_CONCSUB(can submit conc program in host environment)
4) PL/SQL stored procedure parameters? or what are the two
parameters that are mandatory for pl/sql type concurrent program?
Procedure/function (ERRBUF OUT RETCODE OUT .)
ERRBUF :- Used to write the error message to log or request file.
RETCODE :- Populate log request file with program submission details info.
5) What is Value Set?
--The value set is a collection (or) container of values.
--When ever the value set associated with any report parameters. It provides list
of values to the end user to accept one of the values as report parameter value.
-- If the list of values needed to be dynamic and ever changing and define a
table based values set.
6) What r the validation types?
1) None -------- validation is minimal.
2) Independent ------input must exist on previously defined list of values
3) Dependent ------input is checked against a subset of values based on a prior
value.
3) Table ----- input is checked against values in an application table
4) Special ------values set uses a flex field itself.
5) Pair ------ two flex fields together specify a range of valid values.
6) Translatable independent ----- input must exist on previously defined list
of values; translated values can be used.
7) Translatable dependent ------- input is checked against a subset of values
based on a prior values; translated value can be used.

7) What is template?
a) The TEMPLATE form is the required starting point for all development of new
Forms.
b) The TEMPLATE form includes platformindependent attachments of several
Libraries.
APPSCORE :- It contains package and procedures that are required of all forms
to support the MENUS ,TOOLBARS.
APPSDAYPK :- It contains packages that control the oracle applications
CALENDER FEATURES.
FNDSQF :- it contains packages and procedures for MESSAGE DICTONARY, FLEX
FIELDS, PROFILES AND CONCURRENT PROCESSING.
CUSTOM :- it allows extension of oracle applications forms with out
modification of oracle application code, you can use the custom library for
customization such as zoom ( such as moving to another form and querying up
specific records)
8) What are ad-hoc reports?
Ans.: Ad-hoc Report is made to meet one-time reporting needs. Concerned with
or formed for a
particular purpose. For example, ad hoc tax codes or an ad hoc database query
9) What is responsibility? 3
Is collection of menus, request security groups and data groups
Menus: collection of forms is nothing but menus
Request security groups: collection of programs.
Data groups: is a group of modules to be made accessible by the user through
Responsibility
System admin
10) What are different execution methods of executabls?
FlexRpt The execution file is wrnitten using the FlexReport API.
FlexSql The execution file is written using the FlexSql API.
Host The execution file is a host script.
Oracle Reports The execution file is an Oracle Reports file.
PL/SQL Stored Procedure The execution file is a stored procedure.
SQL*Loader The execution file is a SQL script.
SQL*Plus The execution file is a SQL*Plus script.
SQL*Report The execution file is a SQL*Report script.
Spawned The execution file is a C or Pro*C program.
Immediate The execution file is a program written to run as a subroutine of the
concurrent manager. We recommend against defining new immediate
concurrent programs, and suggest you use either a PL/SQL Stored Procedure or
a Spawned C Program instead.
Composite Datatypes :

PL/SQL TABLES / PL/SQL RECORDS / Nested TABLE / VARRAY


What is the sequence of functions group by,having,orderby in a select
statements ?
Select..Group byHavingOrderby..
Difference between User and Super User? 4
User : login user or front end user
Super user : it has full access of particular module
11) Oracle E-Business suite?
Oracle apps + analytical components software.
(Oracle discover) (Oracle sales analyzer) (Oracle financial analyzer) (Oracle
marketing analyzer)
12) What is multi org?
Legal entity has more than one operating unit is called as multi org
a) Business group --- Human resources information is secured by Business group
b) Legal entity. --- inter-company and fiscal/tax reporting.
operating unit.
c) Operating unit --- secures AR, OE, AP, PA and PO Information.
d) Organizations --- is a specialize unit of work at particular locations
13) What is ERP? Architecture of apps?
A packaged business software system that lets a company automate and
integrate the majority of its business processes; share common data and
practices across the enterprise; [and] produce and access information in a realtime environment.
. 14)What is invoice? Send you a request for payment
15 Data Link
- Data links relate the results of multiple queries.
- A data link (Parent - Child Relation Ship) causes the child query to be executed
once for each instance of its parent group.
16 In which tables FF are stored?
A) FND - ID - FLEXS
B) FND-ID-FLEX-STRUCTURES 5
17)Oracle Applications Architecture
- Internet computing Architecture is a frame work for 3-tired, distributed
computing that supports Oracle Applications products.
- The Three tiers are
1 Data Base Tier
2 Application Tier
3 Desk Top Tier
- Database tier manages Oracle 8i database.
- Application tier manages Oracle Applications and other tools.
- Desktop tier provides the user interface displace.

- With internet computing architecture, only the presentation layer of Oracle


Applications is on the Desk Top tier in the form of a plug-in to a standard internet
brows
18) List of some APIS
FND_PROGRAM.EXECUTABLE
FND_PROGRAM.REGISTER
FND_PROGRAM.PARAMETER
FND_PROGRAM.ADD_TO_GROUP
FND_REQUEST.SUBMIT_REQUEST
FND_PROFILE.VALUE
FND_PROFILE.GET
19)How to get second parameter value based on first parameter?
$fle x $ value setname.
20)How to call WHO columns into the form
By using FND_STANDARD APIS
1. FND_STANDARD.FORM_INFO 6
Provides information about the form.
Should be called form when_new_form - instance - instance trigger.
2. FND_standard.set_who
loads WHO columns with proper user information.
Should be called from PRE_UPDTE and PRE_INSERT
Triggers for each block with WHO fields
If this is used FND-GLOBAL need not be called. (FND_GLOBAL.WHO)
3. FND_STANDARD.SYSTEM_DATE
This is a function which returns date.
Behave exactly like SYSDATE built-in.
4. FNID_STANDARD.USER
This is a function which returns varchar2
Behaves exactly like built in USER.
21) APPCORE APIS
APP_COMBO
APP_DATE
APP_EXCEPTION
APP_FIELD
APP_FIND
APP_ITEM
APP_ITEM_PROPERTY
APP_NAVIGATE
APP_RECORD
APP_REGION 7
APP_STANDARD

APP_WINDOW
22)FNDSQF APIS
FND_CURRENCY
FND_DATE
FND_GLOBAL
FND_ORG
FND_STANDARD
FND_UTILITIES.OPEN_URL
FND_UTILITIES. PARAM_EXISTS
23)How to call flex fields in the form?
By using FND_FLEX.EVENT (EVENT varchar 2)
How to register an executable and define a concurrent program through
backend?
By using concurrent processing APIS
1. FND_CONC_GLOBAL.REQUES_DATA
.SET_REQUEST_GLOBALS
2. FND_CONCURRENT.AF_COMMIT
.AF_ROLLBACK
.GET_REQUEST_STATUS
.WAIT_FOR_REQUEST
.SET_COMPLETION_STATUS
3. FND_FILE . PUT
. PUT_LINE
.NEW_NAME 8
.PUT_NAMES
.CLOSE
4. FND-PROGRAM . MESSAGE
. EXECUTABLE
. REGISTER
. PARAMETER
. IN COMPATIBILITY
. EXECUTABLE_EXISTS
5. FND_REQUEST . SET-OPTIONS
.SET_REPEAT_OPTIONS
.SET_PRINT_OPTIONS
.SUBMIT_REQUEST
.SET_MODE
6. FND_REQUEST_INFO . GET_PARAM_NUMBER
. GET_PARAM_INFO
. GET_PROGRAM
. GET_PARAMETER

7. FND_SET . MESSAGE
.ADD_PROGRAM
.ADD_STAGE
.IN COMPATIBILITY
8. FND_SUBMIT . SET_MODE
.SET_REQUEST_STATUS
.SUBMIT_PROGRAM 9
.SUBMIT_SET
* FND_PROGRAM.EXECUTABLE
- is used to define a concument program executable
- it takes 8 parameters ( all are IN mode )
syntax procedure FND_PROGRAM.EXECUTABLE
(executable IN varchar2,
(Full name)
description IN varchar2 default null
execution_method IN varchar2,
execution_file_name IN varchar2 default null,
icon_name IN varchar2 default null,
language_code IN varchar2 default (VS)
* FND_PROGRAM.REGISTER
- this procedure no used to define a concument program.
- It has 30 IN paranmeters. Out of which 9 are mandatory, the remaining are
default.
(program IN varchar2,
application IN varchar2,
enabled IN varchar2,
short_name IN varchar2,
description IN varchar2, default null, 10
executable_application IN varchar2,
mls_function_shelt_name IN varchar2,
mls_function_application IN varchar2,
inerementor IN varhcar2);
24. How to register a table and columns through back end?
* by using AD_DD package
- for registering a table
- AD_DD BPI doesnt check for the existence of the registered table or column in
the data base schema, but only updates the required SQL tables.
- It should be ensured that, all the tables and columns registered exist actually
and have the same format as that defined using AD_DD API.
- Views need not be registered.

25. How to write to a file through concurrent program.


* By using FND_FILE package and it can be used only for log and output files.
1. FND_FILE.PUT
- this is used to write text to a file with out a new line character
- Multilane calls to FND_FILE.PUT will produce consummated text.
Procedure FND_FILE.PUT (which IN Number, Buff IN varchar2);
- can be FND_FILE.LOG or FND_FILE.OUTPUT.
2. FND_FILE.PUT_LINE 11
- this procedure as used to write a line of text to a file followed by a new line
character.
Procedure FND_FILE.PUT_LINE (which IN number, buff IN varchar2);
EX:- FND_FILE.PUT_LINE( FND_FILE.LOG, find_message_get);
3. FND_FILE.NEW_LINE
- this procedure is used to write line terminators to a file
procedure FND_FILE.NEW_LINE (which IN number LINES IN NATURAL:=1);
Ex:- to write two newline characters to a log file
Fnd_file.new_line (fnd_file.log,2);
4. FND_FILE.PUT_NAMES
- this procedure as used to set the temporary log file and output filenames and
the temporary directory to the user specified values.
- This should be called before calling my other FND_FILE procedure and only
once per a session.
26)Function FND_REQUEST.SUBMIT_REQUEST
( application in varchar2 default null,
program in varchar2 default null,
description in varchar2 default null,
start-time in varchar2 default null,
sub_request in bookan default False,
argument1,
arguemnt2,
argument 100) return number;
* If this is submitted from oracle forms, all the arguments ( 1 to 100 ) must be
specified. 12
27. How to submit concurrent programs through OS?
- From the operating system the utility .CONCSUB is used to submit is concurrent
propgram.
- This is basically used to test a concurrent program .
- By using the WAIT token. The utility checks the request status every 60
seconds and returns the OS prompt upon completion of the request.
- Concurrent manager doesnot abort, shutdown or start up until the concurrent
request completes.

* If the concurrent program is compatible with it self, it can be checked for data
integrity and dead locks by submitting it many times so that it runs concurrently
with it self.
*PL/SQL procedures can submit a request to run a program as a concurrent
process by calling.
FND_REQUEST. SUBMIT_REQUEST.
* Before submitting a request, the following functions also should be called
optionally.
FND_REQUEST.SET_OPTIONS
FND_REQUEST.SET_REPEAT_OPTIONS
FND_REQUEST.SET_PRINT_OPTIONS
FND_REQUEST.SET_MODE
28. How to checks the request states?
- A PL/SQL procedure can check the status of a concurrent request by calling.
FND_CONCURENT.GET_REQUEST_STATUS
FND_CONCURRENT.WAIT_FOR_REQUEST
- FND_CONCURRENT.GET_REQUEST_STATUS
- This function returns the status of a concurrent request
- If the request is already computed, it also returns the completion message.
- This function returns both user friendly (translatable) phase and status values
as well as developer phase and status vales that can drive program logic. 13
( request_id in out number,
application in varchar2 default null,
program in varchar2 default null,
phase out varchar2,
status out varchar,
dev_phase out varchar2,
dev_status out varchar2,
message out varchar2) return BOOLEAN;
- when application and program are specified, the request_id of the last request
for the specified program should be returned to request_id.
- Phase, and status values should be taken from
FND_LOOKUPS
dev_phase dev_status
pending normal, standby, scheduled, paused
running normal, waiting, resuming, terminating.
Complete normal, Error, warning, cancelled, terminated
Inactive disabled, on-hold, No-manager, supended
- FND_REQUEST.WAIT_FOR_REQUEST
- This function waits for request completion, then returns the request
phase/status and completion message to the caller.

- Goes to sleep between checks for request completion.


Syntax
( request_id in number default null,
interval in number default 60,
max_wait in numbe default 0, 14
phase out varchar2,
status out varchar2,
dev_phase out varchar2,
dev_status out varchar2,
message out varchar2) return BOOLEN;
* FND_CONCURRENT.SET_COMPLETION_STATUS
- this function should be called from a concurrent program to set its completion
states.
- This function returns TRUE on success, other wise FALSE.
ENT.SET_COMPLETION_STATUS
( status in varchar2,
message in varchar2) return BOOLEAN;
normal
status warning
Error
29. What is the reason for not getting any data when a multi org view
is quired?
- to get the data correctly, the xxx-ALL must be referenced and the ORG_ID
value should be specified to extract portioned data.
- Multiorg views are partitioned by using ORG_ID.
- So access through multiorg views will not return any roes, as the CLIENT_INFO
Value is not set
- Use HR_OPERATING UNITS to identify the organization _id of the OU on which
query is based.
- Use FND_CLIENT_INFO package to set the value in CLIENT INPO using
set_org_contest.
- Execute fnd_client_info. Set_org_context (<org_id>);
- Now qurying of multiorg views can be done. 15
30. How do you find that muliorg is installed?
- multi organization architecture is meant to allow muliple companies or
subsidiaries to store their records with in a single data base.
- Multiple organization Architecture allows this by partitioning data through
views in APPS schema.
- Implementation of Multi org generally includes more than one business group.
* To know whether multiorg is existing or not
select multi_org_flag

form fnd_product_groups)
- if the result is Y means the database is group for multiorg
31. what are Handlers?
* Handler is a group of packaged procedures which is used by Oracle
Applications to organize . PL/SQL code in forms.
- Handlers provide a way to centralize the code so that it becomes easier to
develop, maintain and debug.
- The packaged procedures available in a handler are called form the triggers by
passing the name of the trigger as an argument for the procedure to process.
* Handlers are types :- 1) Item Handlers
2) Event Handlers
3) Table Handlers
4) Business Rules
- Handlers reside in program units in the form or in stored packed in the
database.
32)Adding Table handler Logic
Coding logic for window and alternative region control.
Adding fin-windows and/or ROW-LOVS and enable query-find.
Coding logic for item relations such as dependent fields.
Coding messages to use message dictionary. 16
Adding FF logic if required.
Adding choices to the special mence and logic to modify choices the default
menu and tool bar behavior is necessary.
Coding any other logic.
Creating a form function for the developed form and registering any sub
functions.
Testing the form by it self.
Registering the form with AOL.
Adding the form function to a menu or creating custom mence.
Assigning the menu to the responsibility and assigning the responsibility to the
user.
Testing the form within Oracle Applications.
33)Registering of Application, form and a concurrent program through
Application developer Responsibility
Application:oper
<Application / Register >
Form:<Application / Form>
<Application / Function>
Menu:- <Application / Menu>

Messages:- <Application / Messages>


Table:- <Database /Table>
Sequence:- <Database / View>
Concurrent Programme:- <Concurrent / Executable>
<Concurrent / Program> 17
Application Developer (Responsibility)
*Flexfield
+Key
+Descriptive
-Test
*Concurrent
-Program
-Executable
-Library
*Application
-Register
-Form
-Function
-Menu
-Messages
+Database
+Lookups
+Validation
*Profile
*Attachments
- Document Entities 18
- Document Categories
- Attachment Functions
*Other
*Requests
- Run
-Set
-Profile
-Concurrent
-Change Organization
-Running Jobs
+Key +Descriptive
-Register -Register
-Segments -Segments
-Aliases -Values
-Cross Validation

-Values +Lookups
-Groups -Application Object Library
-Accounts -Common
+Database +Validation
-Table -Set
-View -Values
-Sequence 19
Lexical references cannot be made in Pl/SQL statements.
Bind references can be done in a PL/SQL statements.
Lexical parameters can be referenced by entering an ampusand ( ) followed
immediately by the column name or parameter.
Before creating the query, a column or parameter in the data model should be
created for each lexical reference in the query.
For lexical parameters, initial value must be defined so that report builder uses
this value to validate the query with a lexical reference.
Token
If Oracle reports are executed by a concurrent program, (for Oracle Reports
Program), then a keyword or a parameter with the same name as in the report
builder, should be defined which for each parameter, which is known as taken.
This is used to pass the parameters to the reports from the application (SRS
Window)
Request Set
Request set is the group of requests, that can be submitted regularly using a
single transaction.
Incompatibility
These are the list of programs that can be defined as incompatible with a
pertain program.
If any program is defined as incompatible to a particular program, then that
program should not run simultaneously with the concurrent program, because
they might interfere with its execution.
Application Developer Responsibility
Various Screens
Different Executable Methods
1 Host
2 Immediate
3 Java Stored Procedure
4 Java Concurrent Programme 20
5 Multi Language Function
6 Oracle Reports
7 PL/SQL stored Procedure
8 Request set stage function

9 Spawned
10 SQL*Loader
11 SQL*Plus
<Concurrent/Library> Concurrent Library
Library types Transaction Library
<Lookups>
User
Access Levels Extensible
System
<Validation/Set>
List of values
List types Long List of Values
Poplist
No security
Security type Hireaxhial Security
Non-hireaxhial Security
Char
Format type Date
Date time
Number 21
Standard date
Standard date time
Time
Validation types Respondent
Independent
None
Pair
Special
Table
Translatable Independent
Translatable Dependent
<Attachments / Attachment Functions>
function
type form
report
34. What is a Data Group?
- A data group is a group of oracle applications and the Oracle IDs of each
application
- Oracle ID grants access privileges to tables in an Oracle Database
- Data group determines which Oracle Data base accounts a responsibilities
forms, concurrent programs and reports connect to.

35. What is a Responsibility?


- Responsibility defines Applications Privileges
- A responsibility is a level of authority in Oracle Applications that lets users only
those Oracle Applications functions and data appropriate to their roles in an
organization.
- Each user has at list one or more responsibilities and several users can share
the same responsibility 22
* Each responsibility allows access to
- a specific application or a set of applications.
- A set of books
- A restricted list of windows that an user can navigate
- Reports in a specific application.
36. What are security Attributes?
- Security Attributes are used by Oracle self service web Applications to allow
rows of data to be visible to specified users responsibilities based on the specific
data contained in the row.
37. What is a Profile Option?
- profile options are the set of changeable options that affects how the
application looks and behaves.
- By setting profile options, the applications can be made to react in different
ways for different users depending on the specific user attributes.
38. What are steps involved in developing a flex field?
- designing the table structure
- creating fields on the form (Visible/Hidden)
- calling appropriate routines
- registration of the flex field.
- Definition of the flex field.
<Flex fields / key/ Register>
<Flex fields/Descriptions / Register>
39. What is an application /Module?
- Application is a collection of forms, function and menus
40)FND_PROGRAM Package
FND_PROGRAM.Executable:Procedure FND_PROGRAM. Executable IS 23
(executable in Varchar2,
application in varchar2, (full name)
short_name in varchar2, (executable short name)
description in varchar2 default NULL,
execution_method in varchar2,
execution_file_name in varchar2 default null,
Subrowline_name in varchar2 default null, (only for spawned immediate)

Icon_name in varchar2 default null,


Language_code in varchar2 default US,
Execution_file_path in varchar2 default null);
For Java Concurrent Program.
FND. PROGRAM. REGISTER:Procedure FND_PROGRAM.Register IS
(Program in varchar2,
application in varchar2,
enabled in varchar2,
short_name in varchar2,
description in varchar2, default null,
executable_short_name in varchar2,
executable_application in varchar2,
execution_options in varchar2, default null,
priority in number default null,
save_output in varchar2 default Y, 24
print in varchar2 dafault Y,
cols in varchar2 default null,
rows in varchar2, default null,
style in varchar2, default null,
style_required in varchar2, default N,
printer in varchar2, default null,
Requets_Type in varchar2, default null,
Request_type_Application in varchar2 default null,
Use_in_Srs in varchar2, default N,
Allow_disabled_valuer in varchar2 default N,
Run_alone in varchar2 default N,
Output_type in varchar2 default TEXT,
Enable_trace in varchar2 default N,
Restart in varchar2 default Y,
nls_complaint in varchar2 default Y,
icon_name in varchar2 default null,
language_code in varchar2, default US,
mls_function_short_name in varchar2 default null,
mls_function_application in varchar2 default null,
incrementor in varchar2 default null);
41) How to submit concurrent program through l/sql
fnd_request.submit_request(parameters) by using this we can submit the
concurrent program thru pl/sql.
FND_GLOBAL.APPS_INITIALIZE (user_id,resp_id, resp_appl_id)
42) What are the types of Concurrent Managers 25

3 MASTER CONCURRENT MANAGERS:


1. Internal Conccurent Manager (ICM): This is the one which monitors all
other CMs
2. Standard Manager (SM) : This takes care of report running and batch jobs
3. Conflict Resolution Manager (CRM): checks concurrent program
definitions for incompatability checks.
We cannot delete a concurrent manager... but we can disable it... but
it's notrecommended.
43) multi org set up
Begin dbms_application_info.set_client_info('ORG_ID');
end;
44. What is the relation between Responsibility, Menu and Request
Group?
Responsibility: - A responsibility is a set of authority in Oracle Apps that lets
users access only that functionality of the application appropriate to their roles.
Menu: - A menu is a hierarchical arrangement of functions and menus of
functions that appears in the Navigator. Each responsibility has a menu assigned
to it.
Request Group: - it is a collection of reports or concurrent programs. A system
Administrator defines report groups in order to control user access to reports
and concurrent programs. Only a system administrator can create a request
group.
45. What is a function, how to create one?
A function is apart of an applications functionality that is registered under a
unique name for the purpose of assigning to it to, or excluding it from, a menu
(and by extension, responsibility). There are several types of functions: - Form
Functions, SubFunctions, and
Non-form functions. We often refer to a form function simply as a form.
46. What is meant by APPL_TOP?
Environment variable
An operating System variable that describes an aspect of the environment in
which your application runs. For example, you can define an environment
variable to specify a directory path. 26
$APPL_TOP: An environment variable that denotes the installation directory for
Oracle Application Object Library and your other Oracle applications. $APPL_TOP
is usually one directory level above each of the product directories (which are
often referred to as $PROD_TOP or $PRODUCT_TOP or $<prod>_TOP).
47. Explain briefly where are the Custom.pll, Forms, Reports, Sql
Loader Control files, Shell Script source code and executables files
kept?
Custom.pll - $AU_TOP/resource

Forms - $PROD_TOP/Forms/US
Reports - $PROD_TOP/Reports/US
SQL Control Files - $PROD_TOP/Bin
Shell Scripts - $PROD_TOP/Bin
48. When is Custom.pll used?
Custom.pll is used while making new or customizing standard oraclke forms in
apps. It contains all the forms libraries for apps.
49. What are profile options; at what levels can these be set?
A user profile is a set of changeable options that affects the way the applications
run. Oracle
Applications object Library establishes a value for each option in a users profile
when the
User logs on or changes responsibility.
System Profile: - Profile option can be set for the user community.
User Profile: - Provide Oracle Apps with standard information which describes a
user,
Application, Responsibility and site. At each profile level user profile options can
be set.
50. How can you know the form (fmb) name when you open a form in
Apps?
Help
51. Where do you create a table and sequence in Apps? Is it APPS
schema?
In custom schema and then grant privileges on it to APPS schema.
52. Where are Views and Procedures created? 27
Views: - Views are to be created only in APPS.
Procedures: - In custom schema and the grant it to APPS schema.
53. How can you tell who last updated a particular row in a form?
54. You have logged onto a Responsibility, how do you know what
operating unit are you on?
55) Can new profiles be created? If so how?
Yes. Application Developer.
56)How do you register a report? Explain passing of parameters
between a concurrent program
Definition and report?
After developing the report (.rdf), FTP it to the UNIX server.
Define executable.
Define concurrent program and attach the executable.
Attach the concurrent program to a request group.
57) What is the approach to create a new form to be used in Oracle
Apps?

The TEMPLATE form is the required starting point of all development of new
forms. Start
Developing each new form by copying the TEMPLATE.fmb file, located in
$AU_TOP/forms/US(or your language and platform equivalent), to local directory
and
Rename it as appropriate.
58. Explain Value Set? Difference between a Table Validated and
Independent Value Set?
A set of values against which Oracle Application Object Library validates values
your end
users enter when running your program. You define your value set by specifying
validation 28
rules, format constraints and other properties. For example, you could define a
value set to
contain values that are character strings, validated from a table in your
application. You can
Specify that oracle application Object Library use the same value set to validate
different
Report parameters. You can also use value sets that you use in your flex fields to
validate
Your report parameters.
59. How do you create a table validated value set dependent on
another value set?
Use :$FLEX$.<Value set name> in the where condition.
60. What is difference between a concurrent request and a concurrent
request set?
61. What are the two mandatory parameters required for running a
PL/SQL Procedure based concurrent program?
Errbuf, Retcode
62. How can you ensure that only one instance of a concurrent program
runs?
Check the Run Alone check box in Concurrent program registration window.
63. Within a PL/SQL procedure which API is to be used to extract a
profile value?
FND_PROFILE.GET
64. How do you set the operating unit context in a report?
Begin
Dbms_application_info.set-client-info(<Organization_Id>);
End;
65. Can you submit a concurrent request from the operating system
directly?

Write a Shellscript.
Login to database
Run the function FND_REQUEST.Submit()
66. Explain how to generate a trace file for a pl/sql concurrent program
for tuning?
Check theEnable Trace check box in concurrent program registration
window.29
67. How do you write to the concurrent request Log and Output file?
FND_FILE.PUT(FND_FILE.LOG or FND_FILE.OUTPUT, <Text>);
68. What is the difference between Operating Unit and Inventory
Organization?
Operating Unit :- An Organization that uses Oracle Cash management, Order
management and Shipping Execution, Oracle Payables, Oracle Purchasing, and
Oracle Receivables. It may be a sales Office, a division, or a dept. An operating
unit is associated with a legal entity. Information is secured by operating unit for
these applications. Each user sees information only for their operating unit. To
run any of these applications, you choose a responsibility associated with an
organization classified as an operating unit.
An organization for which you track inventory transactions and balances, and/or
an organization that manufactures or distributes products. Examples, include
(but are not limited to) manufacturing plants, warehouses, distribution centers,
and sales offices. The following applications secure information by inventory
organization: Oracle inventory, Bills of Material, Engineering, and Work in
Process, Master Scheduling/MRP, Capacity, and Purchasing receiving functions.
To run any of these applications, you must choose an organization that has been
classified as an inventory organization.
69. What is Set of Books?
A financial reporting entity that uses a particular chart of accounts, functional
currency,
And accounting calendar. Oracle General Ledger secures transaction information
(such as journal entries and balances) by set of books. When you use Oracle
General Ledger, you choose a responsibility that specifies a set of books. You
then see information for that set of books only.
70. What is Item Validation Organization?
The organization that contains your master list of items. You define it by setting
the OM: Item Validation Organization parameter. You must define all items and
bills in your Item Validation Organization, but you also need to maintain your
items and bills in separate organizations if you want to ship them from other
warehouses.
OE_System_

71. Mention the table or views where Inventory Org, Items, Set of
Books, GL Code Combinations, Operating Unit, Location, Customers,
Vendors, and Invoices are stored in Apps.
Inventory Org: - MTL_PARAMETERS/ORG_ORGANIZATION_DEFINITIONS
Items: - MTL_SYSTEM_ITEMS_B
Set of Books: - GL_SETS_OF_BOOKS 30
GL Code Combinations: - GL_CODE_COMBINATIONS
Operating Unit: - HR_ALL_OPERATING_UNITS
Location: - MTL_ITEM_LOCATIONS
Customers: - RA_CUSTOMERS
Vendors: - PO_VENDOR_CONTACTS
Invoices: - AP_INVOICES_ALL
72. What is the profile to be read to find out what Inventory
Organization and Operating Unit are you on?
(mfg_organization_id is the Inventory Org)
73)What is Inventory Master Organization?
Items are defined in an Inventory Master Organization.
74)What is the difference between key flexfield and Descriptive
flexfield?
Key Flexfield is used to describe unique identifiers that will have a better
meaning than using number IDs. e.g a part number, a cost centre etc Desc Flex
is used to just capture extra information. Key Flexfields have qualifiers whereas
Desc Flexfields do not. Desc Flexfields can have context sensitive segments
while Key flexfields cannot.
And one more differenct that KFF displays like text item but DFF displays
like [ ] .
75)Which procedure should be called to enable a DFF in a form?
FND_DESCR_FLEX.DEFINE (BLOCK => 'BLOCK_NAME' ,FIELD =>
'FORM_FIELD_NAME' ,APPL_SHORT_NAME => 'APP_NAME' ,DESC_FLEX_NAME =>
'DFF_NAME' );
76)Which procedure should be used to make the DFF read only at run
time?
FND_DESCR_FLEX.UPDATE_DEFINITION()
77)What is the difference between flexfield qualifier and segment
qualifier?31
Flexfiled qualifier identifies segement in a flexfield and segment qualifier
identifies value in a segment.
There are four types of flexfiled qualifier 1) Balancing segment qualifier 2) cost
center 3) natural account and 4) intercompnay
segemtn qualifier :- 1) allow budgeting 2) allow posting 3) account type 4)
contral account and 5) reconciliation flag

78)Where do concurrent request logfiles and output files go?


The concurrent manager first looks for the environment variable $APPLCSF If this
is set, it creates a path using two other environment variables: $APPLLOG and
$APPLOUT It places log files in $APPLCSF/$APPLLOG Output files go in $APPLCSF/
$APPLOUT So for example, if you have this environment set: $APPLCSF =
/u01/appl/common $APPLLOG = log $APPLOUT = out The concurrent manager
will place log files in /u01/appl/common/log, and output files in
/u01/appl/common/out Note that $APPLCSF must be a full, absolute path, and
the other two are directory names. If $APPLCSF is not set, it places the files
under the product top of the application associated with the request. So for
example, a PO report would go under $PO_TOP/$APPLLOG and $PO_TOP/
$APPLOUT Logfiles go to: /u01/appl/po/9.0/log Output files to:
/u01/appl/po/9.0/out Of course, all these directories must exist and have the
correct permissions. Note that all concurrent requests produce a log file, but not
necessarily an output file.
79)How do I check if Multi-org is installed?
SELECT MULTI_ORG_FLAG FROM FND_PRODUCT_GROUPS
If MULTI_ORG_FLAG is set to 'Y', Then its Multi Org.
80)How do I find out what the currently installed release of
Applications is? /How do I find the name of a form?
We can also find out through Help > About Oracle Applications
81)Why does Help->Tools->Examine ask for a password?
Navigate to the Update System Profile Screen.
(\ navigate profile system) 32
- Select Level: Site
- Query up Utilities:Diagnostics in the User Profile Options Zone.
If the profile option Utilities:Diagnostics is set to NO, people with access to the
Utilities Menu must enter the password for the ORACLE ID of the current
responsibility to use Examine. If set to Yes, a password will not be required.
82)What are the API used in PO cancellation ?
Ans. For Partial cancellation -> To modify the Ordered quantity
v_return_flag := apps.gems_public_apis_pkg.po_update_po
( x_po_number => v_po_number
, x_release_number => NULL
, x_revision_number => v_revision_num
, x_line_number => v_line_number
, x_shipment_number => v_shipment_num
, new_quantity => p_quantity
, new_price => NULL
, new_promised_date => NULL
, launch_approvals_flag => 'Y'

, update_source => NULL


, x_interface_type => NULL
, x_transaction_id => NULL
, version => '1.0');
For Full cancellation ->
apps.gems_public_apis_pkg.po_control_document
( p_api_version => v_api_version_number
, p_init_msg_list => apps.fnd_api.g_true
, p_commit => apps.fnd_api.g_false
, x_return_status => p_return_status
, p_doc_type => 'PO'
, p_doc_subtype => v_sub_type
, p_doc_id => v_po_header_id
, p_doc_num => NULL
, p_release_id => NULL
, p_release_num => NULL
, p_doc_line_id => v_po_line_id
, p_doc_line_num => NULL
, p_doc_line_loc_id => p_line_loc_id
, p_doc_shipment_num => NULL
, p_action => 'CANCEL'
, p_action_date => SYSDATE
, p_cancel_reason => 'GPO_WAREHOUSE_DENIAL'
, p_cancel_reqs_flag => 'N'
, p_print_flag => 'N'
, p_note_to_vendor => apps.fnd_api.g_miss_char); 33
83)How an API is initialized ?
Ans. apps.gems_public_apis_pkg.fnd_apps_initialize
( user_id => p_user_id
, resp_id => p_resp_id
, resp_appl_id => p_resp_appl_id)
84)What is the name of the API parameter when they are True,False
and NULL ?
Ans. apps.fnd_api.g_true, apps.fnd_api.g_false and apps.fnd_api.g_miss_char
respectively.
85)What are the different steps in sending a mail from PL/SQL ?
Ans. PROCEDURE glp_send_mail_po_cancel
( p_org_id IN VARCHAR2
, p_feeder_source IN VARCHAR2
, p_subject IN VARCHAR2
, p_message_body IN VARCHAR2

, p_return_status OUT VARCHAR2


, p_error_message OUT VARCHAR2
)
v_host_name := utl_inaddr.get_host_name();
v_host_ip := utl_inaddr.get_host_address(v_host_name);
v_mailconn := utl_smtp.open_connection(v_host_ip, 25);
utl_smtp.helo(v_mailconn,v_host_ip);
utl_smtp.mail(v_mailconn,v_from_email_id);
utl_smtp.rcpt(v_mailconn,v_to_email_tab(v_addr_cnt));
v_message := v_message || 'To: ' || v_to_email_tab(v_addr_cnt) || '>' || crlf;
utl_smtp.data(v_mailconn,v_message); -- calling mail procedure
utl_smtp.quit(v_mailconn);
86)How do u call a mail program from Shell program ?
Ans. for file in `find . -name "*.com*~$5" -print |cut -c3-120`
do
echo $file
frm=`echo $file | cut -d'~' -f1`
tom=`echo $file | cut -d'~' -f2 | sed 's/,/ /g'`
echo $frm
echo $tom
echo "Sending mail to $tom"
mailx -r "$frm" -s 'Order Shipment Confirmation' "$tom" < "$file"
rc=$?
if [ $rc != 0 ]
then
echo 'invalid file name'
fi 34
rm -f "$file"
rc=$?
if [ $rc != 0 ]
then
echo 'invalid file name'
fi
done
87)How do submit a concurrent program from PL/SQL ?
Ans. apps.fnd_global.apps_initialize
(user_id => p_user_id
,resp_id => p_resp_id
,resp_appl_id => p_resp_appl_id)
;

*/ p_error_message := p_error_message ||'Calling Receiving transaction


processor'||chr(10);
v_request_id := apps.fnd_request.submit_request
('PO'
,'RVCTP'
,NULL
,NULL
,FALSE
,'BATCH'
,p_batch_id
);
dbms_output.put_line('request id is :'||v_request_id); COMMIT;
p_error_message := p_error_message ||'Receiving Transaction Processing
Request id :'||v_request_id ||chr(10) ;
IF (v_request_id > 0) THEN
v_complete := FND_CONCURRENT.wait_for_request ( request_id => v_request_id
, interval => 10
, max_wait => 0
, phase => v_phase
, status => v_status
, dev_phase => v_dev_phase 35
, dev_status => v_dev_status
, message => v_message);
88)How do u register a concurrent program from PL/SQL ?
Ans. apps.fnd_program.executable_exists -> To check if executable file exists
apps.fnd_program.executable -> To make executable file
fnd_program.program_exists -> To check if program is defined
apps.fnd_program.register -> To register/define the program
apps.fnd_program.parameter -> To add parameters
apps.fnd_program.request_group -> To add to a request group
89)How do u initialize an API ?
Ans. apps.gems_public_apis_pkg.fnd_apps_initialize
( user_id => p_user_id
, resp_id => p_resp_id
, resp_appl_id => p_resp_appl_id)
And U can get the parameters from the following script ->
SELECT DISTINCT f5.user_id
, f4.responsibility_name responsibility_name
, f4.responsibility_id responsibility_id
--INTO
--v_user_id

--, v_responsibility_name
--, v_responsibility_id
FROM applsys.fnd_user_resp_groups f6
, apps.fnd_user f5
, apps.fnd_profile_options f1
, apps.fnd_profile_option_values f2
, apps.fnd_responsibility f3
, apps.fnd_responsibility_tl f4
WHERE SYSDATE BETWEEN f6.start_date AND NVL(f6.end_date,SYSDATE)
AND f5.user_id = f6.user_id
AND UPPER(f5.user_name) like '%GLOBALPARTS%'
AND f6.responsibility_id = f4.responsibility_id
AND f2.profile_option_value = TO_CHAR(13) -- Putting the ORG ID Value
AND f2.profile_option_id = f1.profile_option_id
AND f1.profile_option_name = 'ORG_ID'
AND f3.application_id = 201
AND f2.level_value = f3.responsibility_id
AND f3.responsibility_id = f4.responsibility_id
AND UPPER(f4.responsibility_name) LIKE UPPER('GEMS%PO%MANAGER%') 36
AND ROWNUM = 1;
90)How Do u register a table & a column ?
Ans. EXECUTE ad_dd.register_table( 'GEMSQA', 'gems_qa_iqa_lookup_codes', 'T',
512, 10, 70);
EXECUTE ad_dd.register_column('GEMSQA', 'gems_qa_iqa_lookup_codes',
'LOOKUP_CODE', 1, 'VARCHAR2', 25, 'N', 'N');
91) What resources are provided for developing applications which will
be
integrated into Oracle Applications Release 11?
a. The Oracle Applications Developer's Guide Release 11 and the Oracle
Applications User Interface Standards Release 11.
b. The AU_TOP/forms/US/TEMPLATE.fmb for developing a new form.
c. The AU_TOP/forms/US/APPSTAND.fmb contains standard property classes
for your runtime platform.
d. The AU_TOP/resource/FNDSQF.pll contains routines for Flexfields,
Function Security, User Profiles, Message Dictionary.
e. The AU_TOP/resource/APPCORE.pll contains standard User Interface routines.
f. The AU_TOP/resource/APPDAYPK.pll contains the Calendar Widget routines.
g. The AU_TOP/resource/CUSTOM.pll for adding custom code which affects
Oracle
Applications forms without changing Oracle Applications code.
h. The AU_TOP/resource/GLOBE.pll allows Oracle Applications developers to

incorporate global or regional features into Oracle Applications forms


without modifying the base Oracle Applications forms. Globe calls routines
JA, JE, and JL libraries.
i. The AU_TOP/resource/JA.pll called from Globe and contains Asia/Pacific code.
j. The AU_TOP/resource/JE.pll called from Globe and contains EMEA
(Europe/Middle East/Africa) code.
k. The AU_TOP/resource/JL.pll called from Globe and contains Latin America
code.
l. The AU_TOP/resource/VERT.pll allows Oracle Applications developers to
incorporate vertical industry features (for automotive, consumer packaged
goods, energy, and other industries) into Oracle Applications forms
without modifying the base Oracle Applications forms. 37
m. Oracle Developer/2000 Server Release 1.6.1.
NOTE: All FMB and PLL files must be migrated to your desktop if you intend to
develop and integrate custom applications into Oracle Applications
Release 11.
92. What are the supported versions of Forms and Reports used for
developing
on Oracle Applications Release 11?
Answer-----a. The following supported versions are provided in Developer/2000
Release 1.6.1:
i. Forms 4.5
ii. Reports 2.5
93. How do I compile and/or generate an Oracle Applications form?
Answer-----a. UNIX
cd $AU_TOP/forms/US
f45gen module=FNDSCAUS.fmb userid=APPS/APPS output_file=
/appl/v1100000/fnd/11.0.28/forms/US/FNDSCAUS.fmx module_type=form
batch=no compile_all=special
b. Windows NT
cd F:\applr11\au\11.0.28\forms\US
f45gen32 userid=APPS/APPS module=FNDSCAUS.fmb output_file=
applr11\fnd\forms\US\FNDSCAUS.fmx module_type=form batch=no
compile_all=special
94. How do I open, compile and/or generate a custom Oracle
Applications form on my desktop?
Answer
-----a. To port the AU_TOP/forms/US and AU_TOP/resource files to your Windows

desktop:
i. Make copies of all required files.
ii. Replicate the AU_TOP directory structure on your desktop.
iii. Move the files to their appropriate AU_TOP/forms/US for FMB and
AU_TOP/resource for PLL.
iv. Include the AU_TOP/forms/US and AU_TOP/resource directories in
your FORMS45_PATH.
v. Open, compile and/or generate forms.
NOTE: The FORMS45_PATH is specified either in your Registry or oracle.ini.
NOTE: It may sometimes be necessary to convert FMB -> FMT and PLL -> PLD
before 38
porting from a Unix platform to your desktop.
95. How do I add a CUSTOM_TOP to Oracle Applications?
Answer
a. Replicate an existing Oracle Applications product directory structure
underneath your APPL_TOP:
APPL_TOP
|
XXCUS_TOP
|
bin------forms-----html-----lib-----log-----mesg-----out-----reports
||
US US
b. Make sure all the permissions on the files and directories are the same
as the other product directories.
c. Add the full path to this CUSTOM_TOP to your APPLSYS.env ( Source your
APPLSYS.env) or your Windows NT Registry:
UNIX: /u01/oracle/apps/vd11/xxcus/11.0.28
Windows NT: D:\oa\appltst\vd11\xxcus\11.0.28
d. Login to Oracle Applications using the System Administrator or Application
Developer Responsibility.
e. Navigate: Application -> Register and add your new CUSTOM_TOP to Oracle
Applications.
Application Short Name Basepath Description
------------------------------------------------------------------------------Custom Application XXCUS XXCUS_TOP Custom Application
f. Shutdown and restart your Internal Concurrent Manager (ICM) so that the
concurrent manager will recognize the change to the environment that was
made to the APPLSYS.env and Registry.
96. How to get the data from the views in Multi_ORG views ?
A. Using the profiles and client info package.

Eg:
SELECT * FROM po_headers this is multi org view
If we cant get the data with the above query then we have to write a procedure
as shown below.
DECLARE
x NUMBER:=0; 39
BEGIN
x:=fnd_profile.value('org_id');
fnd_client_info.set_org_context (204);
END;
Compile and run the query once again.
97) What is Responsibility / Request Group?
Ans: Responsibility is used for security reason like which Responsibility can do
what type of jobs etc.
Set of Responsibility is attached with a Request group. When we attach the
request group to a concurrent program, that can be perform using all the
Responsibilities those are attached with Request group.
98) What is DFF?
Ans: The Descriptive Flexi field is a field that we can customize to enter
additional information for which Oracle Apps product has not provided a field.
Ex. ATP program calculates for those warehouses where Inventory Org Type is
DC or Warehouse in DFF Attribute11 of MTL_PARAMETERS table.
99) What is Value Set?
Ans: Value Sets define and store the valid items of data, which may be entered
into a field.
Key Flexfields, Descriptive Flexfields and many standard fields use Value Sets.
Oracle already comes with hundreds of Value Sets.
We define additional Value Sets to support our own user-defined Key and
Descriptive Flexfields (although we may use any existing standard Value Sets if
they suit our purpose).
In defining a new Value Set, we are defining the physical format of valid data,
which can reside in that Value Set.
Data in a Value Set can be of several types:
Independently loaded into a Value Set (through a standard form).
Resident in a table (to which we direct the Value Set definition).
There could be No Validation (any data can go into the field, but still subject to
the formatting rules.)
Dependent on the value of data in a preceding Independent segment (loaded
through a standard form).
Ex: For Supplies & Accessories CC in ATP, we define GEMS_GPO_ASSIGN_SET
value set for the assignment set associated with that OU.

100) What is multi-org?


Ans: It is data security functionality in Oracle 10.6 and above. Applicable User
responsibilities are created and attached to specific Operating Unit. User can
access the data that belongs to the Operating unit they login under. 40
The benefit is it enables multiple operating units to use a single installation of
various modules, while keeping transaction data separate and secure by
operating unit.
It has an effect on the following modules:
Order Entry
Receivable
Payable
Purchasing
Project Accounting
101) Can you explain the Organization structure?
Ans:
a) Business Unit / Group : It represents the highest level in Organization
structure and has no accounting impact. It determines which employees will be
available to Set Of Books and Operating Units.
Ex: Consolidated Enterprise / a major division / an operating company.
b) Set Of Books: It is a financial reporting entity that uses a particular
Chart of accounts,
Functional currency and
Accounting calendar.
It is the highest level with accounting significance. Document Sequencing
(important in Europe) is at the Set of Books level. Also Period open/close is at
the Set of Books level.
A Set of Books is associated with only one Business Group. A Business Group
may be assigned several Sets of Books i.e Multiple sets of books can share the
same business group if they share the same business group attributes.
Base Table: apps.gl_sets_of_books
c) Legal Entity: A legal company for which you prepare fiscal or tax reports.
Each Legal Entity is associated with only one Set of Books. A Set of Books may
have multiple Legal Entities.
Base Table: apps.hr_legal_entities
d) Operating Unit: An organization that uses oracle order management, cash
management, shipping execution, payables, purchasing and receivables.
It may be a sales office, a division, or a department. Standard reports are at the
Operating Unit level.
An operating unit is associated with a legal entity.
Base Table: apps.hr_operating_units

e) Inventory Organization : An organization for which you track inventory


transactions and balances, and/or an organization that manufactures or
distributes products.
An Operating Unit may have multiple Inventory Organizations.
Ex: manufacturing plants, warehouses, distribution centers, and sales offices. 41
Base View: apps.org_organization_definitions
f) Subinventory: An inventory organization has a number of subinventories
associated with it.
Base Table: apps.mtl_secondary_inventories
(secondary_inventory_name = subinventory name)
g) Locator : These are the different locations in side a subinventory.
Base Table: apps.mtl_item_locations
105)What are the mandatory parameters in Concurrent program?
Ans: errbuf and Retcode (In case pl/sql store procedure)
p_conc_request_id (In case Oracle Report, it is an user-parameter)
106)Why we use token field for Concurrent program?
Ans: The Token is used as for binding purpose. The parameter value is passed
to the .rdf/procedure through this token. The input (user) parameter value
passes to the report / stored procedure after binding with this token. The
concurrent program wont get impact even the user parameter names get
changed, but got impacted when the token name changed.
107) What are the mandatory parameters in concurrent programs?
Ans: errbuf
errcode.
108)Those are IN or OUT parameters.
Ans: Out Parameters
109)What is Request group?
Ans: Responsibility is used for security reason like which Responsibility can do
what type of jobs etc.
Set of Responsibility is attached with a Request group. When we attach the
request group to a concurrent program, that can be perform using all the
Responsibilities those are attached with Request group.
110)What is MultiOrg? 42
Ans: It is data security functionality in Oracle 10.6 and above. Applicable User
responsibilities are created and attached to specific Operating Unit. User can
access the data that belongs to the Operating unit they login under.
The benefit is it enables multiple operating units to use a single installation of
various modules, while keeping transaction data separate and secure by
operating unit.
It has an effect on the following modules:
Order Entry

Receivable
Payable
Purchasing
Project Accounting
111)There is an Object type Spawned in concurrent program. What is
the use
Ans: It is used for Proc*C in executable field
112)How can we call a Report from Form in Apps?
Thru concurrent prog
113) what are the setup we need to do before running into Oracle
Apps.
Ans: Go to Oracle Apps > System Administraror (Responsibility) > Create a User
using SSO > Add responsibility
Switch to COE Dev Sys Administrator (Responsibility) > Add the Responsibility
that is attached to the newly created User > menue > exclude / include the
function according to the requirement
114) What is multi_org?
Ans: It is data security functionality in Oracle 10.6 and above. Applicable User
responsibilities are created and attached to specific Operating Unit. User can
access the data that belongs to the Operating unit they login under.
The benefit is it enables multiple operating units to use a single installation of
various modules, while keeping transaction data separate and secure by
operating unit.
It has an effect on the following modules:
Order Entry
Receivable
Payable
Purchasing
Project Accounting
115) What is the difference between po_headers & po_headers_all?
Ans: Here comes the concept of multi_org. po_headers contains data that is
irrespective of multi_org i.e any supplier can view all the records. In case of
po_headers_all 43
116) What is the basic requirement that we need to set before starting
a form in Oracle Apps
Ans:
a) FTP the templet.fmb From $au_top/bin To Local m/c
b) Rename the templet.fmb as User defined name
c) Trigger Level Change: Pre_Form : app_window.set_window_position('BLK_ORG',
'FIRST_WINDOW'); -- 1st Window Name
set_window_property('BLK_ORG',title,'Form name') -- 1st Window Name, caption

Block Level Change: Rename Default_block


Form Level Change: Property Panel > Navigation > First Navigation Data Block >
(Set A Block Name)
Program Unit Level: App_custom > (set the 1st window name)
118) What is the API we use to see the message from log file
Ans:
When we use an API, it automatically stores the error message in a pl/sql table
i.e creating a log of the errors.
We can see those error messages thougt fnd_message_pub API
119)There is a check box called Use in SRS. What is its use
SRS stands for Standard Request Submit. We can execute concurrent program
by directly passing parameters. On checking this Use In SRS check box, we
can independently use the concurrent program.
120)Do you know Extension table?
Ans: Unlike database table, it store outside the database like BFile (content
store outside the DB but the location store in DB like pointer). It contains
metadata only. So no DML operation (except SELECT, Group by, Order By) can
possible.
121)Why do we call FND SRWINIT from Before Report Trigger
A. FND SRWINIT fetches concurrent request information and sets up the profile
options. It must be included if one is using any ORACLE APPLICATION OBJECT
LIBRARY features in his report (such as concurrent processing)
122)Why do we call FND SRWEXIT from After Report Trigger
A. FND SRWEXIT frees all the memory allocations done in other Oracle
Applications user exits. It must be included if one is using any ORACLE
APPLICATION OBJECT LIBRARY features in his report (such as concurrent
processing)
123) Why do we call FND FLEXSQL from the Before Report Trigger?
A. One need to pass the concatenated segment values from the underlying code
combinations table to the user exit so that it can display appropriate data and
derive any description and values from switched value sets as needed. One gets
this information by calling the AOL user exit FND FLEXSQL from the before report
Trigger. 44
124. If u call the user exit FND FLEXSQL with MODE = WHERE from
the Before Report Trigger. What will it do?
A. This user exit populates a lexical parameter that you specify with
the appropriate SQL fragment at run time. You include this lexical
parameter in the WHERE clause of the report query. This user exit is
called once for each lexical to be changed.
125. If u call the user exit FND FLEXSQL with MODE = ORDER BY
from the Before Report Trigger. What will it do?

A. This user Exit populates the lexical parameter that one specifies with the
appropriate SQL fragment at run time. One includes this lexical parameter in the
ORDER BY clause of the report query. This user exit is called once for each
lexical to be changed.
126. How can we display flexfield segment values, descriptions, and
prompts on the report?
A. Create a formula Column. Call the user exit FND FLEXIDVAL as the formula for
this column. This user exit automatically fetches more complicated information
such as descriptions and prompts so that one does not has to use complicated
table joins to the flex field tables.
127. Name some options of the FND FLEXSQL user exit
A CODE, APP_SHORT_NAME, OUTPUT, MODE, DISPLAY, SHOWDEPSEG, NUM or
MULTINUM, TABLEALIAS, OPERATOR, OPERAND1, OPERAND2.
128. Describe CODE option of the FND FLEXSQL user exit
A. Specify the flex field code for the report (for example, GL#, MCAT).
129. Describe the APP_SHORT_NAME option of the FND FLEXSQL user
exit
A. Specifies the short name of the application that owns the flex field (for
example: SQLGL, INV)
130. Describe the OUTPUT option of the FND FLEXSQL user exit
A. Specify the name of the lexical parameter to store the SQl fragment. One
uses this lexical later in the report when defining the SQL statement that selects
the flexfield values. the datatype of this parameter should be character.
131. Describe the MODE option of the FND FLEXSQL user exit
A. Specify the mode to use to generate the SQL fragment . valid mode are :
SELECT: Retrieves all segments values in an internal (non- displayable format).
WHERE: Restrict the query by specifying constraints on flexfield columns. The
fragment returned includes the correct decode statement if one specifies
MULTINUM. One must also specify an OPERATOR and OPERANDS.
HAVING: Same calling procedures and functionality as WHERE.
ORDER BY: Order required information by flexfield columns. The fragment Orders
your flexfield columns and separates them with a comma. The fragment
returned includes the correct decode statement, one specifies in MULTINUM.
132. Describe the DISPLAY option of the FND FLEXSQL user exit
A. One uses the DISPLAY token with the MODE token . the DISPLAY parameter
allows you to specify segments that represent specified flexfield qualifiers or
specified segments numbers , 45
where the segment numbers are the order in that the segments appear in the
flexfield window, not the segment number specified in the Define Key Segments
form.

Eg. If your MODE is SELECT and you specify DISPLAY = ALL then the SELECT
statement includes all the segments of the flexfield. . Similarly, if your MODE is
WHERE and you specify DISPLAY = ALL, then your WHERE clause includes all
segments.
133. Describe the SHOWDEPSEG option of the FND FLEXSQL user exit
A. SHOWDEPSEG = N disables automatic addition of depended upon segments
to the order criteria. The default is Y. This token is valid only for MODE =
ODER BY In FLEXSQL.
134. Describe the NUM option of the FND FLEXSQL user exit
A. Specify the name or lexical or source column that contains the flexfield
structure information. If the flexfield uses just one structure, specify NUM only
and use a lexical parameter to hold the value. If the flexfield uses multiple
structures, specify MULTINUM only and use a source column to hold the value.
The default value is 101.
135. Describe the TABLE ALIAS option of the FND FLEXSQL user exit
A. You use TABLE ALIAS if your SELECT joins to other flexfield tables or uses a
self join.
136. Describe the OPERATOR option of the FND FLEXSQL user exit
A. Specify an operator to use in the WHERE clause.
137. Describe the OPERAND1 option of the FND FLEXSQL user exit
A. Specify an operand to use in the WHERE clause,
138. Describe the OPERAND2 option of the FND FLEXSQL user exit
A. Specify a second operand to use with OPERATOR = BETWEEN
139. Where is FND FLEXIDVAL user exit used
A. Call this user exit to populate fields for display. You pass the key flex fields
data retrieved by the query into this user exit from the formula column. With
this exit you can display values, descriptions and prompts by passing
appropriate token (any one of VALUE, DECRIPTION<APROMPT or LPROMPT).
140) Name the interface tables used for the customer interface?
A. 1. RA_CUSTOMERS_INTERFACE_ALL
2. RA_CUSTOMER_BANKS_INT_ALL
3. RA_CUST_PAY_METHOD_INT_ALL
4. RA_CUSTOMER_PROFILES_INT_ALL
5. RA_CONTACT_PHONES_INT_ALL
141) What is the name of the column in CUSTOMER_INTERFACE_TABLE
that indicates whether you are inserting new or updating existing
information?
A: When importing data into the interface tables, the column
INSERT_UPDATE_FLAG indicates whether you are inserting new or updating
existing information. This column is required in RA_CUSTOMERS_INTERFACE. 46

142) If the INSERT_UPDATE_FLAG is not set correctly or the required


column is missing the value, will CUSTOMER INTERFACE reject the
entire record or just the attributes u want to update?
A Reject the entire record.
143) List some of the required columns for the
RA_CUSTOMERS_INTERFACE?
A. ORIG_SYSTEM_CUSTOMER_REF
INSERT_UPDATE_FLAG
CUSTOMER_NAME
CUSTOMER_NUMBER (if you are not using Automatic Customer Numbering)
CUSTOMER_STATUS
LAST_UPDATED_BY
LAST_UPDATE_DATE
CREATED_BY
CREATION_DATE
If you are importing an address and a business purpose, you must also populate
the following columns:
PRIMARY_SITE_USE_FLAG (if you are inserting an address)
LOCATION (if you are not using Automatic Site Numbering)
SITE_USE_CODE (if you are inserting an address)
ADDRESS1
144) List some of the production tables that Customer Interface
transfers customer data from the interface tables into?
A. AR_CUSTOMER_PROFILES
AR_CUSTOMER_PROFILE_AMOUNTS
RA_ADDRESSES
RA_CONTACTS
RA_CUSTOMERS
RA_CUSTOMER_RELATIONSHIPS
RA_CUST_RECEIPT_METHODS
RA_PHONES
RA_SITE_USES
AP_BANK_ACCOUNT_USES
AP_BANK_ACCOUNTS
AP_BANK_BRANCHES
145). What validation must be given on the customer_number?
A Must be null if you are using Automatic Customer Numbering. Must exist if you
are not using Automatic Customer Numbering. This value must be unique within
RA_CUSTOMERS.
146) What validation must be given on the CUSTOMER_STATUS?
A Must equal A for Active or I for Inactive.

147) Name some of the Oracle receivables Interfaces?


A a) Auto Invoice
b) Auto Lockbox
c) Customer Interface 47
d) Sales Tax rate Interface
e) Tax Vendor Extension
148) Give some of the Oracle Payables interface?
A. a) Credit Card Transaction Interface
b) Invoice Import Interface
c) Payables Open Interface
d) Purchase Order Matching
149). Name some of the oracle general ledger Interface?
A a) Budget Upload
b) Importing Journals
c) Loading Daily rates
150). What are the names of the parameters u pass to the Procedure
which u register in the apps?
A. 1) retcode in varchar2
2) errbuf in varchar2
151). What is the use of Auto lock Box?
A Auto Lockbox (or Lockbox) is a service that commercial banks offer corporate
customers to enable them to outsource their accounts receivable payment
processing.
152). Auto Lockbox is a three-step process, what are those?
A. a) Import
b) Validation
c) PostQuickCash
153). What is the order in which Autolock box searches for the types of
the matching number?
A. 1. Transaction Number
2. Sales Order Number
3. Purchase Order Number
4. Consolidated Billing Invoice Number
5. Other, user-defined number.
154. What is application short name for General Ledger you specify in
FND FLEXSQL user exit?
A. SQLGL
155) . What are validations to be done in Journal Import interface.
A. Batch level: Set of Books, Period Name, and Batch Name

Journal Level: Set of books, Period name, Source name, Journal entry name,
Currency code, Category name, Actual flag, Encumbrance type ID, User
conversion type, Accounting date, Budget version ID
156) What subclass in forms6i 48
A Specifies module, storage & name information about the source object and
source module for a referenced objects.
157) What is the clause in SQL * Loader to program to override data
into table
A. REPLACE
158). How do you set profile in oracle applications In Application
Developer responsibility?
A Open Profile Function
159). What is the syntax for loading data through SQL * Loader from
multiple files simultaneously
A. Sqlldr scott/tiger@orcl control = ctlfile
parfile -- parameter file: name of file that contains parameter specifications
parallel -- do parallel load (Default FALSE)
160) What is the table name for items in Oracle Inventory
A MTL_SYSTEM_ITEMS, MTL_CATEGORIES
161). Tell me names of important production tables & their purpose AP,
AR, GL, PO
A AP: AP_INVOICES_ALL, AP_INVOICE_LINES_ALL
To store invoices
AR: RA_SHIPMENT_HEADERS/ _LINES, RA_CUSTOMERS, RA_CONTACTS
PO: PO_VENDORS, PO_VENDOR_SITES - For storing vendor data.
162). Name the interface tables used for the LockBox Interface
A Interface table : AR_PAYMENTS_INTERFACE_ALL
Lockbox transfers the receipts that pass validation to the Receivables interim
tables AR_INTERIM_CASH_RECEIPTS_ALL and
AR_INTERIM_CASH_RCPT_LINES_ALL
When you run Post QuickCash, the receipt data is transferred from the
QuickCash tables to the following Receipt tables:
AR_CASH_RECEIPTS_ALL
AR_RECEIVABLES_APPLICATIONS_ALL
AR_CASH_RECEIPT_HISTORY_ALL
163) Name the interface tables used for the Auto Invoice Interface.
A Auto Invoice transfers transaction data from the interface tables
RA_INTERFACE_LINES_ALL,
RA_INTERFACE_SALESCREDITS_ALL, and
RA_INTERFACE_DISTRIBUTIONS_ALL
into the following Receivables tables:

RA_BATCHES_ALL
RA_CUSTOMER_TRX _ALL
RA_CUSTOMER_TRX_LINES _ALL
RA_CUST_TRX_LINE_GL_DIST_ALL
RA_CUST_TRX_LINE_SALESREPS_ALL
AR_PAYMENT_SCHEDULES_ALL
AR_RECEIVABLE_APPLICATIONS_ALL 49
AR_ADJUSTMENTS_ALL
164). Different Type of Value Sets. What is exactly Translatable
independent and Translatable Dependent Value Sets (Introduced in
latest version of 11i).
Ans:- There are 8 types of Values Sets.
a. None (Non Validate at all) (Validation is Minimal)
b. Independent (Input must exist on previous defined list of values)
c. Dependent (Input is checked against a subset of values based on prior Value)
d. Table (Input is checked against a subset of values in an application table)
e. Special (advanced) (Value set uses a flexfield itself)
f. Pair (advanced) (Two Flexfields together specify a range of valid values)
g. Translatable Independent (Input must exist on previous defined list of values.
Translated value can be used)
h. Translatable Dependent. (Input is checked against a subset of values based
on a prior value; translated value can be used)
(Note:- When you first define your flexfields, you choose how many segments
You want to use and what order you want them to appear. You also
Choose how you want to validate each of your segments. The decisions
You make affect how you define your value sets and your values.)
165) How to run a concurrent program. What all concurrent programs u
have
created.
Ans:- (Definition :- A concurrent program is an instance of an execution
file, along with
parameter definitions and incompatibilities. Concurrent programs use concurrent
program executables to locate the correct execution file.)
Oracle Tool Concurrent Program * A concurrent program written in
Oracle Reports, PL/SQL package procedures,
SQL*Loader, SQL*Plus, Host Scripting.
How to Run : * Write a execution file and place in correct directory.
Establish executables in Oracle apps specify execution file and method.
Define Concurrent Program (Program, Parameters and Incompatibilities)
Call your Program (- Thu application form, from other concurrent program.

- OR through standard request submission, you must check the USE in SRS
check box and register your program parameters when you define your
concurrent program. Add your program into the request security group for your
custom application.)
I have created reports through concurrent program, load(sql*loader/pl-sql pkgproc) the file through concurrent program.
166) What is parameter in apps and from where u can create it.
Ans:- Parameters only using in report, you can create in defining the report in
apps (you can create the parameter there only).
167)What all are the tables used in the modules u have worked on.
*In GL I have worked on GL_JE_HEADERS(JOURNALS
HEADER),GL_JE_LINES(JOURNAL LINES), GL_JE_BACHES(JOURNAL BATCHES),
GL_SET_OF_BOOK(SET_OF_BOOK_ID),
*In PO- I have worked on PO_HEADER_ALL..
168)What is Profile? Explain different levels of Profile.
Ans:- A user profile is a set of changeable options that affects the way your
applications run. Oracle Application Object Library establishes a value
for each option in a users profile when the user logs on or changes 50
responsibility. Your user can change the value of profile options at any
time a) To create Profile Option. ( Profile Option can created by developer
in application developer area) b)set the value (Values of the profile
option , who will have what value at various levels is set by
SYSADMIN). Oracle Application Object Library provides many options that.
(Edit profile feature for every user is available to set any value to allow
the user).your users can set to alter the user interface of your applications to
satisfy their individual preferences.
Profile Option set at run time like User Related, responsibility, Sequence,
Printer, Security.
Values in 4 Levels(HIEARCHY WISE) :A. USER
B. RESPONSIBILITY
C. APPLICATION
D. SITE
Application Developer create the profile.
System Administrator make profile option.
(NOTE:- If any change in value, it will active when you re-login or switch
to the responsibility.)
( Usage in the multi-tier, the profile is biggest impact)
169)How to restrict the data for a responsibility as per the ORG-ID

Ans:-Through Multi Org(MO) u can restrict the data for a responsibility as per
the ORG-ID. Only in GL- Set of book Id you set the value to restrict the data for a
responsibility.
170) What is Flexfield? What is flexfield qualifier and what is segment
qualifier?
Ans:- A flexfield is made up a segments (Which are actually table columns). Each
segment has a name that can be assigned, and set of valid value.
Purpose and Application:* Flexibility to implement code structure.
* Flexibility to capture additional information.
Two Types of Flexfields in oracle apps.
1. Key Flexfields (KFF)
2. Descriptive Flexfields (DFF)
A key flexfield segment has a name you assign, and set of valid values you
specify. Each value has a meaning which can be specified.
Flexfield Qualifier:-A flexfield qualifier identifies a particular segment of a key
flexfield..
Usually an application needs some method of identifying a particular
segment for some application purpose such as security or computations.
However, since a key flexfield can be customized so that segments appear in
any order with any prompts, the application needs a mechanism other than the
segment name or segment order to
use for segment identification.
Segment Qualifier :- A segment qualifier identifies a particular type of value in
a single
segment of a key flexfield.
In the Oracle Applications, only the. Accounting Flexfield uses segment
qualifiers. You can think of a segment qualifier as an identification tag for a
value. In the Accounting Flexfield, segment qualifiers can identify the account
type
171) Which flexfield qualifiers are mandatory?
Ans:- Balancing Segment flexfield qualifier is mandatory. 51
172) Difference Between versions of Apps.(Front end & Database)
Ans:- In backend- Client server architecture (old)/ Three tire architecture
In font end- Client Server Application (old)/ Web Based application
173)What is MULTI-ORG and what is structure of multi-org.
Ans:- Use a single installation of any oracle applications product to support any
number of organizations. if those organizations use different set of books.
Support any number or legal entities with a single installation of oracle
applications.

Secure access to data so that users can access only the information that is
relevant to them.
Structure :- Business Unit
-HRMS(Employee)
-GL(Set of Books)(Currency, Calendar, Chart of Account)
|
Balancing Segment(You can do multiple balancing segment)
-Operating Units (Purchase, Selling, Fixed Asset, Payable,
Receivables)
-Inventory Organizations (Storing Items, Transaction Happening,
Ware Housing)
(Note:- Means if you maintaining GL(set of book id), If u have operating unit, if
you
have inventory then its called MULTI-ORG)
174)What is difference between ORG_ID and ORGANIZATION_ID in MultiOrg.
At where we can set ORG_ID and ORGANIZATION_ID level it comes in
the
structure.
Ans:-A Global Variable exists in the oracle database called CLIENT_INFO, which is
64 bytes long. The first 10 bytes are used to store the operating unit ID(or
ORG_ID) for the multiple organization support feature.
Multi-Org views are partitioned by ORG_ID. The ORG_ID value is stored in
CLIENT_INFO variable.(It comes in AP,PO,AR,OM level)
ORGANIZATION_ID Its for Inventory, Mfg, & BOM.
15.Q.What are the default types of parameters. What is the use of each one of
it.
Ans:-******
175)ORG_ID can be set at master levels or transaction level.
Ans:- ORG_ID can be set at transaction Level.
176)Differnet type of execution methods in Conc.Progs. Explain Each
Type.
Ans:- a.Oracle Reports- You can register your report as executable file type is
oracle reports.
b. PL/SQL Package Procedure - You can register your PL/SQL Package Procedure
as executable file type is oracle PL/SQL Package Procedure.
1. SQL Loader- You can register your SQL Loader SQL Loader is your executable
file type.(for data loading)
2. SQL*Plus :- You can register your SQL script as SQL*Plus executable type.
3. Host Scripting:- You can write down Unix Host scripting and register here.

177) What is difference between oracle schema and apps schema.


Ans:-Database SchemaThe APPS schema- is an ORACLE schema that has access to the
complete Oracle Applications data model. This schema is maintained
by Auto Install .
178)What are the objects APPS schema contain. 52
Ans:- The APPS schema contains synonyms to all tables and
sequences as well as all serverside code (stored procedures, views,
and database triggers).
For ERP applications, data partitioning is performed by database
views. These views reside in the APPS Oracle schema and derive the
appropriate operating unit context from an RDBMS variable.
179)When will a New version of flint60 be released?
flint60 is a developer/development tool. Since flint60 can change at any time,
the most current flint60 will always obsolete all prior releases. In other words,
the development standards implemented in the most current flint60 are the
standards to which everyone using flint60 must adhere.
1. How do I register a custom concurrent program?
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, a C program, a shell script etc. 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
180)How do I compile a custom C program?
Spawned programs:
Step 1: Write the code Self-explanatory
Step 2: Compile the source You must use the makefile under $FND_TOP/usrxit
Use: make -f $FND_TOP/usrxit/Makefile program.o We do not support using any
other makefile
Step 3: Link the program This part is a little tricky. You need to create a custom
makefile for this step. Use $FND_TOP/lib/sample.mk as a starting point. Copy
this file to the lib directory under your applications top directory. Rename it
<short name>.mk (ie fnd.mk, gl.mk etc) Modify this file according to the
directions in it. Basically you need to 53
add a target and build commands for your executable. Next, use adrelink to link
the executable: adrelink force=y ranlib=y "shortname programname"
" Step 4: Register the program as in the above question
Immediate programs: Just don't do it.
181)How do I run a shell script as a concurrent program?
1: Write the script and call it <name>.prog Place the script under the bin
directory under your applications top directory. For example, call the script
CUSTOM.prog and place it under $CUSTOM_TOP/bin
bin
2: Make a symbolic link from your script to $FND_TOP/bin/fndcpesr For example,
if the script is called CUSTOM.prog use this: ln -s $FND_TOP/bin/fndcpesr
CUSTOM This link should be named the same as your script without the .prog
extension It should be in the same directory as the script.
3: Register a concurrent program as described above, using an execution
method of 'Host' Use the name of your script without the .prog extension as the
name of the executable For the example above, you would use CUSTOM
CUSTOM
4: Your script will be passed at least 4 parameters, in $1 through $4 These will
be: orauser/pwd, userid, username, request_id Any other parameters you define
will be passed in $5 and higher. Make sure your script returns an exit status.
define will be passed in $5 and higher. Make sure your script returns an exit
status.
5: If your script returns a failure exit status but the concurrent manager does not
report the error (shows it as still running normal) apply patch 442824
182)How will u register RDF file and run it? Tell the Sequence?
Steps a. Save the copy of ur reports in rdf file in ur local directory.
b. Transfer or copy the rdf file to cus_top under reports directory through ftp.

C. Then go concurrent program under executable menu where u define


executable file and program name
d. Then go to define the program name (which ur executable file name ) and
check the srs box and define the parameter and give the parameter name in
token
e. Attach the program(request to ur responsibility )
d run the program and view the out put is srs through ur responsibility
What are different types of value sets ?
183)What is translatable Independent & Dependent ?
The value set used to support the multilingual value set.
185))How do I submit a concurrent request from PL/SQL?
ans : using fnd_request.submit_request .
begin
v_request_id := fnd_request.submit_request(applicationshortname,
concurrentprogramshortname,
description,
paramers)
end 54
commit;
if v_request_id > 0 then
dbms_output.put_line('Successfully submitted')
else
dbms_output.put_line('Not Submitted');
end;
note : to submit a conc program from UNIX/shell scrip we use CONSUB
186) How do I cancel a running concurrent request?
Navigate to the Concurrent Request Summary form Select a request The
Sysadmin responsibility can cancel or hold any running request
187) What is the difference between organization id and org_id ?
Organization_id stores inventory organization id ( like 204 for M1)
Org_id stores the OU id corresponding to a operating unit .
188) What is the difference between conversion and interfaces ?
conversion means one time activity interface means periodic activity
example:- to transfer the data old version to new version it is called
conversionto transfer the data from staging table to interface table it is called
interface , it is process on every day or every hour ........
189) What are the different types of value sets and also explain each
briefly ?
Different types of Value sets are,
1) Independent- This Value set contains list of values which does not depends
on any other value

2) Dependant- It contains values which depends on any one of the


Independant value
3) Pair- combines 2 flex field together to specify range of valid values
4) Special- Uses only 1 flex field structure to specify values
5) Table- This Value set contains list of values from 1 or more than 1 table
columns
6) Translatable Dependant- Same as Dependant value set, only translated
values are present
7) Translatable Independant- Same as Independant value set, only translated
values are present
190) How do you register a table and columns in Oracle Apps>
To register the table and columns in AOL the navigation is: Open Appliaction
Developer---> Appliaction--->Database--->table.(In table mention the table
name(which you want to register), user table name,columns,user column name).
The table & columns which you are going to register should be present in your
module specific schema
195) What can we find TEMPLATE.FMB file ?
$AU_TOP/forms/US
Template.fmb file can be found in AU_TOP resource directory. This file contains
all the Common characterstics all the forms. And also Contains Diffrent libraries.
like CUSTOM.pll,APPCORE,APPCOREE2,FNDSQF, JE,JL,JA,VERT,GLOBE etc.. And
Template.fmb cotains Diffrent propery classes for all the objects. This
Template.fmb can be used for developing the new form 55
196) What are the libraries attached to TEMPLATE form ?
The Template form required 19 .pll in 11i version. Those pll names are :
APPCORE.pll APPCORE2.pll FNDSQF.pll APPDAYPK.pll GLOBE.pll JE.pll JL.pll JA.pll
VERT.pll GHR.pll PQH_GEN.pll PSAC.pll PSB.pll PSA.pll IGILUTIL.pll
IGILUTIL2.pll CUSTOM.pll GMS.pll FV.pll OPM.pll
197)What is Concurrent Programming?
Concurrent Processing in Oracle Apps simultaneously executes programs
running in the Background with on line operations to fully utilize your hardware
capacity.
Use Concurrent Programming for
Long Running Data intensive tasks such as Posting a Journal or generating a
report.
198)What is the Role of Concurrent Managers?
A Concurrent Manager is a component of Concurrent processing that monitors
and runs tasks without tying up your computer.
199)What is AOL?
Oracle Applications are constructed and maintained using the Application Object
Library (AOL).

The Three main areas of AOL are


o Applications Security
o Operating Profile
o Concurrent Processing
1. What is the Flex field? What are the types of Flex field?
o Flex Field is Flexible Field
o A Flexfield is made up of Segments.
o Each segment has a name that can be assigned and has set of valid values.
o There are two types of Flex field Key Flex Field and Descriptive Flex Fields.
56
1. What are the tables related to flex field?
o FND_FLEX_VALUES
o FND_FLEX_VALUE_SETS
o FND_FLEX_VALUES_TL

1. What is AD_DD package?


AD_DD Package is used to register the Table, Columns, and Primary Key in
Oracle Applications.
PROCEDURE REGISTER_TABLE
Arguments:
o P_APPL_SHORT_NAME
o P_TAB_NAME
o P_TAB_TYPE
o P_NEXT_EXTENT
o P_PCT_FREE
o P_PCT_USED
PROCEDURE REGISTER_COLUMN
Arguments
P_APPL_SHORT_NAME
P_TAB_NAME
P_COL_NAME
P_COL_SEQ
P_COL_TYPE
P_COL_WIDTH
P_NULLABLE
P_TRANSLATE

P_PRECISION
P_SCALE
1. What are the Special and Pair Flex Field?
Special Value Sets uses FlexField itself
Pair Two Flex Fields together specifies a range of valid values.
1. What are the Translatable Dependent and Independent Flex Fields?
Translatable Independent Input must exist on previously defined set List of
Values. Translated value can be used. 57
Translatable Dependent means Input is checked against a subset of values
Based on a prior value. Translated value can be used.
1. What is FND_REQUEST.SUBMIT_REQUEST?
Submits a Concurrent Request for Processing by a Concurrent Manager.
Arguments Application,program,description,start_time,sub_request,arg1..
1. What is Client Info?
By calling this Program in SQL*PLUS or reports with correct parameters user can
achieve concurrent program environment for testing.
FND_CLIENT_INFO.setup_client_info(application_id Number,
Responsibility_id Number,
User_id Number,
Security_Group_id Number);
1. Give the Directory structure in apps?
$APPL_TOP - Product Directory- Version1. What are the steps in Registering Concurrent Program?
o Go to Programs and Define Executables.
o Go to Programs and Define Concurrent Program
o Go to Responsibility and attach the Request group you want.

1. What are the different types of executable available in Concurrent


Programming?
o Host
o Oracle Reports
o PL/SQL Stored Procedures
o SQL*LOADER
o SQL*PLUS

o Spawned
o JSP

1. What are Request Sets?


2. Request set is a collection of Reports/Programs that you group together and
can be submitted to run is a single interaction.
1. What is Standard Request Submission (SRS Feature)?
SRS provides you with a set of windows for running reports and
Programs and a set of windows for creating groups of reports and
programs to run together.
Features 58
o Specify whether reports or programs in a request set run sequentially or

simultaneously
o Specify whether to continue with a request set if a report or program in a
sequential set fails
o View a log file
o Specify alternative requests based on completion status of previously run
requests in a request set.
1. What are the different APIs for Concurrent Programming?
o FND_CONCURRENT
o FND_FILE
o FND_PROGRAM
o FND_SET
o FND_REQUEST
o FND_REQUEST_INFO
o FND_SUBMIT

1. What are the FlexField Qualifiers?


A Flex field qualifier identifies a particular segment of a key flex field.
1. What are the Segment Qualifiers?
A Segment Qualifier identifies a particular type of value in a single segment of a
key flex field.
1. What is a Dynamic Insertion?

Dynamic Insertion is the insertion of new valid combination into a Key Flexfields
Combinations Table from a form other than the combinations form.
All Validation rules still will apply during insertion.
1. What are the different Level of Profiles?
User Profiles are used
o To set options that affect your applications behavior o your preference.
o A Collection of changeable options that affect the way your applications run
o Modify Product Specific variables
o Gives Control over certain Oracle Applications features.
Profile Levels
Site Level
Application Level
Responsibility Level
User Level
Note: Site Level is the lowest level.
1. Explain Multi-Organization Structure?

Set of book
A financial reporting entity that uses a particular chart of accounts,
functional currency and accounting calendar.
Business Group This is highest level in the Organization Structure. The Business
group secures HR Information. Multiple set of books can share same business
group. Legal Entity A legal company for which you prepare fiscal or tax
reports. Balancing Entity
Represents an accounting entity for which you prepare financial statements.
This is the segment in Accounting Flexfield.
Operating Unit
An Organization that Uses Oracle Cash Management, Order Management and
shipping Execution, Oracle Payables, Oracle Purchasing, Oracle receivables.
It may be a Sales office division or a department. An Operating Unit is
associated with legal entity.
Inventory Organization An Organization for which you track Inventory
transactions and balances and/or an Organization that manufactures or
distributes products. HR Organization
HR Organization represents the basic work structure of any enterprise. They
usually represent Functional Management or reporting groups that exists
within a business group.
1. How can u see Multi-Organization is enabled or not from SQL Prompt? SELECT
MULTI_ORG_FLAG FROM fnd_product_groups;
1. What are the two mandatory parameters required for PL/SQL stored Procedure
Concurrent Program? Errbuf and retcode two OUT Parameters are required

while defining PL/SQL stored Procedure Concurrent Program.


Errbuf Returns any error messageand retcode returns completion status.
Retcode returns 0 for success, 1 for warnings and 2 for error.
1. Different Type of Value Sets. What is exactly Translatable independent and
Translatable Dependent Value Sets (Introduced in latest version of 11i). Ans:There are 8 types of Values Sets.
i. None (Non Validate at all) (Validation is Minimal)
j. Independent (Input must exist on previous defined list of values)
k. Dependent (Input is checked against a subset of values based on prior
Value) 60 l. Table (Input is checked against a subset of values in an
application table)
m. Special (advanced) (Value set uses a flexfield itself)
n. Pair (advanced) (Two Flexfields together specify a range of valid values)
o. Translatable Independent (Input must exist on previous defined list of
values. Translated value can be used)
p. Translatable Dependent. (Input is checked against a subset of values
based on a prior value; translated value can be used)
(Note:- When you first define your flexfields, you choose how many
segments
You want to use and what order you want them to appear. You also
Choose how you want to validate each of your segments. The decisions
You make affect how you define your value sets and your values.)
1. How to run a concurrent program. What all concurrent programs u have
created. Ans:- (Definition :- A concurrent program is an instance of an
execution file, along with parameter definitions and incompatibilities. Concurrent
programs use concurrent program executables to locate the correct execution file.)
Oracle Tool Concurrent Program * A concurrent program written in
Oracle Reports, PL/SQL package procedures,
SQL*Loader, SQL*Plus, Host Scripting.
How to Run : * Write a execution file and place in correct directory.
Establish executables in Oracle apps specify execution file and method.
Define Concurrent Program (Program, Parameters and Incompatibilities)
Call your Program (- Thu application form, from other concurrent program.
- OR through standard request submission, you must check the USE in SRS check box and
register your program parameters when you define your concurrent program. Add your program
into the request security group for your custom application.)
I have created reports through concurrent program, load(sql*loader/pl-sql pkg-proc) the file
through concurrent program.

224) What is parameter in apps and from where u can create it. Ans:- Parameters
only using in report, you can create in defining the report in
apps (you can create the parameter there only). 225)What all are the tables
used in the modules u have worked on. *In GL I have worked on
GL_JE_HEADERS(JOURNALS HEADER),GL_JE_LINES(JOURNAL LINES),
GL_JE_BACHES(JOURNAL BATCHES), GL_SET_OF_BOOK(SET_OF_BOOK_ID),
*In PO- I have worked on PO_HEADER_ALL.. 226)What is Profile? Explain
different levels of Profile. Ans:- A user profile is a set of changeable options
that affects the way your

applications run. Oracle Application Object Library establishes a value


for each option in a users profile when the user logs on or changes
responsibility. Your user can change the value of profile options at any
time a) To create Profile Option. ( Profile Option can created by developer in
application developer area) b)set the value (Values of the profile option , who
will have what value at various levels is set by SYSADMIN). Oracle Application
Object Library provides many options that. (Edit profile feature for every user
is available to set any value to allow the user).your users can set to alter the
user interface of your applications to satisfy their individual
preferences. Profile Option set at run time like User Related, responsibility, Sequence,
Printer, Security.

61 Values in 4 Levels(HIEARCHY WISE) :- E. USER


F. RESPONSIBILITY
G. APPLICATION
H. SITE
Application Developer create the profile. System Administrator make profile
option. (NOTE:- If any change in value, it will active when you re-login or
switch to the responsibility.)
( Usage in the multi-tier, the profile is biggest impact)

227)How to restrict the data for a responsibility as per the ORG-ID Ans:-Through
Multi Org(MO) u can restrict the data for a responsibility as per the ORG-ID.
Only in GL- Set of book Id you set the value to restrict the data for a
responsibility. 228) is Flexfield? What is flexfield qualifier and what is segment
qualifier? Ans:- A flexfield is made up a segments (Which are actually table
columns). Each segment has a name that can be assigned, and set of valid
value.
Purpose and Application:* Flexibility to implement code structure.
* Flexibility to capture additional information.
Two Types of Flexfields in oracle apps.
1. Key Flexfields (KFF)
2. Descriptive Flexfields (DFF)
A key flexfield segment has a name you assign, and set of valid values you
specify. Each value has a meaning which can be specified. Flexfield Qualifier:A flexfield qualifier identifies a particular segment of a key flexfield.. Usually an
application needs some method of identifying a particular
segment for some application purpose such as security or computations. However, since a key
flexfield can be customized so that segments appear in any order with any prompts, the
application needs a mechanism other than the segment name or segment order to
use for segment identification.

Segment Qualifier :- A segment qualifier identifies a particular type of value in


a single segment of a key flexfield.
In the Oracle Applications, only the. Accounting Flexfield uses segment qualifiers. You can think
of a segment qualifier as an "identification tag" for a value. In the Accounting Flexfield, segment
qualifiers can identify the account type

229)Which flexfield qualifiers are mandatory? Ans:- Balancing Segment flex


field qualifier is mandatory. 230)Difference Between versions of Apps.(Front end

& Database) Ans:- In backend- Client server architecture (old)/ Three tire
architecture
In font end- Client Server Application (old)/ Web Based application 231)What
is MULTI-ORG and what is structure of multi-org. Ans:- Use a single installation
of any oracle applications product to support any number of organizations. if
those organizations use different set of books.
Support any number or legal entities with a single installation of oracle
applications. 62 Secure access to data so that users can access only the
information that is relevant to them. Structure :-Business Unit -HRMS(Employee)
-GL(Set of Books)(Currency, Calendar, Chart of Account)
|
Balancing Segment(You can do multiple balancing segment)
-Operating Units (Purchase, Selling, Fixed Asset, Payable,
Receivables)
-Inventory Organizations (Storing Items, Transaction Happening,
Ware Housing)
(Note:- Means if you maintaining GL(set of book id), If u have operating unit, if you
have inventory then its called MULTI-ORG)

232)What is difference between ORG_ID and ORGANIZATION_ID in Multi-Org.


At where we can set ORG_ID and ORGANIZATION_ID level it comes in the
structure. Ans:-A Global Variable exists in the oracle database called
CLIENT_INFO, which is 64 bytes long. The first 10 bytes are used to store the
operating unit ID(or ORG_ID) for the multiple organization support feature.
Multi-Org views are partitioned by ORG_ID. The ORG_ID value is stored in
CLIENT_INFO variable.(It comes in AP,PO,AR,OM level)
ORGANIZATION_ID Its for Inventory, Mfg, & BOM.
15.Q.What are the default types of parameters. What is the use of each one
of it.
Ans:-****** 233)ORG_ID can be set at master levels or transaction level. Ans:ORG_ID can be set at transaction Level. 234)Differnet type of execution
methods in Conc.Progs. Explain Each Type. Ans:- a.Oracle Reports- You can
register your report as executable file type is oracle reports.
b. PL/SQL Package Procedure - You can register your PL/SQL Package
Procedure as executable file type is oracle PL/SQL Package Procedure.
1. SQL Loader- You can register your SQL Loader SQL Loader is your
executable file type.(for data loading)
2. SQL*Plus :- You can register your SQL script as SQL*Plus executable type.
3. Host Scripting:- You can write down Unix Host scripting and register
here. 235)What is difference between oracle schema and apps schema. Ans:Database SchemaThe APPS schema- is an ORACLE schema that has access to the
complete Oracle Applications data model. This schema is maintained
by AutoInstall. 236) What are the objects APPS schema contain. Ans:- The APPS
schema contains synonyms to all tables and
sequences as well as all serverside code (stored procedures, views,
and database triggers).
For ERP applications, data partitioning is performed by database

views. These views reside in the APPS Oracle schema and derive
the 63 appropriate operating unit context from an RDBMS variable. 237)What
are the names of the parameters u pass to the Procedure which u register in the
apps? B. 1) retcode in varchar2
2) errbuf in varchar2 238) What is application short name for General Ledger
you specify in FND FLEXSQL user exit? A. SQLGL 239)How do you set profile in
oracle applications In Application Developer responsibility? A Open Profile
Function 240) What is the syntax for loading data through SQL * Loader from
multiple files simultaneously A. Sqlldr scott/tiger@orcl control = ctlfile
parfile -- parameter file: name of file that contains parameter specifications
parallel -- do parallel load (Default FALSE) 241)Give the relation between
categories and items table. MTL_SYSTEM_ITEMS
MTL_CATEGORIES_B
Relation INVENTORY_ITEM_ID 242)In which tables are the categories of an item
stored.MTL_CATEGORIES_B
MTL_ITEM_CATEGORIES 243)Significance of ALL in apps tables. Tables which
are related with Multiorg is suffixed with ALL. 244)Explain about flexfield in
GL.In what way it is useful? A KFF is a set of segments, each segment will
identify a unique characterstic of an entity. it can be termed as intelligent
key. we can define our business requirements without doing any
programming.
A DFF is a set of segments which can be used to capture extra info. without
any customisation.245)Execution methods?
Ans. a. Host b. Immediate
c. Java Stored Procedure
d. Java Concurrent Program
e. Multi Language Function
f. Oracle Reports

64 g. PL/SQL Stored Procedure


h. Request Set Stage Function
i. Spawned
j. SQL*Loader
k. SQL*Plus 246) What is TCA (Trading Community Architecture)?
Ans. Oracle Trading Community Architecture (TCA) is a data model that
allows you to manage complex information about the parties, or customers,
who belong to your commercial community, including organizations,
locations, and the network of hierarchical relationships among them. This
information is maintained in the TCA Registry, which is the single source of
trading community information for Oracle E-Business Suite applications. 247)
Difference between Application Developer and System Administrator? Role of
Technical Consultant:
1. Designing New Forms, Programs and Reports
2. Forms and Reports customization
3. Developing Interfaces
4. Developing PL/SQL stored procedures
5. Workflow automations

Role of System Administrator:


1. Define Logon Users
2. Define New/Custom Responsibility
3. Define Data Groups
4. Define Concurrent Managers
5. Define Printers
6. Test Network Preferences
7. Define/Add new Modules
Role of an Apps DBA:
1. Installing of Application
2. Upgradation
3. Migration
4. Patches
5. Routing maintenance of QA
6. Cloning of OA 248)What are Flexfields?
Ans. A Flexfield is a customizable field that opens in a window from a regular
Oracle Applications window. Defining flexfields enables you to tailor Oracle
Applications to your own business needs. By using flexfields, you can: (a)
Structure certain identifiers required by oracle applications according to your own business
environment.
(b) Collect and display additional information for your business as needed.
Key Flexfields: You use key flexfields to define your own structure for many of the identifiers
required by Oracle Applications. Profile Flexfields:Open Key Window (FND_ID_FLEXS)

65 Descriptive Flexfield: You use descriptive flexfields to gather additional


information about your business entities beyong the information required by
Oracle Applications. Profile Flexfields: Open Descr Window
(FND_DESCRIPTIVE_FLEXS) 249) Request Set and where do you define it?
Ans. Request sets allow you to submit multiple requests together using
multiple execution path. A request set is a collection of reports and /or
programs that are grouped together. A stage is a component of a request set used to
group requests within the set. All of the requests in a given stage are executed in parallel.
Advantages of stages are the ability to execute several requests in parallel and then move
sequentially to the next stage.
Responsibility: System Administrator
Nav: Concurrent -> Set

250)Define Request Group?


Ans. A request security group is the collection of requests, request sets, and
concurrent programs that a user, operating under a given responsibility, can
select from the Submit Requests window. 251)Registration of PL/SQL with
parameters?
Ans. 1. Create the procedure in the module specific schema.
2. Create a public synonym for that procedure in the Apps schema.
3. Create the executable for that procedure.
4. Create a concurrent program.
5. Attach the concurrent program to that procedure.
Note: There are two mandatory parameters 1. Errbuf 2. Retcode. Any
parameter which are to be passed should be succeeded with these two

parameters and have to be registered. When calling the procedure, these


two parameters are not mentioned. 252)Value Sets?
Ans. Oracle Application Object Library uses values, value sets and validation
tables as important components of key flexfields, descriptive flexfields,
FlexBuilder, and Standard Request Submission. When you first define your flexfields,
you choose how many segments you want to use and what order you want them to appear. You
also choose how you want to validate each of your segments. The decisions you make affect
how you define your value sets and your values.
You define your value sets first, either before or while you define your flexfield segment
structures. You typically define your individual values only after your flexfield has been
completely defined (and frozen and compiled). Depending on what type of value set you use,
you may not need to predefine individual values at all before you can use your flexfield.
You can share value sets among segments in different flexfields, segments in different
structures of the same flexfield, and even segments within the same flexfield structure. You can
share value sets across key and descriptive flexfields. You can also use value sets for report
parameters for your reports that use the Standard Report Submission feature.

66 Navigation Path:
Login Application Developer -> Application -> Validation -> Set 253)Value
Validation Types?
Ans. 1. Dependant
2. Independent
3. None
4. Pair
5. Special
6. Table
7. Translate Independent
8. Translate Dependent 254) How to define a value set depending on other value
set?
Ans. Navigation Path: Login -> AOL -> Application -> Validation -> Set Select
the validation type as "Dependant" and click on Edit Information button. In Dependant value
set information screen mention the Independent value set name.

255) Incompatibility in report registration and Run Alone?


Ans. Identify programs that should not run simultaneously with your
concurrent program because they might interfere with its execution. You can
specify your program as being incompatible with itself. Application: Although the
default for this field is the application of your concurrent program, you can enter any valid
application name.
Name: The program name and application you specify must uniquely identify a concurrent
program. Your list displays the user-friendly name of the program, the short name, and the
description of the program.
Scope: Enter Set or Program Only to specify whether your concurrent program is incompatible
with this program and all its child requests (Set) or only with this program (Program Only).
Run Alone: Indicate whether your program should run alone relative to all other programs in the
same logical database. If the execution of your program interferes with the execution of all other
programs in the same logical database (in other words, if your program is incompatible with all
programs in its logical database, including itself), it should run alone.

256)Multi Org?
Ans. Business Group (each one own Set of Books)

Legal Entity (Post to a Set of Books) 67 Operating Units


Inventory Organizations
Manufacturing Modules (Order Entry, Purchasing, MRP etc.)
Financial Modules 257) What are Profiles?
Ans. A user profile is a set of changeable options that affect the way your
application looks and behaves. As System Administrator, you control how
Oracle Applications operate by setting user profile options to the values you
want. You can set user profile options at four different levels: site,
application, responsibility, and user. Your settings affect users as soon as
they sign on or change responsibility. Navigation Path: Login System
Administrator -> Profile -> System
Examples:
Signon Password Hard to Guess
Signon Password Length
Set of Books Name
Flexfields: Autoskip 258)What is the Multi Org and what is it used for?
Ans. Multi Org or Multiple Organizations Architecture allows multiple
operating units and their relationships to be defined within a single
installation of Oracle Applications. This keeps each operating unit's
transaction data separate and secure. Use the following query to determine
if Muli Org is intalled: "select multi_org_flag from
fnd_product_groups;" 259)Module related Flex fields?
Ans. Key Flexfields Descriptive Flex fields
General Ledger - Accounting Flex field Daily Rates
Assets - Asset Category Flexfield Bonus Rates
Receivables - Sales Tax Location Credit History Information
Territory Flex field 260) Difference between Global segments and ContextSensitive segments?
Ans. Gobal Segments: Global segments are segments that appear regardless
of context. Columns used for global segments cannot hold an contextsensitive segments.
Context-Sensitive segments: Context-Sensitive segments occur depending
on the context. 68263)What is the use of custom.pll? Custom.pll is used for
customizations such as form, enforcing business rules and disabling fields
that are not required for site without modifying standard apps forms. 264)
How to PROGRAMATICALLY submit the request? a) With the help of standard
API
Find Request. Submit request 265)What is request set? With the help of
request set we can submit several requests together using multiple
execution paths. Its collection of concurrent programs like reports procedures
grouped together. 266) What is the API used for file I/o operation? Or which API
is used to write to request log and request output? a) Fnd_file.put_line
(Fnd_file.log, message);
b) Fnd_file.put_line (fnd_file.out. Message); 267) How do I programmatically
capture application user_id? Fnd_profile.value (user_id) or
fnd_global.user_id. 268) What are flexfields? A flexfield is a field made up of

segments. Each segment has a name and a set of valid values. There are two
types of ffs: key ff, DFF 269)Which are the 2 parameters required to be defined
when a program is registered as pl/sql stored procedure ERRBUF,
RETCODE270)Can we register executable/concurrent program programmatically
then how? Yes we can. It can be done with standard package fnd_program,
fnd_program.executable, fnd_program.register. 271)What changes need to be
made if a setup is changed from a single org to multi org? Org_id should be
added as a parameter in a report and report should be run for specific org_id
only 272)What is message dictionary? Message dictionary allows defining
messages, which can be used in application without hard coding them into
forms or programs.273) What is the token in concurrent program parameters
window? For a parameter in an oracle report program, they keyword is
parameter specified here. The value is case sensitive for example
P_CUSTOMER_NO 274)What is different validation defaults types and default
value in current program parameter window? a) Constant
b) profile
c) SQL statement 69 d) Segment 275) I have a concurrent program that involves
lot of inserts and updates on a huge basis where do I specify rollback segment
etc
276) How do I change the priority of my concurrent program? value in this field
so it will take the request, which has higher priority. 277) What is
incompatibility? When a program or list of programs is defined as
incompatible means that defined program is not compatible with
incompatible program list and cant run simultaneously in same conflict
domain. 278)What is data group? A data group defines the mapping b/w oracle
applications and oracle IDs. A data group determines oracle database
accounts responsibilities forms, concurrent programs, and reports connect
to 279)What are the steps to register concurrent program in APPS? The steps to
register the concurrent prom in APPS are follows
a) Register the prom as concurrent prom for the executable
b) Define the concurrent prom for the executable registered
C) Add the concurrent program to the request group of the
responsibilities 278)What are the forms customization steps? Steps are as
follows
a) Copy the "Template fmb"1 and "Appstand.fmb" from AU_top/Forms/us. Put
it in custom directory .
the Libraries(FNDSQF,APPCORE,APPDAYPK,GLOBE,CUSTOM,JE,JA,VERT)are
automatically attached
b) Create/open new forms .then customize
c) Save this form in corresponding module. 279) How to use flexfield in
report? There are two ways to use flexfield in reports one is to use the views
(table name+`_kfv` or `_dfv`) created by apps, and use the concatenated
segment column that holds the concatenated segments of the key or
descriptive flexfield
(or)
To use the FND user exits provided by apps 280)what is KFF, DFF? KFF : #

unique identifiers, storing key into # used for entering and displaying key
into
For example oracle general uses a KFF called Accounting flex field to
uniquely identify a general account.
DFF : # to capture additional info # to provide expansion space on your form
with the help of []. [] represents DFF 70
281)Difference b/w KFF and DFF KFF
DFF 1. Unique identifiers To capture extra info 2. KFF are stored in
segments Stored in attributes3. For KFF there are FF qualifier and segment
qualifiers Context_sensitive ff is a feature of dff. (DFF)
282)How will you get set of books id dynamically in reports? By using profile
option called GL_SET_Of_Books_id 283)How will u capture AFF in reports? By
using user exits284)Custom.Pll various events in custom.PLL Zoom_available,
custom.standard, Custom.event. 285)When u defined concurrent program u
defined in compatibilities what is the meaning of incompatibilities
simultaneously cant allow running programs 286)What is hierarchy of
multi_org?
287)What is difference b/w org_id, organisation_ID ORG_ID is an operatin unit
Organisation_ID is inventory organisation. 288)What are profile
options? Defines the way application behaves ( more than 200
types) 289)Value set. And validation types value set define suitable values for
your segments
table, none, dependent, independent, special, pair 290)What is flexfield
qualifiers? Additional properties for your segment 291)How many segments are
in AFF? Minimum, maximum292)When u defined CCP there is one checkbox use
in SRS what is meaning of this suppose I do now want to call report through SRS
how will I call report then? SRS:= (Standard Request submission) 293)What is
difference b/w request group and data group? Request group : group is set of
CCP and request sets
Data Group : integrates all your oracle apps modules 294)What is meaning of
$flex $dollarusing this we call a value set with another value
set. 71 295)CONCURRENT MANAGER: 4 Types1.Internal Manager 2.Standard Manager
3.Conflict Resolution Manager 4.Specialized concurrent Manager.
BACKEND: FND_CONCURRENT_REQUESTS FND_CONCURRENT_PROGRAM

. FND_PROGRAM_REGISTER: --------------------Application Program: Application


Executable name: Name of the registered Executable
Executable Application: Name of the app where executable ins
registered.FND_PROGRAM_EXECUTABLE: ----------------------Executable Name: Name of the executable.
Application: Name of the executable application.
Short Name: Short name of the exe

Execution Method: 'Flex Rpt' 'Flex SQL' 'Host' 'Immediate' 'Oracle Reports'
'PL/SQL stored procedure' 'Sql*loader' 'Sql*Plus' 'Sql*report'
Execution File Name: Regd. for all but immediate
prog. FND_REQUEST.SUBMIT_REQUEST --------------------------Name: Submit Request
Application: Short name for the application under which the program is
registered.
Program: Concurrent program name for which the request has to be
submitted. REGISTERING
TABLE: AD_DD.REGISTER_TABLE AD_DD.REGISTER_COLUMN
CONCURRENT MANAGER: runs concurrent process allowing multiple tasks simultaneously.
CONCURRENT PROCESS: runs simultaneously with other tasks to help complete multiple
tasks at once without interruption.
GENERAL AIM: AIM 10, 20, 30, 40 -> DBA
AIM 50 -> Automatic column mapping
AIM 60 -> Manual column mapping
AIM 70 -> Default values, data assignments to be included.
AIM 80 -> Unit Testing & results of UAT
AIM 90 -> Coding
IF -> Interface, RD -> Requirement Definitions, BR -> Business requirement,
MD -> Module Design, CV -> Conversion

72 PROCESSING CONSTRAINTS: Restricting particular responsibility on an


entered information.
PROFILE LEVEL: 1.Site 2.Application 3.User 4.Responsibility
KEY FLEX FIELDS: A flexible data field made up of segments, each segment
has a name we define and a set of values that we specify.
DESCRIPTIVE FLEX FIELD: A flexfield that our organization can customize to
capture additional information regd. by our business.
CV 10 -> Define Conversion Scope, objectives and approach
CV 20 -> Prepare Conversion Strategy
CV 30 -> Prepare Conversion Standards
CV 40 -> Prepare Conversion Statements
CV 50 -> Perform Conversion Data Mapping
CV 60 -> Define Manual Conversion Strategy
CV 70 -> Design Conversion Programs
CV 80 -> Prepare Conversion Test Plans
CV 90 -> Develop Conversion Program
CV 100 -> Perform Conversion Unit Test
CV 110 -> Perform Conversion business objects Tests
CV 120 -> Perform Conversion Integration Tests
CV 130 -> Install Conversion Software
CV 140 -> Convert & Verify Data 296)How to set dependent and independent
value set and how you will insert values for the segments having these value
sets.

ANS: First define independent value set and then while defining dependent
value set give reference of independent value set along with default value
and description. At time of entering values, enter values for independent first
and then while entering values for dependent it will first force you to select
value of independent segment. 297) Required parameter for PL/SQL Procedure
registered in Oracle. What will happen if these are not included?
ANS: Retcode and Errbuf are two out parameters having varchar2 datatype
that are required. Use errbuf to return any error messages, and retcode to
return completion status. The parameter retcode returns 0 for success, 1 for
success with warnings, and 2 for error. After your concurrent program runs,
the concurrent manager writes the contents of both errbuf and retcode to the
log file associated with your concurrent request. If we do not include these two
parameters, it will give run time error. 298)How to judge the number of descriptive fields
defined from the front end itself.
ANS:

In front end we will find [] open close square bracket which indicate the
presence of descriptive flexfield. In other words, dff appears on form as a
single-character, unnamed field enclosed in brackets 299)What is context field
is all about. 73 ANS: Context field is used to make descriptive flexfield
segments context sensitive, so that segment that may or may not appear
depending upon what other information is present in your form 300)What is
use of custom.pll what triggers are fired to support the customization you do
using custom.pll
Ans: WHEN-FORM-NAVIGATE WHEN-NEW-FORM-INSTANCE
WHEN-NEW-BLOCK-INSTANCE
WHEN-NEW-RECORD-INSTANCE
WHEN-NEW-ITEM-INSTANCE
WHEN-VALIDATE-RECORD
SPECIALn (1 to 45)
ZOOM
EXPORT
KEY-fn (1 to 8)

301)What is auto accounting?


ANS: It is a required setup before to enter any transaction in AR. We have to
define code combinations for different transaction type such as revenue,
receivables, bills receivables, charge back, deposit and guarantee to
default 302)WHAT IS KFF & DFF
ANS: KFF: A flexfield is a field made up of sub-fields, or segments.
Each segment has a name and a set of valid values. The values may also have value
descriptions. Key flexfields are flexible enough to let any organization use the
code scheme without programming.
In other words, Flexfield is a "intelligent fields" that are fields comprised of
one or more segments, where each segment has both a value and a meaning.

DFF: Descriptive flexfields provide customizable "expansion space" on

your forms. You can use descriptive flexfields to track additional information,
important and unique to your business, that would not otherwise be captured by
the form. Descriptive flexfields can be context sensitive, where the information
your application stores depends on other values your users enter in other parts
of the form. A descriptive flexfield appears on a form as a single-character,
unnamed field enclosed in brackets. Each field or segment in a descriptive
flexfield has a prompt, just like ordinary fields, and can have a set of valid
values. Your organization can define dependencies among the segments or
customize a descriptive flexfield to display context-sensitive segments, so that
different segments or additional pop-up windows appear depending on the
values you enter in other fields or segments.

303)WHAT IS VALUE SETS


ANS: Set of valid values defined for flexfield segment and SRS report
arguments. Value Set is used when we define flexfield segment for Key
Flexfield and descriptive flexfield segment window. Also for reports that are
run from the SRS uses values sets for report arguments. 304) WHAT IS TABLE
TYPE VALUE SET.
ANS: VALUE SET where we selecting validation type as table refer table that
are registered oracle application table for values to be populated for your
parameter. We can use multiple table separating them by ,. 74 305) DIFF IN
VALUE SET & REQUEST SET
ANS: Value set is a Value having list type, security type, format type,
validation and size/width used for segments definition and as attribute for
reports extraction through SRS where as REQUEST SET is a REQUEST have
more than one Stage and each stage have more than one request
program. 306)WHAT IS REQUEST SETS
ANS: A request set is a collection of reports and/or programs that you
group together. You can submit the reports and/or programs in a request set all at once
using a single transaction. (REQUEST SET is a set has more than one or more
Stages and each stage have more than one or more request program. Stages
can further be linked to each other).

307) TELL IN BRIEF FOR SEGMENT & FLEXFIELD QUALIFIERS


ANS: Flexfield qualifier: Oracle Applications products use flexfield qualifiers to
identify certain segments used for specific purposes. Some qualifiers must be
unique, and you cannot compile your flexfield if you apply that qualifier to two or more
segments. Other qualifiers are required, and you cannot compile your flexfield until you apply
that qualifier to at least one segment

Segment Qualifier: Some key flexfields use segment qualifiers to hold extra
information about individual key segment values. For example, the
Accounting Flexfield uses segment qualifiers to determine the account type of
an account value or whether detail budgeting and detail postingare allowed for
an Accounting Flexfield combination containing a given value. The Allow
Budgeting, Allow Posting, and Account Type fields are segment qualifiers for the Accounting
Flexfield

308) TYPES OF TRIGGERS


a. REPORTS TRIGGERS ARE i. Before parameter form
ii. After parameter form
iii. Before report
iv. Between pages
v. After report
b. Table /View Triggers
i. Before/After Insert/update/Delete (DML)
c. System Event Triggers
i. DDL on schema and database (DDL) Create/Alter/Drop d. Form Triggers
Different types of form triggers: 1. Key triggers
2. Navigational Triggers
3. Transactional Triggers
4. Message Triggers
5. Error Triggers
6. Query Based Triggers Main Events are as under: i. Pre-Logon
ii. On-Logon
iii. Post-Logon
iv. Pre-Form 75 v. Pre-Block
vi. Pre-Record
vii. Pre-Text-Item
viii. When-New-Form-Instance
ix. When-New-Block-Instance
x. When-New-Record-Instance
xi. When-New-Item-Instance
xii. When-Validate-Item
xiii. Post-Text-Item called
xiv. When-New-Item-Instance
xv. When-CheckBox-Changed
xvi. When-Validate-Item
xvii. When-New-Item-Instance
xviii. When-Radio-Changed
xix. Value of Radio Button
xx. When-New-Item-Instance
xxi. When-List-Changed
xxii. Value in List Item PUN
xxiii. When-New-Item-Instance
xxiv. Push Button pressed...
xxv. When-Validate-Record
xxvi. Post-Record
xxvii. Post-Block
xxviii. Post-Form

xxix. Pre-Logout
xxx. On-LogOut
xxxi. Post-LogOut 309) IN WHICH TABLE U GET FLEXFIELD (KFF & DFF)
INFORMATION
ANS: fnd_flex_values_tl, fnd_id_flex_segment,
Fnd_flex_value_sets Fnd_id_flex_structure, fnd_id_flexs
Descriptive flexfield details are stored in
FND_DESCRIPTIVE_FLEXS,FND_DESCR_FLEX_CONTEXT,FND_DESCR_FLEX_COLUMN
_USAGES

310)WHAT COLS IN FND_ID_FLEX_STRUCTURES AND


AP_LOOKUP_CODES ANS: AP_LOOKUP_CODES - LOOKUP_TYPE, MEANINGS,
DESCRIPTION, LOOKUP_CODE 311)WHAT DIFFERENT TABLES GET AFFECTED
IN PAYABLE INTERFACE ANS: AP_INVOICES_ALL, PO_VENDORS,
AP_INVOICE_PAYMENTS_ALL 35. WHAT IS CONTEXT ANS: Different segments
or additional pop-up windows appear depending on the values you enter in
other fields or segments. 312)WHICH TYPE OF KFF USED IN GL ANS:
Accounting Flexfield 313)TYPES OF USER_EXISTS a. FND SRWINIT
b. FND FLEXSQL
c. FND FLEXIDVAL
d. FND FORMAT_CURRENCY
e. FND FORMAT_DATE
f. FND SRWEXIT 76 314)TELL BRIEFLY @ USER_EXISTS ANS: USER EXISTS
Calls external program probably written in Pro C etc and sends Parameters
from report or forms, external program does the process based on those sent
parameters and returns the value back to report or forms. 316)What is
Concurrent Program:
ANS: A concurrent program is program that does not require continued
interaction on your part to perform a specific task. In Oracle Applications, for
example, a concurrent program may be a program written to create a report,
or to post a batch of general ledger journal entries 317)What is a Concurrent
Process: ANS: A concurrent process is an instance of a running concurrent
program. Each time a concurrent manager receives a request and runs a
concurrent program, it creates a new concurrent process. A concurrent
process can run simultaneously with other concurrent processes (and other
activities on your computer). 318)What is concurrent request?ANS: A
concurrent request is a request that you submit to run a concurrent program
as a concurrent process. You issue a concurrent request when you submit a
report or program to run using Standard Request Submission or when you
choose an action button in a product-specific submission window 319)What is
flexfield? Oracle application uses flexfiled to capture information about your
organization. Flexfield have flexible structure for storing key information. Like
company, cost center and account. They also give you highly adaptable
structure for storing customized information in oracle

applications. 320)Difference between key flexfield and descriptive


flexfield: Keyflexfield:
--------------Unique Identifier
Key flexfield are stored in segment columns
For key flexfield there are flexfield qualifier and segment qualifier
Descriptive flexfield:
------------------------Context sensitive is a feature of descriptive flexfield.
Descriptive flexfield are stored in Attributes 321)Can you call APPCORE Library
in CUSTOM library You cannot attach the APPCORE library to CUSTOM
because it would cause a recursion problem because CUSTOM is attached to
APPCODE. As of Oracle application release 11i you may attach the APPCORE2
library to CUSTOM. The APPCORE2 library duplicates most APPCORE routines
with the following packages:
APP_ITEM_PROPERTY2
APP_DATE2
APP_SPECIAL2
These packages contain the same routines as the corresponding APPCORE
packages. Follow the documentation for the corresponding APPCORE
routines, but add a 2 to the package names.322)What is MRC and what are its
use? The Multi reporting currency feature allows you to report and maintain
records at the transaction level in more than one functional currency. You can
do it by defining one or more set of books in additional to the primary set of
books. 323)How many reporting currencies can be attached to the primary set of
books? Ans: 9 Reporting currencies can be attached to the primary set of
books. 77 324)What are ad-hoc reports Ad-hoc reports are made to meet the
one-time reporting needs. Concerned with or formed for a particular purpose.
For example, ad hoc tax codes or an ad hoc database query.
FSG is a Ad-Hoc Report. 325)What is FSG? FSG is a powerful and flexible
report building tool you can use to build your own custom reports without
programming. FSG is only available with GL. 326)What does set of books
comprised of? ANS: CHART OF ACCOUNTS, CALENDAR AND
CURRENCY 327)What are the validation types supported by value sets? ANS:
Dependent, Independent, None, Pair, Special, Table, Translatable
Independent and Translatable Dependent.328)What are format types supported
by the value sets? ANS: Char, date, date time, number, standard date,
standard date time, time. 329)Is there any restriction over the number of
flexfield structure that can be defined for the accounting flexfield. ANS: NO there
is no such restrictions. 330)What are flexfield qualifier that are available for
accounting flexfield structure? ANS: Natural accounting segment, cost center
segment, balancing segment and intercompany segment. 331)Which Flexfield

qualifiers are mandatory? ANS: Balancing segment and Natural Account


segment 332)Which Mandatory account needs to be defined for the set of books
definition? ANS: Retained Earnings - this is undistributed profit of the
shareholders. 333)What are all accounts that can be defined for the set of books
form? ANS: Retained Earnings, Suspense, Rounding Difference, Reserve for
Encumbrance
Account and Net Income Accounts. 334)What is the minimum and maximum no
of periods that can be defined for the calendar? ANS: 1 & 366 335)What are the
period statuses that can be associated with the periods? ANS: Open, closed,
permanent closed, never opened, future entry336)Can multiple periods have
open status at one time? ANS: Yes. 337)How many chart of accounts can be
mapped to a set of books. ANS: Only One 338)How many set of books can be
defined in GL module? ANS: Unlimited 339)What is responsibility? ANS: A
collection of forms, menu and program that a user can access. 340)Can
multiple responsibilities be assigned to a single user? ANS: Yes 341)Can
responsibility be shared by multiple logon users? ANS: Yes 342)From a general
ledger responsibility, how many set of books can be accessed? ANS: Only
One. 343)What are different currency conversion rates? ANS: General Ledger
provides the following predefined daily conversion rate types: 78 Spot: An
exchange rate, which you enter to perform conversion based on the rate on
a specific date. It applies to the immediate delivery of a
currency. Corporate: An exchange rate you define to standardize rates for
your organization. This rate is generally a standard market rate determined
by senior financial management for use throughout the
organization. User: An exchange rate you specify when you enter a foreign
currency journal entry. 344)Which table captures conversion rates
information? ANS: gl_daily_rates 345)Which column distinguishes the type of
journal being entered? ANS: actual_flag (A-Actual, B-Budget, EEncumbrance) 346)Dependant and Independent Value sets: For example,
suppose you have an independent value set called "Account" with a
dependent value set called "Sub-Account." You may wish to create a new
independent value, 99, for "Account" with description "Receivables" without
creating any associated sub-account values. Since your flexfield requires a
dependent value of some sort to go with the independent value, it uses the
default value you enter here, such as 00 with description "No Sub-Account."
List the tables which captures the journals information
1. GL_JE_BATCHES
2. GL_JE_HEADERS
3. GL_JE_LINES 347)Which table captures the balances information of the code
combinations?Ans: Gl_BALANCES 348)What is significance of compiling a
flexfield structure? Ans: It reflects the changes made to a flexfield structure
during the unfreezed state. 349)What changes can be enforced on the flexfield

structure when It is unfreezed? Ans: Changing segment names, changing


ordering sequence, changing window prompts, adding new segments,
changing the enabled and displayed attributes. 350)What is KEY
FLEXFIELD? Ans: Unique identifier storing key information used for entering
and displaying key information. For example Oracle general ledger uses a
key flexfield called accounting flexfield to uniquely identifies a general
account.
Descriptive flexfield to capture additional information. 351)How many
flexfields are there in AR and what are they? 1. Transaction Flexfield
2. Territory Flexfield
3. Salex Tax Location Flexfield 352)What is MRC and its use? Ans: Multi
Reporting Currency allows you to report and maintain record at the
transaction level in more than one functional currency. You can do so by
defining one or more set of books in addition to the primary set of
book. 353)Where you will define SOB for the inventory organization Ans: Define
in Organization option for Inventory Organization (classification) - Other
-Accounting Information - Specify SOB-Legal Entity and Operating
Unit. 354)Where you will set the HR organization. (At Operating Unit
level) 355)Multi org structure? Business Group SOB->Legal Entity Operating
Unit Inventory Org sub Inventory. 356)Difference between org_id and
organization_id? 79Org_id indicates operating unit, organization_id indicate
Inventory Organization 357)what are the base table for multi org informations?
ANS: HR_LOCATIONS_ALL,
HR_ALL_ORGANIZATION_UNITS,HR_ALL_ORGANIZATION_UNITS_TL,
HR_ORGANIZATION_INFORMATION,
FND_PRODUCT_GROUPS

358) what will be output of " select * from po_headers? "


ANS: No row selected. In case of multi org flag is yes. This is a view and filter
condition is given for org_id for which we need to initialize ord_id passing
user_id, responsibility_id and applicaton_id or need to extract ord_id from
client_info global variable. 359)diffrence between po_headers and
po_headers_all ?
ANS: po_headers_all is a table to store information for more than one
organization and po_headers is a view, which is partitioned by org_id 360)use
of retcode?
ANS: It returns status of the pl sql program you are running. 361)how i can
fetch the current operating unit in plsql program?
ANS: Use Client_info global variable 362)how i can fetch the request id of the
running conc program?
ANS: fnd_global.conc_program_id, fnd_global.conc_request_id 363)whats the
user exit ? explain each.
ANS: Explain him FND SRWINIT, SRWEXIT, FLEXSQL, FLEXIDVAL, FORMAT
CURRENCY.364)how i can make sure that one program if running then no other is

running in parallel?
ANS: Check the "Run Alone" checkbox while defining your concurrent
program. 365) How to use table type? detail steps(registering a table....) register
a table using AD_DD package procedures,
v ad_dd.register_table
v Ad_dd.register_column
v Ad_dd.delete_table
v Ad_dd.delete_column
v ad_dd.register_primary_key
v ad_dd.register_primary_key_column
use table type value set to use this registered table.
Enter value, meaning, ID fields. 366) where the info of KFF, DFF is stored? (base
tables of FND?) KFF FND_ID_FLEX_STRUCTURE
DFF FND_DESCRIPTIVE_FLEX 367)explain TCA architecture. Trade Community
Architecture (TCA)It is supposed to be the base for storing the complex
information about the customer, parties and their relationship. TCA and its
DQM (data quality management) system helps to maintain this information
by avoiding duplications and easy access to this complex information.368)diff
between KFF, DFF. KFF used to store mandatory information.
DFF used to store non mandatory information.
KFF stored in base table columns (SEGMENT1..30)
DFF stored in ATTRIBUTE1..20
KFF has segment qualifiers and FF qualifiers
DFF has CONTEXT, a field in which you will enter one of the option
available. 80 Depending on this option entered by you the fields for
descriptive information will pop up. The segment which will depend on this
CONTEXT are called as context sensitive segments. And the segment which
doesnt depends on context are called GLOBAl segments. 369) where the party
info, customer number, item number is stored? HZ_PARTIES, HZ_PARTY_SITES,
MTL_SYSTEM_ITEMS 370) What is request set ? its a set of concurrent
programs. You have multiple stages in one request set, each stage can
contain multiple requests; each request in turn can have required
parameters declared. Each stage can be connected to other stages
depending on its completion status (success, error, warning). Stages run one
after another, whereas requests in each stage runs parallel. 371)What are the
names of the parameters u pass to the Procedure which u register in the apps? A.
1) retcode in varchar2
2) errbuf in varchar2 372)Multi-org concepts? How u will u come to know that ur
working on multi org concept? Ans: Use a single installation of any oracle
applications product to support any number of organization use different set
of books.
We will go to view the table called FND_PRODUCT_GROUPS in which the

column name MULTI_ORG_FLAG is 'Y then we can say that we r working on


multi org concept. 373)What is Chart of accounts? Ans: A complete listing of
the accounts to identify specific accounts to be increase or decrease. 374)
Menu Exclusion in responsibilities form. *This is to exclude menu options and
even some of the menu sub options. 375)What menu to select for account
receivables & Payable. a. *AR_NAVIGATE_GUI for receivable
b. *AP_NAVIGATE_GUI12 for payable 376)What is Rollup Group in segment
(account). *Roll up is used for the total for the group that is required to be
defined and attached with the chart of accounts.
*Account - Summary - template - for template we select segments and define
whether we want summary or details or parent level. This is used in reports
and inquiry. This make the accessibility faster and if required then only the
user can drill down to details. 377)Can we define more Flex field Qualifier? Such
as Natural Account, cost center
Inter-company, Balancing. *No we cannot create more because it is system
defined. In case of project defined as a segment below company that time it
is not necessary to add any qualifier to it. 378)Can we define balancing
attribute to more than one segment. Balancing does what actually. What if we
include project based accounting practice. *No, Project segment need not to be
attached with any of these qualified. 379)What is Data Group that is attached
with the Responsibilities? *It is required to Attached, which Product Top should
be attached with the responsibility. 380)Can we define some more categories
that we always select as Adjustment while entering Journal? *The user can
define categories. 381)Can the user define source? *Sources can also be
defined. 382)Can sequence be related with the source for auto numbering not at
application level but for the particular transaction? 81 For example auto number
required for Invoice or Cash Transaction. 383)Should we disable the structure if
we want to change the structure with removing some segment or adding some
segment?Whether ID_FLEX CODE AND ID_FLEX_STRUCTURE_CODE will be
generated again.
*After capturing data segment should not be added in between it could be
added as last segment. 383)What all profile option should be set for A/R &
A/P *Find for AR: % & AP: %384)How many MRC Multi Reporting currency you
can define. Ans: Up to 9 we can define385)What is basic difference between key
flexfield and descriptive flexfield. Ans: Flexfield is mandatory where as DFF is
not
Flexfiled have flexfiled and segment qualifier where as DFF has Flexfield
Flexfield uses Segment fields where as DFF uses Attributes fields.
DFF can be context sensitive where as KFF not. 386)Operating Unit level report
not to be shared by other Operating Unit. Ans: MO: Top Reporting Level option
of system profile has to be set with Operating Unit at Site Level. Request
Group attached to the responsibility. Responsibility is attached with the

users. There can be more than one responsibility that can be attached with
the users. That each responsibility has menu, data group and request group
attached. In that request group attach that particular report. Can also specify
operating unit for MO: Profile option MO: Top Reporting Level - Set of Book /
Legal Entity / Operating Unit. 387)How to run multi org setup validation
report? Defining Location for organization, Legal Entity and Inventory
Organization. 388)What is Set of Books? Ans: SOB keeps track of all financial
records. It consists of three Cs i.e., Char of Accounts, Currency and
Calendar. 389)What are amount types? Ans: PTD, QTD, YTD, PJTD (Project to
Date). 400)What are Currency Types: Ans: User, Corporate and Spot 401)What
is the name of DFF stored as a view in Apps. Ans: Same the name of the table
with extention of _DFV. 402)What is precedence if you set the option in profile
for all the level (S-System
A-application
R-responsibility
U-user). 403)What all elements is set for the responsibilities. What is data
group?
Ans: Menu, Data Group and Request group are attached with the
responsibilities. Data group is a either your data of your functional currency
i.e., standard group or Multiple Reposting currency data group with
application name you want to attach for the responsibility. 404)What is
security type and Cross-validation rules.
Ans: There are two ways security can be defined. One at individual segment
level and One for the entire code combination. Security type with hierarchical
security / non-hierarchical / no security is defined in the value set going to be
attached with the individual segment. Here you exclude the segment value
which user will not see at time of transaction capturing. Where
are 82Security rule is defined including and excluding the entire code
combination which will be seen at the time of transaction and if excluded
combination is selected then user define message will appear. In both the
case security rule is required to be defined.
Security defined for segment is assigned to your application and
responsibilities.
Security rule defined for application, structure and flexfield title with
inclusion and exclusion.405)How much minimum and maximum segment you
can define in apps.
ANS: At least one segment is required except in Accounting flexfields, Define
your Accounting Flexfield segments. You can define up to 30 segments for your account
structure. You must define at least two segments for your account structure, one for the
balancing segment and one for the natural account segment (the two required flexfield
qualifiers).
Value sets for the Accounting Flexfield must be independent, table, or dependent-type value
sets. Do not use value sets with a validation type of None for the Accounting Flexfield.

The Accounting Flexfield requires consecutive segment numbers beginning with 1 (such as 1, 2,
3, ...).

406) Which flexfield qualifier is compulsory.


Ans: Balancing segment and Natural account segment 407) Can you modify
the structure of the key flexfield any time later.
Ans: It is recommend that you plan your flexfields as completely as possible,
including your potential segment values, before you even begin to define
them using Oracle Applications forms. Once you begin using your flexfields
to acquire data, you cannot change them easily. Changing a flexfield for
which you already have data may require a complex conversion
process. 408)How will you come to know that the set up is having multi
organization.
Ans: Fnd_product_group.Multi_org_flag is set to Y 409)What is Concsub.
ANS: Concsub is a executable run from the command line of operating
system to submit the request. 410)If you have to Run and shell scripts which
execution method will you select.
ANS: Host Your concurrent program is written in a script for your operating
system. SpawnedYour concurrent program is a stand-alone program in C or
Pro*C. 411)How you will execute C/C++ Program in Oracle apps. Which
executable method will be selected?
Ans: Spawned 412)What is Org_id and What is Organization_id
Ans: Org_id store id for Operating unit and Organization_id stores id for
inventory Organization.413)It is necessary to define Operating unit, if user want
to use only GL module. Ans: If client using only GL then no need of Multi Org
setup or to define Organization hierarchy. One operating unit has to be there
for user to logon and have default operating unit. 414)It is necessary to have
Business Group for single Company. Ans: It is not necessary where as if
required can define or within Business Group all other Organization can be
created such as HR, Legal Entity, Operating Unit and Inventory
Organization. 415)What is difference between SOB and Operating Unit. Ans:
A Set of Book is a financial reporting entity that partitions General Ledger
information and uses a particular chart of accounts, functional currency, and
accounting calendar. This concept is the same whether or not the Multiorganization support feature is implemented. Where as Operating Unit is a
organization for which you have to attach the SOB to capture day to day
transactions for Purchasing, Selling, Fixed Asset, Payable,
Receivables.416)What is Reporting SOB & What is Translation. What is
difference 83 Ans: General Ledger's Multiple Reporting Currencies (MRC)
feature is used to convert amounts from your functional currency to a
reporting currency at the transactions level.
Translation: General Ledger's translation feature is used to translate amounts from your
functional currency to another currency at the account balances level.
For example, an organization with a once-a-year need to

translate their financial statements to their parent organization's currency for


consolidation purposes, but no other foreign currency reporting needs,
should use General Ledger's standard translation feature instead of
MRC. 417)In what scenario you would suggest Reporting SOB and Translation.
Ans: If client want to have transaction level access that time we would
suggest Reporting SOB. If client is interested only in final reports such as trial
balance, profit and loss statement and Balance sheet then that time we
would suggest Translation because translation is used to translate amount at
the account balances level. 418)What would you do if we have another branch
in china.
Ans: Separate Operating Unit has to be defined for this new branch. 419)How
will you come to know that whether the installation is for multi org or not.
Ans: Select multi_org_flag from fnd_product_groups (It this shows as Y it
means it is a Multi Org enabled) 420)Can you go for multi organization in
between.
Ans: Yes, we can go for it between. The Convert to Multi-Org program is an option
available in ADADMIN. This task converts a standard product group into a Multi-Org product
group. You can choose this option only if you do
not already have Multi-Org installed in your database and if you do not currently have Multiple
Sets of Books Architecture installed in your database.
Before running this step, you must define at lease one operating unit and set the site-level
profile option MO: Operating Unit.
The Convert to Multi-Org program does the following:
Populates the ORG_ID column with the new operating unit you defined at the site level profile
option MO: Operating Unit.
Sets ORG_ID to NULL for records that are shared seed data.
Sets the MULTI_ORG_FLAG in the FND_PRODUCT_GROUPS table to Y. The Convert to
Multi-Org option is not displayed on the Database Objects menu if this flag is set to Y
Runs the replicate seed data program. If you define additional operating units, the seed data is
replicated for all operating units.

421)What is organization_id and what is org_id


Ans: Term Organization id is used for inventory organization and org_id is
used for operating unit
422)What all modules are impacted by multi org. whether FA will be impacted or
not.
Ans: AP, AR
423) What is balancing segment.
Ans: Balancing segment is one of the flexfield qualifier which is a must to
assign for Level where we want that at any given point of time debit and
credit total should match. 424)What transactions are captured in operating unit
level and what at inventory organization level.
Ans: An organization that uses Oracle Cash Management, Order Management
and Shipping Execution, Oracle Payables, Oracle Purchasing, and Oracle
Receivables . Information is secured by operating unit for these applications

84 . Inventory organization captures Oracle Inventory, Bills of Material,


Engineering, Work in Process, Master Scheduling / MRP, Capacity, and
Purchasing receiving functions 425)Why Master item is created at what level and
why that is required.
Ans: Master item is created at operating unit level. For transactions,
inventory organization is selected. This is required to make order processing
centralized. 426)What do you mean by API and what for it is used in Oracle
Apps.
Ans: API means Application Programming Interface and in apps it is used
for interfaces from legacy system.
427)what is multi-org?
Ans: Capture transactions for multiple organizations using single installation
of oracle application. 428)wht is flexfield ,it's types,where it is stored (tbl and
col's)
Ans: Flexfiled is a unique identifier, consists of one or more segments to
capture information as per the business requirements. There are two types of
flexfields, Key flexfield and Descriptive flexfield. It is stored in fnd_flex_values,
fnd_flex_values_tl, Fnd_id_flexs, Fnd_id_flex_segment, fnd_id_flex_structure
429)how u delete user from apps environment?
Ans:

We can not delete due to Audit Trail Purpose. We can change the effective
date.(from date To date) Given date from when you want user to be
disabled 430)Which table stores the parent value and its' child ranges?
Ans: FND_FLEX_VALUE_NORM_HIERARCHY 431)What tables store segment
values and descriptions?
Ans: FND_FLEX_VALUES_TL and FND_FLEX_VALUES. 432)Can a flexfield qualifier
be changed after it has been created?
Ans: No. Once a segment qualifier has been designated for a specific segment and has been
saved, it will permanently have the attributes with that qualifier.
For example, you accidentally designate the cost center segment as the natural account
segment. Even though you do not compile this, the system saves the changes. And once it has
been saved, it will have all the attributes designated for the natural account qualifier, even after
it has been changed back, resaved with the correct qualifier and compiled.
This is the inherent functionality of the software.
Unfortunately, there is no real easy solution for this issue. The only option is to create a new
chart of accounts and attach a new set of books. You may be able to just create a new chart of
accounts if you haven't created the set of books yet. See Note 107448.1, for more information.

433)Can you change the size of a value set used in the accounting flexfield after it
has been created?
Ans: No. Once the value set is created, you should not change the size of a
value set used in an accounting flexfield. We recommend that you set Rightjustify Zero-fill Numbers to Yes for value sets you use with the Accounting
Flexfield. You should never change to a value set with a larger (or smaller)
maximum size if your value set is Right-justify Zero-fill, since 001 is not the

same as 0000001, and all of your existing values would become


invalid 434)What is the difference between Hierarchical and Non-hierarchical
Security Type?
Ans: Hierarchical Security: This feature combines Flex Value Security and Flex
Value Hierarchy. The end result is 'a flex value is secured if one of it's parents
is secured'. With non-hierarchical security, the child values do not inherit the
parent security. 435) Should Rollup Groups be frozen? 85 Ans:It is
recommended that Rollup Groups be frozen unless they are being modified.
However, if they are not frozen, there should not be any effects on General
Ledger reports, functions, or other processes. 436) Do you need to have an
Accounting Flexfield segment that is flagged with the Intercompany qualifier?
Ans: The intercompany segment is an optional Intercompany feature for the
Intercompany Segment Balancing. It is NOT required in order to do
intercompany balancing. It is just another way to do the intercompany balancing, instead
of using different natural accounts to track intercompany balances, you can use the
intercompany segment in the Chart of Accounts to record the same detail.
It is more just a matter of preference of how you want to track the intercompany transactions.
Refer to Note 151130.1 to see additional information regarding How Intercompany Journal Lines
are Created in General Ledger 11i. Also see the Oracle General Ledger Users Guide, Chapter
5: Accounting for Multiple Companies Using a Single Set of Books.

437)What is a Reconciliation qualifier and how is it setup?


Ans: This Reconciliation flag is a localization feature used primarily by
European customers. When the flag is set to YES, the account is set up to be
reconciled. GL Entry Reconciliation is a set of forms and reports that enable
the user to selectively cross-reference transactions in the General Ledger.
Once the balance of a group of transactions is zero, the user can mark them
as reconciled. This functionality enables the transactions in any account that
should balance to zero (for example, an Inter-company suspense account) to
be reconciled. For information regarding the setup of this option, please refer
to Note: 1041211.6. 438)WHICH WEB SERVER IS USED BY APPS?
ANS:HTTP SERVER Powered by APACHE. WEB SERVER Uses 8i Database (8.0.6).
Oracle Database is 9i. (9.2.0)
Oracle 9i Application server (9Ias).

439)WHICH CONCURRENT MANAGER SUBMITS THE REQUEST?


ANS: INTERNAL MANAGER, STANDARD CONCURRENT MANAGER,
SPECIALISED CONCURRENT MANAGER, CONFLICT RESOLUTION
MANAGER 440)IS THERE ANY CONCURRENT MANAGER FOR RESOLVING
CONFLICTS BETWEEN 2 REQUESTS IF YES THEN TELL THE NAME? You define
concurrent managers using the Concurrent Managers window. When you
define a manager, you specify the manager type, which may be either
Concurrent Manager, Internal Monitor, or Transaction Manager.
There are three other types of managers that Oracle Applications predefines for you: the
Internal Concurrent Manager, which describes the Internal Concurrent Manager process, the
Conflict Resolution

Manager, and the Scheduler. For the CRM and Scheduler you can assign the primary and
secondary nodes. For the Internal Concurrent Manager you assign the primary node only.

441)What us Data Group: Use data groups to support multiple installations of


an Oracle Applications product (for example, Oracle Payables) that supports
multiple sets of books, where a different application is associated with each
set of books.
For example, with two installations of Oracle Payables supporting two Sets of
Books, use data groups to indicate which Oracle Payables Oracle username
to access from a certain General Ledger responsibility.
Define a data group for each application installation (set of books). 86 Define
a responsibility for each application installation (set of books), and assign the
appropriate data group to each responsibility. 442)What is the purpose of MO:
Security Level and should value should you set that to?
ANS:utilize the "MO: Security Profile" profile option over the "MO: Operating
Unit" profile option when both profile options are set to give access to
multiple operating units.
The profile option "MO: Security Profile" should not be set at Site level, since
setting it will result in forms error when opening the financials products
forms that are modified for Access Control and also Multi-Org initialization
errors while applying patches.
You must set the MO:Operating Unit profile option for each responsibility.
You must also define the default operating unit by setting the
MO:Operating Unit profile at the site level.

Potrebbero piacerti anche