Вы находитесь на странице: 1из 15

Applications User Exits in Reports

Posted on August 12th, 2007 by Sanjit Anand |  Print This Post |  Email This Post

Have you joined Hub Community Network Forums of OracleaApps professionals? Don't wait. Do


it today

We can integrate Oracle reports with Oracle Application Object Library, and run them as concurrent
programs from your forms or through standard request submission.

These are the user exits available in Oracle Reports that makes AOL integration.

• FND SRWINIT


• FND SRWEXIT
• FND FORMAT_CURRENCY
• FND FLEXIDVAL
• FND FLEXSQL

 FND SRWINIT
o This is a User Exit which sets your profile option values and allows Oracle AOL user
exits to detect that they have been called by oracle repots.
o FND SRWINIT also allows your report to use the correct organization automatically.
o Can be used in BEFORE-REPORT Trigger.
 FND_SRWEXIT
o This user exit ensures that all the memory allocated for AOL user exits has been freed
up properly.
o Can be used in AFTER- REPORT Trigger
 USER EXITS
o are used in Oracle APPS to access user profile values and perform proper calculation.
o Ex. of Other AOL User exits available in Reports are given below.
 FND FORMAT_CURRENCY
o To format the currency amount dynamically depending upon the precision of the actual
currency value, standard precision, users profile values and location (country) of the
site.
o You obtain the currency value from the database into an Oracle Reports column.
Define another Oracle Reports column, a formula column of type CHAR, which
executes the FORMAT_CURRENCY user exit to format the currency value. A displayed
field has this formula column as its source so that the formatted value is automatically
copied into the field for display.

Syntax
FND FORMAT_CURRENCY
CODE=”:column containing currency code”
DISPLAY_WIDTH=”field width for display”
AMOUNT=”:source column name”
DISPLAY=”:display column name”
[MINIMUM_PRECISION=”:P_MIN_PRECISION”]
[PRECISION=”{STANDARD|EXTENDED}”]
[DISPLAY_SCALING_FACTOR=””:P_SCALING_FACTOR”]

 FND FLEXSQL
o This user exits allows you to use Flex fields in Reports.

Syntax:
FND FLEXSQL
CODE="flexfield code"
APPL_SHORT_NAME="application short name"
OUTPUT=":output lexical parameter name"
MODE="{ SELECT | WHERE | HAVING | ORDER BY}"
[DISPLAY="{ALL | flexfield qualifier | segment
number}"]
[SHOWDEPSEG="{Y | N}"]
[NUM=":structure defining lexical" |
MULTINUM="{Y | N}"]
[TABLEALIAS="code combination table alias"]
[OPERATOR="{ = | < | > | <= | >= | != | "||" |
BETWEEN | QBE}"]
[OPERAND1=":input parameter or value"]
[OPERAND2=":input parameter or value"]

 FND FLEXIDVAL

 This user exits allows you to use Flex fields in Reports

Syntax:
FND FLEXIDVAL
CODE="flexfield code"
APPL_SHORT_NAME="application short name"
DATA=":source column name"
[NUM=":structure defining source column/lexical"]
[DISPLAY="{ALL|flexfield qualifier|segment number}"]
[IDISPLAY="{ALL|flexfield qualifier|segment
number}"]
[SHOWDEPSEG="{Y | N}"]
[VALUE=":output column name"]
[DESCRIPTION=":output column name"]
[APROMPT=":output column name"]
[LPROMPT=":output column name"]
[PADDED_VALUE=":output column name"]
[SECURITY=":column name"]
This is an AOL user exit available to populate key flexfields for display

CODE means Key flexfield code(GL# is for Accounting Flex field, for all other check the table
FND_ID_FLEXS)
NUM is the structure of the key flex field(Chart of Accounts Number)
DATA is where you store the retrieved data (your sql output).

Example

