Previous  Next          Contents  Index  Navigation  Glossary  Library

User Profile Value Loader

The User Profile Value Loader (FNDVLOAD) is a concurrent program that can move Oracle Applications user profile value information between database and text file representations. The following sections describe the operation of the User Profile Value Loader.

Supported Operations

The User Profile Value Loader allows you to move profile value data between the database (where it is used for runtime operation) and a text file representation (where it can be used for distribution). Specifically, you can:

Download database information to a text file

The text file is human-readable and portable, and can be examined and modified with any editor. Generally, a "developer key" is used to identify records written out to text files. In other words, the PROFILE_OPTION_NAME, not the PROFILE_OPTION_ID, is used to identify records.

Upload (merge) the information in a text file to the database

If a row is already correct in the database, it is not touched. If a row exists, but has different attributes, the row is updated. If a row does not exist, a new row is inserted. No rows are deleted, even if they are absent from the uploaded file.

These download and upload capabilities allow profile value information that is defined in one database to be easily propagated to other databases. This is useful for delivering Oracle Applications seed data to customers, as well as for copying customer profile definitions from a primary site to other sites.

The text file version of profile value data is also useful for bulk editing operations, which can be accomplished more efficiently with a text editor than with a form.

Usage

The User Profile Value Loader takes the following arguments:

FNDVLOAD <username/password> 0 Y 
  <appsname> <filename> UPLOAD | DOWNLOAD

where

<username/ password> is the APPLSYS account

<appsname> is an application short name or "LOCAL"

<filename> is the file that will be read or written

The location of the file is determined by the <appsname> and <filename> arguments. <appsname> indicates whether the file is in the install/import directory for a particular application, or whether it is in the local directory.

Appsname File Location
<APP> <file> $<APP_TOP>/install/import/<file>.slt
LOCAL <file> <file>


Examples

FNDVLOAD applsys/fnd 0 Y FND install/import/FND.vlt UPLOAD

references file "$FND_TOP/install/import/FND.vlt"

FNDVLOAD applsys/fnd 0 Y FND.vlt UPLOAD

references file "FND.vlt"

UPLOAD and DOWNLOAD

The loader works in either upload or download mode. In UPLOAD mode the entire file is read and merged into the database. In DOWNLOAD mode the loader will download all profile values to the file.

FNDVLOAD applsys/fnd 0 Y FND FND.vlt DOWNLOAD

will download all profile values to the file FND.vlt

FNDVLOAD applsys/fnd 0 Y FND FND.vlt UPLOAD

will upload everything in the file FND.vlt to the database

Profile Value File Format

Profile value information is stored in text file format by writing out a series of "records" for each profile value. The file is plain text that can be viewed and edited with any standard text editor. You need to understand this file format only if you plan to edit the file.

The file consists of a series of text lines, each of which must be less than 1024 bytes in length (when written, no line will exceed 80 bytes in length).

A line may be a comment line, meaning it has no effect on the data contained in the file. Comment lines begin with a "#" and end with a newline.

# This is a comment line

The information in the file consists of a series of tokens delimited by white space. Note that a token may itself contain a space, in which case it is delimited with double-quote marks. Tokens may not contain non-printing characters unless they are preceded by the "escape" character, which is a backslash. Predefined escapes are:

String Meaning
\e Escape
\n Newline
\r Carriage return
\b Backspace
\v Vertical tab
\f Form feed
\" The double quote itself
\\ The backslash itself

Other escapes consist of octal values preceded by the backslash, as in "\007". If a line is too long to fit within 80 characters, the line is broken into as many "continuation" lines as necessary. A line ending with a single backslash is taken to be continued on the next line. In such a case, the newline following the backslash is ignored, rather than being taken as a white space delimiter. The line following such a line is taken to be a continuation of the "broken" line, and such a line can itself end in a backslash, indicating further continuation. Note that in the case of continuation lines, a leading "#" is not taken as a comment indicator, but rather as part of the continued data item.

The file starts with three lines as follows:

LANGUAGE = "AMERICAN"
CODESET = "WE8ISO8859P1"
TRANSLATED = "Y"

These lines indicate the NLS_LANG language and codeset of the file and the current translation status of any translated column values.

Then there is a series of object definitions of the format:

BEGIN <level type> <level identifier>
 PROFILE <profile name> = <profile value>
 ...
END <level type>

There are four types of levels in the file: SITE, APPLICATION, RESPONSIBILITY, and USER. Each level type has some identifier, followed by a series of profile values. If a profile value is not specified on a given level, it will not be written to the file on a DOWNLOAD, and the current setting will not be changed on an UPLOAD.

SITE record

Sites are not identified, since there can be only one SITE per database. Site level information is formatted as follows:

BEGIN SITE
 PROFILE <profile name: 80 chars> = <profile value:    240 chars>
 ...
END SITE

Example:

BEGIN SITE
 PROFILE ACCOUNT_ISSUE_TXN = 1
 PROFILE AR_ADJUST_CREDIT_UNCONFIRMED_INVOICE = NONE 
 PROFILE AR_ALLOW_BATCHING = B 
 PROFILE AR_ALLOW_TAX_CODE_OVERRIDE = N 
 PROFILE AR_ALLOW_TAX_UPDATE = Y 
 PROFILE AR_CHANGE_CUST_NAME = Y 
 PROFILE AR_CHANGE_CUST_ON_TRX = Y 
 PROFILE AR_CMERGE_SET_SIZE = 1 
 PROFILE AR_GLPOST_BALANCE_CHECK_FLAG = Y 
 PROFILE AR_ITEM_FLEXFIELD_MODE = M 
END SITE 

APPLICATION record

Applications are identified by APPLICATION_SHORT_NAME. Application information is formatted as follows:

BEGIN APPLICATION <applname>
 PROFILE <profile name: 80 chars> = <profile value:    240 chars> 
 ... 
END APPLICATION

Example:

BEGIN APPLICATION BOM 
 PROFILE CURRENCY:NEGATIVE_FORMAT = 3 
 PROFILE SHARED_MESG_APPL_ID = 700 
END APPLICATION

RESPONSIBILITY record

Responsibilities are identified by APPLICATION_SHORT_NAME and RESPONSIBILITY_NAME. Responsibility level information is formatted as follows:

BEGIN RESPONSIBILITY <applname> <respname> 
 PROFILE <profile name: 80 chars> = <profile value:    240 chars> 
 ... 
END RESPONSIBILITY 
 

Example:

BEGIN RESPONSIBILITY AX "AX General Ledger User" 
 PROFILE AX_APPLICATION_ID = 101 
 PROFILE AX_APPLICATION_NAME = "Oracle General         Ledger" 
END RESPONSIBILITY 

USER record

Users are identified by USER_NAME. User level information is formatted as follows:

BEGIN USER <username> 
 PROFILE <profile name: 80 chars> = <profile value:    240 chars 
 ... 
END USER
 

Example:

BEGIN USER DATAMERGE 
 PROFILE BOM:UPDATE_RESOURCE_UOM = 2 
 PROFILE QUICKPICK:AUTOREDUCTION = Y 
 PROFILE SAVE_SEARCH_ITEMS = N 
END USER

Sample Profile Value File

