Vous êtes sur la page 1sur 62

Oracle Applications Global Accounting Engine User Guide

Use the Global Accounting Engine to replace the transfer to General Ledger and create
subledger accounting entries that meet additional statutory standards in some countries. The
Accounting Engine
provides subledger balances, legal reports, and bi-directional drilldown from General Ledger to
the subledger transaction.

Just check whether invoice transaction flexfield is stored in reference column to drill down the
AR transaction from GL after record is transferred to GL.

Choose Line Item to generate a report showing REFERENCE_1 from the GL_JE_LINES table.
Choose Source Item to generate a report showing REFERENCE_4 from the GL_JE_LINES table.
These references appear only if you used Journal Import and included a journal voucher
number, an invoice date and number, or some other source document information that helps
you to identify the origin of this journal entry.

1. What is overlay in payables


Ans: Over lay is used in payable open interface where we would like to pass and
overwrite certain value which is set to appear by default when data is inserted into the
production tables.

2. What is rollup group


Ans: rollup group we define and attached with the parent segment in the accounting
flexfield for summary total for which summary template is defined. This identify at
what level and how the summing up should be computed for the level.

3. What way payment batch is different from other module batches.


Ans: It identifies the invoices for the payment automatically based on the criteria we
specify in payment batch for the payments.

4. What is balancing segment in AR.


Ans: The Account Generator ensures that Receivables substitutes the correct balancing
segment values during various accounting activities against transactions and receipts.
Receivables uses the Account Generator to update the balancing segment values
during various accounting activities against transactions and receipts. By matching the
balancing segments for different accounting activities back to the original transaction
or receipt, the Account Generator ensures that Receivables uses the correct balancing
segment values during this substitution process. For example, if an invoice’s balancing
segment that you assess finance charges for has a value of ’01’ and the balancing
segment of your finance charges account is ’02’, when Receivables accrues finance
charges for this invoice, the Account Generator automatically changes the balancing
segment of the finance charges account to ’01’. The Account Generator in Receivables
utilizes Oracle Workflow

5. What difficulty you have faced while designing flexfields. What all need to
be considered.

6. What is deposit in AR? Have you used it?

Ans: It is a commitment type of transaction where in we take deposit from the


customer and get into the agreement that we will make supply of certain goods and
services for certain period of time.

ZANSAR Questions:

1. What is flexfield qualifier in accounting flexfield.


Ans: Balancing Segment, Cost Center Segment, Natural Account Segment & Inter-
company segment.
2. Can we use fixed assets code as Cost center.
3. Which SRS is used for AR To GL Interface.
ANS: General ledger option is given in the menu option interfaces in AR.
4. What are required setup for AP.
Ans: Required setup in AP is as under
1. Install or upgrade payables
2. Select primary set of books
3. Use the system administrator responsibility to assign your set of books to a
responsibility. (Profile Option)
4. Define financials options.
5. Define payables options.
6. Define payment terms.
7. Define banks, bank transmission details and bank accounts
8. Open payable accounting period
9. Set up Print Styles and Drivers for the supplier Mailing labels report
5. What are required setup for GL.
Ans: Required setup in GL is as under
1. Source (Required step with defaults)
2. Category (Required step with defaults)
3. System Control (Required step with defaults)
4. Profile Options (required)
5. Open Close Accounting Periods (required)

Before that set of books setup needs following:


1. Chart of Accounts (Accounting Flexfields) - (Required)
2. Define Period Types (Required step with defaults)
3. Define Calendar (Required)
4. Currency (Required step with defaults)
5. Set Of Book (Required)
6. Assign set of books to a Responsibility in Profile Option(Required)
7. Daily Conversion Rate Type (Required step with defaults)

6. How you will print user name of the person logged on to see the report.
ANS: SELECT FND_GLOBAL.USER_ID FROM DUAL; STORE IT IN A VARIABLE AND FIND IT
IN THE FND_USER
select user_name from fnd_user where user_id = (select fnd_global.user_id from dual)
7. What all interfaces have you done.
8. What is the table name for GL Interface. From here data goes to which tables.
ANS: GL_INTERFACE Table Updates GL_JE_BATCHES, GL_JE_HEADERS, GL_JE_LINES.
9. Can we insert journal name in the GL Interface table
Ans: There is no such column in GL interface table hence we cannot enter it.
10. Where Reference fields are found in GL production tables. What is its use.
Ans: Reference fields are found in GL_JE_LINES it is used to store reference of sub-ledger
enables us to drill down from gl to subledger.
11. Where journal name will be stored in GL_INTERFACE TABLE, Name the
column.
ANS: REFERENCE4 (Journal Entry name will go in this field)
12. How to set dependent and independent value set and how you will insert
values for the segments having these value sets.
ANS: First define independent value set and then while defining dependent value set give
reference of independent value set along with default value and description. At time of
entering values, enter values for independent first and then while entering values for
dependent it will first force you to select value of independent segment.
13. SRS Name for AP TO GL.
ANS: Payable Transfer to General Ledger.
14. Can you delete the records after the interface has uploaded the records in the
GL interface table?
ANS: Yes we can delete and correct the records from the front end after importing data
into GL_INTERFACE Table. Sub menu options as correct and delete are given under import
menu option. We have to specify source name. Menu option is import under journal in GL.
15. 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.
16. 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
17. What is context field is all about.
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
18. 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)
19. What are various customer interface tables?
ANS: RA_CUSTOMERS_INTERFACE_ALL
RA_CUSTOMER_PROFILE_INT_ALL
RA_CUSTOMER_BANKS_INT_ALL
RA_CUST_PAY_METHOD_INT_ALL
RA_CONTACT_PHONES_INT_ALL
20. Where invoices gets stored in payables
ANS: AP_INVOICES_ALL
AP_PAYMENT_SCHEDULES_ALL
AP_TERMS_LINES
AP_BANK_ACCOUNTS_ALL
AP_BANK_BRANCHES
AP_INVOICE_PAYMENTS_ALL
21. Whether ap_invoices_all and ap_invoice_lines_all are tables or views
Ans: these are tables.
22. What will happen if you will type select * from ap_invoices in the multi org
setup.
Ans: No row selected because it is a view having where condition for ord_id to match with
operating unit context that are extracted from client_info global variable at application run
time. From sql prompt run Fnd_client_info.setup.org_context(org_id). It will set the
operating unit context or run
fnd_clinet_info.setup_client_info(resp_appl_id,resp_id,user_id, security_group_id)
23. Why it does not show records and show records for ap_invoices_all where as
both the table has got org_id columns.
Ans: Because operating unit context is not set that is why ord_id can not retrieved to
meet the where condition specified in the view. Set it up with followings,
Fnd_client_info.setup_client_info(resp_appl_id,appl_id,user_id) or
Fnd_client_info.set_org_context(org_id)
24. What mechanism or logic oracle apps have applied to drill down the records
in AP from the GL module after the records are transferred from AP to GL.
ANS: Uses reference column (1-8) to store information about sub-ledger.
25. What all are the standard API in Oracle apps.
26. What is auto accounting?
ANS: It is a required setup before to enter any transaction in AR. We have to define code
combinations for different transaction type such as revenue, receivables, bills receivables,
charge back, deposit and guarantee to default
27. What is project management?
28. What is major risk you find in Project? How to mitigate it.
ANS: Resource is a major risk in oracle apps projects. To mitigate it we need to have
resource in reserve right from the beginning of the project.
29. What are CR.010 all about?
ANS: It is a Project Management Plan Document.
30. How you maintain time sheet.
ANS: Time sheet is maintained in WM.020 In MS Project format.

IBM Questions:

1. WHICH INTEREFACES U HAVE DONE IN VARIOUS ORACLE FINANCIALS


ANS: AR Auto invoice interface, AP open interface
Gl_interface
Customer_interface using API (TCA)
Bank statement (Bank Reconciliation of Cash Management)
2. TELL GENERAL STEPS OF OPEN INTERAFCE
ANS: GL Interface
1. Create on table as stage table with columns varchar2 (50) in respect to the flat
file given having information to be updated in Oracle Application tables.
2. Stage table was created in custom schema and created synonyms in apps
schema.
3. Created control file with stream type where in file is mentioned of flat file name.
4. Insertion of records into stage table is done through SQL LOADER option
through Concurrent Program. Mention control file name while defining
executable, select SQL LOADER as execution method.
5. After successful insertion of records from flat file to stage table.
6. Validate data for values and data type through PL/SQL program then the data is
loaded into the interface table.
7. Now go to the import option of Journal menu option in GL Responsibility.
3. WHAT VALIDATIONS U HAVE TO MAKE IN VARIOUS INTERFACE, TELL SOME
ANS: Currency, Date, DFF CONTEXT, .
4. WHAT IS DIFFERENCE BETWEEN IN IMPORT & POST
ANS: Import does import of information from an external system and create
transactions in any of the Oracle application product. Where as POST is a posting of
the entered transaction in the system to freeze the transaction so that it can be
considered for final reporting.
In AR If you use AutoInvoice to import information from an external system and
create transactions in Oracle Receivables,
POST means it changes the status from unposted to posted for the entered
Transaction. Table does not change only the status gets updated from ‘U’ to
‘P’.
5. WHAT IS KFF & DFF
ANS: KFF: A flexfield is a field made up of sub-fields, or segments. Each
segment has a name and a set of valid values. The values may also have value
descriptions. Key flexfields are flexible enough to let any organization use the
code scheme without programming.
In other words, Flexfield is a “intelligent fields” that are fields comprised of
one or more segments, where each segment has both a value and a meaning.

DFF: Descriptive flexfields provide customizable ”expansion space” on your


forms. You can use descriptive flexfields to track additional information,
important and unique to your business, that would not otherwise be captured by
the form. Descriptive flexfields can be context sensitive, where the information
your application stores depends on other values your users enter in other parts
of the form. A descriptive flexfield appears on a form as a single-character,
unnamed field enclosed in brackets. Each field or segment in a descriptive
flexfield has a prompt, just like ordinary fields, and can have a set of valid
values. Your organization can define dependencies among the segments or
customize a descriptive flexfield to display context-sensitive segments, so that
different segments or additional pop-up windows appear depending on the
values you enter in other fields or segments.
6. WHAT IS VALUE SETS
ANS: Set of valid values defined for flexfield segment and SRS report arguments.
Value Set is used when we define flexfield segment for Key Flexfield and descriptive
flexfield segment window. Also for reports that are run from the SRS uses values sets
for report arguments.
7. WHAT IS TABLE TYPE VALUE SET.
ANS: VALUE SET where we selecting validation type as table refer table that are
registered oracle application table for values to be populated for your parameter. We
can use multiple table separating them by ‘,’.
8. DIFF IN VALUE SET & REQUEST SET
ANS: Value set is a Value having list type, security type, format type, validation and
size/width used for segments definition and as attribute for reports extraction through
SRS where as REQUEST SET is a REQUEST have more than one Stage and each stage
have more than one request program.
9. WHAT IS REQUEST SETS
ANS: A request set is a collection of reports and/or programs that you group
together. You can submit the reports and/or programs in a request set all at once
using a single transaction. (REQUEST SET is a set has more than one or more
Stages and each stage have more than one or more request program. Stages
can further be linked to each other).
10. TELL IN BRIEF FOR SEGMENT & FLEXFIELD QUALIFIERS
ANS: Flexfield qualifier: Oracle Applications products use flexfield qualifiers to identify
certain segments used for specific purposes.
Some qualifiers must be unique, and you cannot compile your flexfield if you apply that
qualifier to two or more segments. Other qualifiers are required, and you cannot compile
your flexfield until you apply that qualifier to at least one segment
Segment Qualifier: Some key flexfields use segment qualifiers to hold extra information
about individual key segment values. For example, the Accounting Flexfield uses segment
qualifiers to determine the account type of an account value or whether detail
budgeting and detail posting are 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

11. WHAT ARE DATA-BASE TRIGGERS


12. WHAT IS DIFFERENCE IN PACKAGE, PROCEDURE, TRIGGER
ANS: PROCEDURE: Procedure is a program units used to store PL/SQL block
under an assigned name so that it can be called repeatedly. It may and may not
return values using out prarameters. It is invoked by its name. It cannot be
called from the SQL statement. Return parameter is not mandatory. In case of
Function Return value is must
PACKAGE is a program unit have several procedures and functions that are
logically related together. It also has PL/SQL constructs such as cursors,
variables, constants and exceptions. Packages brings these various constructs
together in a single program unit. It is invoked by its name. It can be called from
With in any other program unit.
Packages A method of encapsulating and storing related procedures, functions,
and other package constructs together as a unit in the database. While packages
provide the database administrator or application developer organizational benefits,
they also offer increased functionality and database performance.
TRIGGER: Triggers is also a program unit. It is invoked by the event such as
insert, update and delete. It cannot be called from any other program unit.
Trigger can be associated with table, views or system level events.
TCL is not allowed within triggers (COMMIT, SAVEPOINT Or ROLLBACK).
DCL is not allowed within triggers (GRANT & REVOKE).
We cannot use parameter in Triggers.
13. TYPES OF TRIGGERS
a. REPORTS TRIGGERS ARE
i. Before parameter form
ii.After parameter form
iii. Before report
iv. Between pages
v.After report
b. Table /View Triggers
i. Before/After Insert/update/Delete (DML)
c. System Event Triggers
i. DDL on schema and database (DDL) Create/Alter/Drop
d. Form Triggers
Different types of form triggers:
1. Key triggers
2. Navigational Triggers
3. Transactional Triggers
4. Message Triggers
5. Error Triggers
6. Query Based Triggers
Main Events are as under:
i. Pre-Logon
ii.On-Logon
iii. Post-Logon
iv. Pre-Form
v.Pre-Block
vi. Pre-Record
vii. Pre-Text-Item
viii. When-New-Form-Instance
ix. When-New-Block-Instance
x.When-New-Record-Instance
xi. When-New-Item-Instance
xii. When-Validate-Item
xiii. Post-Text-Item called
xiv. When-New-Item-Instance
xv. When-CheckBox-Changed
xvi. When-Validate-Item
xvii. When-New-Item-Instance
xviii. When-Radio-Changed
xix. Value of Radio Button
xx. When-New-Item-Instance
xxi. When-List-Changed
xxii. Value in List Item PUN
xxiii. When-New-Item-Instance
xxiv. Push Button pressed...
xxv. When-Validate-Record
xxvi. Post-Record
xxvii. Post-Block
xxviii. Post-Form
xxix. Pre-Logout
xxx. On-LogOut
xxxi. Post-LogOut
14. TYPES OF EXCEPTION:
ANS: USER DEFINED & SYSTEM DEFINED
An error condition or warning in PLSQL is referred as exception. Can be internally
defined or user defined.
Advantage is
· No need of multiple checks for issued statements
· Easy to trap the errors
· Improves the readability

a. ACCESS INTO NULL ----> PROGRAM ATTEMPTS TO ASSIGN VALUES TO THE


ATTRIBUTES OF AN UNINITIALIZED OBJECT
b. CASE NOT FOUND ---> NONE OF THE CHOICES IN THE WHEN CLAUSE OF
CASE ARE FOUND AND THERE IS NO ELSE CLAUSE
c. COLLECTION IS NULL --->
d. CURSOR ALREADY OPEN ---> ATTEMPTS TO OPEN THE ALREADY OPEN
CLAUSE
e. DUP VAL ON INDEX -0001 SQLCODE--> -1 WHEN INSERTING DUPLICATE
VALUES IN THE UNIQUE CONSTRAINED COLUMN
f. INVALID CURSOR --> EG CLOSIG AN UNOPEN CURSOR.
g. INVALID NUMBER ---> CONVERSION OF CHARACTER STRING TO THE
NUMBER FAILS BECAUSE STRING DOES NOT REPRESENT
THE VALID NUMBER.
h. LOGIN DENIED ----> PROGRAM ATTEMTS TO LOG ON TO THE ORACLE WITH
AN INVALID USERNAME AND PWD.
i. NO DATA FOUND (-1403) SQLCODE--> 100 ---> SELECT STATEMENT DOES
NOT RETURN ANY ROWS.
j. NOTE ---> SELECT WITH AGGREGATE FUNCTIONS NEVER RAISES THIS
EXCEPTION BCAUSE THEY ALWAYS RETURN VALUE OR NULL
k. NOT LOGGED ON ---> PROGRAM ISSUES THE DATABASE CALL WITHOUT
CONNECTING.
l. PROGRAM ERROR ---> INTERNAL PROBLEM
m. ROWTYPE MISMATCH
n. STORAGE ERROR
o. TOO MANY ROWS (01422) --- > SELECT STATEMENT RETURNS MORE THAN
ONE ROW
p. VALUE ERROR ----> ARITHMATIC ,CONVERSION,SIZE_CONSTRAINET
ERROR (FETCHING THE VALUE WITH MORE SIZE INTO CHARACTER COLUMN
THAN DECLARED)
q. ZERO DIVIDE (01476) ---> PROGRAM ATTEMPTS TO DIVIDE NUMBER BY
ZERO.
r. TIME OUT ON RESOURCE ---> TIME OUT OCCURS WHILE ORACLE WAITING
FOR RESOURCE.
15. WHAT IS SYNONYMS, TYPES
ANS: A synonym is an alias for a table, view, snapshot, sequence, procedure,
function, package, or object type. Synonyms let you refer to objects from other
schemas without including the schema qualifier
16. WHAT IS VIEWS
ANS: A view can be thought of as a "stored query" presenting data from one or many
tables. A view does not actually contain or store data, but derives data from the base
tables on which it is based. Views can be queried, updated, inserted into, and deleted
from. Operations on a view affect the view’s base tables.

In general, complex blocks are based on views while simple setup blocks are based on
tables. The advantages to using views include:

· Network traffic is minimized because all foreign keys are denormalized on the
server
· You do not need to code any POST-QUERY logic to populate non-database
fields
· You do not need to code PRE-QUERY logic to implement query-by-example for
non-database fields

