Documente Academic
Documente Profesional
Documente Cultură
a) Tabular - It is the most basic type of report where each column corresponds to a column selected
from the database.
b) Form-like - It is a report one record per page. The field value is placed to the field labels.
c) Mailing Label - A mailing label report prints mailing labels in multiple columns on each page. The
printing can be a landscape or a portrait.
d) Form Letter - A Form letter report contains database values embedded into any text that is entered or
imported into the report editor.
e) Group Left - A group left report divides the rows of a table into sets, based on a common value in one
of the columns. This style is used to restrict a column from repeating the same value several times while
values of related columns change.
f) Group Above - A group above repot contains two or more groups of data. For every value of the
master group, the related values of the detail group(s) are fetched from the database.
g) Matrix - A matrix (cross tab) report contain one row of tables, one column of labels and information in
a grid format that is related to the row and column labels.
A distinguished feature of matrix report is that the number of columns is not known until the data is
fetched from the database.
To create a matrix report, at least four groups are required. One group must be a cross-product group,
two of the groups must be within the cross-product group to furnish the labels, and at least one group
must provide the information to fill the cells. The groups can provide to a single query or to multiple
queries.
h) Matrix with Group: A matrix with group report is a group above report with a separate matrix for
each value of the master group.
a) Repeating Frames.
b) Frames.
c) Fields.
d) Boilerplate.
a) Frames: Frames surrounds other layout objects, enabling control of multiple objects
Simultaneously, ensuring that they maintain their positions relative to each other in the report. A frame
might be used to surround all objects owned by a group, to surround column labels.
b) Repeating Frames: Repeating frames act as placeholder for groups (repeating values) and present
rows of data retrieved from the database. Repeating frames repeat as often as the number of rows
retrieved.
c) Fields: Fields act as placeholder for column values; they define the formatting attributes for all
columns displayed in the report. A field is one of the objects that can be located inside a frame or
repeating frame.
d) Boilerplate: Boilerplate consists of text and graphics that appear in a report each time it is run; e.g., a
label appearing above a column of data is boilerplate text. Graphics drawn in the layout as well as text
added to the layout are boilerplate.
To specify the data for the report, a data model should be defined. A data model is composed of some
or all of the following data definition objects.
a) Queries - Queries are ANSI-standard SQL SELECT statements that fetch data from a standard database
such as Oracle, DB2 etc. These SELECT statements are fired each time the report is run.
You can select any number of queries to select data from any number of tables.
b) Groups - Groups determine the hierarchy of data appearing in the report, and are primarily used to
create breaks in the report. Oracle report automatically creates a group for each query, but you are not
limited to this default. You can create a new group in the data model and included a column that you
want to use as the break column.
c) Column - Column contain the data values for a report. Default report columns, corresponding to the
table columns included in each query's SELECT list are automatically created by the table Oracle Report,
and then each column is placed in the group associated with the query that selected the column. If you
want to perform summaries and computations on the database column values, you can create new
columns. You can also reassign one or more columns to a group you've created.
d) Parameters - Parameters are visible for your reports that enable you to change selection criteria at
runtime. Oracle Report automatically creates a set of system parameters at runtime, but you can create
your own as well. You can create parameters to replace either single literal values or entire expressions
in any part of a query. You can reference parameters elsewhere in the report, such as in PL/SQL
constructs providing conditional logic for the report.
e) Data Link - Data link are used to establish parent-child relationship between queries and groups via
column matching.
4. What is anchor?
Anchors fasten an edge of one object to an edge of another object, ensuring that they maintain their
relative positions. For example, you can anchor boilerplate text to the edge of a variable-sized repeating
frame, guaranteeing the boilerplate's distance and position in relation to the repeating frame, no matter
how the frame's size might change.
As a general rule, any processing that will affect the data retrieved by the report should
be performed in the Before Parameter Form and After Parameter Form trigger.(These are the two
report trigger that fire before anything is parsed or fetched). There are five global report triggers. You
cannot create new global report triggers. The trigger names indicate at point trigger fires:
1. Before Report: Fires before the report is executed but after queries are parsed.
2. After Report: Fires after you exit the Previewed, or after report output is sent to a specified
destination, such as a file, a printer, or an Oracle Office userid. This trigger can be used to clean up any
initial processing that was done, such as deleting tables. Note,
however, that this trigger always fires, whether or not your report completed successfully.
3. Between Pages: 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 Previewer, this trigger only fires the first time
that you go to page. If you subsequently
4. Before Parameter Form: Fires before the Runtime Parameter Form is displayed. From this trigger, you
can access and change the values of parameters, PL/SQL global variables, and report-level columns. If
the Runtime Parameter Form is suppressed, this trigger still fires. Consequently, you can use this trigger
for validation of command line parameters.
5. After Parameter Form: Fires after the Runtime Parameter Form is displayed. From this trigger, you can
access parameters and check their values. This trigger can also be used to change parameter values or, if
an error occurs, return to the Runtime Parameter Form. Columns from the data model are not
accessible from this trigger. If the Runtime Parameter Form is suppressed, the After Parameter Form
trigger still fires. Consequently, you can use this trigger for validation of command line parameters or
other data.
3. After Parameters Form trigger is fired (unbless the user cancels from the Runtime
Parameter Form).
4. Report is "compiled".
argument or setting).
8. The report is executed and the Between Pages trigger fires for each page except the last one. (Note
that data can be fetched at any time while the report is being formatted).
A group filter is a PL/SQL function that determines which records to include in a group, if the Filter Type
property is POL/SQL. The function must return a boolean value. Depending on whether the function
returns TRUE of FALSE, the current record is included or excluded from the report. You can access group
filters from the Object Navigator, the Property Palette (the PL/SQL Filter property), or the PL/SQL Editor.
Example:
begin
return(FALSE);
else
return(TRUE);
end if;
else
end;
Formula is PL/SQL functions that populate formula or placeholder columns. You can access the PL/SQL
for formulas from the Object Navigator, the PL/SQL Editor, or the Property Palette (i.e. PL/SQL Formula
property). A column of data type Number can only have a formula that returns a value of data type
Number. A column of data type Date can only have a formula that returns a value of data type Date. A
column of data type Character can only have a formula that returns a value of datatype CHARACTER,
VARCHAR, or VARCHAR2.
beign
return(:sal + :comm);
end;
temp number;
beign
else
temp := :sal;
end if;
return(:temp);
end;
A placeholder is a column is an empty container at design time. The placeholder can hold a value at run
time has been calculated and placed in to it by pl/sql code from anther object.
You can set the value of a placeholder column is in a Before Report trigger.
Store a Temporary value for future reference. EX. Store the current max salary as records is retrieved.
10. How many types of columns are there and what are they
1. Formula columns: For doing mathematical calculations and returning one value. formulas column
compute their values using PL/SQL expressions. Formula can operate on multiple values per record
(e.g.:avg_price*: quantity).
3. Place holder Columns: These columns are useful for storing the value in a variable.
Validation trigger are PL/SQL functions that are executed when parameter values are specified on the
command line and when you accept the Runtime Parameter Form. (Notice that this means each
validation trigger may fire twice when you execute the report) Validation trigger are also used to
validate the Initial Value property of the parameter. The function must return a boolean value.
On Failure: The user is return to the parameter value in the Runtime Parameter Form where they can
either change it or cancel the Runtime Parameter Form.
For Example
/* this function prevent the runtime user from sending report output anywhere except a printer*/
function DESTYPEValidTrigger return boolean is
begin
Return(true);
else
Return(False);
end if;
end;
Format triggers are PL/SQL functions executed before the object is formatted. The trigger can be used to
dynamically change the formatting attributes of the object. The function must return a Boolean value
(TRUE or FALSE). Depending on whether the function returns TRUE or FALSE, the current instance of the
object is included or excluded from the report output. You can access format triggers from the Object
Navigator, the Property Palette, or the PL/SQL Editor.
On Failure: Excludes the current instance of the object from the output.
/* 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). */
srw.attr.mask := SRW.BORDERWIDTH_ATTR;
srw.attr.borderwidth := 1;
return (true);
end;
Action triggers are PL/SQL procedures executed when a button is selected in the Runtime Previewer.
The trigger can be used to dynamically call another report (drill down) or execute any other PL/SQL. You
can access action triggers from the Object Navigator, the Property Palette (PL/SQL Trigger property), or
the PL/SQL Editor.
A ref cursor query uses PL/SQL to fetch data for the report. In a ref cursor query, you specify a PL/SQL
function that returns a cursor value from a cursor variable.
Package with ref cursor and function example this package spec and body define a ref cursor type as
well as a function that uses the ref cursor to return data. The function could be referenced from the ref
cursor query, which would greatly simplify the PL/SQL in the query itself. If creating this spec and body
as a stored procedure in a tool such as SQL*Plus, you would need
PACKAGE cv IS
(deptno number,
ename varchar(10),
compensation number);
END;
PACKAGE BODY cv IS
temp_cv cv.comp_cv;
begin
else
end if;
return temp_cv;
end;
END;
Yes. Is possible to have more than one layout in a report by using the additional layout
Yes it is possible to run the report with out parameter form by setting the PARAM value to Null
17. What is the lock option in reports layout?
By using the lock option we cannot move the fields in the layout editor outside the frame. This is useful
for maintaining the fields.
Flex is the property of moving the related fields together by setting the flex property on.
Inch.
There are two types of Parameters available in Reports One is System Parameter and another is User
Parameter.
• Restrict values in a WHERE clause SELECT NAME, SALES_REP_ID FROM S_CUSTOMER WHERE ID =User
Parameters<a value>
• Substitute any part of select statement SELECT NAME, SALES_REP_ID FROM S_CUSTOMER
Variable that is 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.
A bind reference replaces a single value or expression. To create a bind reference in a query, prefix the
parameter name with a colon (:). If the parameter object does not exist, Report Builder automatically
creates it for you and displays a message. In this case, the parameter default datatype is Character, not
Number.
BIND VARIABLE:
-- Bind variable may be used to replace expressions in select, where, group, order
-- Bind reference may not be referenced in FROM clause (or) in place of reserved words
or clauses.
LEXICAL REFERENCE:
-- You can use lexical reference to replace the clauses appearing AFTER select,
23. Which Procedures displays message number and text that you specify?
SRW.MESSAGE: 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.
24. What are lexical parameters?
You can define lexical parameters in your reports. Lexical parameters can dynamically replace clauses in
the Select statement in the data model and even the whole select statement=
A lexical reference replaces any part of a SELECT statement, such as column names, the FROM clause,
the WHERE clause, the ORDER BY clause.
To create a lexical reference in a query, prefix the parameter name with an ampersand (&).
If the parameter object does not exist, Report Builder does not create. You must always create the
parameter for a lexical reference in the Object Navigator.
Using Lexical References: Use a lexical reference to replace any clause in a SELECT statement, or even
replace the entire statement.
Examples
• The following statements use lexical references to substitute parts of the query
at run time.
• To specify a WHERE clause, ORDER BY clause, or both at run time (as two separate parameters).
• To specify a WHERE clause, ORDER BY, or both clause at run time (as one parameter).
• To specify two column names and the table name(s) at run time:
Note: When you use lexical references in the SELECT list, you must, at run time, specify the same
number of items of the correct datatype, as defined in the Data Model.
25. Which built-in is used to call the required Report?
Run_Product.
26. Can you pass runtime parameters from reports to a Graphics display?
Yes.
28. Which object you create to hold a value that end_users can change at runtime?
User Parameter.
29. Which property handles a situation where an expected parameter is not passed at runtime?
Initial Value.
30. Do you use System Parameter DESNAME to specify the destination type for output?
No.
31. Do you reference parts of the SRW Package in layout format triggers or report level trigger?
33. Which SRW Package Procedure is used to apply specified formatting attribute to the current layout
object?
SRW.SET_ATTR.
34. In a Character Mode environment interaction with the host computer is continuous or not?
It is not continuous.
35. In a Bitmapped Mode environment interaction with the host computer is continuous or not?
It is continuous.
36. Do you think that Reports stored in the database generally execute faster than those stored in the
file system?
No.
Yes, it is.
38. Can you determine your own search paths for files called by Developer/2000 tools in a windows
environment?
CAUPREFS.ORA.
40. Does Printer Definition file acts as a translator for the Printer?
Yes.
42. 'Reports printer definitions are stored as SQL Plus files', is this statement is true?
No.
43. Do you need to compile Printer definitions files before using them?
SRW2.DROP.SQL.
45. Does Confine mode keep child objects enclosed within their parent frames?
Yes, it is.
46. Do you think that it is possible for you as a developer to assign common properties to multiple
objects?
Yes.
47. When you set page break for an object, an object that appears below it always moves to the next
page. Is it true?
No, it is false.
49. Is an external query a collection of PL/SQL source code that can be referenced by other modules?
No, it is not.
50. Which design tool defines the appearance of an interface that allows the end-user to supply runtime
values to report?
52. What is contained in the Database objects fields of the Tables and Column names dialog box?
Yes.
56. Is it true that a break report data model is created using at least two queries and at least one group?
No, it is false.
57. If you minimize the number of break columns in your break groups, will you minimize the number of
columns that are added to the order by clause?
58. The link causes, which query to be executed for each instance of the Parent group?
Child query.
59. How many cursors does Reports have to open for a two-query data structure?
Two.
62. Does Formula column performs a user_defined computation on another columns data?
Yes.
63. Which field in Summery column's Property Sheet shows the calculation to be performed?
Function field.
64. If a Placeholder columns datatype is LONG or LONGROW can you edit the width field?
Yes we can.
68. 'Oracle Reports creates one group for each query', Is it true?
Yes.
No
71. Because of creation of links, the relationship between which two objects is created?
72. To produce control break reports, to produce matrix reports and to summarize data at intermediate
level which object is needed?
Group Object.
73. If you change a query name after the group has been created, Can you change the name of group?
74. If we take one query e.g. Select d.id, e.salary From EMP e, dept d Where e.dept_id = d.id Order by
salary And if we create Break Group with d.id , What will happen?
Here Order By clause is modified just like order by 1, salary.
75. A Link defines a parent / child relationship between a group & a query. Is it true? If yes then via
which two keys?
Join.
77. Can you create a link from child query to parent query?
A Lexical reference replaces any part of a select statement, such as column names, from clause, where
clause, order by clause.
In which case Parameter is created by default? In case of Bind reference Parameter is created by default.
Where clause, Group by, Order by, Having, Connected by, start with.
81. What is a User Parameter?
It is an object that you create to hold a value that user can change at runtime.
It is used to determine whether to prevent users from entering any value not included in your list.
84. If you uncheck the restricted values check box what will happen?
1.
Any Integer.
SCREEN
Portrait
96. What is the value of System Parameter "THOUSAND"?
97. Does Oracle Reports allow DML (i.e. insert, update, delete) in layout format triggers?
No.
99. Whenever a where clause in a query is not applicable which data model trigger is useful?
A Group Filter.
Yes.
102. How many types of matrix reports are there? Tell their names?
There are 4 types. Simple matrix, nested matrix, multiquery matrix with break and matrix break.
103. If you build a matrix report with only one query, how many groups are require in addition to one
created by default?
3 groups.
104. How many types of query structures are there? Tell their names?
105. Matrix reports are built with four or more groups. Is it true?
Yes.
106. What is the difference between a Nested Matrix and a Matrix Break?
In case of Matrix Break, One or more groups are a parent of the cross_product group.
And in case of Nested Matrix Three or more groups are surrounded by the cross_product group.
Confine mode:
On: child objects cannot be moved outside their enclosing parent objects.
Off: child objects can be moved outside their enclosing parent objects.
Flex mode:
On: parent borders "stretch" when child objects are moved against them.
Off: parent borders remain fixed when child objects are moved against them.
There are three types of Columns. Formula Column, summary column, placeholder column.
110. What are the minimum numbers of groups required for a matrix report?
111. Which of the following Option is valid for Panel/Print Order Property in Report Builder?
A column for which you set the datatype and value in PL/SQL that you define.
No
116. Following of which trigger will fire first?
A. Between Pages
D. Before Report
116. Can you call report from report? How if yes? If No Why?
BI Questions
What is XML Publisher?
Oracle XML Publisher is a template-based publishing solution delivered with the Oracle E-Business
Suite. It provides a new approach to report design and publishing by integrating familiar desktop
word processing tools with existing E-Business Suite data reporting. At runtime, XML Publisher
merges the custom templates with the concurrent request data extracts to generate output in PDF,
HTML, RTF, EXCEL (HTML), or even TEXT for use with EFT and EDI transmissions.
XML Publisher has been ported over to the PeopleSoft enterprise ERP suite. XML Publisher will be
the reporting tool of choice from Oracle when Fusion Applications become available.
XML Pub operates entirely within EBS and can only be used within EBS. BIP can be installed as a
standalone version running off of several OC4J compliant engines, such as Application Server and
Tomcat. BIP can be pointed anywhere, so you could do reports out of an OLTP or warehouse
database, MSSQL and even within EBS.
Licensing is already included in EBS, and the standalone costs whatever plus maintenance.
BI Publisher is based on OC4J, which is a J2EE compliant engine, which for all practical purposes,
is a Web server. You see OC4J in lots of other Oracle products which typically have one thing in
common: they expose their application to the user via a Web interface. XMLP is also based on this
because EBS runs off of Application Server.
Both include a desktop component, which is an add-in to Word, and the work there is the same
regardless of which flavor you’re using. You can create templates and publish them, there being a
slight difference in how each version does that.
What are the various components required for developing a BI publisher report?
1. Data Template
2. Layout template
3. Integration with Oracle Concurrent Manager
How does the concurrent request relate both data template and layout template it should be using for
generating the output?
The concurrent program ‘short name’ will be mapped to the ‘code’ of the Data template. Layout
template is attached to the data template, this forms the mapping between all the three.
Layout Template:
Layout template defines how the user views the output, basically it can be developed using Microsoft
word document in rft (rich text format) or Adobe pdf format. The data output in xml format (from Data
template) will be loaded in layout template at run time and the required final output file is generated.
How to get a output of a XMLP report in different formats like PDF, DOC, XLS, TXT ?
While submitting the concurrent program you select the output format in options form of “Up on
Completions” selection.
Can you have multiple layout templates for a singe data template?
Yes! Multiple layouts can be attached, so that user will have a choice here to use one among them
at the time of concurrent program submission
Do we need to create multiple layout templates for printing report in multiple languages?
We can achieve multi language report by two ways
1. Different layout template for different languages This approach can be chosen if the layout is
also different from language to language.
Data Template:
Layout:
1. Properties
2. Parameters
3. Triggers
4. Data Query
5. Data Structure
1. Before Trigger
2. After Trigger
Where and What is the code written in the Data Template Trigger?
The code is written in the plsql package which is mentioned under ‘defaultpackage’ tag of data
template.
<?template:header?>
…sub template design/tags…
<?end template?>
After that you call ‘header’ sub template any where in the rtf with below syntax:
<?call:header?>
<?choose:?>
<?when:CF_CHOICE=’VENDOR’?>
..design your Layout here..
<?end when?>
<?when:CF_CHOICE=’INVOICE’?>
..design your Layout here..
<?end when?>
<?when:CF_CHOICE=’RECEIPT’?>
..design your Layout here..
<?end when?>
<?end choose?>
Example:
<?for-each:EMP_DETAILS[EMP_ADDRESS!=”]?>
In this examples it will filter the Records with EMP_ADDRESS is not Null and Displays in the Report.
Example:
<?if@section:not(//G_HEADERS)?>No Data Found for the Parameters Provided Master <?end if?>
Displays the Message
” No Data Found for the Parameters Provided Master “
<?string-length(Field_NAME)?>
Example:
<Name>Samantha</Name> (i.e Data Source)
Template Layout:
<?Name?> is <?string-length(Name)?> characters length Word.
Output:
Samantha is 8 characters length Word.
Case 1:-
<?sort:Field_Name?><?Field_Name?>
It sorts the data in Ascending order by Default.if Order By is not mentioned
Case 2:-
<?sort:Field_Name;’Order by‘?>
It sorts the data based on Order By mentioned here like Ascending Or Descending
Case 3:-
<?sort:Field_Name;’Order by‘;data-type=’text’?>
It sorts the String Data based on Order By mentioned here like Ascending Or Descending
Examples:-
Case 1:-
<?for-each:EMP_DETAILS?>
<?sort:EMP_NO?><?EMP_NAME?><?end for-each?>
Case 2:-
<?for-each:EMP_DETAILS?>
<?sort:EMP_NO;’descending‘?><?EMP_NAME?><?end for-each?>
Case 3:-
<?for-each:EMP_DETAILS?>
<?sort:EMP_NAME;’ascending‘;data-type=’text’?><?EMP_NAME?><?end for-each?>
How to repeat the Header of the template on each and every page of the output in XMLP?
Which component is responsible for generating the output in XML format before applying it to layout
template?
DataEngine will take DataTemplate as the input and the output will be generated in xml format which
will then be applied on layout template
<?add-page-total:TotalFieldName;’element’?>
where
TotalFieldName is the name you assign to your total (to reference later) and
You can add this syntax to as many fields as you want to total.
Then when you want to display the total field, enter the following syntax:
<?show-page-total:TotalFieldName;’Oracle-number-format’?>
where
TotalFieldName is the name you assigned to give the page total field above and
Oracle-number-format is the format you wish to use to for the display, using the Oracle format mask
(for example: C9G999D00).
Page level total field does not exist in the XML input data, you must define a variable to hold the value.
When you define the variable, you associate it with the element from the XML file that is to be totaled
for the page. Once you define total fields, you can also perform additional functions on the data in those
fields.
What is XML Publisher?
Oracle XML Publisher is a template-based publishing solution delivered with the Oracle E-Business Suite.
It provides a new approach to report design and publishing by integrating familiar desktop word
processing tools with existing E-Business Suite data reporting. At runtime, XML Publisher merges the
custom templates with the concurrent request data extracts to generate output in PDF, HTML, RTF,
EXCEL (HTML), or even TEXT for use with EFT and EDI transmissions.
XML Publisher has been ported over to the PeopleSoft enterprise ERP suite. XML Publisher will be the
reporting tool of choice from Oracle when Fusion Applications become available.
Properties
Parameters
Triggers
Data Query
Data Do we need to create multiple layout templates for printing report in multiple languages?
Different layout template for different languages This approach can be chosen if the layout is also
different from language to language.
XLIFF (XML Localization Interchange File Format) : format for exchanging localization data. XML
based format that enables translators to concentrate on the text to be translated. We use this option
when we want to use the same layout and apply specific translation.
Can you have multiple layout templates for a singe data template?
Yes! Multiple layouts can be attached, so that user will have a choice here to use one among them at the
time of concurrent program submission
How to get a output of a XMLP report in different formats like PDF, DOC, XLS, TXT ?
While submitting the concurrent program you select the output format in options form of “Up on
Completions” selection.
Data Template:
Datatemplate is an xml structure which contains the queries to be run against the database so that
desired output in xml format is generated, this generated xml output is then applied on to the layout
template for the final output
Layout Template:
Layout template defines how the user views the output, basically it can be developed using Microsoft
word document in rft (rich text format) or Adobe pdf format. The data output in xml format (from Data
template) will be loaded in layout template at run time and the required final output file is generated.
How does the concurrent request relate both data template and layout template it should be using for
generating the output?
The concurrent program ‘short name’ will be mapped to the ‘code’ of the Data template. Layout
template is attached to the data template, this forms the mapping between all the three.
What are the various components required for developing a BI publisher report?
Data Template
Layout template
Name is the difference, XML Publisher (today) is only found within E-Business Suite. Prior to release 12,
it was added in via a patch. In R12, it comes pre-installed. Both these names can be used
interchangeably.
XML Pub operates entirely within EBS and can only be used within EBS. BIP can be installed as a
standalone version running off of several OC4J compliant engines, such as Application Server and
Tomcat. BIP can be pointed anywhere, so you could do reports out of an OLTP or warehouse database,
MSSQL and even within EBS.
Licensing is already included in EBS, and the standalone costs whatever plus maintenance.
BI Publisher is based on OC4J, which is a J2EE compliant engine, which for all practical purposes, is a
Web server. You see OC4J in lots of other Oracle products which typically have one thing in common:
they expose their application to the user via a Web interface. XMLP is also based on this because EBS
runs off of Application Server.
Both include a desktop component, which is an add-in to Word, and the work there is the same
regardless of which flavor you’re using. You can create templates and publish them, there being a slight
difference in how each version does that.
After Trigger
XDO_DS_DEFINITIONS_B
XDO_DS_DEFINITIONS_TL
XDO_DS_DEFINITIONS_VL
XDO_LOBS
XDO_TEMPLATES_B
XDO_TEMPLATES_TL
XDO_TEMPLATES_VL
XDO_TEMPLATE_FIELDS
XDO_TRANS_UNITS
XDO_TRANS_UNIT_PROPS
XDO_TRANS_UNIT_VALUES
Where and What is the code written in the Data Template Trigger?
The code is written in the plsql package which is mentioned under ‘defaultpackage’ tag of data
template.
XLIFF is the file that supports the translation, we have one XLIFF file for each language.
<?for-each:looping_node_name?>
<?end for-each?>
<?template:header?>
<?end template?>
After that you call ‘header’ sub template any where in the rtf with below syntax:
<?call:header?>
<?split-by-page-break?>
<?split-by-page-break:?>
<?end if?>
<?choose:?>
<?when:CF_CHOICE=’VENDOR’?>
<?end when?>
<?when:CF_CHOICE=’INVOICE’?>
..design your Layout here..
<?end when?>
<?when:CF_CHOICE=’RECEIPT’?>
<?end when?>
<?end choose?>
We can use below syntax to restricting the rows in the Group based on condition:
Syntax:
Example:
<?for-each:EMP_DETAILS[EMP_ADDRESS!=”]?>
In this examples it will filter the Records with EMP_ADDRESS is not Null and Displays in the Report.
Syntax:
<?if@section:not(//GROUP_NAME)?>Message/Action<?end if?>
Example:
<?if@section:not(//G_HEADERS)?>No Data Found for the Parameters Provided Master <?end if?>
Example:
Template Layout:
Output:
<?xdoxslt:get_variable($_XDOCTX, ‘R’)?>
<?xdoxslt:get_variable($_XDOCTX, ‘R’)?>
Syntax:-
Case 1:-
<?sort:Field_Name?><?Field_Name?>
<?sort:Field_Name;’Order by‘?>
It sorts the data based on Order By mentioned here like Ascending Or Descending
Case 3:-
<?sort:Field_Name;’Order by‘;data-type=’text’?>
It sorts the String Data based on Order By mentioned here like Ascending Or Descending
Examples:-
Case 1:-
<?for-each:EMP_DETAILS?>
<?sort:EMP_NO?><?EMP_NAME?><?end for-each?>
Case 2:-
<?for-each:EMP_DETAILS?>
<?sort:EMP_NO;’descending‘?><?EMP_NAME?><?end for-each?>
Case 3:-
<?for-each:EMP_DETAILS?>
<?sort:EMP_NAME;’ascending‘;data-type=’text’?><?EMP_NAME?><?end for-each?>
How to repeat the Header of the template on each and every page of the output in XMLP?
(Or)You can also use header part of rtf (MS word feature) to insert the information you want to repeat
on all pages.
Using OA_MEDIA: storing on server and giving physical path of the image
We can use XDO template utility helper java classes to embed XMLP report on OA Pages
Which component is responsible for generating the output in XML format before applying it to layout
template?
DataEngine will take DataTemplate as the input and the output will be generated in xml format which
will then be applied on layout template
The default output format defined during the layout template creation will be used to generate the
output, the same can be modified during the request submission and it will overwrite the one defined at
layout template
a. The combination of providing information and enabling additional investigation of that information is
commonly referred to as business intelligence (BI).
b. Enterprise Reporting provides lowering the cost of computing but not Uses integrated business
intelligence
d. Oracle9i Reports supports HTML, HTMLCSS, TDF, XML, RTF, Postscript, and PDF format
b. Web specific features, such as bookmarks and hyperlinks, can also aid the user in navigation
c. Oracle Reports has historically done a very good job of publishing high fidelity paper reports.
a. User-friendly wizards
c. Run-time customization
a. rwrun.exe
b. rwclient.exe
c. rwserver.exe
d. rwbuilder.exe
Chapter-Two
a. Tabular
c. Matrix
d. Master and details
c. The matrix style is the only style in which a detail group is related to two same master groups at the
different level.
d. The matrix style is the only style in which a detail group is related to two different master groups at
the same level.
a. browser
b. Command line
b. data wizard
Chapter Three
1. The report builder interface enables you to create number of different type of modules. The modules
are (Choose all that apply)
a. Menu
b. Report
c. Templates
d. Object Library
e. PL/SQL Library
a. PL/SQL Editor
B. Report Editor
c. Object Library
D. Menu Editor
e. Object Navigator
f. Property Inspector
a. Report Wizard
c. Data Wizard
d. Data Block Wizard
e. Graph Wizard
a. Frame
b. Boilerplate
c. Field
d. Item
a. Report
b. Template
c. Data
d. PL/SQL Library
6. _______ help you quickly define or modify a query for a multi query data models.
a. Report Wizard
b. Data Wizard
c. Graph Wizard
Chapter Four
1. You want to create a new report from wizard; in the data source page you can select the following
data sources to create it?
a. SQL-based
b. XML
c. JDBC
d. Flat Files
2. You need to create a boilerplate object in Paper Design Window. Which group of tool would you use?
A. Toolbar
B. Style bar
C. Tool palette
D. Status bar
3. Most commonly used numeric format symbols are available on the style bar are-
i) Currency
ii) Percentage
a. i & ii
b. i, ii,iii & iv
d. i & iii
a. True
b. False
5. The style bar includes a Parent Frame tool you can use to select the outer object surrounding the
currently selected object.
a. True
b. False
6. Which menu can you use to insert Date and Time, Page Number?
a. File
b. Insert
c. Format
d. Layout
a. 1
B. 2
C. 3
D. 4
8. Which options can you use in Template Wizard to use the report the default settings instead of a
template file?
a. Predefined
B. Template File
C. No Template
9. Template regions are-
a. Body
b Margin
C. Report
D. Template
a. Body
B. Margin
Chapter 5, 6, 7:
1. You are creating a financial report to be represented to board of directories. The accounting manager
has asked you to change the number format to show a thousand separators. What is the best method to
make this change to the report quickly?
A. Open the property plate and set the format mask for all the numeric items in the report
B. Select the data to be free formatted in the live previewed and click on the thousand-separator Icon on
the style bar
C. Go to the layout model and change the field attributes for the data to be changed on the report
D. Rebuild the report using the report wizard setting this format on creation
2. You created a department report and preview it in live preview. The font for the department name is
too small and you want to enlarge it but do not want to change the font for any other fields. What is the
easiest way to make this change?
A. Select the text to be enlarged in the live previewed and makes the size change using the style bar.
B. Select the text to be enlarged in the layout mode and make the change.
C. Open the report wizard in the re-entrant mode and make the change.
D. Make the copy of the report, open the copy, make the changes and then delete the original report.
3. You created a tabular report for human resources department. After viewing layout users have
requested that you change the label of the dept column to something more meaningful. How would you
change the label in the live previewed?
B. Click and highlight the column label and replace it with desired text.
4. What are the most commonly used numeric format symbols on the Style bar?
A. Currency Symbol
B. Percentage Symbol
C. Thousand Separator
a. .pdf
b. .bmp
c. .tdf
d. .pal
6. For an inventory report, you created a work_in_progress that contains two columns, ID_number and
quantity. The parent group of the work_in_progress is in_inventory which contains one column,
dept_no. You added a filter of the first fifteen to total_inventory and a filter of last 20 work_in_progress.
Which records will the report return?
B. Last 20 ID_number and quantity values with the first 15 dept_no values for each
work_in_progress value.
C. First 15 dept_no values with last 20 ID_number and quantity values for each total_inventory
value.
A. rw:reports
B. rw:objects
C. rw:dataArea
D. rw:graph
E. rw:id
8. In a Report Wizard if we choose Report Type Create Web Layout Only and complete the steps of the
wizard. Which view will
appear?
a. Paper Layout
b. Paper Design
c. Data Model
d. Web Source
A. Two
B. One
10. You want to create a template to be used as a standard for all company reports.
A. Open an existing template file, rename it and modify the template objects.
C. Open the layout model and copy the paste items from the default templates provided in the
report builder.
11. How many report templates would you need to create for the Tabular, Matrix, Group Left and Group
above Styles?
A. 1
B. 2
C. 3
D. 4
12. You used the STS template when creating the Sales report. In the Live Previewer, you changed the
background color of the report margin. If you reapply the template in the
Report Wizard, what will happen to the changes you made to the report?
13. Which two report Builder components would you use to modify the body of a report template?
(Choose Two).
A. Report Wizard
B. Live Previewer
C. Template Editor
D. Property Inspector
E. Object Navigator
14. Which Report Builder component would you use to import an image into the margin of the SAL1
Template?
A. Layout Model
B. Live Previewer
C. Property Platte
D. Object Navigator
E. Template Editor
15. In the Report Wizard, which template option would you use to select a user-defined template? not
registered in you cagprefs.ora?
A. Default
B. No Template
C. Template file
D. Predefined Template
Chapter 8,9,10:
1. Which of the following objects consists of the data model?
A. Query
B. Parameter
C. Group
D. Link
E. Column
F. Repeating Frame
G. Field
D. Highlight the group name in the Data Model and enter the new name
3. You are developing a master –detail report for the Sales department using a join query . You set
a group filter on the master group to retrieve the first 20 records from the Inventory table and a group
filter on the detail group to retrieve the last 30 records from the Sales table . How many records will the
query retrieve?
B. All the records from the Inventory table and the last 30 records from the Sales table
C. The first 20 records from the Inventory table and all the records from the Sales table
D. The first 20 records from the Inventory table and the last 30 records from the Sales table
The report should break on the Manufacturer values. In the Data Model, how would you create a break
group?
D. Click and drag the Inventory column out of and below the default group to create a child group
E. Click and drag the Inventory column out of and above the default group to create a parent
group
5. You are developing a master a master-detail report and need to restrict the number of rows
retrieved for the detail group. How could you restrict the number of records retrieved to ten?
6. When would you have to update the layout to reflect the change you made to the query that
retrieves data for the Inventory report?
A. Use the Link tool in the Data Model , click the child group , and drag a link to the parent group
B. Use the Link tool in the Data Model , click the parent group , and drag a link to the child group
C. Use the Link tool in the Data Model , click the primary key of the child group , and drag a link to
the foreign key of the parent group
D. Use the Anchor tool in the Layout Model , click the primary key of the child group , and drag a
link to the foreign key of the parent group
E. Use the Link tool in the Data Model , click the primary key or foreign key of the parent group ,
and drag a link to the primary key or foreign key of the child group
8. How would you create a break a group for the master-detail report based on a single query?
B. Click and drag the break column(s) out of and above the default group in the Data Model
C. Click and drag the break column(s) out of and below the default group in the Data Model
D. Click and drag the break column(s) out of and above the default group in the Layout Model
E. Click and drag the break column(s) out of and below the default group in the Layout Model
9. Using the report wizard you create a tabular report to display all the columns in the EMP table. The
records are ordered by the dept_name and job columns. You need to create a hierarchical report that
breaks on the dept_name and job values. Using the data model how would you create this break
structure?
B. Specify the break order on the dept_name and job columns Property palettes.
C. Click and drag the dept_name and jobs column out and above of the g_emp group to create a new
parent group.
D. Change the position of dept_name and the job columns within the g_emp group.
10. You create a salary report to display employee salaries grouped by the dept column. You need to
change the break order from ascending to descending using the model. How would you reverse the
display order of department?
A. Double click the dept column in the group to alter the property inspector and change the break
out order value.
B. Double click the dept column in the group to open the property inspecto and change the set
break out order value.
C. Double click the g_dept group object to change the break order.
D. Click the dept column in the group to change the break order.
11. You Created a tabular report for the sales department to display each customer and the sales person
assign to the customer. The data is sorted by customer using the order by clause in this query.
This is department manager asks you to alter the report so that data is sorted by sales person rather
than by customer. What is the best way to make the needed change?
B. Alter the query, default the layout and redo the boilerplates.
12. In the data Model you created this query : SELECT Id_no, description, price, quantity,
manufacturer_id FROM inventory. Next you click and drag the manufacturer_id column out of and
above the default group. You need to sort the child group by id_number. How could you accomplish this
task?
B. In the Data model double click the ID_number column and alter the break order.
C. In the layout model double click the ID_Number filed and later the print direction.