# 
# $Header$ 
# 
LANGUAGE = "AMERICAN" 
CODESET = "US7ASCII" 
TRANSLATED = "Y"#
BEGIN SITE 
  PROFILE ACCOUNT_ISSUE_TXN = 1 
  PROFILE AR_ADJUST_CREDIT_UNCONFIRMED_INVOICE = NONE
  PROFILE AR_ALLOW_BATCHING = B 
  PROFILE AR_ALLOW_TAX_CODE_OVERRIDE = N 
  PROFILE AR_ALLOW_TAX_UPDATE = Y 
  PROFILE AR_CHANGE_CUST_NAME = Y 
  PROFILE AR_CHANGE_CUST_ON_TRX = Y 
  PROFILE AR_CMERGE_SET_SIZE = 1 
  PROFILE AR_GLPOST_BALANCE_CHECK_FLAG = Y 
  PROFILE AR_ITEM_FLEXFIELD_MODE = M 
  PROFILE AR_OVERRIDE_ADJUSTMENT_ACTIVITY_ACCOUNT = Y    PROFILE AR_PA_CODE = 1 
  PROFILE AS_MANAGING_EMPLOYEE_HAS_ACCESS_FLAG = Y 
  PROFILE AS_NOTES_UPDATE_DAY_RANGE = 1 
  PROFILE AS_TERR_MIN_NUM_PARALLEL_PROC = 100 
  PROFILE AS_TERR_NUM_CHILD_PROCESSES = 5 
  PROFILE ATCHMT_SET_INDICATOR = Y 
  PROFILE AUDITTRAIL:ACTIVATE = N 
  PROFILE AUTOCOMMIT = N 
  PROFILE BASE_LANGUAGE = 0 
  PROFILE BOM:CHECK_DUPL_CONFIG = 2 
  PROFILE BOM:CONFIG_INHERIT_OP_SEQ = 2 
  PROFILE BOM:CONFIG_ITEM_DELIMITER = * 
  PROFILE BOM:CONFIG_ITEM_TYPE = I 
  PROFILE BOM:DEFAULT_BOM_LEVELS = 1 
  PROFILE BOM:ITEM_SEQUENCE_INCREMENT = 10 
  PROFILE BOM:MODEL_ITEM_ACCESS = 1 
  PROFILE BOM:PLANNING_ITEM_ACCESS = 1 
  PROFILE BOM:STANDARD_ITEM_ACCESS = 1 
  PROFILE BOM:UPDATE_RESOURCE_UOM = 2 
  PROFILE BUDGETARY_CONTROL_OPTION = 0 
  PROFILE CONC_COPIES = 0 
  PROFILE CONC_HOLD = N 
  PROFILE CONC_PMON_METHOD = RDBMS 
  PROFILE CONC_PRIORITY = 50 
  PROFILE CONC_REPORT_ACCESS_LEVEL = U 
  PROFILE CONC_SAVE_OUTPUT = Y 
  PROFILE CONC_SINGLE_THREAD = N 
  PROFILE CST_EXCHANGE_RATE_TYPE = 2 
  PROFILE CST_RU_WAIT_FOR_LOCKS = 2 
  PROFILE CST_UPDATE_COSTS = 1 
  PROFILE CST_UPDATE_DEBUG = 1 
  PROFILE CST_VIEW_COSTS = 1 
  PROFILE CURRENCY:MIXED_PRECISION = 2 
  PROFILE CURRENCY:NEGATIVE_FORMAT = 0 
  PROFILE CURRENCY:POSITIVE_FORMAT = 0 
  PROFILE CURRENCY:THOUSANDS_SEPARATOR = Y 
  PROFILE CURRENCY_CONVERSION_TYPE = Corporate 
  PROFILE CYCLE_COUNT_APPROVALS_TXN = 1 
  PROFILE CYCLE_COUNT_ENTRIES_TXN = 1 
  PROFILE DIAGNOSTICS = N 
  PROFILE DISPLAY_INVERSE_RATE = N 
  PROFILE ENG:ENG_ITEM_ECN_ACCESS = 1 
  PROFILE ENG:MANDATORY_ECO_DEPT = 2 
  PROFILE ENG:MODEL_ITEM_ECN_ACCESS = 1 
  PROFILE ENG:PLANNING_ITEM_ECN_ACCESS = 1 
  PROFILE ENG:STANDARD_ITEM_ECN_ACCESS = 1 
  PROFILE ENG_SYSTEM_AUTONUMBERING = 2 
END SITE
BEGIN APPLICATION BOM 
  PROFILE CURRENCY:NEGATIVE_FORMAT = 3 
  PROFILE SHARED_MESG_APPL_ID = 700 
END APPLICATION
BEGIN APPLICATION CRP 
  PROFILE SHARED_MESG_APPL_ID = 700 
END APPLICATION 
BEGIN APPLICATION ENG 
  PROFILE CURRENCY:NEGATIVE_FORMAT = 3 
  PROFILE SHARED_MESG_APPL_ID = 700 
END APPLICATION 
BEGIN APPLICATION INV 
  PROFILE INV_STATUS_DEFAULT = Active 
  PROFILE INV_UOM_DEFAULT = Each 
END APPLICATION 
BEGIN APPLICATION MRP 
  PROFILE CURRENCY:NEGATIVE_FORMAT = 3 
  PROFILE SHARED_MESG_APPL_ID = 700 