Whenever performance is an issue and your table has foreign keys, you should define
a view to improve performance. Views allow a single SQL statement to process the
foreign keys, reducing parses by the server, and reducing network traffic.
17. TYPES OF PESUDOCOLS
ANS: ROWID, ROWNUM, NEXTVAL, CURRVAL, LEVEL (HIRARCHICAL QUERY START
WITH AND CONNECT BY)
PL/SQL recognizes the following SQL pseudocolumns, which return specific data items:
CURRVAL, LEVEL, NEXTVAL, ROWID, and ROWNUM. Pseudocolumns are not actual
columns in a table but they behave like columns. For example, you can select values
from a pseudocolumn. However, you cannot insert into, update, or delete from a
pseudocolumn. Also, pseudocolumns are allowed in SQL statements, but not in
procedural statements.
18. CAN WE USE PESUDOCOLS IN VIEWS AND CURSOR
ANS: YES, We do use
19. CAN WE USE ROWID IN CURSOR( E.G ON PAGE 264 OF PLSQL GUIDE)
ANS: YES, We do use
20. TYPES OF CURSOR
21. WHAT IS REF CURSOR
ANS: REF CURSOR IS A CURSOR OF VARIABLE TYPE CAN BE USED FOR
MULTIPLE SQL QUERIES.
22. CURSOR ATTRIBUTES
ANS: %NOTFOUND %FOUND %ROWCOUNT %ISNULL
23. CAN U DEFINE PROCEDURE IN PROCEDURE
ANS: NO WE CANNOT. WE CAN DEFINE PROCEDURE IN PACKAGE
24. WHAT IS DYNAMIC SQL
ANS: SQL WHICH CAN BE CHANGED IN RUN TIME USING LEXICAL
PARAMETERS.
25. CAN WE USE LEXICAL REFERENCE IN PROCEDURE
ANS: NO (ONLY BIND VARIABLE)
26. CAN WE USE LEXICAL REFERENCE IN DYNAMIC SQL - YES
27. TYPES OF TRIGGER IN REPORTS
ANS: REPORTS TRIGGERS ARE
i. Before parameter form
ii.After parameter form
iii. Before report
iv. Between pages
v.After report
28. SEQUENCE OF FIRING OF REPORT TRIGGERS
i. Before parameter form
ii.After parameter form
iii. Before report
iv. Between pages
v.After report
29. WHAT IS APPLICATION OF LEXICAL REF IN REPORTS
ANS: Lexical references are placeholders for text that you embed in a SELECT statement.
You can use lexical references to replace the clauses appearing after SELECT, FROM,
WHERE, GROUP BY, ORDER BY, HAVING, CONNECT BY, and START WITH.
You create a lexical reference by entering an ampersand (&) followed immediately by the
column or parameter name. A default definition is not provided for lexical references.
Therefore, you must do the following: Before you create your query, define a column or
parameter in the data model for each lexical reference in the query. For columns, you
must enter Value if Null, and, for parameters, you must enter Initial Value. Reports Builder
uses these values to validate a query with a lexical reference. Create your query
containing lexical references.
30. WHAT IS MATERILISED VIEWS
ANS: A materialized view is a database object that contains the results of a query. The
FROM clause of the query can name tables, views, and other materialized views. Collectively
these are called master tables (a replication term) or detail tables (a data warehouse
term). This reference uses "master tables" for consistency. The databases containing the
master tables are called the master databases. For replication purposes, materialized views
allow you to maintain copies of remote data on your local node. The copies can be updatable
with the Advanced Replication feature and are read-only without this feature. You can select
data from a materialized view as you would from a table or view. In replication environments,
the materialized views commonly created are primary key, rowid, object, and subquery
materialized views.

Note: The keyword SNAPSHOT is supported in place of MATERIALIZED VIEW for backward
compatibility.
31. WHAT IS USE OF SRW.MESSAGE
ANS: TO DISPLAY MESSAGE IN RUN TIME. IT IS A IN BUILT PROCEDURE.
This procedure displays a message with the message number and text that
you specify. After the message is raised and you accept it, the report
execution will continue.
MSG-msg_number: msg_text
You cannot trap nor change Reports Builder error messages.SRW.MESSAGE
does not terminate the report execution; if you want to terminate a report
after raising a message, use SRW.PROGRAM_ABORT.Any extra spaces in the
message string will be displayed in the message; extra spaces are not
removed by Reports Builder.
32. 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
33. WHAT COLS IN FND_ID_FLEX_STRUCTURES AND AP_LOOKUP_CODES
ANS: AP_LOOKUP_CODES - LOOKUP_TYPE, MEANINGS, DESCRIPTION, LOOKUP_CODE
34. WHAT DIFFERENT TABLES GET AFFECTED IN PAYABLE INTERFACE
ANS: AP_INVOICES_ALL, PO_VENDORS, AP_INVOICE_PAYMENTS_ALL
35. WHAT IS CONTEXT
ANS: Different segments or additional pop-up windows appear depending on the values
you enter in other fields or segments.
36. WHICH TYPE OF KFF USED IN GL
ANS: Accounting Flexfield
37. TYPES OF USER_EXISTS
a. FND SRWINIT
b. FND FLEXSQL
c. FND FLEXIDVAL
d. FND FORMAT_CURRENCY
e. FND FORMAT_DATE
f. FND SRWEXIT
38. TELL BRIEFLY @ USER_EXISTS
ANS: USER EXISTS Calls external program probably written in Pro ‘C’ etc and sends
Parameters from report or forms, external program does the process based on those sent
parameters and returns the value back to report or forms.
39. WHAT R DIFFERENT TYPES OF EXECUTION METHODS
a. Oracle Report
b. PLSQL Stored Procedures
c. SQL*Plus
d. SQL Loader
e. Spawned
f. Host
g. Multi Language Function
h. JAVA concurrent Program
i. JAVA Stored procedure
j. Immediate
k. Request set stage function
40. WHAT IS AUTONOMOUS TRANSACTION
ANS: Autonomous Transaction is a independent transaction started by another main
or parent Transaction create or replace procedure authid current_user as pragma
autonomous transaction
41. What is Value Set in Apps?
42. What is Dependent type value set?
43. What is Table type value set?
44. What is report customization?
45. Which all Reports you have customized?
46. Which all tables involved?
47. What is GL Interface?
48. How it is done - Steps.
49. What is partitioning in the table? How are they accessed?
50. What is AOL?
51. Which tables come under AOL?
52. How files are attached?
53. How log file is created?
54. What is SQL Loader?
55. How control file is written?
56. If I want to add data in a column of a table what you will do?
57. How to delete distinct rows?
58. What are triggers in Forms?
59. What is record group?
60. What is property class?
61. What are triggers in reports?
62. Which srw programs are used in reports?
63. If in the inner program an exception is raised?
64. What are user_exits?
65. What is external Table?
66. Asked to write a query to display salary of average which is greater than
1000?
67. What is exception propagation?
68. What is nocopy hint?
69. How to set Profile option?
70. What is format trigger in Reports?
71. Tell some of the UNIX commands?
72. How do you write shell script?
73. What are cursors?
74. What are the different ways to declare it?
75. Tell some of the fnd tables?
76. What is the architecture of Apps?

Tuning:
Suggestion: Create indexes on your Transaction Flexfield columns if you want to query
Transaction Flexfield information in your invoice headers and lines. Additionally, without
indexes the validation portions of the AutoInvoice program can be slow. For more information
about defining Transaction Flexfield indexes, see: Importing Invoice Information Using
AutoInvoice: page 4 - 204.
Explain Plan of Trace File
Other Questions:

What is Concurrent Program:


ANS: A concurrent program is program that does not require continued interaction on your
part to perform a specific task. In Oracle Applications, for example, a concurrent program may
be a program written to create a report, or to post a batch of general ledger journal entries
What is a Concurrent Process:
ANS: A concurrent process is an instance of a running concurrent program. Each time a
concurrent manager receives a request and runs a concurrent program, it creates a new
concurrent process. A concurrent process can run simultaneously with other concurrent
processes (and other activities on your computer).
What is concurrent request?
ANS: A concurrent request is a request that you submit to run a concurrent program as a
concurrent process. You issue a concurrent request when you submit a report or program to
run using Standard Request Submission or when you choose an action button in a product-
specific submission window
What are PL/SQL Supplied Packages
Package Name Description Documentation
1.DBMS_ALERT Provides support for the asynchronous
notification of database events.
2.DBMS_APPLICATION_INFO Lets you register an application name with the database for
auditing or performance tracking
purposes.
3.DBMS_DDL Provides access to some SQL DDL statements
from stored procedures, and provides special
administration operations not available as DDLs.
4.DBMS_DEBUG Implements server-side debuggers and provides
a way to debug server-side PL/SQL program
units.
5.DBMS_DESCRIBE Describes the arguments of a stored procedure
with full name translation and security checking.
6.DBMS_JOB Lets you schedule administrative procedures that
you want performed at periodic intervals; it is
also the interface for the job queue.
7.DBMS_LOCK Lets you request, convert and release locks
through Oracle Lock Management services.
8.DBMS_METADATA Lets callers easily retrieve complete database
object definitions (metadata) from the dictionary.
9.DBMS_OUTPUT Accumulates information in a buffer so that it can
be retrieved out later.
10.DBMS_PIPE Provides a DBMS pipe service which enables
messages to be sent between sessions.
11.DBMS_REFRESH Lets you create groups of snapshots that can be
refreshed together to a transactionally consistent
point in time. Requires the Distributed Option.
12.DBMS_REPAIR Provides data corruption repair procedures.
13.DBMS_PIPE Provides a DBMS pipe service which enables
messages to be sent between sessions.
14.DBMS_PROFILER Provides a Probe Profiler API to profile existing
PL/SQL applications and identify performance
bottlenecks.
15.DBMS_RANDOM Provides a built-in random number generator.
16.DBMS_REFRESH Lets you create groups of snapshots that can be
refreshed together to a transactionally consistent
point in time. Requires the Distributed Option.
17.DBMS_SESSION Provides access to SQL ALTER SESSION
statements, and other session information, from
stored procedures.
18.DBMS_SHARED_POOL Lets you keep objects in shared memory, so that
they will not be aged out with the normal LRU
mechanism.
19.DBMS_SPACE Provides segment space information not available
through standard SQL.
20.DBMS_SQL Lets you use dynamic SQL to access the database.
DBMS_STATS Provides a mechanism for users to view and
modify optimizer statistics gathered for database
objects.
21.DBMS_TRACE Provides routines to start and stop PL/SQL
tracing.
22.DBMS_TRANSACTION Provides access to SQL transaction statements
from stored procedures and monitors transaction
activities.
23.UTL_FILE Enables your PL/SQL programs to read and write operating system
text files and provides a
restricted version of standard operating system stream file I/O.
24.UTL_HTTP Enables HTTP callouts from PL/SQL and SQL to
access data on the Internet or to call Oracle Web
Server Cartridges.
Listing Information about schema:
The data dictionary provides many views that provide information about schema objects. The
following is a summary of the views associated with schema objects:

· ALL_OBJECTS, USER_OBJECTS

· ALL_CATALOG, USER_CATALOG

· ALL_TABLES, USER_TABLES

· ALL_TAB_COLUMNS, USER_TAB_COLUMNS

· ALL_TAB_COMMENTS, USER_TAB_COMMENTS

· ALL_COL_COMMENTS, USER_COL_COMMENTS

· ALL VIEWS, USER_VIEWS

· ALL MVIEWS, USER_MVIEWS

· ALL_INDEXES, USER_INDEXES

· ALL_IND_COLUMNS, USER_IND_COLUMNS

· USER_CLUSTERS

· USER_CLU_COLUMNS

· ALL_SEQUENCES, USER_SEQUENCES

· ALL_SYNONYMS, USER_SYNONYMS

· ALL_DEPENDENCIES, USER_DEPENDENCIES
What is pragma exception
ASSOCIATES EXCEPTIONS WITH ERROR NUMBERS.
SHOULD BE DECLARED IN DECLARATION SECTION.
IT’S THE COMPILER DIRECTIVE , PROCESSES ERRORS AT THE COMPILE TIME.
Exception Propagation:
•IF EXCEPTION HANDLER IS NOT PRESENT IN LOCAL BLOCK THEN IT’S AUTOMATICALLY
PROPAGATRED TO IT’S ENCLOSING BLOCK.
•SCOPE RULES :
EXCEPTION DECLARED IN OUTER BLOCK
BECOMES GLOBAL TO ALL IT’S SUBBLOCKS.
BUT THE SAME IS NOT TRUE FOR SUBBLOCKS.

What are steps to customize forms?


Copy the template.fmb and appstand.fmb from AU_TOP /Forms/US and put it in custom
directory. The libraries (FNDSQF, APPCORE, APPDAYPK, GLOBE, CUSTOM, JE, JA, JL, VERT)
are automatically attached.
Take one copy of template.fmb and rename it to name of the new form and after
customization save it in the respective product top.
How to use flexfields in reports?
There are two ways to use flexfields in report, one way is to use the view (table name + KFV
or DFV) created by apps. And use the concatenated segments columns which holds the
concatenated segments of the key or descriptive flexfields.
Other way is to use the FND user exits provided by oracle applications.
What is flexfield?
Oracle application uses flexfiled to capture information about your organization. Flexfield have
flexible structure for storing key information. Like company, cost center and account. They
also give you highly adaptable structure for storing customized information in oracle
applications.
How many flexfields are there in AR and what are they.
IN AR THEIR R 2 KFF 1)SALES TAX LOC FF 2)TERRITORY FF
Difference between key flexfield and descriptive flexfield:
Keyflexfield:
---------------
Unique Identifier
Key flexfield are stored in segment columns
For key flexfield there are flexfield qualifier and segment qualifier
Descriptive flexfield:
-------------------------
Context sensitive is a feature of descriptive flexfield.
Descriptive flexfield are stored in Attributes
Can you call APPCORE Library in CUSTOM library
You cannot attach the APPCORE library to CUSTOM because it would cause a recursion
problem because CUSTOM is attached to APPCODE. As of Oracle application release 11i you
may attach the APPCORE2 library to CUSTOM. The APPCORE2 library duplicates most
APPCORE routines with the following packages:
APP_ITEM_PROPERTY2
APP_DATE2
APP_SPECIAL2
These packages contain the same routines as the corresponding APPCORE packages. Follow
the documentation for the corresponding APPCORE routines, but add a 2 to the package
names.
What is MRC and what are its use?
The Multi reporting currency feature allows you to report and maintain records at the
transaction level in more than one functional currency. You can do it by defining one or more
set of books in additional to the primary set of books.
How many reporting currencies can be attached to the primary set of books?
Ans: 9 Reporting currencies can be attached to the primary set of books.
What are new features in Release 11i
What are ad-hoc reports
Ad-hoc reports are made to meet the one-time reporting needs. Concerned with or formed for
a particular purpose. For example, ad hoc tax codes or an ad hoc database query.
FSG is a Ad-Hoc Report.
What is FSG?
FSG is a powerful and flexible report building tool you can use to build your own custom
reports without programming. FSG is only available with GL.
What do you mean by HZ_ in customer tables
How can you handle multiple rows without using loops in PL/SQL
What are different types of files used in SQL LOADER
ANS: fixed, variable and stream
What are interface tables in AP, AR and GL?
AP Interface:
1. AP_INTERFACE_CONTROLS
2. AP_INTERFACE_REJECTIONS
3. AP_INVOICE_INTERFACE
4. AP_INVOICE_LINES_INTERFACE
What does set of books comprised of?
ANS: CHART OF ACCOUNTS, CALENDAR AND CURRENCY
What is Flexfield Structure? (235-256 flexfield guide)
What are the validation types supported by value sets?
ANS: Dependent, Independent, None, Pair, Special, Table, Translatable Independent and
Translatable Dependent.
What are format types supported by the value sets?
ANS: Char, date, date time, number, standard date, standard date time, time.
Is there any restriction over the number of flexfield structure that can be defined for
the accounting flexfield.
ANS: NO there is no such restrictions.
What are flexfield qualifier that are available for accounting flexfield structure?
ANS: Natural accounting segment, cost center segment, balancing segment and intercompany
segment.
Which Flexfield qualifiers are mandatory?
ANS: Balancing segment and Natural Account segment
Which Mandatory account needs to be defined for the set of books definition?
ANS: Retained Earnings - this is undistributed profit of the shareholders.
What are all accounts that can be defined for the set of books form?
ANS: Retained Earnings, Suspense, Rounding Difference, Reserve for Encumbrance
Account and Net Income Accounts.
What is the minimum and maximum no of periods that can be defined for the
calendar?
ANS: 1 & 366
What are the period statuses that can be associated with the periods?
ANS: Open, closed, permanent closed, never opened, future entry
Can multiple periods have open status at one time?
ANS: Yes.
How many chart of accounts can be mapped to a set of books.
ANS: Only One
How many set of books can be defined in GL module?
ANS: Unlimited
What is responsibility?
ANS: A collection of forms, menu and program that a user can access.
Can multiple responsibilities be assigned to a single user?
ANS: Yes
Can responsibility be shared by multiple logon users?
ANS: Yes
From a general ledger responsibility, how many set of books can be accessed?
ANS: Only One.
What are different currency conversion rates?
ANS: General Ledger provides the following predefined daily conversion rate types:
Spot: An exchange rate, which you enter to perform conversion based on the rate on a
specific date. It applies to the immediate delivery of a currency.
Corporate: An exchange rate you define to standardize rates for your organization. This rate
is generally a standard market rate determined by senior financial management for use
throughout the organization.
User: An exchange rate you specify when you enter a foreign currency journal entry.
Which table captures conversion rates information?
ANS: gl_daily_rates
Which column distinguishes the type of journal being entered?
ANS: actual_flag (A-Actual, B-Budget, E-Encumbrance)
Dependant and Independent Value sets:
For example, suppose you have an independent value set called "Account" with a dependent
value set called "Sub-Account." You may wish to create a new independent value, 99, for
"Account" with description "Receivables" without creating any associated sub-account values.
Since your flexfield requires a dependent value of some sort to go with the independent value,
it uses the default value you enter here, such as 00 with description "No Sub-Account."
List the tables which captures the journals information
1. GL_JE_BATCHES
2. GL_JE_HEADERS
3. GL_JE_LINES
Which table captures the balances information of the code combinations?
Ans: Gl_BALANCES
What is significance of compiling a flexfield structure?
Ans: It reflects the changes made to a flexfield structure during the unfreezed state.
What changes can be enforced on the flexfield structure when It is unfreezed?
Ans: Changing segment names, changing ordering sequence, changing window prompts,
adding new segments, changing the enabled and displayed attributes.
What is Autorate program?
Ans: It is a program, which selects all the foreign currency transactions in a module in and
applies that days currency conversion rate.
Is It mandatory to freeze the flexfield
Ans Yes
How many views are generated when compiling a flexfield structure?
Ans: Two - One is user defined and another is system defined GL_CODE_COMBINATION_KFV
What is the significance of intercompany flexfield qualifier?
Ans: It allows inter company transactions to be recorded.
How do you setup suspense posting?
Ans: Define suspense account code combination in set of books form.
Manual tax journals can be recorded if allow tax journals options is not selected in
the set of books form.
Ans No.
Selection of journal approval option makes it mandatory for every journal to be
approved before a journal is posted?
Ans:Yes
Where do you specify journal approval limits in Oracle apps?
Ans: In GL Module only.(Setup - Employee - Limit) where employee wise authorization limit
can be entered.
Can previous conversion rates information be used for current transaction?
Ans: Yes.
After the batch is posted and journals within the batch can be updated
Ans: No
To reverse an entire batch what is the option available in GL?
Ans: Reverse batch option in Journal Batch window.
To reverse only journal within the journal what steps have to be performed?
Ans: Journal - Enter - Find - Batch - Query - More action - Reverse Journal
What are the amount types supported by the application.
Ans: PTD,QTD,YTD,PJTD
Can Statistical budget be defined in GL?
Ans: Yes
What are the modules involved in the encumbrance cycle?
Ans: GL, PO, AP
What is Encumbrance accounting?
Ans: Encumbrance accounting is the cycle of generation of encumbrance entries for the
reservation of funds.
What is the name of the system generated view when you compile an accounting
flexfield structure?
Ans: GL_CODE_COMBINATION_KFV
Which Profile option needs to be set to allow mixed journals?
Ans: Journals: Mix Monetory and Statistical (Yes/No)
Which Profile option should be set to prevent transactions on a non-business day?
Ans: Journals: Allow Non-Business Day Transactions should be set to NO.
What is the purpose of journals? Default Category profile option?
Ans: To default a journal category in case of manually recorded journal.
What are the Journal reversal methods available in GL?
Ans: Switch DR/CR
Change Sign
Which profile option is used to map a responsibility to a general ledger set of books?
Ans: GL Set of books name
What are the different statuses that a budget can have?
Ans: Frozen, Open and Default
Only Ten Budget Organizations can be defined in a gl set of books
Ans:False
Encumbrance balances are maintained for expense accounts?
Ans:True
What is the use of cursors in PL/SQL and what is REF cursor?
Ans: The cursors are used to handle multiple row query in PL/SQL. Oracle uses implicit cursor
to handle all its queries. Oracle uses unnamed memory spaces to store data used in implicit
cursors. With Ref cursors you can define a cursor variable, which will point to that memory
space and can be used like pointers in our 3GLs.
What are autonomous transaction? Give a scenario where you have it?
Ans: It is an independent transaction started by the another transaction the main or parent
transaction, do SQL operations, commit or rollback those operations the resume back to the
main transaction.
Once started an autonomous transaction is fully independent. It shares no locks, resources, or
commit-dependencies with the main transaction. So you can log events increment retry
counters and so on even if the main transaction rolls back.
More important autonomous transaction help you build modular reusable software
components.
For example stored procedures can start and finish autonomous transactions on their own. A
calling application need not know about a procedure’s autonomous operations and the
procedure need not know about the application’s transaction context. That makes autonomous
transactions less error-prone than regular transactions and easier to use.
Further more autonomous transactions have all the functionality of regular transactions. They
allow parallel queries distributed processing and all the transaction control statements
including SET TRANSACTION.
SCENARIO: You can use autonomous transaction in your report for writing error message in
your database tables.
What is the use of triggers in forms?
Ans: Triggers are used in forms for event handling. You can write PL/SQL code in triggers to
respond to a particular event occurred in your forms like when user presses a button or when
he commits the form.
The different types of triggers available in forms are:
1. Key triggers
2. Navigational triggers
3. Transactional triggers
4. Message triggers
5. Error triggers
6. Query based triggers.
What is the use of TEMP tables in interface programs?
Ans: Temporary tables are used to hold the intermediate data. The data is loaded into a
temporary tables first and after validating through the PL/SQL Program the data is loaded into
the interface table.
Do you need to register the feeder program of interface to AOL?
Ans: Yes you have to register the feeder program as concurrent program to Apps.
What are the steps to form customization?
Ans: Copy the template.fmb and Appstand.fmb from AU_TOP/Forms/us and put it in the
custom directory. The libraries FNDSQF, APPCORE, APPDAYPK, GLOBE, CUSTOM, JE, JA, JL
VERT are automatically attached. Create or open new forms then customize it save this form
in corresponding module.
How to use flexfield in reports?
Two ways: One is to use the view tables such as _KFV or _DFV created by apps and use the
concatenated segments column which holds the concatenated segments of the key or
descriptive flexfields.
Or use FND user exits provided by oracle applications.
What is KEY FLEXFIELD?
Ans: Unique identifier storing key information used for entering and displaying key
information. For example Oracle general ledger uses a key flexfield called accounting flexfield
to uniquely identifies a general account.
Descriptive flexfield to capture additional information.
How many flexfields are there in AR and what are they?
1. Transaction Flexfield
2. Territory Flexfield
3. Salex Tax Location Flexfield
What is MRC and its use?
Ans: Multi Reporting Currency allows you to report and maintain record at the transaction
level in more than one functional currency. You can do so by defining one or more set of books
in addition to the primary set of book.
What is Format trigger in reports where u uses this trigger and how?
Format Trigger:
A format trigger is a PL/SQL function executed before an object is formatted. A trigger can be
used to dynamically change the formatting attributes of the object.

