Moving Form Personalizations Between Instances


Once you create and test personalizations in your test instance, you can move them to production instances. Personalizations can be extracted by the loader on a per-function basis or per-form basis (that is, each loader file will contain all of the personalizations for a single function or form, respectively). Note that upon uploading, all prior personalizations for that function are first deleted, and then the contents of the loader file are inserted.

The loader syntax is as follows:

To download rules for a particular function:

FNDLOAD / 0 Y DOWNLOAD $FND_TOP/patch/115/import/affrmcus.lct FND_FORM_CUSTOM_RULES function_name=

Note: this style is not recommended, as the personalizations that affect a particular function can now be a mix of function- and form-level rules.

To download rules for a particular form:

FNDLOAD/ 0 Y DOWNLOAD $FND_TOP/patch/115/import/affrmcus.lctFND_FORM_CUSTOM_RULES form_name=

To download all personalizations (all forms and functions):

FNDLOAD / 0 Y DOWNLOAD $FND_TOP/patch/115/import/affrmcus.lct FND_FORM_CUSTOM_RULES

Upload:

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

Advertisements

FNDLOAD Examples


FNDLOAD Examples

Here are few examples of FNDLOAD.

Concurrent Programs:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct XXCPNAME.ldt PROGRAM APPLICATION_SHORT_NAME=”XXCUST” CONCURRENT_PROGRAM_NAME=”XXCPNAME”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lct XXCPNAME.ldt

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD_PARTIAL $FND_TOP/patch/115/import/afcpprog.lct XXCPNAME.ldt PROGRAM CONCURRENT_PROGRAM_NAME=”XXCPNAME” APPLICATION_SHORT_NAME=”XXCUST”

Responsibilities:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afscursp.lct XXRESNAME.ldt FND_RESPONSIBILITY RESP_KEY=”XXRESNAME”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afscursp.lct XXRESNAME.ldt

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD_PARTIAL $FND_TOP/patch/115/import/afscursp.lct XXRESNAME.ldt FND_RESPONSIBILITY RESP_KEY=”XXRESNAME” APPLICATION_SHORT_NAME=”XXCUST”

Request Groups:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcpreqg.lct XXRQGNAME.ldt REQUEST_GROUP REQUEST_GROUP_NAME=”XXRQGNAME” APPLICATION_SHORT_NAME=”XXCUST”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afcpreqg.lct XXRQGNAME.ldt

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD_PARTIAL $FND_TOP/patch/115/import/afcpreqg.lct XXRQGNAME.ldt REQUEST_GROUP REQUEST_GROUP_NAME=”XXRQGNAME” APPLICATION_SHORT_NAME=”XXCUST”

Request Sets:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct XXRQSNAME.ldt REQ_SET REQUEST_SET_NAME=”XXRQSNAME”

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct XXRQSLNAME.ldt REQ_SET_LINKS REQUEST_SET_NAME=”XXRQSNAME”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afcprset.lct XXRQSNAME.ldt

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afcprset.lct XXRQSLNAME.ldt

Forms:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct XXFRMNAME.ldt FORM APPLICATION_SHORT_NAME=”XXCUST” FORM_NAME=”XXFRMNAME”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afsload.lct XXFRMNAME.ldt

Functions:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct XXFUNNAME.ldt FUNCTION FUNC_APP_SHORT_NAME=”XXCUST” FUNCTION_NAME=”XXFUNNAME”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afsload.lct XXFUNNAME.ldt

Menus:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct XXMNNAME.ldt MENU MENU_NAME=”XXMNNAME”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afsload.lct XXMNNAME.ldt

Profile Options:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afscprof.lct XXPRNAME.ldt PROFILE PROFILE_NAME=”XXPRNAME” APPLICATION_SHORT_NAME=”XXCUST”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afscprof.lct XXPRNAME.ldt

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD_PARTIAL $FND_TOP/patch/115/import/afscprof.lct XXPRNAME.ldt PROFILE PROFILE_NAME=” XXPRNAME” APPLICATION_SHORT_NAME=”XXCUST”

