- Installations (New desc. flex field creations etc)
- Upgrades (Apps upgrade etc)
- Maintenance (Value set changes etc)
FNDLOAD is one and only oracle solution. It can be defined as a concurrent program that can move Oracle Applications data between database and text file representations. Or this can be defined as FNDLOAD can download data from an application entity into an editable text file, which can be uploaded to another database.
Working of FNDLOAD: Conversion between database format and text file format is specified by a configuration file. Oracle does provide configuation file and it is important to just pass the configuration file name and then just call the loader and leave everything .
These are the extensive list which can be done through FNDLOAD
- Concurrent Programs, Executables
- Request Groups, Request Sets
- Profile Options
- Key and Descriptive Flexfields
- Menus and Responsibilities
- Forms and Form Functions
- Attachments
- Messages
- Value Sets and Values
- Lookup Types
- User Responsibilities
- Printer Definitions
- FND Dictionary
- Help Configuration
- Document Sequences
- Concurrent Manager Schedules
Advantages using FNDLOAD are :
- Because downloaded data is stored in a text file, version administration is possible
- No learning curve.
- Fully supported and recommended by Oracle
- Capture the migrations in a file and use it during installations, clones etc. to migrate in batch
- Pin-point when something happened and where (database) easily
- Your AOL data migration process is now simplified and streamlined.
Disadvantages:
- Applications patching mechanisms use FNDLOAD heavily – possibility of negative impact is not zero
- UPLOAD_MODE=REPLACE only for menus
- No validation against migrating database/instance sensitive data
Syntax : To use FNDLOAD, the following syntax is needed.
FNDLOAD apps/appspwd 0 Y mode configfile datafile entity [parameter1…..]
- The mode is either DOWNLOAD or UPLOAD.
- The configfile is the file that Fndload needs to download on upload data.
- The data file is the output file, in which the downloaded data is written
- The entity is the entity you want to download,
Modes of Operation:Two modes .. Upload and Download…
1. Example of download:
FNDLOADapps/pwd 0 Y DOWNLOAD ${FND_TOP}/patch/115/import/afcpprog.lct myfile.ldt \ PROGRAM CONCURRENT_PROGRAM_NAME= concurrent_program_short_name> APPLICATION_SHORT_NAME=
2. Example of Upload
FNDLOAD apps/pwd 0 Y UPLOAD ${FND_TOP}/patch/115/import/afcpprog.lct myfile.ldt - CUSTOM_MODE=FORCE undocumented parameter
FNDLOAD Load Options:
- Application level OR single entity level download: Download all the profile options of Inventory or just the INV: Default Primary UOM
- Entire OR Partial upload of a data file: Upload the entire myfile.ldt or just a single enity indicated by - and mode UPLOAD or UPLOAD_PARTIAL
Entity name required for UPLOAD_PARTIAL mode - Custom mode force update : To override Oracle’s upload algorithm and update the custom AOL data regardless, use CUSTOM_MODE= FORCE
UPLOAD_MODE= REPLACE (only for menus) - Support for NLS uploads : NLS data uploads for translated columns are supported, use UPLOAD_MODE= NLS
Config File Location: By default Oracle delivers most of configuration files you can use to download certain entities.
1. Configuration files with extension .lct
On Unix - all the configuration files are in $FND_TOP/patch/115/import directory
On Unix – Oracle also places the original configuration files in $FND_TOP/admin/import directory
2. Data files with extension .ldt
- The config files (.lct) are delivered and maintained by Oracle.
- It has entity definitions, parent-child relationships and user input parameters identified by :NAME
- Downloading a parent automatically downloads all children - e.g. Concurrent Program download
- The data files (.ldt) have both entity definition and the data
- It also shows the version and the location of the config file (.lct) that was used
- Without the config file, data file is useless
- Without the data file, config file is meaningless
- Key files: .lct and .ldt
- You must run the FNDLOAD as apps user not as applsys or any other, otherwise you will receive Ora-6550
- Both are easily readable, editable and portable
- DO NOT MODIFY Oracle’s .lct files
- Use your favorite editor (I would suggest Textpad or Editplus) to manipulate only the .ldt files but be cautious about data type, length, delimiter placements etc.
- Use the log file outputs or .ldt file contents creatively for quick file comparisons and answer questions faster (Why can’t I access that? What is that profile option name, value and level? What is the value set used for that DFF segment attribute10 etc.)
- Partial string searches (which value set has Priority “something” in its where clause? etc)
Sample Script Code:
1 - Printer Styles
FNDLOAD apps/apps@seed115 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@seed115 O Y DOWNLOAD $FND_TOP/patch/115/import/aflvmlu.lct file_name.ldt FND_LOOKUP_TYPE APPLICATION_SHORT_NAME=”prod” LOOKUP_TYPE=”lookup name”
3 - Descriptive Flexfield with all of specific Contexts
FNDLOAD apps/apps@seed115 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=”prod” DESCRIPTIVE_FLEXFIELD_NAME=”desc flex name” P_CONTEXT_CODE=”context name”
4 - Key Flexfield Structures
FNDLOAD apps/apps@seed115 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=”prod” ID_FLEX_CODE=”key flex code” P_STRUCTURE_CODE=”structure name”
5 - Concurrent Programs
FNDLOAD apps/apps@seed115 O Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct file_name.ldt PROGRAM APPLICATION_SHORT_NAME=”prod” CONCURRENT_PROGRAM_NAME=”concurrent name”
6 - Value Sets
FNDLOAD apps/apps@seed115 O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct file_name.ldt VALUE_SET FLEX_VALUE_SET_NAME=”value set name”
7 - Value Sets with values
FNDLOAD apps/apps@seed115 O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct file_name.ldt VALUE_SET_VALUE FLEX_VALUE_SET_NAME=”value set name”
8 - Profile Options
FNDLOAD apps/apps@seed115 O Y DOWNLOAD $FND_TOP/patch/115/import/afscprof.lct file_name.ldt PROFILE PROFILE_NAME=”profile option” APPLICATION_SHORT_NAME=”prod”
9 - Requset Group
FNDLOAD apps/apps@seed115 O Y DOWNLOAD $FND_TOP/patch/115/import/afcpreqg.lct file_name.ldt REQUEST_GROUP REQUEST_GROUP_NAME=”request group” APPLICATION_SHORT_NAME=”prod”
10 - Request Sets
FNDLOAD apps/apps@seed115 O Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct file_name.ldt REQ_SET APPLICATION_SHORT_NAME=”prod” REQUEST_SET_NAME=”request set”
11 - Responsibilities
FNDLOAD apps/apps@seed115 O Y DOWNLOAD $FND_TOP/patch/115/import/afscursp.lct file_name.ldt FND_RESPONSIBILITY RESP_KEY=”responsibility
12 - Menus
FNDLOAD apps/apps@seed115 O Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct file_name.ldt MENU MENU_NAME=”menu_name”
13 – Forms/Functions
FNDLOAD apps/apps@seed115 0 Y DOWNLOAD $FND_TOP/patch/115/import/affrmcus.lct file_name.ldt FND_FORM_CUSTOM_RULES The Upload syntax for all styles: FNDLOAD apps/apps@seed115 0 Y UPLOAD $FND_TOP/patch/115/import/affrmcus.lct file_name.ldt
14. User/Responsibilities
FNDLOAD apps/apps@seed115 0 Y DOWNLOAD @FND:patch/115/import/afscursp.lct file_name.ldt FND_USER Then UPLOAD FNDLOAD apps/apps@seed115 0 Y UPLOAD [UPLOAD_PARTIAL] @FND:patch/115/import/afscursp.lct file_name.ldt FND_USER [