SRW.USER_EXIT('FND FLEXSQL CODE="GL#"


NUM=":P_STRUCT_NUM"
APPL_SHORT_NAME="SQLGL"
OUTPUT=":P_SEC_SEG"
MODE="SELECT"
DISPLAY=":P_SEC_SEG_VAL" ')

The userexit call FND FLEXIDVAL :

SRW.REFERENCE(:SEC_SEG);
SRW.USER_EXIT('FND FLEXIDVAL CODE="GL#"
DATA=":SEC_SEG"
APPL_SHORT_NAME="SQLGL"
VALUE=":SEC_SEG_DISP"
DISPLAY="ALL"
NUM=":P_STRUCT_NUM" ');
return(:sec_seg_disp);

Interview Questions on Oracle Reports 6i


1. What are the various types of reports ?
* Tabular, Master Detail, Form, Form Letter, Mailing Labels, Matrix

2. What is the difference between Master - Detail Report and report created by breaks ?
* Master/detail data models are very similar to break report data models. However, a master/detail
data model is created using two queries, each of which owns at least one group, and a data link. A break
report data model is created using one query and at least two groups. While reports based on a single
query are usually more efficient than reports based on multiple queries, sometimes the structure of
your data tables may require you to link multiple tables.

3. What are Anchors ?


* An anchor defines the relative position of an object to the object to which it is anchored. Anchors are
used to determine the vertical and horizontal positioning of a child object relative to its parent. Since the
size of some layout objects may change when the report runs (and data is actually fetched), you need
anchors to define where you want objects to appear relative to one another.
4. What are the various types of anchors in Reports ?
A There are two types of anchors in Oracle Reports:
* implicit (anchors that Oracle Reports creates when a report is run)
* explicit (anchors you create)

Implicit Anchors : At runtime, Oracle Reports generates an implicit anchor for each layout object that
does not already have an explicit anchor. It determines for each layout object which objects, if any, can
overwrite it, then creates an anchor from the layout object to the closest object that can overwrite it.
This prevents the object from being overwritten. The implicit anchor functionality saves you from having
to define the positioning of each object. Implicit anchors are not visible in the Layout editor. However,
you can specify that the Object Navigator display anchoring information using the Object Navigator
Options dialog.

Explicit Anchors : Create an anchor in the Layout editor by clicking on the Anchor tool, dragging from
one edge of the child to the one of the parent's edges, then specifying the anchor's properties in its
property sheet. Any anchor you create for an object will override its implicit anchoring. Explicit anchors
are always visible in the Layout editor unless you specify otherwise via the Layout Options dialog

9. What are the various report triggers ? What is their order of firing ?
A There are eight report triggers. Of these there are five global triggers called the Report Triggers. They
are fired in the following order :
* Before Parameter Form
* After Parameter Form
* Before Report
* Between Pages
* After Report

Apart from the above Five Report Triggers, there are three other types of triggers :
* Validation Triggers
* Format Triggers
* Action Triggers

Before 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. (Note : If the
Runtime Parameter Form is suppressed, this trigger still fires. Consequently, you can use this trigger for
validation of command line parameters).

After 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. (Note : If the Runtime Parameter Form is suppressed, the After Form trigger still fires.
Consequently, you can use this trigger for validation of command line parameters or other data).

Before Report : Fires before the report is executed but after queries are parsed and data is fetched.

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. (Note : In the 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.)

After Report : Fires after you exit the Previewer, or after report output is sent to a specified destination,
such as a file, a printer, or an Oracle*Mail 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.

Validation Triggers : Validation Triggers 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 Triggers are also
used to validate the Initial Value of the parameter in the Parameter property sheet.

Format Triggers : 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.

Action Triggers : Action Triggers are PL/SQL procedures executed when a button is selected in the
Previewer. The trigger can be used to dynamically call another report (drill down) or execute any other
PL/SQL.

19. What are Placeholder Columns ?


A A placeholder is a "dummy" column for which you can conditionally set the datatype and value via
PL/SQL or a user exit. Placeholder columns are useful when you want to selectively populate a column
with a value (e.g., each time the nth record is fetched, or each time a record is fetched containing a
specific value, etc.).

20. What are the various Module Types in Reports ?


A You can build three types of modules with Oracle Reports:
* external queries, which are ANSI-standard SQL SELECT statements that can be referenced by modules
* external PL/SQL libraries, which are collections of PL/SQL source code that can be referenced by
modules
* reports, which are collections of report-level objects and references to external queries and PL/SQL
libraries (optional) that can be referenced by modules

22. What are Physical and Logical pages in Reports ?


A A report page can have any length and any width. Because printer pages may be smaller or larger than
your report's "page," the concept of physical and logical pages is used.
Physical Page : A physical page (or panel) is the size of a page that will be output by your printer.

Logical Page : A logical page is the size of one page of your actual report; one logical page may be made
up of multiple physical pages. The Previewer displays the logical pages of your report output, one at a
time.

23. What are the various page layout sections in Oracle Reports ?
A A report has three sections : the report header pages, report body/margin pages, and report trailer
pages.

27. What are various types of parameters ?


A There are two types of parameters:
* default (called system parameters)
* user-created (called bind and lexical parameters)

30. How do you reference parameters and columns in reports ?


A In two ways :
* As bind references
* As lexical references

31. What are Bind Referencing and Lexical Referencing ?


* Bind Referencing : Bind references are used to replace a single value in SQL or PL/SQL, such as a
character string, number, or date. Use bind reference when you want the parameter to substitute only
one value at runtime. 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.

Lexical Referencing : Lexical references are placeholders for text that you embed in a SELECT statement.
Use Lexical reference when you want the parameter to substitute multiple values at runtime. You can
use lexical references to replace the clauses appearing after SELECT, FROM, WHERE, GROUP BY, ORDER
BY, HAVING, CONNECT BY, and START WITH.

33. Can you create a group without any break columns ?


* No.

35. Types of Matrix report ?


* 1. Single query 2. Multi query 3. Nested Query 4. Matrix Break

37. In Reports, how can you print one record per page in the output ?
* Set the Maximum records per page property of the Repeating frame to 1.
38. How do you print a Report 2.5 report in character mode ?
* Set MODE = 'Character' in the Parameter form

39. What are widow lines ?


* Widow lines are the minimum number of lines of the boilerplate text or field that should appear on
the logical page where the text starts to print. If the number of lines specified for this property cannot fit
on the logical page, then all lines of the boilerplate are moved to the next page.

40. What are widow records ?


* Widow records are the minimum number of instances (records) that should appear on the logical page
where the repeating frame starts to print. If the number of instances specified for this property cannot
fit on the logical page where the repeating frame is initially triggered to print, then the repeating frame
will start formatting on the next page.

41. What is 'page protect' property for objects ?


* Page protect property for an object indicates whether to try to keep the entire object and its contents
on the same logical page. Checking Page Protect means that if the contents of the object cannot fit on
the current logical page, the object and all of its contents will be moved to the next logical page.

42. What is the 'Print Condition Type' property ?


* 'Print Condition Type' property specifies the frequency with which you want the object to appear in
the report. The Print Condition Type options indicate the logical page(s) on which the object should be
triggered to print with regard to the Print Condition Object.

44. What are the various values of the 'Print Condition Type' property in Reports ?
* The various values are :
All : All means the object and all of its contents will be printed on all logical pages of the Print Condition
Object. The object will be repeated on any overflow pages of the Print Condition Object and will be
truncated at the logical page boundary, if necessary.

All but First : All but First means the object and all of its contents will be printed on all logical pages of
the Print Condition Object except the first logical page. The object will be formatted only on overflow
pages of the Print Condition Object and will be truncated at the logical page boundary, if necessary.

All but Last : All but Last means the object and all of its contents will be printed on all logical pages of the
Print Condition Object except the last logical page. The object will be repeated on any overflow pages of
the Print Condition Object except the last one and will be truncated at the logical page boundary, if
necessary.

*Default : Default means that Oracle Reports will use object positioning to set the Print Condition Type
to either *First or *Last for you. (The asterisk indicates that Oracle Reports specified the setting for you.)
First : First means that the object and all of its contents will only be printed on the first logical page of
the Print Condition Object. The object will be formatted and will overflow to subsequent pages, if
necessary.

Last : Last means that the object and all of its contents will only be printed on the last logical page of the
Print Condition Object. The object will be formatted after the Print Condition Object and will overflow to
subsequent pages, if necessary.

* For repeating frames, the print condition type property refers to every logical page of every instance
(record) of the repeating frame. If you specify a Print Condition Type setting of All and a Print Condition
Object setting of Enclosing Object for a field F_1, it prints in every instance of repeating frame R_1 on
every logical page. If you specify a Print Condition Type setting of All but First in the above case , then
the field will be printed only in those cases where a single instance (row or record) of the repeating
frame spans across more than one page (which is normally not the case since many records are there in
a single logical page and not one record in many pages). In such a case the field will be printed on all
subsequent pages of this instance except the first page.

43. What is the 'Print Condition Object' property ?


* 'Print Condition Object' property specifies the object on which to base the Print Condition Type of the
current object. For example, if you specify a Print Condition Type of All and a Print Condition Object of
Anchoring Object, the current object will be triggered to print on every logical page on which its
anchoring object (parent object) appears.

45. What are the various values of the 'Print Condition Object' property in Reports ?
* The various values are :
Anchoring Object : Anchoring Object is the parent object to which the current object is implicitly or
explicitly anchored.
Enclosing Object : Enclosing Object is the object that encloses the current object.

46. What is the horizontal of vertical sizing property of objects ?


* Horizontal of vertical sizing property specifies how the horizontal or vertical size of the object may
change at runtime to accommodate the objects or data within it.

47. What are the various values of the horizontal of vertical sizing property ?
* The various values are :
Contract : Contract means the vertical size of the object decreases, if the formatted objects or data
within it are short enough, but it cannot increase to a height greater than that shown in the editor.
Note : Truncation of data may occur. (You can think of this option as meaning "only contract, do not
expand.")

Expand : Expand means the vertical size of the object increases, if the formatted objects or data within it
are tall enough, but it cannot decrease to a height less than that shown in the editor. (You can think of
this option as meaning "only expand, do not contract.")

Fixed : Fixed means the height of the object is the same on each logical page, regardless of the size of
the objects or data within it. Note : Truncation of data may occur. The height of the object is defined to
be its height in the editor.

Variable : Variable means the object may expand or contract vertically to accommodate the objects or
data within it (with no extra space), which means the height shown in the editor has no effect on the
object's height at runtime.

51. How do you display a message in reports ?


* SRW.Message

54. What are the various values of 'Print Panel Order' property of report ?
* The various values are :
Across/Down : Across/Down means the physical pages of the report body will print left-to-right then
top-to-bottom.

Down/Across : Down/Across means the physical pages of the report body will print top-to-bottom and
then left-to-right.

55. What is the 'Print Direction' Property of Repeating frames ?


* 'Print Direction' Property specifies the direction in which successive instances of the repeating frame
appear.

56. What are the various values of the 'Print Direction' Property of Repeating frames ?
* The various values are :
Across : Across means that each instance of the repeating frame subsequent to the first instance is
printed to the right of the previous instance across the logical page.

Across/Down : Across/Down means that each instance of the repeating frame subsequent to the first
instance is printed to the right of the previous instance until an entire instance cannot fit between the
previous instance and the right margin of the logical page. At that time, Oracle Reports prints the
instance below the left-most instance on the logical page, provided there is enough vertical space left on
the logical page for the instance to print completely.

Down : Down means that each instance of the repeating frame subsequent to the first instance is
printed below the previous instance down the logical page.

Down/Across : Down/Across means that each instance of the repeating frame subsequent to the first
instance is printed below the previous instance until an entire instance cannot fit inside the bottom
margin of the logical page. At that time, Oracle Reports prints the instance to the right of the topmost
instance on the logical page, provided there is enough horizontal space left on the logical page for the
instance to print completely.

59. What is the 'Keep with Anchoring Object' object property ?


* 'Keep with Anchoring Object' object property indicates whether to keep an object and the object to
which it is anchored on the same logical page. Checking Keep with Anchoring Object means that if the
object, its anchoring object, or both cannot fit on the logical page, they will be moved to the next logical
page.

60. What is 'Page Break Before' object property ?


* 'Page Break Before' object property indicates that you want the object to be formatted on the page
after the page on which it is initially triggered to print. Note that this does not necessarily mean that all
the objects below the object with Page Break Before will move to the next page.

61. What is 'Page Break After' object property ?


* 'Page Break After' object property indicates that you want all children of the object to be moved to the
next page. In other words, any object that is a child object of an anchor (implicit or explicit) to this object
will be treated as if it has Page Break Before set. Note that this does not necessarily mean that all the
objects below the object with Page Break After will move to the next page.

63. What is the 'Break Order' property of columns ?


* The 'Break Order' property is the order in which to display the column's values. This property applies
only to columns that identify distinct values of user-created groups (i.e., break groups). The order of
column values in a default group is determined by the ORDER BY clause of the query. For column values
in user-created groups, however, you must use Break Order to specify how to order the break column's
values.

64. What are the various types of links ?


* The Data Link tool draws a link between a parent group and a child query. Creating a link is a drag and
drop operation. Clicking and dragging from one column to another creates a link between those two
columns (column to column link). Clicking and dragging from one query to another creates all possible
links between columns selected by the queries based on database constraints (query to query link).
Clicking and dragging between two groups creates a group-to-group link (i.e., a link with no columns).

65. Name some of the procedures in the SRW package ?


* SRW.Message, SRW.User_Exit, SRW.Do_Sql, SRW.Run_Report

66. What are the various report layout regions ?


* There are three report regions in the Layout editor :
* header
* body/margin
* trailer

Header : The report header pages appear once at the beginning of each report on a set of separate
pages. They can contain text, graphics, data, and computations.

Body/Margin : The body/margin pages appear between the header and trailer pages, and are the bulk of
the report. Each physical page in this section consists of a body and a margin. The body contains the
majority of the report's text, graphics, data, and computations.
A top and bottom margin appear on each page, until all data within the body has been formatted. A
margin may include text, graphics, page numbers, page totals, and grand totals. The default margin size
is one half inch each for the top and bottom margins and zero for the left and right margins.

Trailer : The report trailer pages appear once at the end of each report on a set of separate pages. They
can contain text, graphics, data, and computations.

70. What is more efficient : Maximum rows or Group Filter ?


* Maximum Rows in the Query property sheet restricts the number of records fetched by the query. A
group filter determines which records to include and which records to exclude. Since Maximum Rows
actually restricts the amount of data retrieved, it is faster than a group filter in most cases. If you are
using a Filter of Last or Conditional, Oracle Reports must retrieve all of the records in the group before
applying the filter criteria. As a result, Maximum Rows or a Filter of First is faster.

HOW TO USE KFF IN FORMS


How to use Key Flex Fields (KFF) in forms
August 23rd, 2007 by Anand
These are the steps required to implement KFF in customization.
Define KFF fields in your database tables.
The custom table should contain a field named as XXX_ID (where XXX means the entity. For ex.
PART_ID, CODE_COMBINATION_ID etc) to capture the selected code combination ID.
Register the table with Oracle AOL.
Register the KFF with Oracle AOL
Logon as
Application Developer -> Flex fields -> Key -> RegisterExisting KFF can also be used. Ex.
Accounting FF
Create KFF in the custom form
1. Create a form based on the custom table.
2. In the block, create two non-base table text items of data type CHAR (2000). One text item is
to store the code combinations (Say BTL_KFF ) and other one is to store description of the code
(Say BTL_KFF_DESC. Make this item as non-updateable).
Add KFF standard built-ins in the form to invoke KFF
The custom table should contain a field named as XXX_ID (where XXX means the entity. For ex.
PART_ID, CODE_COMBINATION_ID etc) to capture the selected code combination ID.
this is typical registration of KFF. For Customization in custom development here are the steps:
1. Write a form level trigger WHEN-NEW-FORM-INSTANCE to invoke the KFF as
Fnd_Key_Flex.Define(Block => ‘block_name’,Field => ‘concatenated_segments_field_name’,
[Description => ‘description_field_name’,][ID => ‘Unique_ID_field’Appl_Short_Name =>
‘application_short_name’,Code => ‘key_flexfield_code’,Num => ‘structure_number’,
In above defination take a note,
· These arguments specify location
· All fields must reside in same block
· ID is for Key Flexfields only
· These arguments indicate which flexfield is being used
· Short name is application where flexfield is registered
· SQLGL is Oracle General Ledger
· SQLAP is Oracle Payables
· Code identifies Key Flexfield
· GL# is Accounting Flexfield
· Num is Key Flexfield structure number. Default is 101
Usage
FND_KEY_FLEX.DEFINE(block => ‘Custom block’,Field => ‘BTL_KFF’,Description =>
‘BTL_KFF_DESC’,ID => ‘XXX_ID’,Appl_short_name => ‘SQLGL’,Code => ‘GL#’,Num => ‘101′,Vrule =>
‘GL_GLOBAL\\nDETAIL_POSTING_ALLOWED \\nE\\nAPPL=\\”SQLGL”;name=Parent Values are not
allowed\\nN’);
2. XXX_ID will store the code combination ID for each selection.
3.Invoke Flexfield functionality by calling FND_Flex.Event(event) from:
PRE-QUERY
POST-QUERY
PRE-INSERT
PRE-UPDATE
WHEN-VALIDATE-RECORD
WHEN-NEW-ITEM-INSTANCE
WHEN-VALIDATE-ITEM
3. Write an item level trigger WHEN-NEW-ITEM-INSTANCE on BTL_KFF as
FND_FLEX.EVENT(’WHEN-NEW-ITEM-INSTANCE’)
4. Write an item level trigger KEY-EDIT on BTL_KFF as
FND_FLEX.EVENT(’KEY-EDIT’);
5. Write an item level trigger WHEN-VALIDATE-ITEM on BTL_KFF as
FND_FLEX.EVENT(’WHEN-VALIDATE-ITEM’);
IF :CUSTOM_BLOCK.XXX_ID = -1 THENFND_MESSAGE.SET_STRING(’You Have Selected An Undefined
Code Combination !’);FND_MESSAGE.SHOW;RAISE FORM_TRIGGER_FAILURE;END IF;
These steps makes you flexfield enable in your form.
A NOTE FOR FLEX FIELD DEFINATION
Lets take a close scan to understand some of the paramater used in Flex Field defination.
1. [Validate=> ‘{FOR_INSERTFULLPARTIALNONEPARTIAL_IF_POSSIBLE}’,]
This is used only for Key FlexFields only
“For_Insert” used in a block where the code_combinations table is the base table
“Full” used where the code_combination_id is a foreign key in the base table
“None” when any value is allowed, such a range flexfield for query purposes
“Partial” validates segment values but not the full combination
“Partial_If_Possible” only used when the flexfield has dependent segments
2.[Vdate => ‘date’,]
Validation date compared to segment value start/end dates
3.[Required=>’[YN’,]
This is applicable only in the case for key flexfields only
‘Y’ requires user to enter a valid value for every required segment, even if the flexfield is never
navigated to
‘N’ only requires required segments to be entered when the flexfield has been updated
4.[Displayable => ‘{ALL flexfield_qualifier segment_number}
[\\0{ALLflexfield_qualifiersegment_number}]’,]
Key Flexfields only. Default is “ALL”
Naming flexfield qualifier or segment number causes only those segments to appear.
Toggle this parameter by specifying more than one value separated with \\0
Display all but the first segment by specifying:
DISPLAYABLE=>’ALL\\01’
Same parameters for Updateable and Insertable
5.[COPY=>’block.field\\n{ALLflexfield qualifiersegment number} [\\0block.field\\n{ALLflexfield
qualifiersegment number}]’,]
Again, key flexfields only.
Copy a form field value into the segment indicated by flexfield qualifier or segment number
Value must be valid for segment or it will be erased
Copy works in reverse when flexfield pop-up window closes
Example copies a form global variable into the natural account segment of the Accounting
Flexfield:
COPY=>’GLOBAL.default_expense_obj\\nGL_ACCOUNT’
6.[VRULE => ‘flexfield qualifier\\nsegment qualifier\\n{I[nclude]
E[xclude]}\\nAPPL=application_short_name;NAME=Message Dictionary message name\\nValidation
value1\\nValidation value2…[\\0flexfield qualifier\\n…
Key or range flexfields
Impose additional validation
‘\\n’ is delimiter between parameters
‘\\0’ is delimiter between groups of parameters

Posted by sunil dutt at 4:41 AM 0 comments 

FNDLOAD
FNDLOAD

The Generic Loader (FNDLOAD) is a concurrent program that can transfer Oracle Application entity
data between database and text file. The loader reads a configuration file to determine which entity
to access. In simple words FNDLOAD is used to transfer entity data from one instance/database to
other. for example if you want to move a concurrent program/menu/valuesets developed in
DEVELOPMENT instance to PRODUCTION instance you can direct use this command.
Steps to Move a Concurrent program from one instance(Database) to other

· Define your concurrent program and save it in first instance(for how to register a concurrent
program click here)
· Connect to your UNIX box on first instance and run the following command to download the .ldt file
FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct file_name.ldt
PROGRAM APPLICATION_SHORT_NAME="Concurrent program application short name"
CONCURRENT_PROGRAM_NAME="concurrent program short name"

· Move the downloaded .ldf file to new instance(Use FTP)


· Connect to your UNIX box on second instance and run the following command to upload the .ldt file

FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lct


file_name.ldt

Note: Make sure you are giving proper .lct file in the commands and don’t confuse with .lct and .ldt
files

These following are the other entity data types that we can move with FNDLOAD
1 - Printer StylesFNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcppstl.lct
file_name.ldt STYLE PRINTER_STYLE_NAME="printer style name"
2 - LookupsFNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/aflvmlu.lct
file_name.ldt FND_LOOKUP_TYPE APPLICATION_SHORT_NAME="FND"
LOOKUP_TYPE="lookup name"
3 - Descriptive Flexfield with all of specific ContextsFNDLOAD apps/apps O Y DOWNLOAD
$FND_TOP/patch/115/import/afffload.lct file_name.ldt DESC_FLEX
P_LEVEL=’COL_ALL:REF_ALL:CTX_ONE:SEG_ALL’ APPLICATION_SHORT_NAME="FND"
DESCRIPTIVE_FLEXFIELD_NAME="desc flex name" P_CONTEXT_CODE="context name"
4 - Key Flexfield StructuresFNDLOAD apps/apps O Y DOWNLOAD
$FND_TOP/patch/115/import/afffload.lct file_name.ldt KEY_FLEX
P_LEVEL=’COL_ALL:FQL_ALL:SQL_ALL:STR_ONE:WFP_ALL:SHA_ALL:CVR_ALL:SEG_ALL’
APPLICATION_SHORT_NAME="FND" ID_FLEX_CODE="key flex code"
P_STRUCTURE_CODE="structure name"
5 - Concurrent ProgramsFNDLOAD apps/apps O Y DOWNLOAD
$FND_TOP/patch/115/import/afcpprog.lct file_name.ldt PROGRAM
APPLICATION_SHORT_NAME="FND" CONCURRENT_PROGRAM_NAME="concurrent name"
6 - Value SetsFNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct
file_name.ldt VALUE_SET_VALUE FLEX_VALUE_SET_NAME="value set name"
7 - Value Sets with valuesFNDLOAD apps/apps O Y DOWNLOAD
$FND_TOP/patch/115/import/afffload.lct file_name.ldt VALUE_SET
FLEX_VALUE_SET_NAME="value set name"
8 - Profile OptionsFNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afscprof.lct
file_name.ldt PROFILE PROFILE_NAME="profile option" APPLICATION_SHORT_NAME="FND"
8 - Request GroupsFNDLOAD apps/apps O Y DOWNLOAD
$FND_TOP/patch/115/import/afcpreqg.lct file_name.ldt REQUEST_GROUP
REQUEST_GROUP_NAME="request group" APPLICATION_SHORT_NAME="FND"
10 - Request SetsFNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct
file_name.ldt REQ_SETAPPLICATION_SHORT_NAME="FND" REQUEST_SET_NAME="request
set"
11 - ResponsibilitiesFNDLOAD apps/apps O Y DOWNLOAD
$FND_TOP/patch/115/import/afscursp.lct file_name.ldt FND_RESPONSIBILITY
RESP_KEY="responsibility"
12 - MenusFNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct
file_name.ldt MENU MENU_NAME="menu_name"
13 - Forms PersonalizationFNDLOAD apps/apps 0 Y DOWNLOAD
$FND_TOP/patch/115/import/affrmcus.lct file_name.ldt FND_FORM_CUSTOM_RULES
function_name=FUNCTION_NAME
Note: UPLOAD command is same for all except replacing the .lct and passing any extra parameters
if you want to pass
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/corresponding.lct
upload_file.ldt

Вам также может понравиться