/* Suppose that you are building a banking report and ** would like it to indicate if a
customer is overdrawn.** To do so, you give the repeating frame around the ** customer
information a format trigger that causes ** it to have a border only if a customer's account **
balance is less than 0 (or the required minimum **balance). */

Function my_formtrig return BOOLEAN isbegin if :bal < 0 then srw.attr.mask :=


SRW.BORDERWIDTH_ATTR; srw.attr.borderwidth := 1; srw.set_attr (0, srw.attr); end if;
return (true); end;
Birla Soft

1. What is Purchase Order functionality


2. Which SRS is run for generating invoice in AP.
Ans: PAY-ON-RECEIPT-AUTOINVOICE
3. Types of Flexfields
4. Types of Value sets
5. What is Legal Entity
6. What are other Units that you define for multi organization setup
7. Where you will define SOB for the inventory organization
Ans: Define in Organization option for Inventory Organization (classification) - Other
-Accounting Information - Specify SOB-Legal Entity and Operating Unit.
8. Where you will set the HR organization. (At Operating Unit level)
9. What are flexfields in Inventory.
10. What you will do to proceed further from the point where no approval is
done for purchase order work flow.

Sanjay Gade (DLSR Chennai)

1. How to register report in apps


2. Types of Value sets
3. Where you will store control file for interface which folder (cus/bin)
4. What is Lexical parameter
5. Which all modules worked on.
6. Payable interface tables.
7. Where we will define parameters
Deloitte Questions:
(DELOITTE MUMBAI )

1. whats the out put of "select * from emp where rownum=5;"


no rows selected
2. whats the use of Between pages trigger?
Description:The Between Pages trigger fires before each page of the report is formatted,
except the very first page. This trigger can be used for customized page formatting. In the
Runtime Previewer or Live Previewer, this trigger only fires the first time that you go to a
page. If you subsequently return to the page, the trigger does not fire again.
Definition Level: Report
On Failure:
Displays an error message when you try to go to the page for which the trigger returned
FALSE. The pages subsequent to the page that returned FALSE are not formatted. If the
trigger returns FALSE on the last page, nothing happens because the report is done
formatting. The Between Pages trigger does not fire before the first page. If the trigger
returns FALSE on the first page, the first page is displayed, but, if you try to go to the second
page, an error message is displayed.
3. For two pages report for how many times between page trigger will fire?
One time , after first page.
4. Multi org structure?
Business Groupà SOB->Legal Entityà Operating Unità Inventory Orgà sub Inventory.
5. Difference between org_id and organization_id?
Org_id indicates operating unit, organization_id indicate Inventory Organization
6. what are the base table for multi org informations?
ANS: HR_LOCATIONS_ALL, HR_ALL_ORGANIZATION_UNITS,
HR_ALL_ORGANIZATION_UNITS_TL, HR_ORGANIZATION_INFORMATION,
FND_PRODUCT_GROUPS
8. How to use one formula column to return two values?
ANS: It always returns one value.
9. How I can have multiple layout in one report?
ANS:Use additional default layout tool in layout model tool bar.
10. Explain how I can use additional layout option?
In layout model, click below your first layout selecting additional layout option from tool bar,
which will activate report wizard , choose any other layout you need and finish it, you will get
second layout along with first one.
11. what will be output of " select * from po_headers? "
ANS: No row selected. In case of multi org flag is yes. This is a view and filter condition is
given for org_id for which we need to initialize ord_id passing user_id, responsibility_id and
applicaton_id or need to extract ord_id from client_info global variable.
12. diffrence between po_headers and po_headers_all ?
ANS: po_headers_all is a table to store information for more than one organization and
po_headers is a view, which is partitioned by org_id
13. use of retcode?
ANS: It returns status of the pl sql program you are running.
14. how i can fetch the current operating unit in plsql program?
ANS: Use Client_info global variable
15. how i can fetch the request id of the running conc program?
ANS: fnd_global.conc_program_id, fnd_global.conc_request_id
16. whats the user exit ? explain each.
ANS: Explain him FND SRWINIT, SRWEXIT, FLEXSQL, FLEXIDVAL, FORMAT CURRENCY.
17. how i can make sure that one program if running then no other is running in
parallel?
ANS: Check the “Run Alone” checkbox while defining your concurrent program.
18. in sql*loader how to insert data in multiple tables?
LOAD DATA
INFILE *
REPLACE
INTO TABLE emp
WHEN empno != ' '
( empno POSITION(1:4) INTEGER EXTERNAL,
ename POSITION(6:15) CHAR,
deptno POSITION(17:18) CHAR,
mgr POSITION(20:23) INTEGER EXTERNAL
)
INTO TABLE proj
WHEN projno != ' '
( projno POSITION(25:27) INTEGER EXTERNAL,
empno POSITION(1:4) INTEGER EXTERNAL
)

19. How i can make sure that no row of dat file is inserted if even one row fails the
validation?
ANS:
20. How to show error message?
ANS: Use exception handler, raise_application_error or use SQLCODE, SQLERRM.
21. 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.
22. Flow of PO?
Requisition (generate and approve)à PO(generate and approveà send it to customer àget
receipt of goodsà use “Pay on Auto Invoice” conc. Program to automatically generate Invoiceà
pay the customer.
23. explain plan of correlated subquery?
First outer query will fire, on the basis of the output of the outer one the inner query will fire.
24. How to do interface?
Staging table à use SQL*Loader to load data from dat files (external files in CSV format) in
these tablesà use plsql to do the validations so that each row gets inserted into the pre
interface tablesà once it goes into the pre tables use simple plsql to send data from pre
interface tables to interface table.
25. base tables of GL, AR interfaces.
For import journal à GL_INTERFACE,
For daily rates interfaceà GL_DAILY_RATES_INTERFACE
For customer interfaceà RA_CUSTOMER_INTERFACE
RA_CUSTOMER_PROFILES_INTERFACE
RA_CUST_BANK_INTERFACE
RA_CUST_PAY_METHOD_INTERFACE
RA_CONTACT_PHONE_INTERFACE
26. Validations of GL, Customer, daily rates interfaces.
27. imp tables of BOM, PO, their imp columns.
28. where the info of KFF, DFF is stored? (base tables of FND?)
KFFà FND_ID_FLEX_STRUCTURE
DFFà FND_DESCRIPTIVE_FLEX
29. 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.
30. 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.
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 doesn’t depends on context are called GLOBAl segments.
31. where the party info, customer number, item number is stored?
HZ_PARTIES, HZ_PARTY_SITES, MTL_SYSTEM_ITEMS
32. what is the flow of BOM.
33. report triggers sequence?
BEFORE PARAMETER FORM
AFTER PARAMETER FORM
BEFORE REPORT
BETWEEN PAGES
AFTER REPORT
34. diff bet formula, placeholder.
Formula column used to return value based on the user calculations.
Placeholder column is used to hold value set by the user. U can set its value in one of the
following à before report trigger, report level formula column, or a formula column in a group
or a group below of this placeholder column.
34. explain database triggers.
Ans: Triggers are classified in three forms
Levelàstatement level, row level.
Statement level will fire once for a statement say
delete from emp where deptno=10; -- say it deletes 5 rows of emp
if it’s a statement level then it will fire only once.
Where as if it’s a row level it will fire for each row processed ie for 5 times.
Eventà insert, update, delete
Timingà BEFORE, AFTER, INSTEADE OF
35. what is the instead of trigger?
If you have created a view on the basis of join between two tables. If you try to insert values
through this triggers it wont allow but still if you have to insert values then you will write
INSTEADE OF trigger on this VIEW. Doing so will allow you to insert through this view into two
different underlying tables.
36. i am deleting some rows from table, i want the rows being deleted to be stored
in another table, how will i do it?
Use before delete trigger on this table.
37. what is parameterized cursor? and cursor attributes?
You can pass a parameter to cursor depending on which it will fetch rows.
Cursor c1(num number) is
Select * from emp where deptno=num;
While opening this cursor
Open cursor(20);
37. how you do the documentations, before staring a task , and once task is
finished.
We have our MD.070 technical documentation. We get a functional requirement MD.050 from
functional consultant, we convert it into technical document as exactly how we will achieve the
required target. Then we show it to our PM , get some modifications done required by him.
Get that document approved from him. Then only we can start the task in the same way
mentioned in the technical MD.070 approved document.
38. What is request set ?
it’s 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.
39. Diff between functions, procedure?
Function has to return a value, (only one), and it can be executed in a select statement or any
other expression. Like Var1 := my_function(10,20);
procedures cant be executed in select statement. And its not mandatory for a procedure to
return a value.
40. how procedure can return value?
Using IN OUT, OUT parameter. With the help of out parameter more than one value can be
return in procedure.
41. can i have IN OUT parameters in function?
NO. functions doesn’t accept IN OUT, OUT parameters.
42. can i have COMMIT in triggers.
NO. triggers cant have any TCL (Transactional Control Statements)
commit, rollback, savepoint not allowed.
43. whats the output of following code
---------------------
declare
cursor c1 is
select empno, ename from emp where deptno=20;
memp1 emp.empno%type;
memp2 emp.ename%type;
cnt1 number default 0;
cnt2 number default 0;
begin
open c1;
cnt1 := c1%rowcount;
dbms_output.put_line('cnt1=> '||cnt1);
loop
fetch c1 into memp1, memp2;
exit when c1%notfound;
cnt2 := c1%rowcount;
end loop;
close c1;
dbms_output.put_line('cnt2=> '||cnt2);
end;
/
---------------------
cnt => 0
cnt => 5
44. what is pragma?
Pragma is a compiler directive.
Oracle have four PRAGMAS.
v PRAGMA EXCEPTION_INIT
Used to attach a non defined error with a number.
v PRAGMA AUTONOMOUS_TRANSACTION
To mention that this transaction will contain a call to an autonomous
transaction.
v PRAGMA RESTRICT_REFERENCES
To restrict a function from writing to, reading from database.
Options are WNDS, RNDS, WNPS, RNPS.
v PRAGMA SERIALLY_USABLE
45. What do you know about partitioned table?
46. How to find column in a oracle database?
47. How to find current operating unit?

****
General Report 6i Questions:

1. Why do we call FND SRWINIT from Before Report Trigger


A. FND SRWINIT fetches concurrent request information and sets up the profile options. It
must be included if one is using any ORACLE APPLICATION OBJECT LIBRARY features in his
report (such as concurrent processing)
2. Why do we call FND SRWEXIT from After Report Trigger
A. FND SRWEXIT frees all the memory allocations done in other Oracle Applications user
exits. It must be included if one is using any ORACLE APPLICATION OBJECT LIBRARY features
in his report (such as concurrent processing)
3. 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.
4. 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.
5. 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.
6. 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.
7. 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.
8. Describe CODE option of the FND FLEXSQL user exit
A. Specify the flex field code for the report (for example, GL#, MCAT).
9. 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)
10. 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.
11. 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.
12. 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 ,
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.
13. 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.
14. 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.
15. 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.
16. Describe the OPERATOR option of the FND FLEXSQL user exit
A. Specify an operator to use in the WHERE clause.
17. Describe the OPERAND1 option of the FND FLEXSQL user exit
A. Specify an operand to use in the WHERE clause,
18. Describe the OPERAND2 option of the FND FLEXSQL user exit
A. Specify a second operand to use with OPERATOR = "BETWEEN"
19. 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).
21. 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
22 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.
23 If the INSERT_UPDATE_FLAG is not set correctly or the required column is
missing the value, will CUSTOMER INTERFACE reject the entire record or
just the attributes u want to update?
A Reject the entire record.
24 List some of the required columns for the RA_CUSTOMERS_INTERFACE?
A. ORIG_SYSTEM_CUSTOMER_REF
INSERT_UPDATE_FLAG
CUSTOMER_NAME
CUSTOMER_NUMBER (if you are not using Automatic Customer Numbering)
CUSTOMER_STATUS
LAST_UPDATED_BY
LAST_UPDATE_DATE
CREATED_BY
CREATION_DATE
If you are importing an address and a business purpose, you must also populate the following
columns:
PRIMARY_SITE_USE_FLAG (if you are inserting an address)
LOCATION (if you are not using Automatic Site Numbering)
SITE_USE_CODE (if you are inserting an address)
ADDRESS1
25 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
26. What validation must be given on the customer_number?
A Must be null if you are using Automatic Customer Numbering. Must exist if you are not
using Automatic Customer Numbering. This value must be unique within RA_CUSTOMERS.
27 What validation must be given on the CUSTOMER_STATUS?
A Must equal 'A' for Active or 'I' for Inactive.
28 Name some of the Oracle receivables Interfaces?
A a) Auto Invoice
b) Auto Lockbox
c) Customer Interface
d) Sales Tax rate Interface
e) Tax Vendor Extension
29 Give some of the Oracle Payables interface?
A. a) Credit Card Transaction Interface
b) Invoice Import Interface
c) Payables Open Interface
d) Purchase Order Matching
30. Name some of the oracle general ledger Interface?
A a) Budget Upload
b) Importing Journals
c) Loading Daily rates
31. 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
32. 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.
33. Auto Lockbox is a three-step process, what are those?
A. a) Import
b) Validation
c) PostQuickCash
34. What is the order in which Autolock box searches for the types of the
matching number?
A. 1. Transaction Number
2. Sales Order Number
3. Purchase Order Number
4. Consolidated Billing Invoice Number
5. Other, user-defined number.
35. What is application short name for General Ledger you specify in FND
FLEXSQL user exit?
A. SQLGL
36 . What are validations to be done in Journal Import interface.
A. Batch level: Set of Books, Period Name, and Batch Name
Journal Level: Set of books, Period name, Source name, Journal entry name, Currency
code, Category name, Actual flag, Encumbrance type ID, User conversion type, Accounting
date, Budget version ID
37. What subclass in forms6i
A Specifies module, storage & name information about the source object and source module
for a referenced objects.
38. What is the clause in SQL * Loader to program to override data into table
A. REPLACE
39. How do you set profile in oracle applications In Application Developer
responsibility?
A Open 'Profile' Function
40. 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)
41 What is the table name for items in Oracle Inventory
A MTL_SYSTEM_ITEMS, MTL_CATEGORIES
42. 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.
43. 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
44 Name the interface tables used for the AutoInvoice Interface.
A AutoInvoice 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
• AR_ADJUSTMENTS_ALL