END APPLICATION
BEGIN APPLICATION PA 
  PROFILE PA_NUM_CDL_PER_SET = 2000 
  PROFILE PA_NUM_EXPENDITURES_PER_SET = 500 
  PROFILE PA_NUM_EXP_ITEMS_PER_SET = 1000 
  PROFILE PA_RULE_BASED_OPTIMIZER = N 
  PROFILE PA_STRMLN_SLEEP_INTERVAL = 60 
END APPLICATION
BEGIN APPLICATION PAY 
  PROFILE DATETRACK:DELETE_MODE = PROMPT 
  PROFILE DATETRACK:ENABLED = Y 
  PROFILE DATETRACK:OVERRIDE_MODE = PROMPT 
  PROFILE DATETRACK:UPDATE_MODE = PROMPT 
  PROFILE HR_USER_TYPE = INT 
  PROFILE PER_BUSINESS_GROUP_ID = 0 
END APPLICATION 
BEGIN APPLICATION QA 
  PROFILE QA_ACTION_PROCESSING_MODE = 2 
  PROFILE QA_BLIND_ENTRY = 2 
END APPLICATION
BEGIN RESPONSIBILITY AX "AX General Ledger User" 
  PROFILE AX_APPLICATION_ID = 101 
  PROFILE AX_APPLICATION_NAME = "Oracle General         Ledger" 
END RESPONSIBILITY 
BEGIN RESPONSIBILITY AX "AX Payables Supervisor" 
  PROFILE AX_APPLICATION_NAME = "Oracle Payables" 
END RESPONSIBILITY 
BEGIN RESPONSIBILITY AX "AX Payables User" 
  PROFILE AX_APPLICATION_NAME = "Oracle Payables" 
END RESPONSIBILITY 
BEGIN RESPONSIBILITY AX "AX Receivables Supervisor" 
  PROFILE AX_APPLICATION_NAME = "Oracle Receivables" 
END RESPONSIBILITY 
BEGIN RESPONSIBILITY AX "AX Receivables User" 
  PROFILE AX_APPLICATION_NAME = "Oracle Receivables" 
END RESPONSIBILITY 
BEGIN RESPONSIBILITY CN "Sales Compensation Super     User" 
  PROFILE CN_ALLOW_CREATE_PAYRUNS = Y 
END RESPONSIBILITY
BEGIN RESPONSIBILITY PA "PB Accounting Supervisor" 
  PROFILE PA_SUPER_PROJECT = Y 
END RESPONSIBILITY 
BEGIN RESPONSIBILITY PA "PB Administrator" 
  PROFILE PA_SUPER_PROJECT = Y 
END RESPONSIBILITY
BEGIN RESPONSIBILITY PA "PC Accounting Supervisor" 
  PROFILE PA_SUPER_PROJECT = Y 
END RESPONSIBILITY 
BEGIN RESPONSIBILITY PA "PC Administrator" 
  PROFILE PA_SUPER_PROJECT = Y 
END RESPONSIBILITY 
BEGIN RESPONSIBILITY PAY "Oracle Human Resources with  Payroll" 
  PROFILE HR_USER_TYPE = INT 
END RESPONSIBILITY 
BEGIN RESPONSIBILITY PER "Oracle Human Resources" 
  PROFILE HR_USER_TYPE = PER 
END RESPONSIBILITY 
BEGIN RESPONSIBILITY QA Quality 
  PROFILE QA_BLIND_ENTRY = 2 
END RESPONSIBILITY
BEGIN RESPONSIBILITY SQLGL "General Ledger Budget User" 
  PROFILE CONC_SINGLE_THREAD = N 
END RESPONSIBILITY
BEGIN RESPONSIBILITY SQLGL "General Ledger Supervisor" 
  PROFILE CONC_SINGLE_THREAD = N 
END RESPONSIBILITY 
BEGIN USER DATAMERGE 
  PROFILE BOM:UPDATE_RESOURCE_UOM = 2 
  PROFILE QUICKPICK:AUTOREDUCTION = Y 
  PROFILE SAVE_SEARCH_ITEMS = N 
END USER 
BEGIN USER SYSADMIN 
  PROFILE SHARED_MESG_APPL_ID = 700 
END USER 


         Previous  Next          Contents  Index  Navigation  Glossary  Library