Lookups:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/aflvmlu.lct XXLKPNAME.ldt FND_LOOKUP_TYPE APPLICATION_SHORT_NAME=”XXCUST” LOOKUP_TYPE=”XXLKPNAME”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/aflvmlu.lct XXLKPNAME.ldt

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD_PARTIAL $FND_TOP/patch/115/import/aflvmlu.lct XXLKPNAME.ldt FND_LOOKUP_TYPE LOOKUP_TYPE=”XXLKPNAME” APPLICATION_SHORT_NAME=”XXCUST”

Value Sets:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct XXVALSNAME.ldt VALUE_SET FLEX_VALUE_SET_NAME=”XXVALSNAME”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afffload.lct XXVALSNAME.ldt

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD_PARTIAL $FND_TOP/patch/115/import/afffload.lct XXVALSNAME.ldt VALUE_SET FLEX_VALUE_SET_NAME=”XXVALSNAME” APPLICATION_SHORT_NAME=”XXCUST”

Descriptive Flex-fields:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct XXDFFNAME.ldt DESC_FLEX P_LEVEL=’COL_ALL:REF_ALL:CTX_ONE:SEG_ALL’ APPLICATION_SHORT_NAME=”PN” DESCRIPTIVE_FLEXFIELD_NAME=”PN_LEASE_DETAILS” P_CONTEXT_CODE=”Global Data Elements”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afffload.lct XXDFFNAME.ldt

Key Flex-fields:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct XXKFFNAME.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”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afffload.lct XXKFFNAME.ldt

Form Personalization:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/affrmcus.lct XXFPNAME.ldt FND_FORM_CUSTOM_RULES function_name=”XXFPNAME”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/affrmcus.lct XXFPNAME.ldt

FND Users:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afscursp.lct XXUSERNAME.ldt FND_USER USER_NAME=’XXUSERNAME’

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afscursp.lct XXUSERNAME.ldt

Printer Styles:

Source:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcppstl.lct XXPRSTYLE.ldt STYLE PRINTER_STYLE_NAME=”XXPRSTYLE”

Target:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afcppstl.lct XXPRSTYLE.ldt

Data Definitions for XML Publisher Report Template:

$FND_TOP/bin/FNDLOAD username/password@database 0 Y DOWNLOAD $XDO_TOP/patch/115/import/xdotmpl.lct XXBRPRPOPRINT_XML_DD.ldt XDO_DS_DEFINITIONS APPLICATION_SHORT_NAME=’XXCUST’ DATA_SOURCE_CODE=XXBRPRPOPRINT_XML’

$FND_TOP/bin/FNDLOAD username/password@database  0 Y UPLOAD $XDO_TOP/patch/115/import/xdotmpl.lct XXBRPRPOPRINT_XML_DD.ldt

 

FNDLOAD in Oracle Apps


FNDLOAD in Oracle Apps

FNDLOAD is a developer tool provided by Oracle that migrates data between Oracle Application instances. It is executed at the UNIX command line or via Unix scripts created by the developer. Oracle provides configuration files for AOL setup data, HR setups and AME. These configuration files define the parent and child entities to be downloaded and uploaded. This “out of the box” standard functionality ensures a reliable, repeatable process to migrate setup data between instances.

What can be migrated by 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

How to Migrate Data?

The executable for FNDLOAD is located in $FND_TOP/bin. FNDLOAD can be executed from the command line with the following parameters or ideally placed in a UNIX script that logs successful uploads or downloads.

The syntax of FNDLOAD is as follows:

 

FNDLOAD <apps/$APPS_PW> 0 Y <Mode> <Configfile> <target data file> <entity> <parameter>

Where:

  • 0 Y : Concurrent Program Flags
  • Mode: UPLOAD, UPLOAD_PARTIAL or DOWNLOAD
  • Configfile = Configuration file (.lct) provided by Oracle in $FND_TOP/patch/115/import
  • Target Data File: Name of the file (.ldt) to be created by Download or used by Upload. This file contains the definition of the entity being migrated.
  • Entity: Type of object being migrated (printer style, lookup, executable,…)
  • Parameter: Parameter related to the entity (Which printer style, lookup, etc)