REPORTS 6i

About User Exits

A user exit is a program that you write and then link into the Report Builder executable or user
exit DLL files. You build user exits when you want to pass control from Report Builder to a
program you have written, which performs some function, and then returns control to Report
Builder.
You can write the following types of user exits:
* ORACLE Pre-compiler user exits
* OCI (ORACLE Call Interface) user exits
* Non-ORACLE user exits
You can also write a user exit that combines both the ORACLE Pre-compiler interface and the
OCI. User exits can perform the following tasks:
* Perform complex data manipulation
* Pass data to Report Builder from operating system text files
* Manipulate LONG RAW data
* Support PL/SQL blocks
* Control real time devices, such as a printer or a robot

You can use user exits for other tasks, such as mathematical processing. However, Oracle
Corporation recommends that you perform such tasks with PL/SQL within Report Builder.
Usage Notes
* Not all types of user exits can perform all of the described tasks. You can accomplish most
of these tasks only with ORACLE Pre-compiler user exits.
* Some details of implementing user exits are specific to each operating system.

Writing a user exit call


You can call the user exit from any place in which you can enter PL/SQL within Report Builder.
Use the following syntax:

Syntax
* [SRW.REFERENCE(:object_name_1);]
* [SRW.REFERENCE(:object2_name_2); ...];
* SRW.USER_EXIT('user_exit_name [argument_list]');
where:

object_name_n Is the name of an Report Builder parameter or column whose value will be
passed to the user exit in the user exit string. This causes Report Builder to build a
dependency list: it will ensure that each referenced object will contain the most recently
computed or fetched value before it is passed to the user exit. Note: You must reference
each parameter or column separately. For details, see "SRW.REFERENCE".

user_exit_name Is the name of the user exit to which you are passing control. The
user exit name may be any length. (On some operating systems, the name may be at most 6
characters. Check with your system administrator.)

argument_list Can contain the names of parameters and columns, constants, character
strings, or any combination thereof, that you wish to pass to the user exit. The argument list
may be any length. Note: The above syntax will need to be embedded in a PL/SQL program
unit.

SRW.USER_EXIT
Description : This procedure calls the user exit named in user_exit_string. It is useful when
you want to pass control to a 3GL program during a report's execution.

Syntax
SRW.USER_EXIT (user_exit_string CHAR);
Parameters :
user_exit_string :Is the name of the user exit you want to call and any columns or parameters
that you want to pass to the user exit program.

SRW.REFERENCE
Description : This procedure causes Report Builder to add the referenced object to the PL/SQL
construct's dependency list. This causes Report Builder to determine the object's value just
before firing the PL/SQL construct. This is useful when you want to ensure that a column
value passed to a user exit is the most recently computed or fetched value.
Syntax
SRW.REFERENCE (:object CHAR|DATE|NUMBER);
Parameters
object Is the Report Builder parameter or column whose value needs to be ascertained before
the construct fires.

SRW.MESSAGE
Description :This procedure displays a message with the message number and text that you
specify. The message is displayed in the format below. After the message is raised and you
accept it, the report execution will continue.
MSG-msg_number: msg_text.
Syntax
SRW.MESSAGE (msg_number NUMBER, msg_text CHAR);
Parameters
msg_number Is a number from one to ten digits, to be displayed on the message line.
Numbers less than five digits will be padded with zeros out to five digits. For example, if you
specify 123, it will be displayed as SRW-00123.
msg_text Is at most 190 minus the msg_number alphanumeric characters to be
displayed on the message line.

Lexical References :
Lexical references are placeholders for text that you embed in a SELECT statement. You can
use lexical references to replace the clauses appearing after SELECT, FROM, WHERE, GROUP
BY, ORDER BY, HAVING, CONNECT BY, and START WITH.
You cannot make lexical references in a PL/SQL statement. You can, however, use a bind
reference in PL/SQL to set the value of a parameter that is then referenced lexically in SQL.

SELECT Clause
SELECT &P_ENAME NAME, &P_EMPNO ENO, &P_JOB ROLE FROM EMP
FROM Clause
SELECT ORDID, TOTAL FROM &ATABLE
WHERE Clause
SELECT ORDID, TOTAL FROM ORD WHERE &CUST
GROUP BY Clause
SELECT NVL(COMMPLAN, DFLTCOMM) CPLAN, SUM(TOTAL) TOTAL FROM ORD GROUP BY
&NEWCOMM
HAVING Clause
SELECT CUSTID, SUM(TOTAL) TOTAL FROM ORD GROUP BY CUSTID HAVING &MINTOTAL
ORDER BY Clause
SELECT ORDID, SHIPDATE, ORDERDATE, TOTAL FROM ORD ORDER BY &SORT
CONNECT BY and START WITH Clauses
Multiple Clauses
SELECT &COLSTABLE
COLSTABLE could be used to change both the SELECT and FROM clauses at runtime. For
example, you could enter DNAME ENAME, LOC SAL FROM DEPT for COLSTABLE at runtime.

Bind References :
Bind references (or bind variables) are used to replace a single value in SQL or PL/SQL, such
as a character string, number, or date. Specifically, bind references may be used to replace
expressions in SELECT, WHERE, GROUP BY, ORDER BY, HAVING, CONNECT BY, and START
WITH clauses of queries. Bind references may not be referenced in FROM clauses or in place
of reserved words or clauses.

You create a bind reference by entering a colon (:) followed immediately by the column or
parameter name. If you do not create a column or parameter before making a bind reference
to it in a SELECT statement, Report Builder will create a parameter for you by default.

SELECT Clause
SELECT CUSTID, NVL(COMMPLAN, :DFLTCOMM) COMMPLAN FROM ORD
WHERE Clause
SELECT ORDID, TOTAL FROM ORD WHERE CUSTID = :CUST
GROUP BY Clause
SELECT NVL(COMMPLAN, :DFLTCOMM) COMMPLAN, SUM(TOTAL) TOTAL FROM ORD GROUP
BY NVL(COMMPLAN, :DFLTCOMM)
HAVING Clause
SELECT CUSTID, SUM(TOTAL) TOTAL FROM ORD GROUP BY CUSTID HAVING SUM(TOTAL)
> :MINTOTAL
ORDER BY Clause
SELECT ORDID, SHIPDATE, ORDERDATE, TOTAL FROM ORD ORDER BY DECODE(:SORT, 1,
SHIPDATE, 2, ORDERDATE)
Placeholder Columns :
A placeholder is a column for which you set the data type and value in PL/SQL that you define.
You can set the value of a placeholder column in the following places:
* The Before Report Trigger, if the placeholder is a report-level column
* A report-level formula column, if the placeholder is a report-level column
* A formula in the placeholder's group or a group below it (the value is set once for each
record of the group)

PROCEDURE RUN_PRODUCT (product NUMBER, module VARCHAR2, commmode


NUMBER, execmode NUMBER, location NUMBER, paramlist_id VARCHAR2,
display VARCHAR2);
Product :Specifies a numeric constant for the Oracle product you want to invoke: FORMS
specifies a Runform session. GRAPHICS specifies Graphics Builder. REPORTS specifies Report
Builder. BOOK specifies Oracle Book.
module Specifies the VARCHAR2 name of the module or module to be executed by the
called product. Valid values are the name of a form module, report, Graphics Builder display,
or Oracle Book module. The application looks for the module or module in the default paths
defined for the called product.
commmode Specifies the communication mode to be used when running the called
product. Valid numeric constants for this parameter are SYNCHRONOUS and
ASYNCHRONOUS.SYNCHRONOUS specifies that control returns to Form Builder only after the
called product has been exited. The end user cannot work in the form while the called product
is running. ASYNCHRONOUS specifies that control returns to the calling application
immediately, even if the called application has not completed its display.
Execmode : Specifies the execution mode to be used when running the called product. Valid
numeric constants for this parameter are BATCH and RUNTIME. When you run Report Builder
and Graphics Builder, execmode can be either BATCH or RUNTIME. When you run Form
Builder, always set execmode to RUNTIME.
Location : Specifies the location of the module or module you want the called product to
execute, either the file system or the database. Valid constants for this property are
FILESYSTEM and DB.
Paramlist_name or paramlist_ID : Specifies the parameter list to be passed to the called
product. Valid values for this parameter are the VARCHAR2 name of the parameter list, the ID
of the parameter list, or a null string (''). To specify a parameter list ID, use a variable of type
PARAMLIST.
Display : Specifies the VARCHAR2 name of the Form Builder chart item that will contain the
display (such as a pie chart, bar chart, or graph) generated by Graphics Builder. The name of
the chart item must be specified in the format block_name.item_name

PROCEDURE Run_Emp_Report IS
pl_id ParamList;
BEGIN
pl_id := Get_Parameter_List('tmpdata');
IF NOT Id_Null(pl_id) THEN
Destroy_Parameter_List( pl_id );
END IF;
pl_id := Create_Parameter_List('tmpdata');
Add_Parameter(pl_id,'EMP_QUERY',DATA_PARAMETER,'EMP_RECS');
Add_Parameter(pl_id, 'PARAMFORM', TEXT_PARAMETER, 'NO');
Run_Product(REPORTS, 'empreport', SYNCHRONOUS, RUNTIME,FILESYSTEM, pl_id, NULL);
END;

==========================================================
===================

General Form 6i Questions:

1. What is canvas?
1. Canvases guides the layout of the blocks / records / items. A Content Canvas View (or
simply Content View) is the base view that occupies the entire content pane of the window in
which it is displayed. You will usually define at least one content canvas view for each window
in your application.
A canvas is an object that can be displayed on the screen. The canvas may contain buttons,
graphics, display items and text items.
-------------
| xxxx zzz |
| xxxx zzz |
| xxxx zzz |
| [SAVE] |
-------------
The canvas may be smaller or larger than the screen size. One canvas may be stacked on top
of
another canvas so that the user might see several canvases at the same time.
-------------
|1 |
| ----- |
| |2| |
| ----- |
-------------

A large canvas might only be partially visible to the user. This is known as a "view" of the
canvas. If the cursor navigates to an enterable item on a canvas, then the canvas becomes
visible to the user. However, when the cursor leaves the items on the canvas, the canvas
will not automatically be hidden from view unless another canvas covers it.
-------------
| vvvvvv |
| vvvvvv |
| vvvvvv |
| |
| |
-------------

2. How many types of canvas are there in a form?


2. There are 5 types are canvas are there in a form
a) Contant Canvas.
b) Stacked Canvas.
a) Horizontan Tool Bar.
b) Varitacal Toll Bar.
c) Tab Canvas.

3) Can you have a form without a Canvas?


3) No, Canvas Object Physical represent table columns.

4) Does a stacked canvas require a content canvas?


4) Yes, Sometime the number of columns in the table cannot contained on a standared canvas
or the system require that information on the form be displayed either on a click of a button
or on some condition being set for the system.

Multiple canvases can be placed on the same form. Additional items can be included in the
second
canvas and code can be written to make the canvas visible/ invisible when a button is pressed.

Since the canvas is placed on the window the size of the canvas is restricted to the size of the
window. Similarly if the window is resized, the canvas must be resized. The type of the canvas
determined the canvas-resizing behavior. The default value for the canvas type is "contant".
This property value ensure that the canvas is automatically resized horizontally and vartically
based on the size of the window.

There may be a need to place some items on the contant canvas and other items on a new
canvas
such that the contant canavs and the new canvas are stacked one on top of the other.

A canvas that can be stacked on the contant canvas is called a "Stacked Canvas". The stacked
canvas is displayed in the same window along with the window's contant canvas. There can be
any number of stacked canvases placed on the content canvas.

If the form includes multilpe canvases, a common practice is to make the stacked canvas
visible
or invisible programmatically.
5) What is tab canvas?
5) Just like the paper form is made of multiple pages, the data entry form could also be
created
with multiple pages. The type of canvas that can include multiple tab pages is called "Tab
canvas".

6) what is the difference between horizontal and varitical toolbar?


6)

7) What are the basic concepts of Oracle Forms?


7) Forms functionality is driven by user events (such as pressing a key) and navigation events
(such as the cursor about to enter/leave a field). These events are identified by triggers in
a form.
These triggers fall into several groups:
PRE - Fires prior to an event
POST - Fires after an event
WHEN - Fires when an event occurs
KEY - Fires when the corresponding key is pressed
ON - Replaces default event processing

These triggers include events such as:


1. PRE and POST triggers for the form, block, row, and item.
2. PRE and POST triggers for row inserts, updates, and deletions.
3. WHEN triggers fire as a direct result of an event such as the user clicking on a
button (WHEN-BUTTON-PRESSED) or the cursor navigating to a new item and readying for
user input
(WHEN-NEW-ITEM-INSTANCE).
4. Keys the user can press on their keyboard like the Tab button (KEY-NEXT-ITEM) or
F10 (KEY-COMMIT).
5. ON triggers fire when an event occurs. For example, ON-MESSAGE fires when forms is
about to
issue a message. This gives the developer an opportunity to trap and replace particular
messages with custom messages.

By adding PL/SQL code to a trigger you can:


1. Alter the way a trigger would ordinarily work. For instance, by creating a KEY-ENTQRY on
a field with: null; you will prevent the user from pressing F8.
2. Supplement the way something works - for instance by creating a KEY-DELREC trigger on
a block with code that asks the user if they "really" want to delete that record before
issuing the delete_record;.

Trigger Scope: If you create a KEY-EXEQRY on a field with: null; then you will prevent the
user
from pressing F8 while the cursor is in that field. If, instead, you attach the same trigger
to a block, then you will prevent the user from pressing F8 while the cursor is anywhere in
that block. If, instead, you attach the same trigger to the form, then you will prevent the
user from pressing F8 anywhere within the form.

You can override high level triggers at a lower level. For example, if you have disabled F7 at
the form level, you can add a KEY-ENTQRY to a block with: enter_query; that will allow the
user to press F7 to enter a query while the cursor is in that block. This means that F7 will
work in that block but nowhere else in the form.

8) What is the difference between base table block and control block.
8) Blocks (Base Table vs. Control): A most basic concept in a form is blocks. Blocks are
basically comprised of 2 types:
1. Control block - A block not associated with a table. This block is usually a single row block
that has no interaction with the database.
2. Base table block - this is associated with a table. You do not have to code any SQL
statements. Forms will automatically:
A. Query rows of data from the table (execute_query)
B. Insert a new row below the current row (create_record)
C. Delete the current row (delete_record)
D. Update rows (by the user typing values on a queried row)
E. Handle row locking
F. Make all these database changes permanent at commit time

Base Table and Control Items: An item in a base table block that relates directly to a base
table column is a base table item. An item that does not relate to a database column is a
control item. Base table blocks can contain both base table items and control items.

For example, a base table block might contain four base table items that display queried
database values and a fifth item that displays calculated values but does not correspond to
any
column in the base table. The fifth item would be a control item populated by an assignment
statement in the trigger that does the calculation.

Because control blocks are not associated with database tables, none of the items they contain
can be base table items. (You can, however, populate control items with database values by
writing your own SQL statements in trigger code.)

Control items can be used to do the following:


* Display totals, averages, rankings, and other summary information calculated from values
in base table items and database tables.
* Accept input from operators that is required by the application, but that is not stored
in the database.
* Display "look-up values," that is, database values derived from a table other than the base
table of the block.
You can also reference the values of control items in code, much like local and global
variables.
Buttons and chart items are always control items. Because these items do not store values,
they cannot relate to columns in the database.

Item in a block -Items are the interface objects that display information to operators and
allow them to interact with your application. A field in the base table in the database or
another field, other fields may be buttons, check boxes, etc.
1. Button: A rectangle with a text label or an icon graphic inside.
2. Chart item: A bordered rectangle of any size that can display a chart or other display
generated by Oracle Graphics. Operators cannot navigate to or manipulate chart items.
3 Check box: A text label with a graphic state indicator that displays the current value as
either checked or unchecked. Selecting a check box toggles it to the opposite state.
4. Display item: A read-only text box whose value must be fetched or assigned
programmatically.
Operators cannot navigate to a display item or edit the text it contains.
5. Image item: A bordered rectangle of any size that can display images fetched from the
database or read in from the file system.
6. List item: A list of choices displayed as either a poplist (sometimes called a drop list),
a t-list (sometimes called a list box), or a combo box.
7. Radio group: A group of radio buttons, one of which is always selected.
8. Text item: A single- or multi-line text box that supports a variety of data types,
format masks, and editing capabilities.
9. OLE container: An area that stores and displays an OLE object that is created from an
OLE server application.
10. VBX control: A custom control that simplifies the building and enhancing of user
interfaces.

Each item in a form (text item, image item, radio group, and so on), belongs to a block.
Blocks are logical containers that have no physical representation--only the items contained
in a block are visible in the application interface. However, like other objects,
blocks have properties, and can be created, copied, and modified in the Designer.

Blocks provide a mechanism for grouping related items into a functional unit for storing,
displaying, and manipulating records. Just as tables in the database consist of related
columns and rows, blocks contain related items that display data records.

There is no practical limit to the number of blocks that can be defined in a form.
A block is a logical grouping only; the items in a block can be placed on different

canvas-views and can be displayed in different windows.


9) How do blocks relate to each other?
9) The relationship between block represent the relationships of an ER schema.
It can also represent relationship between tables in the relational data model based on
foreign keys. It can specify a "join condition" between a "master" and "detail" blocks.
10) Which trigger are created when master -detail relation?
10) Master detail property
* NON-ISOLATED (default)
a) on check delete master
b) on clear details
c) on populate details
* ISOLATED
a) on clear details
b) on populate details
* CASCADE
a) pre-delete
b) on clear details
c) on populate details
11) How to use Dynamic SQL in Form?
11) The reason why you would want do to do this is because, like in database procedures,
you can't use DDL such as DROP TABLE 'table_name' directly in PL/SQL with Forms.
The way to do it is with the buit-in EXEC_SQL package.
The same thing can also be accomplished with the FORMS_DDL built-in but that only applies
to the
current database connection, with the EXEC_SQL package its possible to have database
connections to multiple databases and also execute non-oracle database procedures.
12) What the relationships were between canvases, views and windows?
12)
a) Multiple canvases with only one window : The most common problem I've found in
this scenario
is that you click a button on your main canvas or some other action is performed, the result
of which is you expect to see a secondary canvas popping up containing some sort of useful
information for the user to see or act upon. The thing is the user only sees it for about
100th of a second, if they're lucky, before it miraculously disappears again.
What's going on here, after all your button or whatever does a
SHOW_VIEW('CANVAS_NAME');
it's supposed to display the secondary canvas isn't it? Yes, and it does however it will only
work correctly if the secondary canvas is of type STACKED. Changing the property to
this should solve your problem. Another way of doing it without changing the property of
the canvas depends on your canvas having an item on it that you can do a GO_ITEM on.
If it does then do your GO_ITEM just before the SHOW_CANVAS and it should work correctly.
You will find though that using this method means the secondary canvas takes up the whole
of your window obscuring all of your primary canvas and you can't use its viewport properties
as you can with stacked canvases.

