Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
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
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
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.
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?
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?
Segment prefixed
the
help of [].
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,
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?
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
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.
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
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
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
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)
9) What is responsibility
Responsibility
System admin
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
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.
A) FND - ID - FLEXS
B) FND-ID-FLEX-STRUCTURES 5
internet brows
FND_PROGRAM.EXECUTABLE
FND_PROGRAM.REGISTER
FND_PROGRAM.PARAMETER
FND_PROGRAM.ADD_TO_GROUP
FND_REQUEST.SUBMIT_REQUEST
FND_PROFILE.VALUE
FND_PROFILE.GET
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
. 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
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
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
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.
4) Business Rules
- Handlers reside in program units in the form or in stored packed in the
database.
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,
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.
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
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
Is it APPS schema
27
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
If so how
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.
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.
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.
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
76)Which procedure should be used to make the DFF read only at run time
FND_DESCR_FLEX.UPDATE_DEFINITION()
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);
done
, 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);
, 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;
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
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
94. How do I open, compile and/or generate a custom Oracle Applications form
on my desktop
Answer
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.
96. How to get the data from the views in Multi_ORG views
A. Using the profiles and client info package.
Eg:
SELECT
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;
110)What is MultiOrg
42
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
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
possible.
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.
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
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
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
you are not using Automatic Customer Numbering. This value must be unique
within RA_CUSTOMERS.
A a) Auto Invoice
b) Auto Lockbox
c) Customer Interface 47
d) Sales Tax rate Interface
e) Tax Vendor Extension
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.
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
154. What is application short name for General Ledger you specify in FND
FLEXSQL user exit
A. SQLGL
A Specifies module, storage & name information about the source object and
source module for a referenced objects.
A. REPLACE
A MTL_SYSTEM_ITEMS, MTL_CATEGORIES
161). Tell me names of important production tables & their purpose AP, AR, GL,
PO
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
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
165) How to run a concurrent program. What all concurrent programs u have
created.
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
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)
account type
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.
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.
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 .
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
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
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
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
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..
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
233)ORG_ID can be set at master levels or transaction level. Ans:- ORG_ID can
be set at transaction Level.
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.
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
243)Significance of ALL in apps tables. Tables which are related with Multiorg
is suffixed with ALL.
245)Execution methods
Ans. a. Host b. Immediate
c. Java Stored Procedure
d. Java Concurrent Program
e. Multi Language Function
f. Oracle Reports
Role
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:-
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.
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 .
a request with this responsibility, you will be able to submit your custom
program
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
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
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
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
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..
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 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.
What are different report triggers and what is their firing sequence ?
Before Report
After Report
Between Pages
Move the executable as well as source file to the appropriate products folder.
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
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.
KEY FLEXFIELD
DESCRIPTIVE FLEFIELD
1. Unique Identifier
2.Stored in attributes
APP_ITEM_PROPERTY2
APP_DATE2
APP_SPECIAL2
What is FlexField?
What are User Exits and what are different types of User Exits in Oracle Apps ?
Ans:
How can you handle multiple rows without using loops in PL/SQL ?
Ans:
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: 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?
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: 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
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
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 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: 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.
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
=>
,RESP_ID
=>
,RESP_APPL_ID
=>
,SECURITY_GROUP_ID
,SITE_ID
,LOGIN_ID
=>
,PROG_APPL_ID
=>
,CONC_PROGRAM_ID
,CONC_REQUEST_ID
NULL
=>
,CONC_LOGIN_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' ;
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 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
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.
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.
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.
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
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.
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?
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:
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).
Easy maintenance.
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.
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.
Functions
Procedures
values.
* Must contain at fast one RETURN
Statement.
* Do not contain OUT and INOUT
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
% not found
Boolean
% found
Boolean
Number
far.
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.
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 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 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.
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.
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.
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.
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.
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.
PRAGMA EXCEPTION_INIT
Statement is used to associate a declared exception with the standard Oracle Server 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.
Dynamic SQL is a SQL statement that contains variables that can change during runtime.
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;
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.
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;
-
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.
Bulkbind:-
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
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,
Materialized View:-
Materialized views can be used both for creating summaries to be utilized in data
warehouse environments.
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.
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 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.
These are the MVIEWS that are created with sub queries in the WHERE clause of a
MVIEW query.
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.
This feature enables fast refresh of MVIEWS that have MVIEWS as their masters.
A) International
B) National
C) Local
Many nodes at both the national and local levels are required
MVIEWS being simple or complex determines whether it can be fast refreshed or not.
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.
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)
IN parameter:
This parameter passes values from the calling environment into the procedure.
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.
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.
Application trigger
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.
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.
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
Determines when the trigger needs to be fired in relation to the triggering event.
2 Triggering Event
Statements, Row
Table, View
* 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.
Row Trigger
In this type, the trigger body executes once for each row affected by the triggering
event.
* 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
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.
This script creates an output table, called PLAN-TABLE for holding the output of the
explain command.
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.
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.
* 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.
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.
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.
TK PROF
Tk prof facility accepts as input a SQL Trace File and produces a formatted output file.
);
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.
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)
LOBS
LOB Locator
LOBS store a locator in the table end data in a different segment unless the data is less
than 4000 bytes.
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.
BFILE
BFILES are external LOBS.
These are stored in OS files out side the database table spaces.
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
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.
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 :
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.
* 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.
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>
-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.
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
--, 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
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.
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
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
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.
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.
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.
o Spawned
o JSP
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
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
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
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.
& 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)
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
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.
256)Multi Org?
Ans. Business Group (each one own Set of Books)
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
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
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)
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.
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
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
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
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, ...).
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
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.