Configuration Files:

Configurations files are provided by Oracle for AOL, HR and AME entities. AOL configuration files are located in $FND_TOP/patch/115/import. HR and AME configuration files are located in $PER_TOP/patch/115/import in Release 11i. In release 12, the AME configuration files have moved to $AME_TOP/patch/12/import.

Another Alternative: iSetup

iSetup is the nearest Oracle provided alternative to FNDLOAD that will meet some of the needs for change management. iSetup is ideal during implementations and is a front end functional tool. iSetup additionally has the advantage of being able to migrate application data where FNDLOAD is only for setup data. However, several significant limitations are a factor in the change management process. iSetup does not consider the owner or timestamp in order to preserve the seeded data or most recent version of data. iSetup migrates data only in the primary language. There are no multi-language capabilities. More significantly for change management, iSetup has limited ability to migrate specific objects. In some cases, filters are available to migrate individual setups such as a single concurrent program, but in many cases, it’s all or nothing. The source and target instance must be at the same patch level for iSetup. iSetup is not an option during the upgrade process even for a point release upgrade. Finally, iSetup will not migrate Approvals Management entities.

FNDLOAD Examples

 

 

AOL : Valueset :A Beginner’s Guide


AOL : Valueset – A Beginner’s Guide

What is value set in Oracle application AOL?

  • Value set is primarily a container for your values, you define your value set such that it can control the types of values that are allowed into the value set (either predefined or nonvalidated). You can specify the format of your values.
  • Oracle Application Object Library uses value sets as important components of key flexfields, descriptive flexfields, and Standard Request Submission (value sets for report parameters for your reports that use the Standard Request Submission feature).

When to defining Values for Value Sets?

  • After you register your Flexfields & report parameters, if you are using independent or dependent value sets, you can enter values into each corresponding value set using the Segment Values form.
  • Values for the Value Sets, we are defining will be kept in the Oracle Application Object Library tables.

How many Format Types the value set have?

  • Char
  • Date
  • DateTime
  • Number
  • Standard Date
  • Standard Date Time
  • Time

You should take a note that Date and Date Time value set formats will be obsolete now and are provided for backward compatibility only. For new value sets, use the format types Standard Date and Standard Date Time.

What is Security type in value set?

  • By Security Rules window, we can define value security rules for ranges of flexfield and report parameter values.

There are two levels where you must activate Security, the one at value set level and other at individual segment or parameter level. You make Flex field Value Security available for your value set by choosing Hierarchical Security or Non-Hierarchical Security for the Security Type. When you make security available for a value set, all segments and report parameters that use that value set can use security. You then enable security for a particular segment or parameter.

  • Choose Hierarchical Security, If you want Security on a parent value to Cascade down to its child value or else you can choose Non-Hierarchical Security.

How many Character Formatting Options have for value set?

  • Numbers Only (0 – 9)
    • We cannot prevent users from entering a value that contains the radix character.
    • Cannot be used in Translatable Independent and Translatable Dependent value sets.
  • Uppercase Only(A-Z)
    • Here also we cannot use in Translatable Independent and Translatable Dependent value sets.
  • Right justify and Zero fill Numbers(001)
    • If you have selected Numbers Only (0-9) flag, then it wont allow you to affect this flag.
    • We are recommended to use this in Accounting Flex fields.
  • Minimum and Maximum Value Range
    • Your Minimum/maximum value may not be longer than the maximum size you specify for this value set.
    • Once you specify a range of values, you cannot define a new valid value that falls outside this range.
    • The Minimum Value and Maximum Value fields can therefore allow you to create a value set with a validation type of None.

How many validation Type does value set have?