b) Multiple canvases and multiple windows: This is similar to the previous problem in
that you click a button on your main window or some other action is performed and you
expect to see a secondary canvas popping up in a separate window of its own.
This time though the user only sees the window itself with none of the useful information on it.
What's going on here, after all your button or whatever does a
SHOW_WINDOW('WINDOW_NAME');
it's supposed to display the secondary window isn't it? It does, however it will only
work correctly if you also do a SHOW_VIEW('CANVAS_NAME') too. Note that the calling
window
will still have the focus (i.e. be on top). If you want the called window to be on top
you either need to click on it or do a GO_ITEM to an appropriate navigable field on the called
window. If there isn't one available a work-around is to create a dummy item and disguise it
by making its background colour the same as the called window and ensuring its BORDER
BEVEL
is set to NONE. One last check if things still aren't going right is to make sure that your
secondary canvas window property is pointing to the correct window.

While I was on the subject I thought I'd just bring up a couple of points on the relationships
between canvases, viewports and windows which is crucial to remember if you want to write
great forms applications.

From a developers standpoint, canvases and forms are interchangeable in as much as


canvases
are where you put your form items, buttons, text and so on. Whether or not the user
sees all those things is another matter of course and that's where windows and viewports
come in.
In general, content canvases don't have viewports associated with them and will display in the
whole of the window they are assigned to. Therefore if the window is big enough, the user
will see everything that's on them. Stacked canvases on the other hand can have a viewport
that can be thought of as being a sub-window within the canvas. The user will only see things
on the canvas which are inside the viewport. And because you can programmatically control
the
size and position of the viewport it means that you can choose to display, or not, as the
case may be, only the things you want your user to see.

13) What are the types of triggers and how the sequence of firing in text item
13) Triggers can be classified as Key Triggers, Mouse Triggers, Navigational Triggers,
1. Key Triggers: Key Triggers are fired as a result of Key action.
a) Key-next-Item: Tab or Enter.
b) Key-ExeQry: F8
c) Key-NxtBlk: Shift F5
d) Key-Commit: F10
2. Action Trigger: Trigger that get executed due to user interaction are called Action
Triggers. action triggers are associated with specific objects.
a) When-Button-Pressed: Pressing a button.
b) When-CheckBox-Changed: Clicking a check box.
c) When-Image-Pressed: Clicking the image.
d) When-List-Changed: A List item is selected.
e) When-Radio-Changed: Clicking on a Radio Button.
f) When-Window-Activated: When focus is on a specific whindow.
g) When-Window-Closed- When a window is closed.
3. Mouse Triggers: Mouse Triggers are fired as a result of the mouse navigation.
a) When-Mouse-Click
b) When-Mouse-DoubleClick
c) When-Mouse-Down
d) When-Mouse-Enter
e) When-Mouse-Leave
f) When-Mouse-Move
g) When-Mouse-Up
4. Navigational Triggers: These Triggers are fired as a result of Navigation. for example
when the cursor navigates out of a text item to another text item the Post-Text-Item trigger
for the current text item and Pre-Text-Item trigger for the next text item it moves to will both
fire
in sequence.
1 Pre-Text-Item and Post-Text-item.
2. When-New-Instance.

We cannot call restricted procedures like go_to('my_block.first_item') in the Navigational


triggers but can use them in the Key-next-item.
The Difference between Key-next and Post-Text is an very important question. The key-next is
fired as a result of the key action while the post text is fired as a result of the
mouse movement. Key next will not fire unless there is a key event.
Example(1) The sequence of firing in a text item are as follows:
a) pre-text-item
b) when-new-item-instance
c) key-next-item
d) when-validate-item
e) post-text-item
Example(2) If there are two text items in a block, say text1 and text2. If the focus is
on text2 and user moves the cursor to text1 by doing shift tab, then which triggers
will fire? In what order?
a) Key-Prev-item
b) When-validate-item
c) post-text-item
d) Pre-text-item
e) When-new-item-instance
Example(3) As soon as form open in the memory, a series of navigational triggers
are executed.
The sequence of trigger that fire when a form is invoked are as follows-
1. Pre-Form
2. Pre-Block
3. Pre-Record
4. Pre-Text-Item
5. When-New-Form-Instance
6. When-New-Block-Instance
7. When-New-Record-Instance
8. When-New-Item-Instance
14) The difference between when_validate_item trigger and key_next_item trigger
in Oracle Forms.
14) WHEN-VALIDATE-ITEM trigger fires to check the value of an item to insure it is valid. The
timing of this event may vary but one of the most common is when the user enters a value
and
causes the cursor to try to exit the item by pressing the TAB key or using the mouse to click
elsewhere in the form. This trigger can also fire when then user attempts to leave a record
that has been marked for insertion or change.
KEY-NEXT-ITEM fires only when the user presses the TAB key. You should also note that
WHEN-VALIDATE-ITEM trigger is a restricted procedure, so you cannot use navigation
built-ins (such as GO_BLOCK). There are no such restrictions with KEY-NEXT-ITEM. So we
should
not validation code in KEY-NEXT-ITEM.
15) Is forms is a object oriented tool ? why?
15) yes, partially. 1) PROPERTY CLASS - inheritance property
2) OVERLOADING : procedures and functions.

16) What are property classes ? Can property classes have trigger?
16) property class & visual attribute?
Ans: Property Class: A property class is a named object that contains a list of properties
and their settings. Once you create a property class you can base other objects on it.
An object based on a property class can inherit the setting of any property in the class
that makes sense for that object.
Property class inheritance is a powerful feature that allows you to quickly define objects
that conform to your own interface and functionality standards. Property classes also allow
you to make global changes to applications quickly.
Property class assignment cannot be changed programmatically. By simply changing the
definition
of a property class, you can change the definition of all objects that inherit properties
from that class.
For example we can create a property class object, with properties mentioned below and
attach it
to all the push buttons in the product form.
Name : PClass_Button.
Width : 23
Height: 23
Iconic: Yes
Background Color: Gray
Canvas: Product_can
Visual attribute: Visual attributes are the font, color, and pattern properties that you set
for form and menu objects that appear in your application's interface. Visual attributes can
include the following properties:
1. Font properties: Font Name, Font Size, Font Style, Font Width, Font Weight
2. Color and pattern properties: Foreground Color, Background Color, and Fill Pattern,
Char mode Logical Attribute.
17) Diff. between VAT and Property Class? imp
17) Named visual attributes define only font, color, and pattern attributes;property classes can
contain these and any other properties.
You can change the appearance of objects at runtime by changing the named visual attribute
programmatically; property class assignment cannot be changed programmatically.
When an object is inheriting from both a property class and a named visual attribute, the
named visual attribute settings take precedence, and any visual attribute properties in the
class are ignored.
18) If you have property class attached to an item and you have same trigger
written for the
item. Which will fire first?
18) Item level trigger fires, If item level trigger fires, property level trigger won't fire.
Triggers at the lowest level are always given the first preference. The item level trigger
fires first and then the block and then the Form level trigger.
19) What are record groups? Can record groups created at run-time?
19) A record group is an internal Oracle Forms data structure that has a column/row
framework
similar to a database table. However, unlike database tables, record groups are separate
objects that belong to the form module in which they are defined. A record group can have
an unlimited number of columns of type CHAR, LONG, NUMBER, or DATE provided that the
total
number of columns does not exceed 64K.
Record group column names cannot exceed 30 characters. Programmatically, record groups
can be
used whenever the functionality offered by a two-dimensional array of multiple data types is
desirable.
TYPES OF RECORD GROUP:
1. Query Record Group: A query record group is a record group that has an associated
SELECT
statement.
The columns in a query record group derive their default names, data types, and lengths from
the database columns referenced in the SELECT statement. The records in a query record
group
are the rows retrieved by the query associated with that record group.
2. Non-query Record Group: A non-query record group is a group that does not have an
associated
query, but whose structure and values can be modified programmatically at runtime.
3. Static Record Group: A static record group is not associated with a query; rather, you
define
its structure and row values at design time, and they remain fixed at runtime.
20) What is mouse navigate property of button?
20) When Mouse Navigate is True (the default), Oracle Forms performs standard navigation to
move the focus to the item when the operator activates the item with the mouse.
When Mouse Navigate is set to False, Oracle Forms does not perform navigation (and the
resulting validation) to move to the item when an operator activates the item with the mouse.
21) What is MDI form? how u will attach vertical toolbar in the form?
21) MDI(Multiple Document Interface): Specifies whether the window is a Document window
or a
Dialog window. Document and dialog windows are displayed differently on window managers
that
support a Multiple Document Interface (MDI) system of window management.
Attachment Of vertical toolbar.
On Microsoft Windows, specifies the toolbar canvas that should be displayed as a vertical
toolbar on the MDI application window. The canvas specified must have the Canvas Type
property
set to Vertical Toolbar.
Applies to form
Set Form Builder
Default Null
Required/Optional optional
22) Can object group have a block?
22) Yes , object group can have block as well as program units.
23) What are user-exits? What is Foreign function?
23) It invokes 3GL programs.
Foreign functions are subprograms written in a 3GL programming language that allow you to
customize your Oracle Forms applications to meet the unique requirements of your users.
Foreign functions are often used to enhance performance or provide additional functionality to
Oracle Forms.
In Oracle Forms, you can invoke a foreign function from a user exit interface. A user exit
interface allows you to call a foreign function by using the USER_EXIT built-in from a trigger
or a user-named subprogram. Invoking a foreign function from the USER_EXIT built-in returns
an
integer value to Oracle Forms indicating success, failure, or a fatal error. Following the
execution of the USER_EXIT built-in, the values of the error variables in Oracle
Forms--FORM_FAILURE, FORM_FATAL, and FORM_SUCCESS--are set accordingly.
Foreign functions that you invoke from a user exit interface are contained in an Oracle Forms
dynamic link library or linked with Oracle Forms Runform. Creating a user exit interface to
a foreign function requires you to link additional files to Oracle Forms dynamic link libraries
or Oracle Forms Runform. The additional files provide information about the user exit
interfaces
and the entry points that allow Oracle Forms to invoke foreign functions from a user exit
interface.
24) Can you pass values to-and-fro from foreign function? how?
24) Yes . You obtain a return value from a foreign function by assigning the return value to an
Oracle Forms variable or item. Make sure that the Oracle Forms variable or item is the same
data type as the return value from the foreign function.
After assigning an Oracle Forms variable or item value to a PL/SQL variable, pass the PL/SQL
variable as a parameter value in the PL/SQL interface of the foreign function. The PL/SQL
variable that is passed as a parameter must be a valid PL/SQL data type; it must also be the
appropriate parameter type as defined in the PL/SQL interface.
27) Does user exits supports DLL on MSWINDOWS ?
27) Yes.
28) What is path setting for DLL?
28) Make sure you include the name of the DLL in the FORMS45_USEREXIT variable of the
ORACLE.INI file, or rename the DLL to F45XTB.DLL. If you rename the DLL to F45XTB.DLL,
replace the existing F45XTB.DLL in the \ORAWIN\BIN directory with the new F45XTB.DLL.
29) How is mapping of name of DLL and function done?
29) The dll can be created using the Visual C++ / Visual Basic Tools and then the dll is put in
the path that is defined the registery.
30) what is pre compiler?
30) It is similar to C pre compiler directives.
31) Can you connect to non - oracle datasource ? How?
31) Yes .
32) what are key-mode and locking mode properties? level ?
32) 1. Key Mode: Specifies how oracle forms uniquely identifies rows in the database. This is
property includes for application that will run against NON-ORACLE datasources.
Key setting: unique (default.), udateable, n-updateable.
2. Locking mode: Specifies when Oracle Forms should attempt to obtain database locks on
rows
that correspond to queried records in the form.
a) immediate b) delayed
33) What are savepoint mode and cursor mode properties ? level?
33) 1. Specifies whether Oracle Forms should issue savepoints during a session. This property
is
included primarily for applications that will run against non-ORACLE data sources.
For applications that will run against ORACLE, use the default setting.
2. Cursor mode - define cursur state across transaction Open/close.
34) What is transactional trigger property?
34) Identifies a block as transactional control block. i.e. non - database block that oracle
forms should manage as transactional block.(NON-ORACLE datasource) default - FALSE.
35) What is OLE automation ?
35) OLE automation allows an OLE server application to expose a set of commands and
functions
that can be invoked from an OLE container application. OLE automation provides a way for an
OLE container application to use the features of an OLE server application to manipulate an
OLE object from the OLE container environment. (FORMS_OLE)
36) What are OPEN_FORM, CALL_FORM, NEW_FORM? diff?
36)
OPEN FORM: When one form invokes another form by executing OPEN_FORM, the first form
remains
displayed, and operators can navigate between the forms as desired. An opened form can
share
the same database session as the form from which it was invoked, or it can create a separate
session of its own. For most GUI applications, using OPEN_FORM is the preferred way to
implement multiple-form functionality.
CALL_FORM: It calls the other form. but parent remains active, when called form completes
the operation, it releases lock and control goes back to the calling form. When you call a form,
Oracle Forms issues a savepoint for the called form. If the CLEAR_FORM function causes a
rollback when the called form is current, Oracle Forms rolls back uncommitted changes to this
savepoint.
When one form invoke another from by executing CALL_FORM, when form A call form B, form
B
becomes the active form in the session, but from A remain in memory. If the operator exits
from
form B form A again become the active form.
NEW_FORM : When one form invokes another form by executing NEW_FORM, Oracle Forms
exits the
first form and releases its memory before loading the new form. Calling NEW_FORM
completely
replaces the first form with the second. If there are changes pending in the first form,
the operator will be prompted to save them before the new form is loaded.
37) What is call form stack?
37) When successive forms are loaded via the CALL_FORM procedure, the resulting module
hierarchy
is known as the call form stack.
38) Can u port applictions across the platforms? how?
38) Yes we can port applications across platforms.Consider the form developed in a windows
system.The form would be generated in unix system by using f60gen my_form.fmb scott/tiger
39) Can a button have icon and lable at the same time ?
39) NO
40) what is library where do use?
40) A library is a collection of subprograms, including user-named procedures, functions,
and packages. Libraries provide a convenient means of storing client-side program units and
sharing them among multiple applications.
Once you create a library, you can attach it to any other form, menu, or library module.
Then, you can call library program units from triggers, menu item commands, and user-
named
routines you write in the modules to which you have attached the library.
The same library can be attached to multiple forms and menus. Conversely, a single form or
menu
can have more than one attached library.
41) What is Current record attribute property?
41) Specifies the named visual attribute used when an item is part of the current record.
Current Record Attribute is frequently used at the block level to display the current row in a
multi-record If you define an item-level Current Record Attribute, you can display a
pre-determined item in a special color when it is part of the current record, but you cannot
dynamically highlight the current item, as the input focus changes.
42) Can u change VAT at run time?
42) Yes. You can programmatically change an object's named visual attribute setting to
change the font, color, and pattern of the object at runtime.
43) Can u set default font in forms?
43) Yes. Change windows registry(regedit). Set form45_font to the desired font.
44) Can u have OLE objects in forms?
44) Yes.
45) Can u have VBX and OCX controls in forms?
45) Yes.
46) What r the types of windows (Window style)?
46) Specifies whether the window is a Document window or a Dialog window.
47) What is OLE Activation style property?
47) Specifies the event that will activate the OLE containing item.
48) Can u change the mouse pointer? How?
48) Yes. Specifies the mouse cursor style. Use this property to dynamically change the shape
of the cursor.
49) What are the Various Block Coordination Properties?
49) The various Block Coordination Properties are
a) Immediate
Default Setting. The Detail records are shown when the Master Records are shown.
b) Deffered with Auto Query
Oracle Forms defer fetching the detail records until the operator navigates to the detail block.
c) Deffered with No Auto Query
The operator must navigate to the detail block and explicitly execute a query
50) How do you use the same lov for 2 columns
50) We can use the same lov for 2 columns by passing the return values in global values and
using the global values in the code.
51) What is the difference between static and dynamic lov
51) The static lov contains the predetermined values while the dynamic lov contains values
that
come at run time.
52) Can you issue DDL in forms?
52) Yes, but you have to use FORMS_DDL.
DDL (Data Definition Language) commands like CREATE, DROP and ALTER are not directly
supported
from Forms because your Forms are not suppose to manipulate the database structure.
A statement like CREATE TABLE X (A DATE); will result in error:
Encountered the symbol "CREATE" which is a reserved word.
However, you can use the FORMS_DDL built-in to execute DDL statements. Eg:
FORMS_DDL('CREATE TABLE X (A DATE)'). FORMS_DDL can also be used to create dynamic
SQL
statements at runtime. The FORMS_SUCCESS built-in can be used to determine if the last
executed
built-in was successful.
We can use the FORMS_DDL built-in or call the DBMS_SQL database package from Forms for
dynamic
SQL statement.
Eg: FORMS_DDL('INSERT INTO X VALUES (' || col_list || ')');
Just note that FORMS_DDL will force an implicit COMMIT and may de-synchronize the Oracle
Forms
COMMIT mechanism.
53) What is the difference between Query->Execute and Query->Enter->Query-
>Execute?
53) Query->Execute: It will retrieve ALL records from a base table.
In SQL SELECT * from tablename
Query->Enter->Query->Execute: Allows you to select particular tuples of a base table.
SELECT * FROM tablename WHERE condition
54) Are you familiar with all the varieties of search possible in the
Query->Enter->Query->Execute mode?
54) relational operators for comparison, wild cards
55) Are you aware of the different techniques that you can use for the data entry
process?
55)
a) You can manually enter a value.
a) You can set up a LOV and select values from the LOV into specified items of a block.
56) What kind of item is item-id? How is it different from other items in the base-
table block?
56) The item item_id is a text item whose Navigation Enabled property is set to False.
This property is set to False since the value is not entered by the user but is obtained by
executing some code in the form to automatically generate its value.
57) Is item-id the same as the item labeled TotalValue in the item block?
57) I think they are both text items but the Navigation Enabled property is true.
I believe in this case data entry by the user is also allowed.
If you wanted to make sure there was no data entry from the user or from a program
unit then you can use a Display item instead of a text item.
58) What other kind of special items are supported?
58) radio group, list items, etc.
59) Do you understand the functionality of a LOV?
59) A list of values is similar to a List Box in Access: A user selects one of the data records
from the list, and the selected record values are inserted into one or more data fields on the
form.
For the purchase order, we will create a list box to display the supplier name, city and state.
This will allow the end-user to select the supplier from the list, rather than memorize the
supplier codes.
61) Do you understand how Oracle supports referential integrity based on foreign
keys?
61) Through the join condition in the master block and detail block specification.
The forms environment will force you to delete all rows in a detail block that make a
reference to a row in a master block.
62) Do you know how to modify the number of records displayed in a multi-record
block?
62)
1) Click on the Block you wish to modify
2) Open the properties window
3) Find the Records Displayed Field and enter in the # of rows.
63) Do you know how to change font, color, etc., for any item?
63)
1) Click on the item whose *** you wish to change (navigator or layout).
2) Choose Format->Font, Color, etc, or do it through properties.
64) What are the two modes available in runtime?
64)
1) Normal -- this is where you do new data entry
2) Query -- this is where you work with existing records
65) What is a trigger?
65) What are the three levels of triggers, and when does each get "fired" or execute?
Item level trigger - fires when a specific item is used
Block level trigger - fires when any item in the block is used
Form - fires when any item in the form is used
66) List three examples of triggers you could use (1 at each level).
Do you understand their functionality?
66) Update a field - item level
Update a record - block level
Filling in all of the fields in the form - form level
67) How do you make an item "read only"?
67)
1) Choose the item
2) Open the properties window and find the field Item Type.
3) Double click on the field until Display Item is shown.
68) What is SECURE property?
68) Hides characters that the operator types into the text item. This setting is typically
used for password protection.
69) Can you store pictures in database? How?
69) Yes , in long Raw datatype.
70) which system variables can be set by users?
70)
SYSTEM.MESSAGE_LEVEL
SYSTEM.DATE_THRESHOLD
SYSTEM.EFFECTIVE_DATE
SYSTEM.SUPPRESS_WORKING
71) What are object group?
71) An object group is a container for a group of objects. You define an object group when
you want to package related objects so you can copy or reference them in another module.
72) What are referenced objects? Can you store objects in library?
72) Referencing allows you to create objects that inherit their functionality and appearance
from other objects.
Referencing an object is similar to copying an object, except that the resulting reference
object maintains a link to its source object. A reference object automatically inherits any
changes that have been made to the source object when you open or regenerate the module
that
contains the reference object.
73) What are timers ? when when-timer-expired does not fire?
73) The When-Timer-Expired trigger can not fire during trigger, navigation, or transaction
processing.
74) What are ALERT?
74) An ALERT is a modal window that displays a message notifying operator of some
application
condition. There are three styles od alert: Stop, Caution, and Note.
System Variables
SYSTEM.DATE_THRESHOLD : Represents the database date requery threshold.
Default : 01:00 (Synchronization occurs after one minute of elapsed time.) This does not
mean that Form Builder polls the RDBMS once every minute. It means that whenever Form
Builder needs to generate the value for the system variables $$DBDATE$$, $$DBDATETIME$$,
$$DBTIME$$, or SYSTEM.EFFECTIVE_DATE, it updates the effective date by adding the
amount of elapsed time (as measured by the local operating system) to the most previously
queried RDBMS value. If the amount of elapsed time exceeds the date threshold, then a new
query is executed to retrieve the RDBMS time and the elapsed counter is reset.
SYSTEM.EFFECTIVE_DATE: Represents the effective database date. The variable value
must always be in the following format: DD-MON-YYYY HH24:MI:SS
Default: RDBMS date.
SYSTEM.FORM_STATUS represents the status of the current form. The value can be one of
three character strings: NEW, QUERY, CHANGED
SYSTEM.SUPPRESS_WORKING suppresses the "Working..." message in Runform, in order
to prevent the screen update usually caused by the display of the "Working..." message. The
value of the variable is one of the following two CHAR values: TRUE, FALSE
SYSTEM.TRIGGER_RECORD represents the number of the record that Form Builder is
processing. This number represents the record's current physical order in the block's list of
records. The value is always a character string.
SYSTEM.MODE indicates whether the form is in Normal, Enter Query, or Fetch Processing
mode. The value is always a character string. NORMAL, ENTER-QUERY, Enter Query
mode.
SYSTEM.FORM_STATUS represents the status of the current form. The value can be one of
three character strings: CHANGED, NEW , QUERY.
SYSTEM.MESSAGE_LEVEL stores one of the following message severity levels: 0, 5, 10, 15,
20, or 25. The default value is 0.
PARAMETERS:
When you create a parameter, you specify its name, data type, length, and default value.
To create a parameter:
1. In the Object Navigator, create a parameter.
To create a parameter, select the Parameters node in the Object Navigator and then choose
Navigator Create.
2. In the Property Palette, set the desired parameter properties:

In PL/SQL, you can reference and set the values of form parameters using bind variable
syntax.
To reference a parameter: Preface the parameter name with the reserved word PARAMETER,
as shown in the following examples:
:PARAMETER.parameter_name := 'TOKYO'; OR
:block.item := :PARAMETER.parameter_name;
Canvas Types :
* Content
* Stacked
* Tab
* Horizontal Toolbar
* Vertical Toolbar

Visual Attributes :
Visual attributes are the font, color, and pattern properties that you set for form and menu
objects that appear in your application's interface. Visual attributes can include the following
properties:
* Font properties: Font Name, Font Size, Font Style, Font Width, Font Weight
* Color and pattern properties: Foreground Color, Background Color, Fill Pattern, Charmode
Logical Attribute, White on Black

Every interface object has a Visual Attribute Group property that determines how the object's
individual visual attribute settings (Font Size, Foreground Color, etc.) are derived. The Visual
Attribute Group property can be set to Default, NULL, or the name of a named visual attribute
defined in the same module.
There are several ways to set the visual attributes of objects:
* In the Property Palette, set the Visual Attribute Group property as desired, then set the
individual attributes (Font Name, Foreground Color, etc.) to the desired settings.
* In the Layout Editor, select an item or a canvas and then choose the desired font, color, and
pattern attributes from the Font dialog and Fill Color and Text Color palettes.
* Define a named visual attribute object with the appropriate font, color, and pattern settings
and then apply it to one or more objects in the same module. You can programmatically
change an object's named visual attribute setting to change the font, color, and pattern of the
object at runtime.
* Subclass a visual attribute that includes visual attribute properties and then base objects on
it that inherit those properties.
* Create a property class that includes visual attribute properties and then base objects on it
that inherit those properties.

About named visual attributes: Setting the Visual Attribute Group property to a named visual
attribute defined in the same module specifies that the object should use the attribute settings
defined for the named visual attribute. A named visual attribute is a separate object in a form
or menu module that defines a collection of visual attribute properties. Once you create a
named visual attribute, you can apply it to any object in the same module, much like styles in
a word processing program.
Applies to canvas, tab page, item, radio button

Property Classes :
A property class is a named object that contains a list of properties and their settings. Once
you create a property class you can base other objects on it. An object based on a property
class can inherit the setting of any property in the class that makes sense for that object.
Property class inheritance is an instance of subclassing. Conceptually, you can consider a
property class as a universal subclassing parent.
There can be any number of properties in a property class, and the properties in a class can
apply to different types of objects. For example, a property class might contain some
properties that are common to all types of items, some that apply only to text items, and
some that apply only to check boxes.
When you base an object on a property class, you have complete control over which
properties the object should inherit from the class, and which should be overridden locally.
Property classes are separate objects, and, as such, can be copied between modules as
needed. Perhaps more importantly, property classes can be subclassed in any number of
modules.

Menu Item Types


Separator Menu Item :
A separator menu item is displayed as a horizontal line (or other platform-specific visual
element), and is useful for visually grouping related items on the same menu. For example,
you could use a separator to isolate the radio items of one radio group from other menu items.
You must set a separator item's Command Type property to Null. End users cannot select a
separator menu item.
Magic Menu Item :
Magic items provide a way to quickly create menu items for standard functions available in
most GUI applications. Form Builder provides the following magic item types: About, Copy,
Clear, Cut, Paste, Help, Quit, Undo, Window.
Plain Menu Item : Default menu item.
Radio Menu Item
Check Menu Item

SONATA Questions:
Sonata Question

3. What is cursor? Types, which cursor u defined?


4. placeholder columns
Ans: A placeholder is a column for which you set the data type and value in PL/SQL that you
define. You can set the value of a placeholder column in the following places:
· the Before Report Trigger, if the placeholder is a report-level column· after report-
level formula column, if the placeholder is a report-level column a formula in the placeholder's
group or a group below it (the value is set once for each record of the group)
5.what are the user exist and types of user exist?
Ans: A user exit is a program that you write and then link into the Report Builder executable
or user exit DLL files. You build user exits when you want to pass control from Report Builder
to a program you have written, which performs some function, and then returns control to
Report Builder.
You can write the following types of user exits:
· ORACLE Precompiled user exits
· OCI (ORACLE Call Interface) user exits
· non-ORACLE user exits
You can also write a user exit that combines both the ORACLE Precompiled interface and the
OCI.
User exits can perform the following tasks:

· perform complex data manipulation


· pass data to Report Builder from operating system text files
· manipulate LONG RAW data
· support PL/SQL blocks
· control real time devices, such as a printer or a robot

You can use user exits for other tasks, such as mathematical processing. However, Oracle
Corporation recommends that you perform such tasks with PL/SQL within Report Builder.

7-.Multi-org concepts? How u will u come to know that ur working on multi org
concept?
Ans: Use a single installation of any oracle applications product to support any number of
organization use different set of books.
We will go to view the table called FND_PRODUCT_GROUPS in which the column name
MULTI_ORG_FLAG is 'Y then we can say that we r working on multi org concept.
10.What is Chart of accounts?
Ans: A complete listing of the accounts to identify specific accounts to be increase or decrease.
11.New Form ,call form and open form?
12. What r system parameter in reorts tell me the name of those?
Ans: BACKGROUND Is whether the report should run in the foreground or the background.
COPIES Is the number of report copies that should be made when the report is printed.
CURRENCY Is the symbol for the currency indicator (e.g., "$").
DECIMAL Is the symbol for the decimal indicator (e.g., ".").
DESFORMAT Is the definition of the output device's format (e.g., landscape mode for a
printer). This parameter is used when running a report in a character-mode environment, and
when sending a bitmap report to a file (e.g. to create PDF or HTML output).
DESNAME Is the name of the output device (e.g., the file name, printer's name, mail
userid).
DESTYPE Is the type of device to which to send the report output (screen, file, mail,
printer, or screen using PostScript format).
MODE Is whether the report should run in character mode or bitmap.
ORIENTATION Is the print direction for the report (landscape, portrait, default).
PRINTJOB Is whether the Print Job dialog box should appear before the report is run.
THOUSANDS Is the symbol for the thousand's indicator (e.g., ",").

Ans: A formula column performs a user-defined computation on another column(s) data,


including placeholder columns.
Note that formula column should not used in set value for the parameter .
15. How u create library in form?
19.How u customize a report tell me the step and what changes u have made?
20. Use of query find and how will u used it
21.Use Of Format_Currency User Exit
it used for currency conversion

QUESTIONS OF CGEY
1.WHAT WILL BE THE O/P OF SELECT COUNT(1) FROM EMP;
2.LEXICAL, BIND.
3.PLACEHOLDER COLUMN

Queries:
1. What is Attributes in securities attribute tab page under user form?
2. Menu Exclusion in responsibilities form.
*This is to exclude menu options and even some of the menu sub options.
3. What menu to select for account receivables & Payable.
a. *AR_NAVIGATE_GUI for receivable
b. *AP_NAVIGATE_GUI12 for payable
4. What is Rollup Group in segment (account).
*Roll up is used for the total for the group that is required to be defined and attached
with the chart of accounts.
*Account - Summary - template - for template we select segments and define whether
we want summary or details or parent level. This is used in reports and inquiry. This
make the accessibility faster and if required then only the user can drill down to
details.
5. Can we define more Flex field Qualifier? Such as Natural Account, cost center
Inter-company, Balancing.
*No we cannot create more because it is system defined. In case of project defined as
a segment below company that time it is not necessary to add any qualifier to it.
6. Can we define balancing attribute to more than one segment. Balancing does
what actually. What if we include project based accounting practice.
*No, Project segment need not to be attached with any of these qualified.
7. What is Data Group that is attached with the Responsibilities?
*It is required to Attached, which Product Top should be attached with the
responsibility.
8. Can we define some more categories that we always select as ‘Adjustment’
while entering Journal?
*The user can define categories.
9. Can the user define source?
*Sources can also be defined.
10. Can sequence be related with the source for auto numbering not at
application level but for the particular transaction? For example auto number
required for Invoice or Cash Transaction.
11. Should we disable the structure if we want to change the structure with
removing some segment or adding some segment? Whether ID_FLEX CODE
AND ID_FLEX_STRUCTURE_CODE will be generated again.
*After capturing data segment should not be added in between it could be added as
last segment.
12. What all profile option should be set for A/R & A/P
*Find for AR: % & AP: %
13. Why Profile need to be define after creating set-of-books.
14. From where we can get all the information about the user profile option.
15. Whether necessary to define more than one set of books for multi
organization scenario.
16. The company terms used in oracle apps is it for branches or could it be
operating unit as well.
17. Can we define multiple operating units for one legal entity?
18. First always create company.
19. Create Legal entity - (Set of books / VAT No.)
20. How to define document sequence for a specific transaction such as invoice,
JV,
Purchase etc.
21. How to define Sub-G/L Account. For example Telephone expense in respect to
the connection number or Vehicle Expense in respect to the Vehicle Numers
etc.
22. Why Open close accounting period in AR is given.
23. Where to define Account segment for AR
24. Can’t we define type of control account for the customer to be debited i.e,
different sundry debtor’s a/c.
25. What is validation rule required for FLEXFIELD segment values.
26. How can we customize default account generator process.
27. Usage Flexfield Summary flag
28. How to define workflow for any of the business process so that it can be
initiated.
29. Statistical Unit of Measurement
30. Usage of Average Balancing Processing. What is average balancing enabling
31. Why System and Personal profile option is given.
32. Intercompany imbalance account posting to which gl account where to set it.
33. Why zero amount payment is required to be made in payables
34. Whether payables accepts payment without invoice or some invoice has to be
made such as prepayment

KPIT Questions:

1. Do we need to remove dynamic insert while migrating flex filed from


application older version. Preferable it should be off.
2. What is Cross Validate rule and Security validation Rules
3. What are types of Value set or Validation Types.
4. What are Currency types that are used in Journal.
5. How we define mass allocation. How we use formula. What all columns given
on the screen.
6. How many MRC Multi Reporting currency you can define.
Ans: Up to 9 we can define
7. What is the first screen you see immediately after logon after setting up multi
organization.
8. What do mean by Balancing Segment.
Ans: Balancing mean your accounting transactions debit and credit should be matching
always at that particular level i.e., at Company segment level.
9. In which General Ledger Balance are stored. - GL_BALANCES
10. What are the setup steps for Accounts Payables.
11. Can you define more than one suspense account? Yes we can
Ans: We can define more than one suspense account. Go to General Ledger - Setup -
Accounts - Suspense.
12. How Head count based Mass Allocation Journal can be created.
Ans: Statistical Unit of Measure: Setup - Accounts - Units
Enables you to setup accounts to store statistical balances. This allows you to, for
instance, tie a statistical balance call headcounts to your payroll account.
13. How to restrict one report to only on Operating Unit where as there are many
Operating Units.
14. FSG - Financial Statement Generator. Can you make changes and how.
15. What is basic difference between key flexfield and descriptive flexfield.
Ans: Flexfield is mandatory where as DFF is not
Flexfiled have flexfiled and segment qualifier where as DFF has Flexfield
Flexfield uses Segment fields where as DFF uses Attributes fields.
DFF can be context sensitive where as KFF not.
16. Operating Unit level report not to be shared by other Operating Unit.
Ans: MO: Top Reporting Level option of system profile has to be set with Operating Unit at
Site Level. Request Group attached to the responsibility. Responsibility is attached with
the users. There can be more than one responsibility that can be attached with the users.
That each responsibility has menu, data group and request group attached. In that
request group attach that particular report. Can also specify operating unit for MO: Profile
option MO: Top Reporting Level - Set of Book / Legal Entity / Operating Unit.
17. AR Interface and its steps
18. GL Interface and its steps. How to use Util file.
How to define security group and attached in the profile option?
How to define business group?
How to associate responsibility to the business group?
Site Means what?
How to define Organization relationship?
How to define inter company relationship?
How to run multi org setup validation report?
Defining Location for organization, Legal Entity and Inventory Organization.
What is Set of Books?
Ans: SOB keeps track of all financial records. It consists of three C’s i.e., Char of Accounts,
Currency and Calendar.
What are amount types?
Ans: PTD, QTD, YTD, PJTD (Project to Date).
What are Currency Types:
Ans: User, Corporate and Spot

TCS Questions:

2. How many reports have you customized?


5. What all client you have handled. (Name of client and Name of end client)
9. Was the report customization based on Indian localization.
10. User exits in Reports and their functionality and sequence.
11. What is Format Trigger in Report.
12. How many reports have you developed from scratch.
13. Lexical reference in 6i and in oracle apps report customization.
14. What was the width of reports (132/45, 180/45)
15. How many forms have you customized.
16. What all interfaces have you done. (Journal Import/Customer/AP).
17. Which legacy system your client was using.
18. What were the general steps for the interface you have done.
19. What all validation in in-bound payables open interface.
20. Base tables affected in AP interface.
21. Validation columns belong to which table.
22. What is error file form?
23. Inventory report customization for what type of inventory.
24. KFV & DFV contains what
25. From where you will get gl_code_combination_id, Accounted_Dr and
Accounted_CR from which table.
26. From where you will get vendor ID. (po_vendors)
27. What are the information your dat file. (related to supplier)
28. What is difference between delete and truncate.
29. After delete statement used create statement whether rollback will work or
not.
30. What is REF cursor.
31. How many cursors we can used in one PL/SQL Block. (300)
32. If cursors cross the maximum limit then what error message is flashed.
(Too Many cursors)
33. Fetch and Closing the cursor without opening it. (Invalid cursor when closing
an unopen cursor)
34. What is advantage of Ref cursor over simple cursor.
35. What is percent rowtype. (it is cursor attribute)
36. a emb%rowtype column called address if want to display address what
should be the code for it. (select * into a from emp where…..)
37. What is PL/SQL tables. (Index on table, Nested Blocks)
38. Which PL/SQL table you frequently used.
39. Have you used dynamic sql in your work.
40. What all supplied PL/SQL packages are.
Ans: DBMS_OUTPUT Accumulates information in a buffer so that it can be retrieved out
later.
UTL_FILE Enables your PL/SQL programs to read and write operating system text
files and provides a
restricted version of standard operating system stream file I/O.
41. What is the function of DBMS_OUTPUT.
42. Tax basis system module that you have made what you have done for the
same whether it was module or product.
43. Do you have any knowledge about taxes.
44. Your own rating for PLSQL/ SQL/Reports/Forms/ Oracle financials

ZENSAR Questions:

Apps

1) How will u register rdf file and run it? Tell the Sequence?
2) What are different types of value sets?
3) What is translatable Independent & Dependent?

