Saturday, September 11, 2010

FNDLOAD

What is Data Synchronization ?
Data Synchronization is a process in which some setup data would be synchronized, and this would be more important when you are working in oracle application development/implementation project? The equally important that AOL data Migration takes place necessary to synchronize the data across databases instance during
  • Installations (New desc. flex field creations etc)
  • Upgrades (Apps upgrade etc)
  • Maintenance (Value set changes etc)
Then… What.. FNDLOAD
Yes, that 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.
How it works
Conversion between database format and text file format is specified by a configuration file. Oracle does provide confirmation file and it is important to just pass the configuration file name and then just call the loader and leave everything .The schematic visual representation of the loader is like:
What can be done?
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
Then…what are advantages when using FNDLOAD are :
  1. Because downloaded data is stored in a text file, version administration is possible
  2. There is nothing to worry to go to purchase because..Investment = 0$
  3. No learning curve. this is relief for developer/dba’s
  4. Fully supported and recommended by Oracle
  5. Capture the migrations in a file and use it during installations, clones etc. to migrate in batch
  6. Pin-point when something happened and where (database) easily
  7. Your AOL data migration process is now simplified and streamlined – goal attained!!
And these are some Disadvantages also :
  1. Applications patching mechanisms use FNDLOAD heavily – possibility of negative impact is not zero
  2. UPLOAD_MODE=REPLACE only for menus
  3. No validation against migrating database/instance sensitive data
The Syntax
To use FNDLOAD, the following syntax is needed.
FNDLOAD apps/appspwd 0 Y mode configfile datafile entity [parameter1…..]
As you can see, some info is needed.- First you will need to know the Apps password.
  • The mode is either DOWNLOAD or UPLOAD.
  • The configfile is the file that Fndload needs to download on upload data.
  • T he data file is the output file, in which the downloaded data is written
  • The entity is the entity you want to download,
  • Parameters van is passed to download a certain Alert
Modes of Operation
This is important because it would drive the whole flow, and it always be two mode .. Upload and Download…
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=<application_short_name>
Example of Upload
FNDLOAD apps/pwd 0 Y UPLOAD ${FND_TOP}/patch/115/import/afcpprog.lct myfile.ldt – CUSTOM_MODE=FORCE undocumented parameter
WHAT IS FNDLOADLoad Options:
  • Application level OR single entity level download
    • (Example) Download all the profile options of Inventory or just the INV: Default Primary UOM
  • Entire OR Partial upload of a data file
    • (Example) 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
Then ..Where is Config File Located
By default Oracle delivers most of configuration files you can use to download certain entities.
  • 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
  • Data files with extension .ldt
and..FNDLOAD File Structures is
  • 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 – (Example) Concurrent Program download
Take a note FNDLOAD File Structures
  • 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
..Remember regarding FNDLOAD Files
  • Key files: .lct and .ldt
  • You must run the FNDLOADas 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 for these Objects :
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 [<USER>]
References:
  • Oracle Applications Systems Administrator’s Guide
  • Metalink Notes: 117084.1, 228614.1 232029.1 , 274667.1
Here is the script for download and upload of Data definitions and template
FNDLOAD apps/$CLIENT_APPS_PWD O Y DOWNLOAD $XDO_TOP/patch/115/import/xdotmpl.lct XX_MY_DATA_DEF_NAME.ldt XDO_DS_DEFINITIONS APPLICATION_SHORT_NAME=”XXASN” DATA_SOURCE_CODE=”XX_MY_DATA_DEF_NAME”
FNDLOAD apps/$CLIENT_APPS_PWD 0 Y UPLOAD $XDO_TOP/patch/115/import/xdotmpl.lct XX_MY_DATA_DEF_NAME.ldt

No comments:

Post a Comment