Home » Oracle » Oracle Ebuisness Suite » FNDLOAD command

FNDLOAD command

INTRODUCTION TO FNDLOAD

  • The FNDLOAD command/loader is a general-purpose utility that moves structured data between a text file and a database.
  • Structures supported by the loader include master-detail relationships, and foreign key reference relationships, including arbitrary chains of said relationships.
  • The loader operates in one of three modes: download, upload, or upload_partial. In the download mode, data is downloaded from the database to a text file; in the upload mode and upload_partial mode, data is uploaded from a text file to the database.
  • In either case, the structure of the data involved is described by a configuration file. The configuration file describes not only the structure of the data but the access methods to use to copy the data into or out of the database. The same configuration file may be used for both uploading and downloading, and it is always read by the loader. The contents of the configuration file are authored by the user of the utility.
  • When downloading, the loader will create a second file, called the data file, that contains the structured data selected for downloading. The data file has a standard syntax for representing the data that has been downloaded. When uploading, the loader reads a data file to get the data that it is to upload. Most likely, the data file was produced by a previous download but may have come from another source. In any case, the data file may not be interpreted without the corresponding configuration file available.
  • It is located in the $FND_TOP/bin directory
See also  Shared Pool in Oracle and Shared pool flush in Oracle database

CONFIGURATION FILE

The contents of the configuration file are at the heart of the loader operation since they specify the structure of the data and the access methods to use to move the data between the data file and a database.

A configuration file has the form:

configuration_file ::= item { item }
item ::= definition | download | upload

A configuration file consists of a series of one or more items. Each item is either an entity definition, a download access method, or an upload access method.

Each entity type defined in a configuration file must have all three elements (definition, download, and upload) defined exactly once. The entity definition must appear before either the download or upload access method for that entity type, but they need not be contiguous. There are no other restrictions on the ordering items in the configuration file.

DOWNLOAD

The download operation of the loader is invoked in the following manner:

FNDLOAD logon [ 0 Y ] DOWNLOAD configfile datafile entity [ param ... ]

where

FNDLOAD Command

Upon invocation, the FNDLOAD command reads the configuration file and proceeds to download data from the database beginning with the download access method provided for the entity named on the command line. The data is written to the data file.

UPLOAD

The upload operations of the loader are invoked in the following
manner:

FNDLOAD logon [ 0 Y ] UPLOAD configfile datafile [- [param ...] ]
FNDLOAD logon [ 0 Y ] UPLOAD_PARTIAL configfile datafile [entity [param ...] ]

where

FNDLOAD Command

The FNDLOAD command starts by reads the configuration file, and then proceeds to read the data file, one value at a time. When using the UPLOAD_PARTIAL mode, each value whose type is the one specified on the command line is uploaded to the database using the upload methods provided. When using the UPLOAD mode all values in the data file are uploaded to the database using the upload methods provided.

To avoid calamities in the middle of long-running operations, the loader commits changes after each top-level value is uploaded. Thus, an upload method may fail without causing the entire operation to abort.

What are ldt and lct files

Steps  to use FNDLOAD Command  

Step 1: Log in to the apps server of the source environment and source the environment file. Then run the following command by supplying the parameters given in {} as per your need. I am using the example of a concurrent program download

See also  how to find the semaphore for the Database instance
FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct {file_name.ldt} PROGRAM APPLICATION_SHORT_NAME=”{application_short_name}” CONCURRENT_PROGRAM_NAME=”{concurrent_name}”

The above command will generate ldt file in your working directory

Step 2:  Copy the .ldt file to the destination instance server

Step 3: Log in to the apps server of the destination environment and go into the directory  where ldt file is copied

FNDLOAD apps/pass  0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lct   {file_name}.ldt
Steps  to use FNDLOAD Command  

Now let’s check out various use cases of FNDLOAD

Download /Upload Concurrent Programs using FNDLOAD

Download:
FNDLOAD apps/<apps_pass> O Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct <file_name.ldt> PROGRAM APPLICATION_SHORT_NAME="CUST" CONCURRENT_PROGRAM_NAME="CUST_CP_NAME"
Upload
FNDLOAD apps/<apps_pass> 0 Y UPLOAD @FND:patch/115/import/afcpprog.lct <file_name.ldt>

Download/Upload Form Personalization using FNDLOAD

Download:
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/affrmcus.lct <file_name.ldt> FND_FORM_CUSTOM_RULES function_name="CUSTFPNAME"
Upload
FNDLOAD apps/<apps_pass> 0 Y UPLOAD $FND_TOP/patch/115/import/affrmcus.lct <file_name.ldt>

 Download /Upload FND Users using FNDLOAD

Download:
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/afscursp.lct <file_name.ldt> FND_USER USER_NAME='USER_NAME'
Upload
FNDLOAD apps/<apps_pass> 0 Y UPLOAD $FND_TOP/patch/115/import/afscursp.lct <file_name.ldt>

Notes for using FNDLOAD against FND_USER:-
(1). Password will be downloaded in ldt files in encrypted format only
(2). After uploading using FNDLOAD, the user will be prompted to change their password again during their next sign-on attempt.
(3). All the responsibilities will be extracted by FNDLOAD along with User Definition in FND_USER
(3). In the Destination Environment, make sure that you have done FNDLOAD for new responsibilities before running FNDLOAD on users