Oracle

4) What are dbms packages with some example?


5) What is package?
6) What is pragma?
Ans: Pragma is a Compiler Directive.
7) What is SQL Tunning?
Ans: Tunning are done either RULE base or COST Base

Reports

8) How many different layouts are in Reports?


Ans Frame, repeating frame, fields, boilerplate
9) In which sequence report trigger will fire?
10) Suppose I have 5 pages report. On which page between page trigger will not
fire?

Forms

11) In which sequence form level trigger will fire ?


12) User B has locked the table and User A update same table through form and give
commit what will happened?

ZENSAR Questions:

1. If used normal table with having _ALL then how to make report run for
particular Operating unit.
2. How you can see the records from the _ALL tables if it does not show the
records.
3. How you can create parameters that is depend on the value entered in the
previous parameter.
4. Steps for new form customization.
5. Custom.pll for ZOOM which trigger u will use.

Ans: ZOOM trigger as given in APPSTAND. Code in the trigger is appcore_custom.event


('ZOOM');
ZOOM_AVAILABLE function of Custom package (of Custom.PLL) is called on a per-block
basis within every Applications form from the WHEN-NEW-BLOCK-INSTANCE trigger.
Therefore, any code that will enable Zoom must test the current form and block from
which the call is being made.

6. Which trigger to fire to save the record.


Ans: Accept Form level trigger will be fired. It has code APP_STANDARD.EVENT(‘ACCEPT’).
This Accept procedure is given in the App_standard package of APPCODE Library.
7. Which API is used for hiding the column on the form.
Ans: APP_ITEM_PROPERTY2.SET_PROPERTY (It is package procedure) of APPCORE2.
app_item_property2.set_property(’user.description’, REQUIRED, PROPERTY_ON);
8. What is the name of DFF stored as a view in Apps.
Ans: Same the name of the table with extention of _DFV.
9. What is translation and consolidation in GL
10. What is Encumbrance Accounting.
11. Types of Budgets - Absolute, Advisory and None that is defined in budget control
group.
12. How you can still post the journal that is exceeding absolute type of budget.
13. Steps to Register the Report. Whether Token is necessary.
14. What is Multi Org and How your report work for particular operating unit.
15. What is precedence if you set the option in profile for all the level (SARU).

Satyam Questions:

1. FORM customization Steps


2. If record is added it has to be saved in the table then which trigger has to be
fired.
Ans: APP_STANDARD.EVENT(’ACCEPT’);
This trigger processes invocation of the ”Action, Save and Proceed” menu choice or toolbar
button. It saves and moves to the next record of the block specified as the First Navigation
Block. Replace the code in this trigger, or create block-level triggers with execution style
’Override’.
- do_key('COMMIT_FORM'); This is one of the code line in procedure accept
called from event procedure. This is used to commit the record.

3. How you will hide the column on the forms


Ans: Use APPCORE2 Library procedure APP_ITEM_PROPERTY2.Set_Property.
app_item_property2.set_property(’user.description’,displayed,PROPERTY_ON);

4. Custom Library is used for what. Which event is fire for ZOOM functionality.
Ans: ZOOM Event is fired. Zoom event will have code appcore_custom.event(‘ZOOM’);

5. In which library you have added code and why.


6. What is $Flex$
7. Have you used AOL and SYSAD, why used.
8. Autonomous Transaction - Example in Apps.
9. Report Triggers and Sequence. Any Complex report you have customized.
10. What is SQL - Sub Query and Co-Related Query, Example.
11. What is Materialized View
12. Advance PLSQL - Exceptions, Pragma Exceptions
13. Why use explicit cursor.
14. What is Ref Cursor
Ans: Data type of cursor variable is REF CURSOR.
Concept: To execute multirow query, oracle opens a work area. To access this work area
we can use explicite cursor or you can use CURSOR VARIABLE.
Explicit: will have access to fixed work area. As, it is linked to only one query.
CUR Variable: can have access to multiple work area.
CURSOR VARIABLE: is used to pass query result set between subpro and client.
It reduces network traffic having multiple cursor variables in one
PLSQL block.

Ans: What are PLSQL Table


15. What are Cursor Attributes
ANS: A cursor can take parameters, which can appear in the associated query wherever
constants can appear. The formal parameters of a cursor must be IN parameters. Therefore,
they cannot return values to actual parameters. Also, you cannot impose the constraint NOT
NULL on a cursor parameter.
As the example below shows, you can initialize cursor parameters to default values. That
way, you can pass different numbers of actual parameters to a cursor, accepting or overriding
the default values as you please. Also, you can add new formal parameters without having to
change every reference to the cursor.
DECLARE
CURSOR c1 (low INTEGER DEFAULT 0,
high INTEGER DEFAULT 99) IS SELECT ...
Passing Cursor Parameters
You use the OPEN statement to pass parameters to a cursor. Unless you want to accept
default values, each formal parameter in the cursor declaration must have a corresponding
actual parameter in the OPEN statement. For example, given the cursor declaration
DECLARE
emp_name emp.ename%TYPE;
salary emp.sal%TYPE;
CURSOR c1 (name VARCHAR2, salary NUMBER) IS SELECT ...
any of the following statements opens the cursor:
OPEN c1(emp_name, 3000);
OPEN c1(’ATTLEY’, 1500);
OPEN c1(emp_name, salary);

TCS Questions: 29.05.2005

Functional:

1. If Purchase Invoice amount sent by the supplier is more than the PO amount
and Invoice has to be passed by invoice amount only. How this can be
achieved.
Ans: Manually Release the hold by going into the invoice hold option
2. 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.
3. How you will hide the button Site on the Supplier master form.
Ans: A restricted list of functions a user can perform. For example, two responsibilities
may have access to the same window, but one responsibility’s window may have
additional function buttons that the other responsibility’s window does not have.
4. When can you make payment for the supplier invoice weather at the time of
receipt of material or after receiving invoice only.
5. Payment due days if 30 days means will it be from invoice date or material
receiving date.
Ans: Due days calculation is based on what you set up in the PAYMENT tab window of
Supplier Master form. It has Four options:
1. Goods Received
2. Invoice
3. Invoice received
4. System
6. Where do you define matching option for purchasing.
Ans: This is also defined in the supplier master form under tab ‘Control’ window.
Two options are given as Purchase Order or Receipts. In receiving tab define whether
it is 2 way, 3 way, 4 way match.
7. What happen if price is varying in PO and Invoice how you will resolve it.
8. 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 Security 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.
9. Can you modify the segment value after the data capturing. How you can do
that. Is it necessary each time you modify to compile the flexfield.
10. What posting is done at time of Receipts of material or Purchase Order match
directly with Invoice without the receipt consideration.
11. Where you will define Matching options. Is it required to define for all the
suppliers or it comes as default. From where it default the setting.
12. What is the Architecture of the entire multi Org in Oracle apps.
13. In purchasing Receipts of the inventory is stored at what level in Multi Org
setup.
14. Can you match invoice directly with the purchase order without matching
with receipts.
15. What do you mean by Legal entity. What is Multi Org hierarchy.
16. What is Auto Accounting.
17. What are elements of SOB. What all you define in SOB.
18. What is MRC.
19. If required to change the currency after capturing the Transaction How it can
be done.
20. Have you used autolockbox. What for it is used.
21. 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, ...).
22. Which flexfield qualifier is compulsory.
Ans: Balancing segment and Natural account segment
23. How you will enter Item for an invoice.
24. Can you modify the structure of the key flexfield any time later.
Ans: It is recommend that you plan your flexfields as completely as possible, including
your potential segment values, before you even begin to define them using Oracle
Applications forms. Once you begin using your flexfields to acquire data, you cannot
change them easily. Changing a flexfield for which you already have data may require
a complex conversion process.

Technical:

1. Where Customer information get stored in table. Where Customer Number


get stored. Tell base tables.
Ans: AR_CUSTOMER, RA_CUSTOMER_PROFILE. Customer_Number is the Field where
Customer number will get stored.
2. How will you come to know that the set up is having multi organization.
Ans: Fnd_product_group.Multi_org_flag is set to ‘Y’
3. How many types of exceptions are there.
4. How you will include no data found system defined exception. Write PLSQL
Block and show.
5. When exit is used in the loop which is existing with in upper loop. Where
control will go it exit is done.
6. What for Custom.pll is used.
Ans: To customize the form.
7. What is before report trigger?
8. How many triggers are there in forms. At what all levels.
9. Write one PLSQL Block. How you will call another procedure with in this
block. How you will write code for GO TO statement.
10. Where Customer Invoice information will get stored.
11. Where Supplier invoice information will get stored.
12. What are types of Cursors. How does those works.
Ans: Implicit Cursor and Explicit Cursor. Cursor is used to handle multiple row query in
PL/SQL. Oracle uses implicit cursor to handle all its queries. Oracle uses unnamed memory
spaces to store data used in implicit cursor. Explicit cursor will point to the named memory
space like a pointer.
13. How many types of Execution Methods are there for report.
14. What is Concsub.
ANS: Concsub is a executable run from the command line of operating system to submit
the request.
15. If you have to Run and shell scripts which execution method will you select.
ANS: Host Your concurrent program is written in a script for your operating system.
Spawned Your concurrent program is a stand-alone program in C or Pro*C.

Alliance Interview questions:

1. GL Interface Validation.
2. What are step you had followed for GL interface.
3. What are problem you have faced during interface.
4. What is the name of the table storing error occurring at the time of GL
interface.
Ans: There is no error table for GL interface. In case of Error records remains in the GL
interface only. If you want you can correct and delete records from GL interface table from
Journal - Import - Correct / Delete.
5. How will you copy file from the client server to your server.
Ans: Using TOAD and FTP option connect to the server with logon and password
access.
6. What is syntax of REF CURSOR.
7. How you will make report to run in Multi Organization environment.
Ans: Using XLA_MO_REPORTING_API
(According to the interviewer there is other easy way also)
8. What are system parameters in Report builder.
9. What is Place holder column and What is Formula Column
10. How you will execute C/C++ Program in Oracle apps. Which executable
method will be selected?
Ans: Spawned
11. What is Org_id and What is Organization_id
Ans: Org_id store id for Operating unit and Organization_id stores id for inventory
Organization.
12. What do you mention in the declare section of PL/SQL Block.
Ans: Declaring identifier, cursors and exceptions

Functional (GE: Questions)

1. It is necessary to define Operating unit, if user want to use only GL module.


Ans: If client using only GL then no need of Multi Org setup or to define Organization
hierarchy. One operating unit has to be there for user to logon and have default operating
unit.
2. It is necessary to have Business Group for single Company.
Ans: It is not necessary where as if required can define or within Business Group all other
Organization can be created such as HR, Legal Entity, Operating Unit and Inventory
Organization.
3. What is difference between SOB and Operating Unit.
· Ans: A Set of Book is a financial reporting entity that partitions General Ledger
information and uses a particular chart of accounts, functional currency, and
accounting calendar. This concept is the same whether or not the Multi-organization
support feature is implemented.
· Where as Operating Unit is a organization for which you have to attach the SOB to
capture day to day transactions for Purchasing, Selling, Fixed Asset, Payable,
Receivables.
4. What is Reporting SOB & What is Translation. What is difference
Ans: General Ledger's Multiple Reporting Currencies (MRC) feature is used
to convert amounts from your functional currency to a reporting currency at
the transactions level.
Translation: General Ledger's translation feature is used to translate amounts from
your functional currency to another currency at the account balances level.
For example, an organization with a once-a-year need to translate their financial
statements to their parent organization's currency for consolidation purposes, but no
other foreign currency reporting needs, should use General Ledger's standard
translation feature instead of MRC.
5. In what scenario you would suggest Reporting SOB and Translation.
Ans: If client want to have transaction level access that time we would suggest Reporting
SOB. If client is interested only in final reports such as trial balance, profit and loss
statement and Balance sheet then that time we would suggest Translation because
translation is used to translate amount at the account balances level.
6. Why and when revaluation is done.
7. What is Control Account. What are those control account that you define..
8. Can you modify it before posting it to GL. Can you see records after importing
from the Payables or Receivables. Can you modify them before posting.
9. After importing transaction from AP in GL can you modify control account
before final posting.
10. What is Payable Control Account.
11. What is Credit memo and what is Debit Memo. What is difference. Can you
adjust both against the invoice.
12. What is Payments, in payables. What at various stages when payment against
the supply can be made.

Path-Infotech Questions:

1. What is Credit Memo and Debit Memo


Ans: Credit Memo. Negative amount invoice created by a supplier and sent to you to
notify you of a credit.
Debit Memo. Negative amount invoice created by you and sent to a supplier to
notify the supplier of a credit you are recording.
Credit memos and debit memos must be entered with negative amounts. All
match amounts must be negative as well. In Oracle Payables and Oracle
Projects, a document that partially or fully reverses an original invoice.
2. What are Calendar types
a. Any customized Calendar have you used.
Ans: For Inventory, For Aging, For Budget we had defined (user-defined) Calendar.
3. What challenges you faces creating or developing Oracle Reports.
4. Are you aware of the PTP and OTC cycle and its integration and postings.
5. What are Payables setup steps.

NRB Bearing:

1. What is Multi Org. Explain with some example.


2. What would you do if we have another branch in china.
Ans: Separate Operating Unit has to be defined for this new branch.
3. How will you come to know that whether the installation is for multi org or
not.
Ans: Select multi_org_flag from fnd_product_groups (It this shows as ‘Y’ it means it is
a Multi Org enabled)
4. Can you go for multi organization in between.
Ans: Yes, we can go for it between.
The Convert to Multi-Org program is an option available in ADADMIN. This task
converts a standard product group into a Multi-Org product group. You can choose this
option only if you do
not already have Multi-Org installed in your database and if you do not currently have
Multiple Sets of Books Architecture installed in your database.
Before running this step, you must define at lease one operating unit and set the site-
level profile option MO: Operating Unit.
The Convert to Multi-Org program does the following:
•Populates
 the ORG_ID column with the new operating unit you defined at the
site level profile option MO: Operating Unit.
•Sets
 ORG_ID to NULL for records that are shared seed data.
•Sets  the MULTI_ORG_FLAG in the FND_PRODUCT_GROUPS table to Y. The
Convert to Multi-Org option is not displayed on the Database Objects menu if
this flag is set to Y
•Runs  the replicate seed data program. If you define additional operating
units, the seed data is replicated for all operating units.
5. What is organization_id and what is org_id
Ans: Term Organization id is used for inventory organization and org_id is used
for operating unit
6. What all modules are impacted by multi org. whether FA will be impacted or
not.
Ans: AP, AR
7. What is balancing segment.
Ans: Balancing segment is one of the flexfield qualifier which is a must to assign for
Level where we want that at any given point of time debit and credit total should
match.
8. What transactions are captured in operating unit level and what at inventory
organization level.
Ans: An organization that uses Oracle Cash Management, Order Management and
Shipping Execution, Oracle Payables, Oracle Purchasing, and Oracle Receivables
. Information is secured by operating unit for these applications
. Inventory organization captures Oracle Inventory, Bills of Material, Engineering, Work in
Process, Master Scheduling / MRP, Capacity, and Purchasing receiving functions

9. Why Master item is created at what level and why that is required.
Ans: Master item is created at operating unit level. For transactions, inventory
organization is selected. This is required to make order processing centralized.
10. What do you mean by API and what for it is used in Oracle Apps.
Ans: API means Application Programming Interface and in apps it is used for
interfaces from legacy system.
11. How many types of Purchase Order are there.
Ans: Following are types
i. Standard
ii.Blanket
iii. Contract
iv. Planned
12. What do you mean by planned purchase order.
Ans: A planned purchase order is a long-term agreement committing to buy items or
services from a single source. You must specify tentative delivery schedules and all
details for goods or services that you want to buy, including charge account,
quantities, and estimated cost.
13. What do you mean by blanket purchase order.
Ans: You create blanket purchase agreements when you know the detail of the goods
or services you plan to buy from a specific supplier in a period, but you do not yet
know the detail of your delivery schedules. You can use blanket purchase agreements
to specify negotiated prices for your items before actually purchasing them.
14. Once these two purchase orders are prepared what is the next step.
Ans:You issue scheduled release and blanket release against a planned purchase
order to place the actual orders.
15. What is approval hierarchy for Purchase Order.
Ans: Position and Employee. If HR Module is not installed then only employee option is
used
16. What is step before to transfer invoice from payable to GL.
Ans: Create invoice, Validate it and create accounting by going into Action1 button
options.
17. When component is produced at shop floor what accounting entry will take
place. When finished good will be accounted for. What would be the value of
FG at that time.
Ans: FG will have cost without profit margin and this will accounted when the
Finished components are moved from WIP to Finished goods location or bonded
warehouse.
18. How costing take place when you manufacture component.
Ans: On the basis of your costing method th cost of input components get
accumulated as per the BOM.
19. How would you resolve when the excise amount is not getting calculated
properly or some times zero excise it is showing and still invoices are
prepared and printed.
Ans: Alert can be created, because we know that the item is excisable and amount
column must be > zero. If it is calculated incorrectly then verify the function that
is calculating the excise amount.
20. What steps will you follow if you will find that accounts are not getting
reconciled?
Ans: Before transferring data from other modules to GL, reconciliation report has to
be verified. For example AR Reconciliation report is available. If reports are not
available that it has to be created. Also look into the suspense account it is created
and showing any entries for that particular period.
Also if at company level accounts are not reconciled then you can use you can use
Flexfield Value Security rules to restrict data entry of balancing segment values by
legal entity or operating unit
.
21. Can you stream line if our excise accounts are not reconciled?
22. What do you mean by Approved supplier.
23. What is hierarchy of PO approval

Deloitte: Sanjay Ghade (09.06.2005)

