Blog dedicated to Oracle Applications (E-Business Suite) Technology; covers Apps Architecture, Administration and third party bolt-ons to Apps

Friday, October 26, 2007

Use FNDLOAD to upload and download apps setup data

Vasu asked me for a way to download a DFF (Descriptive Flex field) into an LDT file. Metalink note 274667.1 has the FNDLOAD Commands to Download Different Seed Data Types. Pasting the contents of the note, just in case it disappears from metalink :)

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.

1 - Printer Styles
FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcppstl.lct file_name.ldt STYLE PRINTER_STYLE_NAME="printer style name"

2 - Lookups
FNDLOAD 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 Contexts

Note <274528.1> - Note How To Download Single Context Using FNDLOAD For Descriptive Flexfield.
Note <256573.1> - How To Download/Upload Descriptive Flexfield With Name $SRS$.

4 - Key Flexfield Structures

5 - Concurrent Programs
FNDLOAD 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 Sets
FNDLOAD 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 values
FNDLOAD 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 Options
FNDLOAD 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 Groups
FNDLOAD 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 Sets
FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct file_name.ldt REQ_SET

Note <247126.1> - How To Download Request Set Definition From One Instance And Upload On Another Instance

11 - Responsibilities
FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afscursp.lct file_name.ldt FND_RESPONSIBILITY RESP_KEY="responsibility"

12 - Menus
FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct file_name.ldt MENU MENU_NAME="menu_name"

Oracle Application System Administrator's Guide Appendix C has detail description on the usage of loaders.


Ramprasad said...

can we migrate concurrent programs of one application at a shot.

I mean, can we migrate Concurrent Programs attached to one Application.

Vikram Das said...

Hi Ramprasad,

I think you can write a small sql and generate a script using the command mentioned as point 5 in the post:

select "FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct file_name.ldt PROGRAM APPLICATION_SHORT_NAME='FND' CONCURRENT_PROGRAM_NAME=""||concurrent_program_name||""

This will generate many rows of FNDLOAD commands for each concurrent program.

- Vikram

Natasa said...


Is it possible to migrate translations of RXi reports to other instances using FNDLOAD?

Tnx in advance!

Vikram Das said...

Hi Natasa,

For the benefit of other readers let me first explain

What is an RX report ? (Metalink Note 430075.1)

* The RX reports are not designed with Oracle Reports;
* There is no RDF file for the RX Report;
* The RX report is generated by the database packages.

The RXi was developed by FA development team. In spite of that, the JG module (or the report respective module) must have status 'installed' so that the JG RX reports works. The same rule is valid for AP RX, AR RX or FA RX reports.
You may run the following statement in a SQL*plus session (user = APPS) to determine the present status of each of your Modules:
select t.application_name
, t.application_id
, i.patch_level
, decode(i.status,'I','Fully Installed',
'N','Not Installed','S','Shared','Undetermined') status
from fnd_product_installations i
, fnd_application_vl t
where i.application_id = t.application_id
order by t.application_id;

What makes RX reports a Variable Format Report ?
The RX report is generated by the database packages.
The database packages prepare data inside the interim tables called Interface Tables.
At the end this data can be presented in text, html, CSV (Comma-Separated Values), and tab-delimited formats. User can define which columns should be shown at the final output of the RX report. This output type is usually possible to select via report parameters "Output Format" OR if there isn't any, via System Administrator; Concurrent Program Define; Query it and you will see a field called "Output Format"; just changed it as you wish.

What is a RXi Attribute Set ?
User can define which columns should be shown at the final output of the RX report.
The set of columns is called Attribute Set
Attribute Set is a subset of all columns available for the report.

Based on this information won't the reports get migrated when the DB packages are migrated ?

- Vikram

Natasa said...

Hi Vikram,

At first, I want to thank you for detailed explanation. Also, I have read Metalink note you mentioned and some additional documentation, aswell.

After all, I am still a little bit confused:) about next:

Our customer has 2 instances, one is for test purpose, and other one is for production. If I make some new attribute sets for certain RXi reports and if I translate columns prompts into the local language on test instance, how will I migrate my changes to the production instance? As I understood, DB packages generates RXi reports and read information from FA_RX_ATTRSETS, FA_RX_REP_COLUMNS and FA_RX_SUMMARY tables which keep information of attribute sets.
So, would the DB packages migration be enough for migrating my changes to the other instance?

Vikram Das said...

Hi Natasa,

Since I have not done it myself, there's only one way to find out. Either do a clone and check if everything migrates automatically, or manually extract the rows from the tables identified by you from the source instance and manually insert those rows in the target instance.

- Vikram

Anonymous said...


I tried to fndload for concurrent programs. I tried both executable and Program separately.
Executable was fine, but for the Concurrent program while downloading it gives me an error
'Column 51 in the select list is too large for ENABLE_TIME_STATISTICS in entity PROGRAM' in the log file.

Mark Mestetskiy said...

iTerra Consulting released MigrationLogiK (G) version of its GUI for FNDLOAD. (G) version doesn't require server listener but it is capable to generate batch UNIX script for your FNDLOAD commands and all objects to be migrated. Easy to use , takes seconds to have it up and running. Link

John said...

Vikram -
I see you have familiarity with RX Reports. My question is how to add my own reports. There must be an entry in the FA_RX_REPORTS table that identifies the concurrent program and interface table to use. Without this entry it is not possible to create an attribute set. So how is that entry added? Is there a developer screen?

Mark Mestetskiy said...

FNDLOAD GUI application - MigrationLogiK is a highly efficient and intuituve tool allowing building migration scripts for both FND and database objects.

Anonymous said...

Hi Vikram,

is there anyway we can restore our applciation user after clone .
Suppose we have few sets of user in uat env .After clone we need the same set up user.What is the procedure for it

Pablo Melèndez said...

What would be the script to download the names of options that were configured profiles to responsibilities

Raghu Nandan said...

Is there any way to down load and upload lookups and profile with single FNDLOAD command?

Which we need to add download as preclone steps and upload as post clone steps.

koti reddy said...

Hi Vikram,
I have an issue with FNDLOAD UPLOAD
I have a lookup type of three look up codes in target. I need to upload only two lookcode ldt in target from source. when I am trying to upload it is showing as uploaded successfully. but still three lookup codes are available. Can you please assist me in this.