Download /Upload Printer Styles:

Download:
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcppstl.lct <file_name.ldt> STYLE PRINTER_STYLE_NAME="PRINT_STYLE"
Upload
FNDLOAD apps/<apps_pass> 0 Y UPLOAD $FND_TOP/patch/115/import/afcppstl.lct <file_name.ldt>

Download /Upload Oracle Profile Options:

Download
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/afscprof.lct  <file_name.ldt> PROFILE PROFILE_NAME="CUST_PROF_NAME" APPLICATION_SHORT_NAME="CUST"
Upload
FNDLOAD apps/<apps_pass> 0  Y UPLOAD $FND_TOP/patch/115/import/afscprof.lct <file_name.ldt>

Download /Upload Forms:

Download:
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct <file_name.ldt> FORM APPLICATION_SHORT_NAME="CUST" FORM_NAME="CUSTFRMNAME"
Upload
FNDLOAD apps/<apps_pass> 0 Y UPLOAD @FND:patch/115/import/afsload.lct <file_name.ldt>

Download /Upload Functions:

Download:
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct <file_name.ldt>  FUNCTION FUNC_APP_SHORT_NAME="CUST" FUNCTION_NAME="CUSTFUNNAME"
Upload
FNDLOAD apps/<apps_pass> 0 Y UPLOAD @FND:patch/115/import/afsload.lct <file_name.ldt>

Download /Upload Menus:

Download:
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct <file_name.ldt>   MENU MENU_NAME="CUSTMENUNAME"
Upload
FNDLOAD apps/<apps_pass> 0 Y UPLOAD @FND:patch/115/import/afsload.lct <file_name.ldt>
Oracle Menus are not attached to applications. Hence no need to include application short name  CUSTMENUNAME is the menu name. This can be validated via below SQL
select user_menu_name from fnd_menus_vl where menu_name = ‘CUSTMENUNAME’;

Download /Upload  Responsibilities:

Download:
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/afscursp.lct <file_name.ldt> FND_RESPONSIBILITY RESP_KEY="CUSTRESNAME"
Upload
FNDLOAD apps/<apps_pass> 0 Y UPLOAD $FND_TOP/patch/115/import/afscursp.lct <file_name.ldt>

Download /Upload Request Groups:

Download:
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcpreqg.lct <file_name.ldt> REQUEST_GROUP REQUEST_GROUP_NAME="CUSTRQGNAME" APPLICATION_SHORT_NAME="CUST"
Upload
FNDLOAD apps/<apps_pass> 0 Y UPLOAD $FND_TOP/patch/115/import/afcpreqg.lct <file_name.ldt>

Download /Upload Request Sets:

Download: 
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct <file_name1.ldt>  REQ_SET REQUEST_SET_NAME="CUSTREQSETNAME"
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct <file_name2.ldt> REQ_SET_LINKS REQUEST_SET_NAME="CUSTREQSETNAME"
Upload
FNDLOAD apps/<apps_pass>0 Y UPLOAD $FND_TOP/patch/115/import/afcprset.lct <file_name1.ldt>
FNDLOAD apps/<apps_pass>0 Y UPLOAD $FND_TOP/patch/115/import/afcprset.lct <file_name2.ldt>

Download/Upload Lookups:

Download:
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/aflvmlu.lct <file_name.ldt> FND_LOOKUP_TYPE APPLICATION_SHORT_NAME="CUST" LOOKUP_TYPE="CUST_LOOKUP_NAME"
Upload
FNDLOAD apps/<apps_pass> 0 Y UPLOAD aflvmlu.lct <file_name.ldt>

Download /Upload Value Sets:

Download:
FNDLOAD apps/<apps_pass> 0 Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct <file_name.ldt>VALUE_SET FLEX_VALUE_SET_NAME="CUSTVAL_SETNAME"
Upload
FNDLOAD apps/<apps_pass> 0 Y UPLOAD afffload.lct <file_name.ldt>

Best Practices for Using FNDLOAD Command

1. Test FNDLOAD commands multiple times in multiple instances before running into PROD instances.
2. UPLOAD_PARTIAL is used to modify existing programs.
3. Execution sequence is important. If you are creating a new responsibility with a new form, function, or menu. Then Upload first the form,then the function, menu and then the responsibility
4 Always check the ldt files to make sure, right data is extracted

See also  How to transfer statistics between databases in Oracle

More info on Apps
OA Framework Basics : Oracle Application Framework (OAF) is an architecture for creating web based pages with in Oracle EBS platform.OAF follows MVC architecture. MVC stands for Module View Controller Architecture
XMLImporter :XMLImporter is used for importing the page or personalization into the database while FndXdfCmp for new schema definition and changes
Oracle concurrent Manager :How an E-Business Suite Concurrent Manager Process Works,Oracle Concurrent Manager,What is internal monitor,What is service manager and troubleshooting
oracle R12 tutorial : List of articles for EBS DBA administration
WFLOAD command : WFLOAD command can be used UPLOAD,DOWNLOAD workflow between file and database. This is also used to migrate workflow across the environment
date functions in oracle :Check out this post for oracle date functions, oracle date difference in years,oracle date difference in days, oracle date difference in months
https://docs.oracle.com/cd/E18727_01/doc.121/e12893/T174296T206863.htm

1 thought on “FNDLOAD command”

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top