1. How will you derive second highest salary from the emp table
Ans: select max(sal) from emp where sal < (select max(sal) from emp)
For third highest salary
select max(sal) from emp where sal < (select max(sal) from emp where sal < (select
max(sal) from emp))
2. what is the functionality of the service contract module?
3. wht is your role in service contract?
4. wht is the purpose u have to develop an interface?
5. what are the different tables involved in it?
6. wht information provides the okc_k_headers_b and okc_k_lines_b(columns)?
7. How the values comes from siebal to OM TO sERVICE cONTRACT?
8. WHT U HAVE DONE IN OM?
9. HOW THE billing and pricing u have done in service contract?
10. is it comes from OM or ORACLE pricing?
11. How u have done the renewals in Service contract?
12. cycle of the Renewals in service contract?
13. what is active contract in service contract?
14. How the workflow process done in service contract?
15. how the exceptions are handled in pl/sql?
16. what will happen if we write when others first and then no_data_found in
exception blk?
Ans: Compilation Error at the time of compilation itself.
17. what is multi-org?
Ans: Capture transactions for multiple organizations using single installation of oracle
application.
18. what is the query that we can say that multi-org is installed in apps?
19. wht is AIM metodologies?
20. wht is user_exit & it's types?
21. name with seq of report triggers?
22. wht is flexfield ,it's types,where it is stored (tbl and col's)
Ans: Flexfiled is a unique identifier, consists of one or more segments to capture
information as per the business requirements. There are two types of flexfields, Key
flexfield and Descriptive flexfield. It is stored in fnd_flex_values, fnd_flex_values_tl,
Fnd_id_flexs, Fnd_id_flex_segment, fnd_id_flex_structure
23. how u delete user from apps environment?
Ans: We can not delete due to Audit Trail Purpose. We can change the effective date.
(from date To date) Given date from when you want user to be disabled
24. wht is placeholder column in report?
Ans: A placeholder is a column for which you set the data type and value in PL/SQL
that you define. You can set the value of a placeholder column in the following
places.
1. Before Report Trigger, if the placeholder is a report level column.
2. A report level formula column, if the placeholder is a report-level column
3. A formula in the placeholder’s group or a group below it (the value is set once
for each record of the group)
25. how i can have multiple layout in one report?
Ans: Using Additional Default Layout tool bar option. Select it and click it below the
existing layout it will show you wizard that can be used to create another layout.
26. wht is Db trigger and sored procedure?
27. wht is the mode in flexsql user_exit?
28. wht is lexical parameter?

AR Report

Find out what is revenue accounting in AR

HCL HR interview (1st Round interview)


1. Have you done effort estimations
2. Have you done customization
3. How do you ensure quality in your project
4. Apart from project management what all you have done

HCL Interview questions: (2nd Round interview - Functional)

1. How do you manage the project


2. Have you done effort estimation and how.
Ans:Effort estimation is done based on complexity factor that we define for each objects to
be customized or created. We can also refer MD.020 where in guide line is given.
3. What method do you follow in your project.
Ans: AIM
4. What are different phases that you have in your project.
Ans: Definitions, Operation Analysis, Solution design, build, transition and production
5. What all methods are followed right from the beginning in the
implementation projects.
6. What is quality? What do you do for quality?
Ans: Review, minimize rework and errors at each level, Testing, ensure trace ability
through proper documentation
7. What is Auto Accounting. Is it required?
Ans: Yes it is required. Define AutoAccounting to specify how you want Receivables to
determine the general ledger accounts for transactions that you enter manually or import
using AutoInvoice. Receivables creates default accounts for revenue, receivable,
freight, tax, unearned revenue, unbilled receivable, finance charges, bills
receivables accounts, and AutoInvoice clearing (suspense) accounts using this
information
8. What is Commitment in AR?
Ans: A contractual obligation to purchase a specified amount of goods or services
over a predefined period of time. Commitment is a type of transaction. Guarantee and
Deposit are two types of commitment in Oracle Receivables.
Deposits: Create a deposit to record a customer’s prepayment for goods or services
that you will provide in the future.
Guarantees: Create a guarantee to record a contractual agreement with your
customer to conduct business over a specified period of time.
9. What is consolidation? What if transaction is modified after consolidation?
Ans: Consolidation is a process of merging financial information from subsidiaries to
Parent Company to extract the consolidated financial position of the company. It can be
done a summary level or detail transaction level.
10. What all invoices in AP
Ans: Standard invoice, Credit memo, Debit memo, Employee expense report
PO default standard invoice (In case increase in price), Prepayment and advances
Quick match standard invoice, Withholding tax invoice, Mixed Type Invoice
11. Why you make prepayment invoices.
Ans: For making payment before the material is delivered or invoices for payment is
booked. Payment made on account in advance.
12. What accounting entries take place at time when you make prepayment
invoices.
Ans: Prepayment Expense a/c Debit
To Payable a/c Credit
13. What do you consider to create key flexfield for client if chart of account does
not exist? How many minimum segments are required in accounting flexfield.
Ans: Structure i.e, name and number of segments required, data type, width, validation
etc. Two segments are must namely for balancing segment and natural account segment.
14. What is Balancing segment.
15. What if your client wants to have petty cash book, how would you handle it.
16. Steps to close the period.
Ans: For closing accounting period:
1. Navigate to the Open and Close Periods window. General Ledger displays all
accounting periods defined for your calendar with the period type of your set of books.
2. Select the open period that you want to close.
3. Enter a new status for the period.
· Enter Closed to prevent entering or posting journals to that period.
You can reopen a closed period at any time.
· Enter Permanently Closed to prevent entering or posting journals to
that period. You cannot reopen a permanently closed period.
4. Save your work.

HCL Technical questions (3rd Round interview - Technical)

1. Procure to pay cycle all affected tables.


2. Order to cash cycle all affected tables.
3. What are AP tables.
Ans: AP_INVOICES_ALL, AP_INVOICE_PAYMENTS_ALL,
AP_PAYMENT_SCHEDULES_ALL, AP_BANK_ACCOUNTS_ALL,
AP_BANK_TRANSMISSIONS, AP_TERMS_TL,AP_TERMS_LINES
4. What is stored in AP_PAYMENT_SCHEDULES_ALL table
Ans: Date wise scheduled payment for the invoices in other words Scheduled
payment information on invoices. AP_PAYMENT_SCHEDULES_ALL contains information
about scheduled payments for an invoice. You need one row for each time you intend
to make a payment on an invoice. Your Oracle Payables application uses this
information to determine when to make payments on an invoice and how much to pay
in an automatic payment batch.
5. Where payment details will get stored for the invoices in AP.
Ans: AP_INVOICE_PAYMENTS_ALL
AP_INVOICE_PAYMENTS_ALL contains records of invoice payments that you made to
suppliers. There is one row for each payment you make for each invoice. There is one
payment and one invoice for each payment in this table. Your Oracle Payables
application updates this table when you confirm an automatic payment batch,
enter a manual payment, or process a Quick payment. When you void a
payment, your Oracle Payables application inserts an additional payment line that is
the negative of the original payment line.
6. Custom.pll Events
7. How will you customize the check printing. Which program you will modify
and how. Is there any setup required as pre-requisite.
Ans: Copy existing standard check printing report. Customize it as per the required
format. Define new format go into Setup - Payment - Program option. Select type
as Format Payment (out of the given choice of Build Payment / Format Payment /
Remittance Advice). Then select the required customized report for above choices.
Now go to Setup - Payment - Format option - Define new format name Give
Payment method such as check, clearing, wire, electronic, Give currency, give number
of invoices, Attach predefined programs here such as build payments, Format
Payments and Separate Remittance.
Finally Attach Payment format with individual bank account. Go to Setup -
Payment - Bank option.
8. What are steps involved in new form development.
9. Is there any restrictions in Events to be passed to the Custom.pll
Ans: Yes, Name of the events are already listed above.
10. Appstand, glstand, these are what fmb or libraries
Ans: These are fmb
11. Where will you copy fmx and fmb
Ans: Fmb is copied in AU top and fmx is copied in Product top.
12. How will you compile the form.
Ans: Form is compiled using f60gen. First run APPSORA.env then
f60gen module=/acttapps/prodappl/au/11.5.0/forms/US/T102_EMP.fmb
Userid=apps/apps@prod
Output_File=/acttapps/prodappl/cus/11.5.0/form/US/T102_EMP.fmx
Module_Type=FORM Batch=YES Compile_All=SPECIAL
13. If want to have customer balances from which tables you will extract.
Ans: AR_CREDIT_HISTORIES. (Outstanding_Balance column)
This table stores information about a customer’s credit profile (changes made to
AR_CUSTOMER_PROFILES). Each row can include changes to a customer’s credit status,
credit limit, and outstanding balances. The primary key for this table is
CREDIT_HISTORY_ID.
Also in AR_PAYMENT_SCHEDULES_ALL table The aging reports also utilize the current
Balances in AMOUNT_DUE_REMAINING to display outstanding amounts for current and
overdue Debit items.
14. What is step to make payments in AP
Ans: To Create manual Payment select Invoices for payment match invoice total with the
Batch payment amount. For auto select payment - Create payment batch, select criteria
for payment such as supplier, pay group etc. Click Action1 button - Build Payments,
Format Payments and Print now.
15. Which program you will modify for the check printing in AP
Ans: APXPBFEG - Check Printing report
16. In GL Interface what is GL References.
Ans: Reference1 to Reference10 uses reference information of sub-ledgers.
17.
_All table have org_id but all company data is existing but in view it is partitioned by
Ord_id.
Run time value will be evaluated using get predicate As many _All tables that many we
have to define lexical parameters.
Validated the parameter is not required but if you want and be done in before report
trigger.

Inter organization relationship. For transferring material, Rules have to be defined to


transfer material from one inventory organization to another.

Set up hierarchy for Purchasing

1. Organization.
2. Financial and Payable.
3. Payment document or supplier site for payment accounting entries.
4. Supplier and Supplier Site.

Payment terms as per supplier site or purchase order if both are there then finally takes
from purchase order.

1. Procure to Pay cycle


2. Oracle to Cash cycle
3. OM to AR to GL interface
4. Purchasing to AP to GL Interface
5. Purchasing to Inventory update
6. Alert taking any case
7. Copy check printing rdf and create new program for payment.
8. Ap invoice open interface
9. GL interface
10. GL daily rate interface
11. Get to know about purging

In case of purchasing If PO rate is not matching and invoice received with more amount
how to pass for payment. It will go for price not matching hold and you have to release
the hold manually by matching distribution with the header.

What dat file for lockbox contains. Bank provide dat file having details of
payment receipts.
What is mixed sales order

Payables has recurring invoice option - Invoice - Entry - Recurring Invoices

How you can change the hierarchy of from triggers


Pragma exceptions
While updating row in the table if column is not found then what error it will
show.
Ans:
F10_MULTIORG_AR1 CHECK THIS CONCURRENT PROGRAM FOR THEIR PARAMETER AND
DEFAULT VALUES
Why you do validation programmatically it can be done by the system when you
run import. Correct can be made from front end using correct Option.
Ans: This way validation can be done only if the records to be imported are not much if
the records to be imported is voluminous then It is always good to do validation
programmatically while transferring data from stage table to gl_interface table. It saves
time and makes interface smoother.
How you can change the default firing sequence or execution hierarchy of
triggers in forms.
Ans: Change the Execution Hierarchy property of trigger to Override

GE: Gurgaon

Whether GL module comes under Multi Org or Not


Modes of FTP for copying different type of files .txt, rdf, ctl
Oracle India, Bangalore - 16.07.2005 (Mr. Dhiraj Pathak)

1ST ROUND

1. Steps of report customization


2. How to add data into two tables using SQLLDR. Control file syntax.
3. Difference between DFF & KFF.
4. Types of Validation.
5. Types of LOV
6. Define LOV.
7. What is parameter type?
8. Define and differentiate is lexical and bind variables.
9. Types of triggers in report. Execution sequence.
10. Customized and developed reports tables.
11. Execution hierarchy of triggers in form.
12. Steps of form customization. Registration of form.
13. Have you attached DFF in form? How.
14. What all form customized and developed.
15. Hierarchy of Multi Org.
16. Can we submit request using PLSQL.
17. Have you heard about API. Definition of API.
18. Have you worked on shell script.
19. Have you worked on AOL.
20. Have you worked on WORKFLOW

2nd Round:

1. Interfaces. Procedures and Validations. Steps.


2. AP / AR Interfaces. Have you done supplier interface and Customer Interface
3. Interface for Distribution set for AP.
4. SQL Tunning.
5. Type of Indexing.
6. Form customization.
7. What is the sequence of triggers when ‘query_execute’ fired.
8. If I want to get a particular report periodically to my email account.
9. Rate yourself for FORMS/REPORT/PLSQL/SQL/GL/AP/AR
10. How to import Invoices in AP from legacy system.
11. Have you worked on WORKFLOW

1. General ledger entry/posting in respect to multi organization.


Explanation:
Oracle Assets, Oracle General Ledger, Oracle Inventory, and the rest of the Oracle
Manufacturing products need to be set up only once for the installation, not once for
each operating unit. To perform these setup
Procedures follow the instructions in the product user guides.
If you have multiple organizations or balancing entities within a set of books, General Ledger
automatically adjusts the balance of the translation adjustment accounts of each organization
or balancing entity. General Ledger does not make balancing adjustments to this account
when you translate budget balances.
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.

However, General Ledger’s Account Inquiry window ignores the operating unit profile setting.
This allows you to drill down to your sub-ledger details, regardless of which operating unit
originated the transaction.
Note: While creating journal without batch. Batch is created automatically with
org_id

2. Different Payable Invoices, its payment and adjustments

Questions:

Using XLA API oracle report can be made muti org compatible, with the help of request group
it can be restricted to particular operating unit and responsibility etc but how FSG can be
secured only for a particular operating unit or responsibility.

Ans: Apply security rules to control what financial information can be printed by specific users
and responsibilities in any reports they run using FSG.

FAQ:

Q: Which table stores the parent value and its' child ranges?
Ans: FND_FLEX_VALUE_NORM_HIERARCHY
Q: What tables store segment values and descriptions?
Ans: FND_FLEX_VALUES_TL and FND_FLEX_VALUES.
Q: 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.
Q: 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 Right-justify Zero-fill Numbers to Yes for
value sets you use with the Accounting Flexfield. You should never change to a value set with
a larger (or smaller) maximum size if your value set is Right-justify Zero-fill, since 001 is not
the same as 0000001, and all of your existing values would become invalid
Q:. What is the difference between Hierarchical and Non-hierarchical Security Type?
Ans: Hierarchical Security: This feature combines Flex Value Security and Flex Value
Hierarchy. The end result is 'a flex value is secured if one of it's parents is secured'. With non-
hierarchical security, the child values do not inherit the parent security.
Q: Should Rollup Groups be frozen?
Ans:It is recommended that Rollup Groups be frozen unless they are being modified.
However, if they are not frozen, there should not be any effects on General Ledger reports,
functions, or other processes.
Q: Do you need to have an Accounting Flexfield segment that is flagged with the
Intercompany qualifier?
Ans: The intercompany segment is an optional Intercompany feature for the Intercompany
Segment Balancing. It is NOT required in order to do intercompany balancing.
It is just another way to do the intercompany balancing, instead of using different natural
accounts to track intercompany balances, you can use the intercompany segment in the Chart
of Accounts to record the same detail.
It is more just a matter of preference of how you want to track the intercompany
transactions. Refer to Note 151130.1 to see additional information regarding How
Intercompany Journal Lines are Created in General Ledger 11i. Also see the Oracle General
Ledger Users Guide, Chapter 5: Accounting for Multiple Companies Using a Single Set of
Books.
Q: What is a Reconciliation qualifier and how is it setup?
Ans: This Reconciliation flag is a localization feature used primarily by European customers.
When the flag is set to YES, the account is set up to be reconciled. GL Entry Reconciliation is
a set of forms and reports that enable the user to selectively cross-reference transactions in
the General Ledger. Once the balance of a group of transactions is zero, the user can mark
them as reconciled. This functionality enables the transactions in any account that
should balance to zero (for example, an Inter-company suspense account) to be reconciled.
For information regarding the setup of this option, please refer to Note: 1041211.6.

Pantaloon: (shekhar)

1. WHAT IS COLD BACKUP AND WHAT IS HOT BACKUP?


ANS: Hot Backup when database is in use and Cold backup when no user is using db.
2. HOW MANY BACKGROUND PROCESSES ARE THERE?
3. WHY DO WE NEED THESE BACKGROUND PROCESSES?
4. WHAT IS ARCHIVER LOG?
5. TELL THE ARCHITECTURE OF APPS?
6. WHICH WEB SERVER IS USED BY APPS?
ANS:HTTP SERVER Powered by APACHE. WEB SERVER Uses
8i Database (8.0.6). Oracle Database is 9i. (9.2.0)
Oracle 9i Application server (9Ias).
7. DO YOU KNOW THE VERSION OF THAT WEB SERVER?
8. HOW TO CHECK WHETHER ARCHIVER MODE IS ON OR OFF?
9. WHAT IS CHECKPOINT?
10. WHERE IT'S STORES THAT HOW FREQUENTLY CHECKPOINT IS GOING TO
OCCUR?
11. IN WHICH DIRECTORY INIT.ORA IS STORED?
12. WHAT ENVIRONMENT FILE CONTAINS IN APPS?
13. WHICH ALL SERVERS ARE THERE IN THE MIDDLE TIER OF APPS
ARCHITECTURE?
14. WHERE DOES THE APPLICATION LOGIC RESIDES?
15. HOW TO CLOSE DATABASE?
16. HOW TO BUILD NEW PRODUCT_TOP IN APPS?
17. HOW MANY CONCURRENT MANAGER ARE THERE AND THEIR NAMES?
18. WHICH CONCURRENT MANAGER SUBMITS THE REQUEST?
ANS: INTERNAL MANAGER, STANDARD CONCURRENT MANAGER, SPECIALISED
CONCURRENT MANAGER, CONFLICT RESOLUTION MANAGER
19. IS THERE ANY CONCURRENT MANAGER FOR RESOLVING CONFLICTS
BETWEEN 2 REQUESTS IF YES THEN TELL THE NAME?
You define concurrent managers using the Concurrent Managers window. When you define a
manager, you specify the manager type, which may be either Concurrent Manager, Internal
Monitor, or
Transaction Manager.
There are three other types of managers that Oracle Applications predefines for you: the
Internal Concurrent Manager, which describes the Internal Concurrent Manager process, the
Conflict Resolution
Manager, and the Scheduler. For the CRM and Scheduler you can assign the primary and
secondary nodes. For the Internal Concurrent Manager you assign the primary node only.

CSC

Multi Org - General Ledger comes in Multi Org


8i & 9i Differences
What is FSG.
PLSQL Tables whether used in APPS
FORM customization, Registration
New form development
Interface steps
Value Set - Table type -

What us Data Group:


Use data groups to support multiple installations of an Oracle Applications product (for
example, Oracle Payables) that supports multiple sets of books, where a different application
is associated with each set of books.
For example, with two installations of Oracle Payables supporting two Sets of Books, use data
groups to indicate which Oracle Payables Oracle username to access from a certain General
Ledger responsibility.
Define a data group for each application installation (set of books).
Define a responsibility for each application installation (set of books), and assign the
appropriate data group to each responsibility.

What is the purpose of MO: Security Level and should value should you set that to?
ANS:utilize the "MO: Security Profile" profile option over the "MO: Operating Unit" profile
option when both profile options are set to give access to multiple
operating units.
The profile option "MO: Security Profile" should not be set at Site level, since
setting it will result in forms error when opening the financials products
forms that are modified for Access Control and also Multi-Org initialization
errors while applying patches.
You must set the MO:Operating Unit profile option for each responsibility.
You must also define the default operating unit by setting the
MO:Operating Unit profile at the site level.

Vous aimerez peut-être aussi