There are several validation types that affect the way users enter and use segment or parameter values:

  • None (not validated at all)
    • Allow users to enter any value.
    • Only Format Validations will be done.
  • Independent
    • Provides a predefined list of values.
    • Independent values are stored in an Oracle Application Object Library table.
  • Dependent
    • Same like Independent Value Set, except the List of Values shown to you will depends on which the Independent value you have selected in the Prior Segment.
    • Must define your independent value set before you define the dependent value set that depends on it.
    • Advisable to create your independent values first.
    • Must create at least one dependent value for each independent value, or else it wont allow you to enter into that segment or field.
  • Table
    • It use your own application tables as value sets for flex field segments and report parameters instead of the special values tables which Oracle Applications provides.
    • You can also use validation tables with other special arguments to make your segments depend on profile options or field values.
    • You can use any existing application table, view, or synonym as a validation table.
    • If we are using non registered table for your value set, then we have to Create the necessary grants and synonyms to APPS Schema.
    • The value column and the defined ID column in the table must return a unique row for a given value or ID.
    • If the Hidden Id column is provided the value passed to the report will be Hidden and not the Value column.
    • Similarly, when you specify :$FLEX$.Value_Set_Name, your flex field segment or report parameter defaults to always use the hidden ID column to compare with your WHERE clause .
    • We can use Special BIND variable such as :$PROFILES$.Option_name, :$FLEX$.Value_set_name, :block.field in the WHERE clause.
  • Special
    • Special validation value sets allow you to call key flex field user exits to validate a flex field segment or report parameter using a flex field within a flex field mechanism. You can call flex field routines and use a complete flex field as the value passed by this value set.
  • Pair
    • Pair validation value set allows user to pass a range of concatenated Flex field segments as parameters to a report.
  • Translatable Independent & Translatable Dependent
    • These value sets are similar to Independent and Dependent value sets except that translated values can be displayed to the user. Translatable Independent and Translatable Dependent value sets allow you to use hidden values and displayed (translated) values in your value sets. In this way your users can see a value in their preferred languages, yet the values will be validated against a hidden value that is not translated.
    • We can convert the Independent value set to a Translatable Independent value set, or a Dependent value set to a Translatable Dependent value set. These are the only types of conversions allowed.

Which Oracle table store Value sets and underline information?

  • FND_FLEX_VALUE_HIERARCHIES
  • FND_FLEX_VALUE_SETS
  • FND_ID_FLEX_SEGMENTS
  • FND_FLEX_VALUE_NORM_HIERARCHY
  • FND_FLEX_HIERARCHIES
  • FND_FLEX_VALUE
  • FND_FLEX_VALIDATION_EVENTS
  • FND_FLEX_VALUE_RULE_LINES
  • FND_FLEX_VALUE_RULE
  • FND_FLEX_VALUE_RULE_USAGE
  • FND_RESPONSIBLITY
  • FND_TABLES
  • FND_FLEX_VALIDATION_TABLES

Any method to upload flexfield value?

Yes, FNDLOAD is utility which can be used for moving value set across different environment.

Do we have any restriction on value set?
Yes, here are some listed one:

  • Table Validated Value Sets
    • We cannot use table-validated id value sets for any accounting flexfield or any other key flexfields.
    • We cannot use :$FLEX$, :$PROFILES$ in table name, value and id of table validated value sets.
    • We cannot use DISTINCT clause in any of the column fields or in the WHERE clause of a table validate value set.
    • In an id value set, the value can be non-unique but id should be unique. In a non-id value set, value should be unique.
    • We can only use columns selected for the table-validated value set must be of type NUMBER, DATE or VARCHAR2.
    • Support for SQL expression in columns of Table Validated value sets will be obsolete in future release.
  • Translatable Independent and Translatable Dependent Valuesets
    • The Numbers Only and Uppercase Only option cannot be used.
    • Must have “Char” format type.
  • Special/Pair valuesets
    • Special/Pair value sets are user-exit value sets . PL/SQL APIs will not be able to validate them.

Lets now define a simple value set in R12:

Step 1: Go to Application Developer, and select menu /Validation/Set

Create a value set name as COUNTRY_LIST which will contain a list of countries. Make it an independent value set. Format type is CHAR. Save the work.

Step 2: Go to Application Developer, and select menu /Validation/Values

The below window will appear. Put the Search Name as COUNTRY_LIST and click Find. 

Step 3: Enter the country details in this window. Save the work.

Now the value set is ready to be used in any concurrent program.