0% found this document useful (0 votes)
161 views41 pages

AOL Questions 11/17/2020: Subba Reddy S

The document discusses where concurrent request logfiles and output files are located in Oracle Applications. By default, they will be placed in directories called $APPLLOG and $APPLOUT, which are subdirectories of the directory specified in the $APPLCSF environment variable. If $APPLCSF is not set, they will be placed under the product top directory of the associated application. Logfiles are named using the format l<request id>.req and output files follow different naming conventions depending on the $APPCPNAM variable.

Uploaded by

Anu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
161 views41 pages

AOL Questions 11/17/2020: Subba Reddy S

The document discusses where concurrent request logfiles and output files are located in Oracle Applications. By default, they will be placed in directories called $APPLLOG and $APPLOUT, which are subdirectories of the directory specified in the $APPLCSF environment variable. If $APPLCSF is not set, they will be placed under the product top directory of the associated application. Logfiles are named using the format l<request id>.req and output files follow different naming conventions depending on the $APPCPNAM variable.

Uploaded by

Anu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 41

SUBBA REDDY S AOL Questions

11/17/2020
Where do concurrent request logfiles and output files go?
The concurrent manager first looks for the environment variable $APPLCSF
If this is set, it creates a path using two other environment variables:
$APPLLOG and $APPLOUT
It places log files in $APPLCSF/$APPLLOG
Output files go in $APPLCSF/$APPLOUT
So for example, if you have this environment set:
$APPLCSF = /u01/appl/common
$APPLLOG = log
$APPLOUT = out
The concurrent manager will place log files in /u01/appl/common/log, and
output files in /u01/appl/common/out
Note that $APPLCSF must be a full, absolute path, and the other two are
directory names.
If $APPLCSF is not set, it places the files under the product top of the
application associated with the request.
So for example, a PO report would go under $PO_TOP/$APPLLOG and
$PO_TOP/$APPLOUT
Logfiles go to: /u01/appl/po/9.0/log
Output files to: /u01/appl/po/9.0/out
Of course, all these directories must exist and have the correct permissions.
Note that all concurrent requests produce a log file, but not necessarily
an output file.

What are the logfile and output file naming conventions?


Logfiles: l<request id>.req
Output files: If $APPCPNAM is not set: <username>.<request id>
If $APPCPNAM = REQID: o<request id>.out
If $APPCPNAM = USER: <username>.out

Where: <request id> = The request id of the concurrent request


And: <username> = The id of the user that submitted the request

How do I check if Multi-org is installed?


SELECT multi_org_flag FROM fnd_product_groups;

How do I find out what the currently installed release of Applications is?
SELECT release_name FROM fnd_product_groups

How do I find the name of a form?


GUI: Use Help->About Oracle Applications
Scroll down to find the form name
Character: Use \Help->Version

How do I lookup ORA errors? (and TNS errors)


Use: oerr ora XXXX
or: oerr tns XXXX
where XXXX is the error number
(This also supports a number of other error types. Use the 3-letter error prefix in place of 'ora')

Page 1 of 41 1
SUBBA REDDY S AOL Questions
11/17/2020
How do I generate a message file (usaeng.msb)?
Use: FNDMDCMF applsys/pwd 0 Y APP usaeng
where: applsys/pwd is the APPLSYS user and password
and APP is the short name of the application (like PO or INV)

How do I submit a concurrent request from PL/SQL?


Use FND_REQUEST.SUBMIT_REQUEST
Example: req_id := FND_REQUEST.SUBMIT_REQUEST('FND', 'FNDSCARU');
Note that this can only be called from a concurrent program
See the Coding Standards for parameter details

How do I cancel a running concurrent request?


Navigate to the Concurrent Request Summary form
Select a request
In character, do a Quickpick on the Status column
You can select Cancel or Hold
In GUI, use the Cancel or Hold buttons
The Sysadmin responsibility can cancel or hold any running request

Why can't I find adrelink on my NT APPL_TOP?


This is a trick question right?
There is no adrelink, we supply executables pre-built. There is no need to relink
as on UNIX.
There is also no adunload.

Why can't I use character mode on NT?


You're just full of trick questions today...
Applications for NT does not include character mode forms.

Why does Help->Tools->Examine ask for a password?


The profile option Utilities:Diagnostics is set to NO
This profile option controls whether users can use the Examine utility.
The password should be the APPS password.

How do I set the name of the site that shows up under Help->About Oracle Applications?
Set the profile option 'Site Name'

How do I open a form in query-only mode?


Navigate to the Form Functions form (Application->Function)
Query the particular form and add the parameter QUERY_ONLY=YES
Not all forms will accept this parameter however.

How do I find the version of an installed product? (such as Reports, SQL*Net etc.)
One of the easiest ways is to run the product if you can. Running Reports designer will give
you the Reports version, running SQL*Plus will give you its version etc.
Another easy way is to launch the Oracle Installer and look in the installed products on the
right side. It will list all the products installed with their versions.
Another way is to look at the .rgs file. This file is located in $ORACLE_HOME/orainst

Page 2 of 41 2
SUBBA REDDY S AOL Questions
11/17/2020
On UNIX, it will be called unix.rgs. On the PC, it will be called Windows.rgs.
This file will list all the products installed and their versions. Note though that
this file is not always correct. For example, patching Reports from 2.5.5.4 to 2.5.5.8
will not show up in this file as the new version. Running Reports Designer is the best
way of getting the correct version.
Also, on UNIX there is an executable called 'inspdver'. It is located in
$ORACLE_HOME/orainst.
Running it will produce a display of all the installed products. It just pulls the
information from unix.rgs, so it may show the wrong information as well.

I just ran AutoInstall successfully, but I don't have character mode! (on UNIX)
You probably picked 'Server' when asked what type of installation to do.
This choice installs everything except the character mode forms and
executables. The choice you wanted to pick was 'Standalone'.
You can recreate character mode by unloading the forms directories,
regenerating the forms, and relinking aiap.

I changed a profile option, but it doesn't seem to take effect?


Profile option values are cached, so you need to log out and back in in order to have
the new value take effect. Switching responsibilities will usually do it too.

How do I generate one single form? (As opposed to using adadmin to generate them all)
Character mode forms: Use adfrmgen
Usage : adfrmgen filelist=<name of filelist file>
or : adfrmgen product="product shortname(s)" [filepath="dir-path/filename"]
For example :
adfrmgen filelist=filelist.txt
adfrmgen product="gl" filepath="forms/GLXSSMTY.inp" (one file)
adfrmgen product="gl" filepath="forms" (entire directory)
adfrmgen product="gl" (entire product)
adfrmgen product="fnd gl" (multiple products)
adfrmgen product="fnd gl" filepath="forms" (entire directories from multiple products)

GUI forms: use f45gen


Usage : f45gen module=<source file> userid=<Apps account/password>
output_file=<destination file> module_type=form batch=yes
compile_all=special

Example:
f45gen module=/u16/appl/nca/au/1.0/forms/US/FNDCPMCP.fmb
userid=APPS_APPDEMO/APPS
output_file=/u16/appl/nca/fnd/7.5/forms/US/FNDCPMCP.fmx
module_type=form batch=yes compile_all=special

Note that in Release 11, adadmin will allow you to compile specific forms

What do I do if I am missing an executable from my APPL_TOP?


Binary executables are created with adrelink.
For example, if addmimp is missing use:

Page 3 of 41 3
SUBBA REDDY S AOL Questions
11/17/2020
adrelink force=y ranlib=y "ad addmimp"

In Release 11, where do I apply all of these new patch drivers?


(i.e. where do I apply the c driver, the d driver and the g driver?)
The 'c' driver is the copy driver. It copies files and relinks executables, similar to the old
patch.drv.
The 'd' driver is the database driver. It runs scripts against the database like the old db
driver.
The 'g' driver is new to release 11. It is the generate driver. It generates forms, reports, and
message files.
In a multiple-tier environment, you should apply the copy driver to all tiers, the database
driver to the administration tier, and the generate driver to the forms and concurrent
processing tier.
(Some of these may be the same tier)
Adpatch will ask questions about what kind of APPL_TOP it is in, so it will know what
portions of the driver to run.

UNIX questions

I know the name of a UNIX command, but I don't know what it does?
Use the 'whatis' command
whatis will give a brief description of the command
Example:

$ whatis grep
grep grep (1) - search a file for a pattern

OK. I know what a UNIX command does, but I can't remember the name?
Use 'man -k'
This will do a keyword search of the man pages
Example:
$ man -k grep
egrep egrep (1) - search a file for a pattern using full regular expressions
fgrep fgrep (1) - search a file for a character string
fmlgrep fmlgrep (1f) - search a file for a pattern
grep grep (1) - search a file for a pattern
nisgrep nismatch (1) - utilities for searching NIS+ tables

What are .o files? .a files?


When a programmer writes a program, he begins by writing the code in a programming
language. This 'source code' is kept in a text file. When he is ready to build the program, he
runs the source code text through a
compiler. This translates the source code into 'object code'. Object code is in a format that
is understandable by the machine. ('Machine language') Note that object code is not portable
across platforms. The same source code compiled on a Solaris machine will produce a different
.o file when compiled on a HP-UX machine. All object files (.o, .a, .so) cannot be copied across
different platforms.
When all the object code is compiled, the programmer next collects all the object files, and
runs them through the linker. The linker basically collects all the object code, along with any

Page 4 of 41 4
SUBBA REDDY S AOL Questions
11/17/2020
other necessary code, and produces an executable (or 'binary') Object code can also be collected
into a library file, or archive. (.a file) This file is created by the 'ar' command. It just collects all
the object code into one file, and adds a table of contents to it. Library files can be linked into an
executable the same way as .o files. Oracle delivers its code (except for the NT platform) as .o
or .a files. These files are run through the linker to produce executables.

What are .so files?


.so files contain object code like .a and .o files. However, these libraries are not linked in
when the programmer creates the executable. Instead, they are loaded in when the program
runs. This allows the library to be shared among multiple programs, hence the name 'shared
libraries' (on Windows, these are called DLLs) If a program cannot find the shared libraries it
needs, it will not run. See also the questions on ldd and LD_LIBRARY_PATH.

How do I tell an HP10.20 object file from an HP11.0 object file?


The preferred way to tell whether an object was built with HP-UX 10.20 or HP-UX 11.0
is use the odump command.
odump -comp <object name>

The -comp switch will give you the flags with which the object was compiled as will as the
revision. The revision number for objects built with 10.x will appear as "A.10.xx" where xx is
dependent on the exact revision and patch level. For 11.0 objects, the revision number will
appear as "A.11.xx".

What is the best way to kill a process?


First, use ps to get the process id (PID)
Try using: kill <pid>
This will give the process a chance to clean up after itself, like removing temp files, etc.
Some processes will not accept or ignore this signal. If the process does not go away, use:
kill -9 <pid>
This signal cannot be ignored, it will definitely kill the process. The process will not have
a chance to clean up after itself though.
Use kill -9 only if necessary.
Note that you must be the process owner or the superuser to kill a process.

How about killing defunct processes?


You can't do it. Defunct processes are already dead, the system just has not been able to
clean up the process because the parent process is not responding.

How do I get a process to coredump?


Send it the QUIT signal. This is usually done with Control-\
It will cause the process to exit and generate a core file.
You can also use: kill -s SIGQUIT <pid>

What does '..don't know how to make target XXX' mean?


Applications uses the 'make' command to build executable programs. 'Make' uses a
'makefile', which is basically a list of programs to build and instructions on how to build them.
These programs are called 'targets' in the makefile. When you say: 'make XXX', it looks in
the makefile for a target called 'XXX', and follows the instructions there to build it. If it cannot
find the given target in the makefile, it returns this error.

Page 5 of 41 5
SUBBA REDDY S AOL Questions
11/17/2020
So either: 1. A wrong name was passed to the make command
2. The make file does not contain the given target.
This could mean that you need a newer version of the makefile

If the error points to a .o file, as in XXX.o, it could mean that the .o file is missing.
What happens is, make finds the target in the makefile, sees that it depends on the .o file, and
looks for the .o file in the filesystem. When it does not find it, it tries to make the .o file by
looking for a target for the .o file. When it does not find this target, it returns the error.

Note that adrelink uses makefiles called $PROD_TOP/lib/prod.mk Where 'prod' is the short
name of the product, like fnd.mk and inv.mk

How do I use the modem pool?


telnet appsmp01
userid is aol
no password
type: c out
type: atdt <phone number>

How do I telnet outside the firewall?


telnet gatekeeper1
auth <username>@us
enter the response value from your SNK
connect <hostname>

How do I uuencode a file for mailing?


Use: uuencode filename filename > filename.uue
Use uudecode to decode an encoded file

How do I use ldd?


The UNIX command 'ldd' lists dynamic dependencies of executables or shared objects.
Basically, it is used to list what shared libraries an executable depends on. When an executable
is launched, it expects to load certain shared libraries
(similar to Windows DLLs)
It uses the environment variable LD_LIBRARY_PATH to find these shared libraries.
LD_LIBRARY_PATH contains a list of directories, each of which will be searched.
(similar to the PATH variable)
ldd <executable name> will display all the shared libraries the executable needs, and
where the library was found.
Here is an example:
$ ldd adaimgr
libsocket.so.1 => /usr/lib/libsocket.so.1
libnsl.so.1 => /usr/lib/libnsl.so.1
libm.so.1 => /usr/lib/libm.so.1
libdl.so.1 => /usr/lib/libdl.so.1
libposix4.so.1 => /usr/lib/libposix4.so.1
libsunmath.so.1 => /u16/oracle7/product/7.3.3/lib/libsunmath.so.1
libc.so.1 => /usr/lib/libc.so.1
libucb.so.1 => /usr/ucblib/libucb.so.1

Page 6 of 41 6
SUBBA REDDY S AOL Questions
11/17/2020
libresolv.so.2 => /usr/lib/libresolv.so.2
libelf.so.1 => /usr/lib/libelf.so.1
libintl.so.1 => /usr/lib/libintl.so.1
libmp.so.1 => /usr/lib/libmp.so.1
libw.so.1 => /usr/lib/libw.so.1

This lists all the libraries adaimgr expects to load, and where they are located.
Using ldd -s will also show the search path ldd used to find the libraries
Using ldd -v will list a more verbose output
See the ldd man pages for more information.
(See frhp10.fr.oracle.com/ports.html for the command to use on platforms other than
Solaris)

How can I capture zwrite messages to a file?


Use: zwgc -ttymode >>zw.log
You can add this line to your .profile

How do I cut/copy from a zwrite message?


Hold down the shift key while selecting the text.

How do I lookup a UNIX signal number?


Use: kill -l
This will list the signals and their numbers
Also, look in /usr/include/sys/signal.h
All the signals are listed in here as well

How do I set the setuid/setgid bit?


Add a fourth digit to the 'chmod' command
For example, to set permissions to 755 you would normally use: chmod 755
To set the setuid bit, add a 4 before the 755, like: chmod 4755
To set the setgid bit, use: chmod 2755
To set them both, use chmod 6755
Or, use the symbolic method like chmod u+s/chmod u-s (to set/unset the setuid bit)
chmod g+s/chmod g-s (to set/unset the setgid bit)
(Remember, the oracle executable must have the setuid bit set or no other users besides
oracle will be able to connect to the database)

How do I get the value of SHMMAX?


Solaris: use 'sysdef | grep SHMMAX'
HP-UX: use 'grep SHMMAX /usr/conf/master.d/core-hpux'

I want to eject the cdrom, but it says it is busy. How do I find who has it locked?
Use the 'fuser' command
Type: fuser -u /cdrom (or whatever mount point the cdrom is on)
This will give a process ID, followed by a letter
The letter 'c' indicates this process is using the /cdrom directory as it's current directory
From the process id, you should be able to find the user

Page 7 of 41 7
SUBBA REDDY S AOL Questions
11/17/2020
I'm trying to uncompress a file that I know is in this directory, but it keeps telling me the file
cannot be found?
Make sure the file has an extension of .Z (capital Z)
Uncompress will try to add the extension if it does not have it and you
will get something like this:
$ uncompress 504305t.z
504305t.z.Z: No such file or directory

How do I remove a file that begins with a hyphen? (Like -filename)


rm will normally complain about an invalid option if you say: rm -filename
Most UNIX commands will bhave this way, treating the characters after the hyphen
as an option.
rm has an option to say 'end of options, the next parameter is a filename'
The option is '--' (double hyphen)
So you can use: rm -- -filename
Most UNIX commands have a -- option like this to signify end of options.

My Escape key does not work in vi? Help!


Go to your NCD boot server machine (orlsun1, 2, 10, or 11)
There should be a file called 'xh' in your home directory.
Add these two lines to the file:
/usr/openwin/bin/xmodmap -e 'keycode 9 = grave asciitilde' &
/usr/openwin/bin/xmodmap -e 'keycode 14 = Escape' &
Reboot your NCD.
Now, the ~ key (at the top left of the keyboard) is now the Escape key.
The ~ and ` are on the key between the Shift key and Z.

(Control-[ also works as Escape)

Networking

How do I start a SQL*Net trace? (on the client)


In sqlnet.ora, set: TRACE_LEVEL_CLIENT=16
TRACE_FILE_CLIENT=<filename>
(to use a different file name, default is sqlnet.trc)
TRACE_DIRECTORY_CLIENT=<path>
(to put the trace file in a different directory, default is
ORACLE_HOME\network\trace)

How do I start a SQL*Net trace? (on the listener)


Use: lsnrctl trace 16
lsnrctl trace off
Or:
In listener.ora, set: TRACE_LEVEL_LISTENER=16
TRACE_FILE_LISTENER=<filename>
(to use a different file name, default is listener.trc)
TRACE_DIRECTORY_LISTENER=<path>
(to put the trace file in a different directory, default is
$ORACLE_HOME/network/trace)

Page 8 of 41 8
SUBBA REDDY S AOL Questions
11/17/2020
How do I start/stop the TNS listener?

To start the listener: lsnrctl start [listener name]


To stop the listener: lsnrctl stop [listener name]

The listener default name is LISTENER. If the listener has a different name, you must
supply the name

To reload the listener.ora file: lsnrctl reload [listener name]


To check the status: lsnrctl status [listener name]

Reports/Printing

How do I run reports from the commandline?


ar25run userid=apps/apps@database destype=file desname=try.out
desformat=$FND_TOP/srw/L
batch=yes report=<path to report>

Substitute the report name you want to run. Use the srw file appropriate for the report
The output will be in the try.out file

How do I run ar25run in debug mode?


Under $FND_TOP/bin there should be two files: ar25run, and ar25rund
Rename ar25run to ar25run.save
Rename ar25rund to ar25run
Now, whenever a report is run, it will produce a log file called ar20run.log
This file will contain the command line used to run the report, as well as the environment
(Note that this will not actually run the report)

How do I relink Reports?


cd $ORACLE_HOME/reports25/lib
make -f ins_reports25.mk cinstall
make -f ins_reports25.mk minstall

How do I install SQL*Report?


On the 10.7 CD, there is a directory called rdbms732.
Under this is a directory called rptpatch.
Copy this directory to your local disk and run the script 'patchutil.sh'
On HP-UX, the directory does not exist on the CD. Instead, there is a
file called PATCHES. Copy this file to your disk and execute:
cpio -icdvu < "PATCHES;1"

What are the different Reports executables?


The Applications versions: (These are linked with Applications user exits)
ar25desb: Reports Designer
ar25run: Reports runtime - ascii
ar25runb: Reports runtime - bitmapped
ar25rund: Reports runtime - debug version

Page 9 of 41 9
SUBBA REDDY S AOL Questions
11/17/2020
The regular Reports versions:
r25desm: Reports Designer
r25run: Reports runtime - ascii
r25runm: Reports runtime - bitmapped

How do I troubleshoot print driver problems?


One technique is to create a shell script that will capture the print command and arguments
the concurrent manager is using.

1) Create the following shell script and place in a directory in the


concurrent managers PATH (such as /usr/bin)
2) Give execute privileges to the script
3) Shut down the managers
4) Pick a print driver and add the name of the script before the lp command in the
Arguments field
eg. testprt lp -c -d$PROFILES$.PRINTER ...
5) Make sure this driver is assigned to a style and a printer
6) Start the managers
7) Print a report using this driver
8) The output should look like:
Mon Jul 6 10:49:34 EDT 1998
Arguments are: lp -c -dorlprt1 -n1 -tPFERGUSO.1457540 /usr/tmp/OFAAAa001O_.t

The script is:


#!/bin/sh
(date; echo 'Arguments are: '$*;cat) >>/tmp/oracle-wws.log

This is for print drivers with std input set to yes


For drivers with std input set to no, remove the 'cat' command

You will see the actual command executed by the concurrent manager, and any arguments
passed to it. You should be able to execute this from the command line. From the example
above, we see that lp is being called to print one copy on printer
orlprt1, with the title being 'PFERGUSO.1457540'
The last argument is the file to be printed. You can open up this file and see the escape
codes at the top and bottom. From this information, you can determine if the concurrent
manager is using the correct arguments and escape codes. If everything looks OK, and the
problem replicates from the command line, the problem may be with the printer or the OS print
services.

How do I add escape codes at the beginning of a report?


Open the report in vi (Note that 'more' does not always display escape codes)
Add an escape character with: Ctrl-V Ctrl-[
This will show up as: ^[
This corresponds to the /e in the form.
Eg. if you have the escape code /e&k3G in the form, add: Ctrl-V Ctrl-[ &k3G
This will show up as: ^[&k3G
Once you add the escape codes, you can use 'lp' to print the report. This lets you

Page 10 of 41 10
SUBBA REDDY S AOL Questions
11/17/2020
troubleshoot the correct escape code sequence much faster than submitting a report.

How do I get a title printed on the banner page of a report?


Use the '-t' option of lp
Add this option to the arguments field in your print driver.
For example, the command line might look like:
lp -c -t "This is the title" -d$PROFILE$.PRINTER ...

Alerts

How can I find an event alert trigger?


You need to know the name of the table the event alert is on
Connect as APPS in SQL*Plus
SELECT trigger_name, table_name, status
FROM user_triggers
WHERE table_name = 'TABLE_NAME';
Alert triggers will have names like: ALR_TABLE_NAME_IAR or
ALR_TABLE_NAME_UAR
the IAR trigger is the INSERT trigger, the UAR trigger is the UPDATE trigger
Selecting TRIGGER_BODY from USER_TRIGGERS will give the text of the trigger

Concurrent Manager

Check/set the PMON method?


To check the PMON method:
1) cd $FND_TOP/sql
2) sqlplus apps/apps @afimchk.sql
This will tell whether the internal manager is running, what the PMON method is,
and where the log file is

To set the PMON method:


1) first shut the concurrent managers down
2) cd $FND_TOP/sql
3) sqlplus apps/apps @afimpmon.sql LOCK (or RDBMS)

Enable/disable the Conflict Resolution Manager?


Use the system profile option 'Concurrent: Use ICM'
Setting this to No (which is the default) allows the CRM to be started
Setting it to Yes causes the CRM to be shutdown and the Internal manager will take over
the conflict resolution duties.
If the CRM will not start (it is started automatically by the ICM), check this profile option.

Clean out the Concurrent Manager tables?


First, be sure to shutdown the managers
As the APPLSYS user:

Page 11 of 41 11
SUBBA REDDY S AOL Questions
11/17/2020
DELETE from fnd_concurrent_processes;

UPDATE fnd_concurrent_queues
SET running_processes=0, max_processes=0;

DELETE from fnd_concurrent_requests


WHERE status_code='T';

If you do not need the information in fnd_concurrent_requests and it is getting very large,
you can truncate this table as well. This also works to shutdown the concurrent managers after
killing the OS processes.

Tell concurrent manager processes apart?


Use: pf -ef | grep FNDLIBR

This will produce output like:


vd11 13703 13660 0 May 11 ? 0:01 FNDLIBR FND Concurrent_Processor
MANAGE OLOGIN="APPS/94A491A1000000000000000000
n1070161 24936 24927 0 Apr 29 ? 0:05 FNDLIBR FND Concurrent_Processor
MANAGE OLOGIN="APPS_APPDEMO/94C4B1C10000000000
n1070161 24938 24927 0 Apr 29 ? 0:06 FNDLIBR FND Concurrent_Processor
MANAGE OLOGIN="APPS_APPDEMO/94C4B1C10000000000
n1070161 24927 24922 0 Apr 29 ? 2:03 FNDLIBR FND CPMGR FNDCPMBR
sysmgr
="" sleep=60 pmon=20 diag=N logfile=/u16/app

The last process, #24927, shows 'FNDLIBR FND CPMGR'


This one is the Internal concurrent manager
Notice that it gives some of the parameters it was started with.
The other processes showing 'Concurrent_Processor' are Standard manager processes
Notice that the Internal manager process is the parent process of the Standard managers.
(processes 24936 and 24938)

Other managers will have the name of the executable, like ARLIBR or INVLIBR:
$ ps -ef | grep ARLIBR
vd11 13683 13660 0 May 11 ? 0:20 ARLIBR APPS/82A2A4940000000000000
000000000000000000000000000000000000000 AR ART

The Conflict Resolution manager will look like:


$ ps -ef | grep FNDCRM
n1070161 24941 24927 0 Apr 29 ? 1:17 FNDCRM
APPS_APPDEMO/84BFBEB900000
0000000000000000000000000000000000000000000000

I hit the Restart button to start the Standard manager but it still didn't start?
Telling a manager to restart just sets the status to Restart. The ICM will start it the next
process monitor session or the next time the ICM starts.
Use Activate to start a manager immediately.

Page 12 of 41 12
SUBBA REDDY S AOL Questions
11/17/2020
Also, when a manager is deactivated manually, the ICM will not restart it. You will need
to set it to Restart, or activate it manually.

Why does the "to start" date of my concurrent request default to 24 hours in the past?
The short story:
If you get patch 387798, then this behavior can be turned on and off using the profile
"Concurrent:Multiple Time Zones".
The long story:
This behavior is a temporary fix until we can build time zone support into the product in a
future release.
If the profile "Concurrent:Request Start Time" is set, then we default the "to start" date of a
request to that value. Otherwise we assume that the user wants the request to start as soon as
possible.
Problems occur when the user is in a time zone that is ahead of the time zone in which the
concurrent managers are running. Say a user submits the request in a field office in the Eastern
time zone at 9:00, so we default the requested start date to 9:00. But now the concurrent
managers are at HQ in California, so user's request will run at 9:00 Pacific time, 12:00 Eastern.
In order to default requests to start as soon as possible, we submit them to start 24 hours before
their request date. This covers the worst case time zone difference.

Can I submit a report set using CONCSUB?


No, you may not. This is documented in bug 334337.

How do I submit a request with CONCSUB that has a null parameter?


Use '""' as the null parameter.
(Single quote, double quote, double quote, single quote)

How can users submit requests with CONCSUB without giving them the APPS password?
Try this:
1. As the applmgr user, create a shell script that runs CONCSUB
Either hardcode the parameters for the report, or pass them in as parameters to the
script.
2. Change the permissions on this script to 700. Now no one can read this script and get
the password.
3. Create another script that calls the first script. Pass parameters along if you need
to.
4. Change the permissions on this script to 6755. Now any user can execute and read
the second script, which calls the first one. Have the users run this script to submit
their requests without knowing the password.

What is the syntax for controlling the concurrent manager using startmgr and concsub in NT?
On NT, the concurrent manager is run as an NT service. You start and stop the managers
using the Services control panel.
See the Applications Installation manual for NT, Appendix A for details.
See pg. 5-9 of this manual for instructions on creating the concurrent manager service.

NCA

Do I need to reinstall the 16.1 server patches when I install NCA?

Page 13 of 41 13
SUBBA REDDY S AOL Questions
11/17/2020
NO! See the 10.7 NCA install manual. Chapter 2 says that if you previously installed
the 16.1 server patches, you can omit all steps in the chapter.
The patches included with 16.1 and the NCA server updates are exactly the same thing.

How do I get help files to work with the appletviewer?


1) Configure the virtual directories for the web server
This is documented in the 10.7 NCA installation notes and the Release 11 installation
manual. 10.7 NCA calls for using oa-doc, and R11 calls for OA_DOC.
Either way, the virtual directory should point to where the help files have been
installed.
2) Make sure the parameter clientBrowser is NOT commented out in the html file
You should remove the exclamation mark at the beginning of the tag
3) Make sure that the path to Netscape (or whatever browser you are using) is included
in the PATH environment variable.
One way is to add a line to the batch file that starts the appletviewer that
appends to the PATH variable. This way, every time that the batch file is run,
the correct path will be used.
4) Make sure the environment variable HELP_BASE_URL is set on the Forms Server.
It should be set to: http://server name:port/oa-doc
In Release 11, it is set with the profile option 'Help System Base URL'
http://server name:port/OA_DOC

How do I get the Forms server to produce a diagnostic log file?


See Using Forms Runtime Diagnostics
When using this with webforms, you add the "record=collect" parameter to the serverArgs
parameter in your html file.
For example, if your html file contains:
<PARAM name="serverArgs" value="module= ... FNDNAM=APPS>
You would change it like so:
<PARAM name="serverArgs" value="module= ... record=collect FNDNAM=APPS>

How do I tell if the Forms Server is running?


Use: ps -ef |grep f45
The forms server process is called f45srvm
You will also see other processes named f45runw. There should always be at least one of
these processes. Each user that connects will spawn another f45runw process.
Example:
$ ps -ef | grep f45
oracle 68 1 0 May 11 ? 0:00 f45srvm port=9002 pool=1
oracle 18295 68 0 Jun 12 ? 0:00 f45runw webfile=7,80

What is f45runw? What happened to f45webm?


For some reason, the f45webm executable is executed with the name f45runw. They are
the same thing, f45webm is the name of the executable on disk, and f45runw is the name of the
process.

How does my environment need to be set before starting the Forms Server?

Page 14 of 41 14
SUBBA REDDY S AOL Questions
11/17/2020
The Forms server needs to be started with a complete Applications environment, similar to
starting the concurrent managers. This means having APPL_TOP set, and sourcing the
APPLSYS.env environment file.
The Forms server will encounter many problems, including failing to start, if this is not
done.

What is f45ctl for?


f45ctl is used to start/stop the Forms server. This way, you do not need to start it in the
background, and the process will not terminate when you log out.
f45ctl { start | stop } port=port_num log=log_file
Example: f45ctl start port=9000 log=f45log.txt
port number and log file are optional, it will use 9000 as the default port

Run the Forms server on a different port using the static html file?
In the html file, add the line:
<PARAM name="serverPort" value="9003">
after the other PARAM tags, using the port number you want
Then start the Forms server on that port

Do I need separate ORACLE_HOMES for my database server and my Forms server if they are
on
the same machine?
Yes, because Dev2K 1.3.2 is installed in one, and Dev2K 1.6 is installed in the other. You
can install them both in one home, but you will have problems when you try to relink.

What about Release 11?


In Release 11, Dev2K 1.6.1 is used for both Forms and Reports so you can install
the database server and forms server in one home.

Can I run more than 1 Forms server on a machine?


Yes, on different ports.

What is the correct syntax for running a local copy of the jar file?
archive="file:///c:/java/jdk1.1.5.16/appscore.jar"
(Using the correct path and drive letter for your PC)

Can I use the same html file for JInitiator as the appletviewer?
No, the JInitiator file contains <EMBED> and <OBJECT> tags instead of
an <APPLET> tag. You will get an error using this file with the appletviewer.

Java/JDK

How do I tell what version of the JDK I am using?


At a command prompt, type: java -version

How do I get a stack dump from the appletviewer?


In the DOS window where appletviewer is running, hit Control and Break

What is the difference between the JDK and JRE?

Page 15 of 41 15
SUBBA REDDY S AOL Questions
11/17/2020
JRE is the Java Runtime Environment
JDK is the Java Developers Kit
They both can run Java programs, the JDK is also a full development environment.
It contains the Java compiler and other utilities required to create Java programs,
The JRE can only run the programs.

What is this CLASSPATH thing anyway?


CLASSPATH is an environment variable the Java interpreter uses to search for class files.
It is set to a colon separated list of directories, similar to the PATH variable.
It it used both to locate the Java system classes, and user-written classes.
In Java 1.0, you always had to set it, or it would not be able to find the system classes.
In Java 1.1, the interpreter uses classes.zip and the current directory as a default if
CLASSPATH
is not set.
This means that using the 1.1 JDK on the PC, you do not need to set CLASSPATH.
It also means that if you do set it, you must include the defaults, or the system classes will
not be found.
The JRE uses rt.jar instead of classes.zip, so always include this file in CLASSPATH.

What is the story on those yellow bars on the appletviewer windows?


The Java security mechanism normally prevents applets from performing certain actions
on the user's
machine. These include accessing the local disk, launching programs, and printing.
This is a good thing, since you would not normally want to download an applet off the
Internet
and have that applet be able to do these things on your computer. (That would spoil all
the fun for the virus writers)
The yellow bars signify that this is an 'untrusted' applet, and it will not be allowed to do
these
things. (You will not be able to print from Action->Print, or launch a browser to view Help
files.)
Oracle supplies a digital certificate with Applications that essentially turns the applet into
a 'trusted' applet, and the yellow bars are not displayed.
This is the reason for running appscert.bat and importing the certificate before running
Apps.

How do I specify where I want the identitydb.obj file to be put on the client?
The identitydb.obj file is created when javakey is first run. (From appscert.bat)
This file is used to hold security information for the appletviewer
In the jdk\lib\security directory is a file called java.security
Add a line to this file:
identity.database=C:\\directory\\path
using the path you want the file placed in
Note that you must use double backslashes

Where can I find documentation on the appletviewer, javakey, etc.?


Go to the Tools Reference Page at Sun's website //WWW.SUN.COM

Page 16 of 41 16
SUBBA REDDY S AOL Questions
11/17/2020
Customization

How do I create a custom application?


Step 1: Create the directory
Create a top directory for your product underneath $APPL_TOP.
Make sure applmgr has the correct ownership and permissions.
Create subdirectories underneath this directory that you will need.
(bin, forms, log, out, lib, etc.)
Add an entry into your APPLSYS.env file to set the product top environment
variable:
PF_TOP=/u01/appl/pf
export PF_TOP
If you will be creating custom 10SC forms, you will need to create a
top directory on the client PCs. Create a Forms and a Mesg directory
underneath it, and add the product top environment variable to oaconfig.ora.

Step 2: Create the Oracle ID


Create a new Oracle ID in the database. Give the new schema any roles and privileges
it will need.
At this time you can run $AD_TOP/admin/sql/adappss.pls and adappsb.pls to create
the APPS_DDL and APPS_ARRAY_DDL packages.

Step 3: Register the Oracle ID


Navigate to the Register Oracle ID form. Enter the custom Oracle ID,
password, and logical database. Select 'Register' and save the screen.

Step 4: Register the application


Navigate to the Register Applications form. Enter the long and short
application name, abbreviation, and product top environment variable.

Step 5: Add the application to a datagroup


Navigate to the Define Data Group form. Add your application to a datagroup,
using the APPS schema as the Oracle ID.

Step 6: Register custom tables and packages


Custom tables and indexes are created in the custom schema, and registered
with AOL using the AD_DD package. See Appendix B of the Installation
manual for an example of this. The APPS schema must have a synonym for
all tables, and be granted privileges on them. Custom packages and procedures
must be created in the APPS schema.

Now custom concurrent programs, forms, reports, etc. can be registered against
your new application.

How do I register a custom concurrent program?


Step 1: Register a concurrent program executable
Navigate to the Define Executable form (AOL Reference manual pg 9-84)
This determines the type of program being run,
ie an Oracle Report, a C program, a shell script etc.

Page 17 of 41 17
SUBBA REDDY S AOL Questions
11/17/2020
Fill in the executable name, application and execution method.
For the Execution File, fill in just the filename. The concurrent manager will
look in the appropriate directory under the application's top directory.
For spawned programs, the file must be in the bin directory, for Oracle Reports the
rdf file must be in the srw directory.
For PLSQL concurrent programs, put the name of the stored procedure.

Step 2: Define the concurrent program


Navigate to the Define Concurrent Program form (AOL Reference manual pg 9-87)
This form links a concurrent program to the executable you just defined, as well as
defines the programs parameters, incompatibilities, and other options.

Enter the concurrent program name, application, short name and description.
Check Standard Submission if you want to be able to submit this program from the
Standard Report Submission form.
Enter the name of the executable you defined and any report information if necessary.
Also define any parameters your program needs here and any incompatibilities.

Step 3: Add the concurrent program to a Report Group


First you will need to find the name of the Report Group to use.
Go to Security->Responsibility and query the responsibility you want to run the program
with.
It should show a Report Group name. Query this name in Security->Responsibility-
>Report
Add your new program to the list of available programs. Now when you go to submit
a request with this responsibility, you will be able to submit your custom program.

How do I compile a custom C program?


Spawned programs:
Step 1: Write the code
Step 2: Compile the source
You must use the makefile under $FND_TOP/usrxit
Use: make -f $FND_TOP/usrxit/Makefile program.o
We do not support using any other makefile
Step 3: Link the program
This part is a little tricky. You need to create a custom makefile for this step.
Use $FND_TOP/lib/sample.mk as a starting point. Copy this file to the lib directory
under your applications top directory. Rename it <short name>.mk (ie fnd.mk, gl.mk
etc)
Modify this file according to the directions in it. Basically you need to add a target
and build commands for your executable.
Next, use adrelink to link the executable:
adrelink force=y ranlib=y "shortname programname"
Step 4: Register the program as in the above question

Immediate programs:
Just don't do it.

How do I run a shell script as a concurrent program?

Page 18 of 41 18
SUBBA REDDY S AOL Questions
11/17/2020
1: Write the script and call it <name>.prog
Place the script under the bin directory under your applications top directory.
For example, call the script CUSTOM.prog and place it under
$CUSTOM_TOP/bin
2: Make a symbolic link from your script to $FND_TOP/bin/fndcpesr
For example, if the script is called CUSTOM.prog use this:
ln -s $FND_TOP/bin/fndcpesr CUSTOM
This link should be named the same as your script without the .prog extension
It should be in the same directory as the script.
3: Register a concurrent program as described above, using an execution method of 'Host'
Use the name of your script without the .prog extension as the name of the executable
For the example above, you would use CUSTOM
4: Your script will be passed at least 4 parameters, in $1 through $4
These will be: orauser/pwd, userid, username, request_id
Any other parameters you define will be passed in $5 and higher.
Make sure your script returns an exit status.
5: If your script returns a failure exit status but the concurrent manager does not report the
error (shows it as still running normal)
apply patch 442824

Can I run my custom forms with Forms Designer?


16-bit (SmartClient):
You should be able to run forms with the Forms Designer that comes on the SmartClient
CD. The debugger will not work, however. See bug

32-bit (NCA):
If the forms are AOL forms (ie created from template.fmb) they cannot be run from the
Forms Designer or Forms Runtime because these executables do not have the AOL user
exits linked in.
You will see many FRM-40800 errors trying to run forms this way.
Also see bug 414115 that describes a problem with Forms 4.5 and attaching libraries.
The only way to run these forms is through Applications.

Why do my PLSQL stored procedure concurrent programs error out with:


'Invalid number of arguments'?
See pg. 9-79 of the AOL Reference manual.
PLSQL concurrent programs must have 2 OUT arguments defined.
RETCODE is used to return the error status
ERRBUF is used to return an error message
Note that you do not need to define these arguments in the Define Arguments form,
only in the procedure itself.

How come when I close my custom form using the 'X' close box I get an export window popping
up?
You need to look at the procedure APP_CUSTOM.CLOSE_WINDOW
This procedure is defined in the TEMPLATE form. It contains instructions in the
comments on how to modify this procedure. You must do this for all of the custom forms you
write or you will have problems closing the window.

Page 19 of 41 19
SUBBA REDDY S AOL Questions
11/17/2020
How do I preserve customizations through an upgrade?
The upgrade process may overwrite any data owned by one of the Oracle Applications.
Move all of your customizations (menus, responsibilities, report groups, etc) to a custom
application. After the upgrade, you can move them back if you want.

Can I disable the items in the Help menu? (like Trace, Debug, etc)
Yes.

Web Applications

How can I assign responsibilities in Release 11 Web Apps?


In Release 11, regular applications users and web users have been merged. This means
that the same user name and password is used to log into Apps and Web apps. Also, OSSWA
responsibilities are assigned in the Define Users form, just like regular responsibilities.
This also means that FND_WEB_USERS is no longer used.

Where do I find the configuration files for the Webserver?


Go to $ORAWEB_ADMIN (usually $ORACLE_HOME/ows/admin).
Navigate down to the ows directory, then into the site name directory.
There should be a wrb directory here and a http_servername directory here.
Under the wrb directory will be a config directory and a log directory.
In config, you will find a file called wrb.app. This file contains the configuration for the Web
Request Broker.
It is all the information you enter on the admin screens. (ie, all the DAD info, cartridge info,
virtual directories etc..)
The log directory of course holds log files.
Back up in the http_servername directory, you will find directories for each listener.
In each directory there will be config and log directories again.
In the config directory is a file called sv'listenername'.cfg (substitute the name of the listener)
This file holds the configuration for this listener.

Database questions

Which version of 'alter package' compiles just the header? the body? both?
ALTER PACKAGE package_name COMPILE - compiles the header and the body
ALTER PACKAGE package_name COMPILE PACKAGE - compiles just the header
ALTER PACKAGE package_name COMPILE BODY - compiles just the body

How do I find the errors when a package will not compile?


From SQL*Plus, 'show errors' will usually give you the last error messages.
SELECT name, text FROM user_errors will give you the errors.

What is the best way to recompile invalid objects?


This has been debated, but my money is on adadmin. It uses the
AD_PARALLEL_COMPILE_PKG
to find invalid objects, create a dependency tree of them, and divides the jobs up among
multiple workers.
Also, the adcmpusr script does the same thing, if adadmin is not working, or you really just
want to run a script.

Page 20 of 41 20
SUBBA REDDY S AOL Questions
11/17/2020
How do I get the version of a package or package body?
The table USER_SOURCE contains the text of all the packages in the current schema.
Each package header or body will have a version number in the text, something like:
/* $Header: AFSCWEBS.pls 61.0 98/08/13 09:26:56 porting ship $ */
This shows that this package is version 61.0
You can use:
SELECT text FROM user_source WHERE name = <package name> AND TEXT LIKE
'%$Header%';

This also shows the name of the file (AFSCWEBS.pls) that contains the CREATE
statement for this package. You can run this script if you need to recreate this package.

How do I find the name of the script that creates a particular package header or body?
See the question above.

How do I backup a table?


CREATE TABLE backup_table AS SELECT * FROM table_to_backup;

 AOL
Terminology
Key Flexfield: Required flexfield used in Oracle applications. Structures are pre-defined by
Oracle, implemented by the users and are used for the accounting flexfield, the item flexfield,
etc. Key flexfield data flows between the Oracle Applications and is displayed on standard
reports.

Descriptive Flexfield: Optional flexfield used in Oracle applications to store custom data. Most
forms have the ability to store descriptive flexfield data. Descriptive flexfield data resides
within the applications and is not displayed on any standard or FSG reports. All reporting is
custom.

What is the diff. betn. KFF and DFF? or what is KFF or DFF?
A KFF is a set of segments, each segment will identify a unique characterstic of an entity. it can
be termed as intelligent key. we can define our business requirements without doing any
programming.

A DFF is a set of segments which can be used to capture extra info. without any customisation.

Attribute: Column name in the table where the flexfields are stored. Review the table name by
using \ Row Who in character mode or Help ... About This Record in GUI mode to determine
the underlying table. Review the Technical Reference Manual to determine the number of
attribute fields available.

Context Segment: A segment value only valid while referencing another value. User is
prompted conditionally to input a value.

Global Segment: A segment value is entered for every record. User is prompted every time to
input a value.

Page 21 of 41 21
SUBBA REDDY S AOL Questions
11/17/2020
Long List: An option that generates a prompt to the user to enter a partial value before
displaying the full list of valid values.

Segment: An individual field within a flexfield structure. Represents the lowest level of detail.

Segment Structure: The series of segments within the flexfield. Represents the concatenation
of all segments.

Segment Values: The list of valid values.

Value Set: Defines the segment size, data format, and other data characteristics.

Validation method: Defines how the flexfield values will be validated prior to committing to
the database.
Value Sets
The value set defines the flexfield data characteristics such as size, format, and validation
techniques. Data format options include pre-defined formats such as the date format, to allow
alpha characters or not, or to right justify and zero fill the values or not. Additionally, security
may be used or not and whether the values are part of a long list or not is also defined. One of
the more important options is the validation type.

Different validation types include:


Independent: Checks the value entered against a list of valid values maintained within the
applications.
Dependent: Checks the value entered against a list but is dependent on the value entered in a
previous segment as a qualifier for the valid values.
Table: Values are checked against another Oracle table, such as a custom table or view.
None: Doesn’t check for valid value but validates the format. Examples are date format or all
numeric, etc.
Special: Custom validation routine validates the values.

Segment Values
When using the value set validation types of independent, dependent or table, the user must
enter the valid segment values. The input length is determined by the value set length. Note
records may be enabled or disabled in this form.

Context Sensitive Descriptive Flexfields


Descriptive Flexfields can be context sensitive. The information asked for by a descriptive
flexfield prompt will be based on another value entered by the user. There are two ways to set
context sensitivity, user input or a reference field on the form.
The user may enter a data value which opens the context sensitive window. The Fixed Asset
category is an example; if the user enters COMPUTER, the context sensitive descriptive
flexfield appears requesting MEMORY data. If the user enters AUTO, the context sensitive
descriptive flexfield appears requesting LICENSE data.
Alternatively, the context sensitive descriptive flexfield can be opened by referencing another
field on the form. The Xpense Xpress entry is an example; if the user enters the line item
AIRLINE, a descriptive flexfield appears requesting the ticket number.
By default Oracle will deliver pre-defined reference fields, but each site can add others specific
to their needs.

Page 22 of 41 22
SUBBA REDDY S AOL Questions
11/17/2020
Another type of Descriptive flexfield is a self context sensitive. The system prompts for the
driver value of the rest of the Descriptive flexfield. An example delivered by Oracle, is the VAT
tax entry on the Journal Lines entry. The user enters a value for the prompt of whether this
Journal is a result of a VAT invoice or not. When the user enters "Yes", additional information
about the entry is asked for. If the user selects "No", no additional information is prompted. This
is known as a self context sensitive Descriptive flexfield.

Template form
1. Overview of the TEMPLATE Form
2. Libraries in the TEMPLATE Form
3. Special Triggers in the TEMPLATE Form

Platform– independent references to object groups in the


APPSTAND form (STANDARD_PC_AND_VA,
STANDARD_TOOLBAR, and STANDARD_CALENDAR)

Platform– independent attachments of several libraries (including


FNDSQF, APPCORE, and APPDAYPK)

The TEMPLATE form contains sample objects that show typical


items and layout cosmetics. These are provided merely as
samples; to remove them entirely from your form, delete the
following objects.
– blocks: BLOCKNAME, DETAILBLOCK
– window: BLOCKNAME
canvas– view: BLOCKNAME

Libraries in the TEMPLATE Form


APPCORE : APPCORE contains the packages and procedures that are required of
all forms to support the menu, Toolbar, and other required standard behaviors.

Some APPCORE event routines


call routines in the VERT, GLOBE, and CUSTOM libraries

APP_COMBO: Combination Block API


APP_DATE: Date Conversion APIs
APP_EXCEPTION: Exception Processing APIs
APP_FIELD: Item Relationship Utilities
APP_FIND: Query Find Utilities
APP_ITEM: Individual Item Utilities
APP_ITEM_PROPERTY: Property Utilities
APP_RECORD: Record Utilities

APPDAYPK
APPDAYPK contains the packages that control the Oracle Applications Calendar feature.

FNDSQF

Page 23 of 41 23
SUBBA REDDY S AOL Questions
11/17/2020
FNDSQF contains packages and procedures for Message Dictionary,flexfields, profiles, and
concurrent processing. It also has various other utilities for navigation, multicurrency, WHO,
etc.

FND_CURRENCY: Dynamic Currency APIs


FND_GLOBAL: WHO Column Maintenance
FND_ORG: Organization APIS
FND_STANDARD: Standard APIs
FND_UTILITIES: Utility Routines

Special Triggers in the TEMPLATE form


KEY– CLRFRM
– KEY– COMMIT
– KEY– DUPREC
– KEY– EDIT
– KEY– EXIT
– KEY– HELP
– KEY– LISTVAL
– KEY– MENU
– ON– ERROR
– POST– FORM
– PRE– FORM
– WHEN– FORM– NAVIGATE (reference)
– WHEN– NEW– BLOCK– INSTANCE
– WHEN– NEW– FORM– INSTANCE
– WHEN– NEW– ITEM– INSTANCE
– WHEN– NEW– RECORD– INSTANCE
– WHEN– WINDOW– CLOSED
WHEN– WINDOW– RESIZED

PRE– FORM
FND_STANDARD.FORM_INFO(’$Revision: <Number>$’,
’<Form Name>’,
’<Application Shortname>’,
’$Date: <YY/MM/DD HH24:MI:SS> $’,
’$Author: <developer name> $’);
APP_STANDARD.EVENT(’PRE– FORM’);
APP_WINDOW.SET_WINDOW_POSITION(’BLOCKNAME’,
’FIRST_WINDOW’);

To Code the Zooms into Custom.pll


Open the $AU_TOP/RES/PLSQL/CUSTOM.PLL
Code the custom function Zoom_available this function return Boolean we check here the form
name and block name and return true.
And then code the event procedure here we check for event if it is ZOOM then we check for the
form and the block name and using FND_FUNCTION.EXECUTE open the new form
fnd_function.execute takes 4 parameters
FND_FUNCTION.EXECUTE(FUNCTION_NAME=>’ , OPEN_FLAG=> ,
SESSION_FLAG=> , OTHER_PARAMS=> );

Page 24 of 41 24
SUBBA REDDY S AOL Questions
11/17/2020
Who columns
ap_standard.set_who; in Pre-insert /pre-update(last_update_date/creattion_date:-PC
creation_or_last_update_date ) Created_by , last_updated_by, lastupdate_login :PC
display_item).
Query Find :- copy the query find object from appsstand.fmb Type :-1)Row lov,2) Find
Window.

Row Lov Steps :-


1) Create the user defined parameter Say Q_DEPTNO.
2) Create the lov return key value into the parameter.
3) Create the Pre-Query trigger execution Style is before (block level) Here we check
the g_query_find parameter and copy the user defined parameter to block field.
If :parameter.q_query_find =’TRUE’ then
:dept.deptno := :parameter.q_deptno;
:parameter.g_quert_find := ‘FALS’;
end if;
4) create user defined trigger QUERY_FIND block level execution style override.
Call APP_FIND.QUEY_FIND(‘Lov_Name’);

Find Window
1) copy the query_find object from appsstand.fmb
New Button: When-Button-Pressed write this code :- app_find.new(‘Resultant Block’);
Find button: When-button-Pressed write this code :- apps_find.new(‘Resultant Block’);
2) Pre-Query trgger at resultant block execution style before
if :parameter.g_query_find =’TRUE’ Then
Copy(‘:QF_block.empno’,’:emp.empno’);
Source , destination
App_find.query_range(‘hiredate_from’,’hiredate_to’,’emp.hiredate’ )
3) Create user defined trigger QUERY_FIND BLOCK level (override)
app_find.query_find(Resultant window ,find window ,find block);

CALENDAR :
1)change the property class of date field to textitem_date. Lov property set Enable_list_lamp
2) Key-Listval trigger at date field execution style override call the CALENDAR.SHOW

Oracle Report in Oracle application:


Before report :- SRW.USER_EXIT(‘FND SRWINIT’) :- To assign a particular ORG_ID to
your session ,set up the information for flex field ,user profile , the concurrent manager .
After report trigger : SRW.USEREXIT(‘FND SRWEXIT’); :- This user exit frees all the
memory allocation done in other Oracle Applications user exits. You must include this step if
you use any Oracle Application Object Library features in your report (such as concurrent
processing).

Oracle Report and Flex Field Report: Step


1)define before and after report triggers with srw.userexit(‘fnd srwinit’) and srw.userexit(‘fnd
userexit’);
2) Define the user defined parameter P_CONC_REQUEST_ID AND P_FLEXDATA we used
this parameters in USER_EXIT calls and SQL ststments. P_CONC_REQUESR_ID use this

Page 25 of 41 25
SUBBA REDDY S AOL Questions
11/17/2020
parameter to retrieve the concurrent request id.P_FLEXDATA hold the SQL SELECT
statement.
3) Call the FND FLEXSQL from your before report trigger to populate the P_FLEXDATA
SRW.REFERENCE(:P_STRUCT_NUM); ------------ this guarantees that
column/parameter has lates values.
SRW.USER_EXIT(‘FND FLEXSQL
Code =”GL”
num= ”p_STRUCT_NUM”
appl_short_name=”SQLGL”
opuput=”:p_FLEXDATA”
MODE=”SELECT”
DISPLAY=”ALL”);
Muti- Org :- when you pick a responsibility the oracle application assign the org_id value to
the responsibility
To assign the particular org_id to your SQL session use the
SQL> dbms_application_info.set_client_info(‘org_id’ );

Naming Standards
1. Database objects
2. Form objects
3. File standards
4. PL/SQL Packages and Procedures
5. Reserved Words
Database objects :
Table name -- prod_objects
prod is the product short name, and objects is the name of the objects stored in
the table and should be plural.

Form name ,record group,LOV

Item
Use logical, meaningful, and concise names. Note that table columns
based on LOOKUP_CODES should have a ”_CODE” or ”_FLAG”
suffix, and the displayed meaning item should have the same name but
without the suffix.

File Standards

PL/SQL Packages, Procedures and Source Files

Coding standards

We should not use the following things in our code.


ActiveX, VBX, OCX, OLE, DDE (Microsoft Windows– specific features that would not be
available for a browser running on a Macintosh, for example, and cannot be displayed to users
from within the browser)
Timers (all timers will be treated as timers that fire immediately, so avoid coding logic that
relies on a timer having a specific duration)
WHEN– MOUSE– MOVE, WHEN– MOUSE– ENTER/LEAVE and

Page 26 of 41 26
SUBBA REDDY S AOL Questions
11/17/2020
WHEN– WINDOW– ACTIVATED/DEACTIVATED triggers
Open File dialog box
– It would open a file on the applications server, rather than
on the client machine (where the browser is) as a user might
expect
Combo boxes
– Our standards do not use combo boxes anyhow
Text_IO and HOST built– in routines
– These would take place on the applications server, rather
than on the client machine (where the browser is) as a user
might expect

Overview of Application Development Steps


This is the general process of creating an application that integrates
with Oracle Applications.
1. Register your application.
Set up your application directory structures.
3. Modify the appropriate environment files.
4. Register your custom Oracle schema.
5. Include your custom application and Oracle schema in data
groups.
6. Create your application tables and views.
7. Integrate your tables and views with the Oracle Applications APPS
schema.
8. Register your flexfields tables.
9. Build your application libraries and forms.
10. Build your application functions and menus.
11. Build your application responsibilities.
12. Build concurrent programs and reports.
13. Customize Oracle Applications forms if necessary using the
CUSTOM library.

Overview of Form Development Steps


This is the general process of building a form that integrates with
Oracle Applications.
1. Copy the form TEMPLATE and rename it.
2. Attach any necessary libraries to your copy of TEMPLATE.
TEMPLATE comes with several libraries already attached.
3. Create your form blocks, items, LOVs, and other objects and apply
appropriate property classes.
4. Create your window layout in adherence with the
6. Add table handler
Code logic for window and alternative region control.
7. Add Find windows and/or Row– LOVs and enable Query Find.
8. Code logic for item relations such as dependent fields.
9. Code any messages to use Message Dictionary.
10. Add flexfields logic if necessary.
11. Add choices to the Special menu and add logic to modify the
default menu and toolbar behavior if necessary.

Page 27 of 41 27
SUBBA REDDY S AOL Questions
11/17/2020
12. Code any other appropriate logic.
13. Test your form by itself.
14. Register your form with Oracle Application Object Library.
15. Create a form function for your form and register any subfunctions.
16. Add your form function to a menu, or create a custom menu.
17. Assign your menu to a responsibility and assign your responsibility
to a user. See: Oracle Applications System Administrator’s Guide.
18. Test your form from within Oracle Applications (especially if it
uses features such as user profiles or function security).

What is the MultiOrg and what is it used for?


MultiOrg or Multiple Organizations Architecture allows multiple operating units and their
relationships to be defined within a single installation of Oracle Applications. This keeps each
operating unit's transaction data separate and secure. Use the following query to determine if
MuliOrg is intalled:
Select multi_org_flag from fnd_product_groups;

What is the difference between org_id and organisation_id?


Org_id: This is the unique identifier of the Operating unit.
organisation_Id: this is inventory organisation id..
What is the data group?
It is bridge between the oracle database and oracle application product.

Interface in Oracle Applications:-


There are two types of interfaces.
1. open Interfaces
2. custom Interfaces.

In open interfaces we need to load the data to the interface tables(ex.


MTL_SYSTEM_ITEMS_INTERFACE, MTL_ITEM_REVISIONS_INTERFACE) and then
run the seeded program(ex.Import Item for item import) to load the data into the respective
oracle apps tables.

In Custom Interface we need to create a temp. table and load the data into the temp. table using
sql loader or constellar then using sql script or some other means insert the data into to oracle
apps tables after validation if any.

AOL Loaders

Overview
In 11.5, all patches to AOL seed data must use loaders and not sql
scripts. Supported loaders in 11.5 are:

FNDLOAD - Generic loader for all other entities


WFLOAD - All Workflow data
AKLOAD - AK data
FNDSLOAD - * For backward compatibility only (see note)

* FNDSLOAD is supported for backward compatibility, but new

Page 28 of 41 28
SUBBA REDDY S AOL Questions
11/17/2020
enhancements such as data security entities and data versioning
support will not be added. For future development, use FNDLOAD
with afsload.lct to load entities that were in FNDSLOAD.
FNDSLOAD should only be used in pre-existing patches.

Generic documentation on how to use FNDLOAD can be found at:

http://www-apps.us.oracle.com/atg/plans/r115/fndload.txt
http://www-apps.us.oracle.com/atg/plans/r115/fndloadqr.txt

FNDLOAD config files for AOL entities can be found in


$FND_TOP/patch/115/import/*.lct. All currently defined config files
are listed below, with the entities and download parameters
supported by each. Entities marked with "* NLS Upload only" are
only for uploading translation data in NLS mode; full upload is
not supported. See the contents of each config file for full
documentation on usage.

Including FNDLOAD files in a patch

Standards for using FNDLOAD to include a seed data patch in an ARU:

1. Download data you wish to include in your patch.

a. Data files delivered in an ARU must be downloaded from the seed


database for the current release, not a development or private
database. This insures any referenced data you pick up will be
current.

b. The file extension for your downloaded data file must be


.ldt - FNDLOAD data file
.wft - WFLOAD data file
.jlt - AKLOAD data file
.slt - FNDSLOAD data file (obsolete for new downloads)

c. Use parameters to specify data to download. Loader config


files support download parameters (detailed below) to filter
downloaded data. If multiple parameters are specified, only rows
that match all the parameters will be downloaded. Use these
parameters to reduce the downloaded data to the minimum necessary
for your patch. Delivering more data than necessary adds
overhead, and increases your exposure to unwanted dependencies.

d. Edit downloaded ldt file if necessary. Editing loader data files


is discouraged, but possible if needed for unusual circumstances.
If u choose to edit the data file, you must take care to follow the
file syntax exactly. You are also responsible for maintaining any
needed data references, and for thoroughly testing your edited file
to be sure you haven't caused any collateral damage.

Page 29 of 41 29
SUBBA REDDY S AOL Questions
11/17/2020
2. Include FNDLOAD config and data file in your ARU

When you create your ARU, you must include BOTH:


- The ldt data file containing your data
- The version of the lct config file used for the download
You should include both even if the lct config file belongs to another
product. Why? FNDLOAD config files are not guaranteed to be
forward-compatible for upload, meaning you must use the same version
(or higher) of the config file to upload that you used to download.
By including this version in your patch, you insure the customer will
have the correct version, and that any dependencies the config file
may have will have been pulled in by aru_prereq.

3. Call FNDLOAD from ARU database driver

The ARU automatic database driver generator will create your FNDLOAD
calls. It is not recommended to manually create your own database
driver file.

----------------------------------------------------------------------
afattach.lct - Attachment Setup data

FND_ATTACHMENT_FUNCTIONS
Sub-Entities
FND_ATTACHMENT_BLOCKS
FND_ATTACHMENT_BLOCK_ENTITIES
FND_DOC_CATEGORY_USAGES
Download Parameters
APPLICATION_SHORT_NAME
FUNCTION_NAME
FUNCTION_TYPE
FND_DOCUMENT_ENTITIES
Download Parameters
DATA_OBJECT_CODE
FND_DOCUMENT_CATEGORIES
Download Parameters
CATEGORY_NAME
FND_DOCUMENT_DATATYPES

----------------------------------------------------------------------
afcplibr.lct - Concurrent Program Libraries

LIBRARY
* NLS Upload only
Download Parameters
CONCURRENT_PROCESSOR_NAME
APPLICATION_SHORT_NAME

Page 30 of 41 30
SUBBA REDDY S AOL Questions
11/17/2020
----------------------------------------------------------------------
afcpmime.lct - Concurrent Program Mime Types

MIME_TYPE
* NLS Upload only
Download Parameters
FILE_FORMAT_CODE

----------------------------------------------------------------------
afcpprnt.lct - Concurrent Program Printers

PRINTER
* NLS Upload only
Download Parameters
PRINTER_NAME

----------------------------------------------------------------------
afcpprog.lct - Concurrent Program Definitions

* NOTE: Includes flex entity definitions for concurrent program


parameters. DO NOT use this config file directly to load flex
data. Use afffload.lct instead.

PROGRAM
Sub-Entities
INCOMPATIBILITY
Download Parameters
CONCURRENT_PROGRAM_NAME
APPLICATION_SHORT_NAME
EXECUTABLE
Download Parameters
EXECUTABLE_NAME
APPLICATION_SHORT_NAME

----------------------------------------------------------------------
afcppstl.lct - Concurrent Program Printer Styles

STYLE
* NLS Upload only
Download Parameters
PRINTER_STYLE_NAME

----------------------------------------------------------------------
afcpque.lct - Concurrent Queues

QUEUE
* NLS Upload only
Download Parameters
CONCURRENT_QUEUE_NAME

Page 31 of 41 31
SUBBA REDDY S AOL Questions
11/17/2020
APPLICATION_SHORT_NAME

----------------------------------------------------------------------
afcpreqg.lct - Concurrent Request Groups

REQUEST_GROUP
Sub-Entities
REQUEST_GROUP_UNIT
Download Parameters
REQUEST_GROUP_NAME
APPLICATION_SHORT_NAME

----------------------------------------------------------------------
afcprset.lct - Concurrent Request Sets

REQ_SET
* NLS Upload only
Sub-Entities
STAGE
Download Parameters
REQUEST_SET_NAME
APPLICATION_SHORT_NAME

----------------------------------------------------------------------
afcpsch.lct - Concurrent Program Schedules

SCHEDULE
* NLS Upload only
Download Parameters
RELEASE_CLASS_NAME
APPLICATION_SHORT_NAME

----------------------------------------------------------------------
afcpwksh.lct - Concurrent Program Workshifts

WORKSHIFT
* NLS Upload only
Download Parameters
CONCURRENT_TIME_PERIOD_ID
APPLCIATION_SHORT_NAME

----------------------------------------------------------------------
afffload.lct - Flex data

* See comments at the beginning of afffload.lct for thorough


documentation of valid download parameter values.

VALUE_SET
Sub-Entities

Page 32 of 41 32
SUBBA REDDY S AOL Questions
11/17/2020
VSET_TABLE
VSET_EVENT
Download Parameters
FLEX_VALUE_SET_NAME
DESC_FLEX
Sub-Entities
DFF_COLUMN
DFF_REF_FIELD
DFF_CONTEXT
DFF_SEGMENT
Download Parameters
APPLICATION_SHORT_NAME
DESCRIPTIVE_FLEXFIELD_NAME
P_COLUMN_NAME
P_REF_FIELD_NAME
P_CONTEXT_CODE
P_SEGMENT_NAME
P_LEVEL
KEY_FLEX
Sub-Entities
KFF_COLUMN
KFF_FLEX_QUAL
KFF_SEGMENT_QUAL
KFF_STRUCTURE
KFF_WF_PROCESS
KFF_SH_ALIAS
KFF_CVR_RULE
KFF_CVR_LINE
KFF_SEGMENT
KFF_FLEXQ_ASSIGN
KFF_SEGQ_ASSIGN
Download Parameters
APPLICATION_SHORT_NAME
ID_FLEX_CODE
P_COLUMN_NAME
P_FLEX_QUAL_NAME
P_SEG_QUAL_NAME
P_STRUCTURE_CODE
P_WF_ITEM_TYPE
P_SH_ALIAS_NAME
P_CVR_RULE_NAME
P_SEGMENT_NAME
P_LEVEL
VALUE_SECURITY_RULE
Sub-Entities
VSEC_LINE
VSEC_USAGE
Download Parameters
FLEX_VALUE_SET_NAME

Page 33 of 41 33
SUBBA REDDY S AOL Questions
11/17/2020
FLEX_VALUE_RULE_NAME
PARENT_FLEX_VALUE_LOW

VALUE_ROLLUP_GROUP
Download Parameters
FLEX_VALUE_SET_NAME
HIERARCHY_CODE
VALUE_SET_VALUE
Sub-Entities
VAL_NORM_HIERARCHY
VAL_QUAL_VALUE
Download Parameters
FLEX_VALUE_SET_NAME
PARENT_FLEX_VALUE_LOW
FLEX_VALUE

----------------------------------------------------------------------
aflvmlu.lct - Lookup types and codes

FND_LOOKUP_TYPE
Sub-Entities
FND_LOOKUP_VALUE
Download Parameters
VIEW_APPSNAME
LOOKUP_TYPE
SECURITY_GROUP

----------------------------------------------------------------------
afmdmsg.lct - Messages

FND_NEW_MESSAGES
Download Parameters
APPLICATION_SHORT_NAME
MESSAGE_NAME

----------------------------------------------------------------------
afmlhelp.lct - On-Line Help Navigation Trees

FND_HELP_TREE
Download Parameters
LANGUAGE
CUSTOM_LEVEL
NODE_APP
NODE_KEY
APPLICATION_SHORT_NAME
PARENT_KEY

----------------------------------------------------------------------
afnls.lct - Multi-lang/currency/territory

Page 34 of 41 34
SUBBA REDDY S AOL Questions
11/17/2020
FND_CURRENCY
* NLS Upload only
Download Parameters
CURR_CODE
FND_LANGUAGE
* NLS Upload only
Download Parameters
LANG_CODE
FND_TERRITORY
* NLS Upload only
Download Parameters
TERR_CODE

----------------------------------------------------------------------
afscprof.lct - Profiles and Profile Values

PROFILE
Sub-Entities
FND_PROFILE_OPTION_VALUES
Download Parameters
PROFILE_NAME
APPLICATION_SHORT_NAME

----------------------------------------------------------------------
afscursp.lct - Security data (users, responsibilities, etc)

FND_USER
* Only upload if Apps schema passwords are identical
Sub-Entities
FND_USER_RESP_GROUPS
Download Parameters
USER_NAME
FND_SECURITY_GROUPS
Download Parameters
SECURITY_GROUP_KEY
FND_APPLICATION
* NLS Upload only
Download Parameters
APPLICATION_SHORT_NAME
FND_ORACLE_USERID
Download Parameters
ORACLE_USERNAME
FND_RESPONSIBILITY
Sub-Entities
FND_RESP_FUNCTIONS
Download Parameters
RESP_KEY
APPLICATION_SHORT_NAME

Page 35 of 41 35
SUBBA REDDY S AOL Questions
11/17/2020
FND_DATA_GROUPS
* NLS Upload only
Sub-Entities
FND_DATA_GROUP_UNITS
Download Parameters
DATA_GROUP_NAME
FND_ENABLED_PLSQL
Download Parameters
PLSQL_TYPE
PLSQL_NAME

----------------------------------------------------------------------
afsload.lct - Function Security Data

afsload.lct loads data for a Function and Data Security related entities:
FORM
FUNCTION
MENU
MENU_ENTRY
OBJECT
OBJECT_INSTANCE_SET
GRANT

NOTES:
1. afsload.lct supports UPLOAD in non-NLS mode only in version
115.17 and higher (available in bug 1485289).

2. You may also use FNDSLOAD to UPLOAD and DOWNLOAD the following
entities:
FORM
FUNCTION
MENU
MENU_ENTRY
FNDSLOAD does NOT include Data Security entities:
OBJECT
OBJECT_INSTANCE_SET
GRANT
If you use FNDSLOAD to download your ldt file, afsload.lct will
be used to upload translations with UPLOAD_MODE=NLS, but the ldt
file must be uploaded by FNDSLOAD. Ldt data files produced by
FNDSLOAD and afsload.lct are not compatible; you may not merge
or interchange them.

FORM
Download Parameters
APPLICATION_SHORT_NAME
FORM_NAME
Upload Parameter
UPLOAD_MODE: NLS

Page 36 of 41 36
SUBBA REDDY S AOL Questions
11/17/2020
FUNCTION
Download Parameters
FUNC_APP_SHORT_NAME
FUNCTION_NAME
Upload Parameter
UPLOAD_MODE: NLS

MENU
Sub-Entities
ENTRY
Download Parameters
MENU_NAME
Upload Parameter
UPLOAD_MODE: NLS, MERGE and REPLACE

OBJECT
Download Parameters
OBJ_NAME
Upload Parameter
UPLOAD_MODE: NLS

OBJECT_INSTANCE_SET
Download Parameters
INSTANCE_SET_NAME
INS_OBJ_NAME
Upload Parameter
UPLOAD_MODE: NLS

GRANT
Download Parameters
GNT_MENU_NAME
GNT_ISN
GNT_OBJ_NAME
Upload Parameter
UPLOAD_MODE: NLS, MERGE and REPLACE

----------------------------------------------------------------------
afsncat.lct - Sequential Numbers

FND_DOC_SEQUENCE_CATEGORIES
Download Paraemeters
APP_SHORT_NAME

----------------------------------------------------------------------
afdict.lct - AOL Data Dictionary

FND_TABLE
Sub-Entities

Page 37 of 41 37
SUBBA REDDY S AOL Questions
11/17/2020
FND_COLUMN
FND_INDEX
FND_INDEX_COLUMN
FND_PRIMARY_KEY
FND_PRIMARY_KEY_COLUMN
FND_FOREIGN_KEY
FND_FOREIGN_KEY_COLUMN
Download Parameters
APPLICATION_SHORT_NAME
TABLE_NAME

FND_VIEW
Sub-Entities
FND_VIEW_COLUMN
Download Parameters
APPLICATION_SHORT_NAME
VIEW_NAME

FND_SEQUENCE
Download Parameters
APPLICATION_SHORT_NAME
SEQUENCE_NAME

----------------------------------------------------------------------
afwfload.lct - Workflow Data (for NLS Upload only)

* File for NLS Upload only, all others use WFLOAD.

----------------------------------------------------------------------
fndstd.lct - Template config file

* Template config file to use when creating new files.

 (1) how to download the concurrent program definition for a specific program ???????

FNDLOAD apps/msc123 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct


/oraspace/patches/vjafcpprog.ldt PROGRAM
CONCURRENT_PROGRAM_NAME='MSCSC_NOTES_ORDER_HEADERS'

(2) how to download the concurrent program definitions for all the custom concurrent
programs ???????

select 'FNDLOAD apps/msc123 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct


PROGRAM
CONCURRENT_PROGRAM_NAME=555'||CONCURRENT_PROGRAM_NAME||'556' from
fnd_concurrent_programs where last_updated_by not in(1);

(3) how to download the concurrent program definition for a specific application ???????

Page 38 of 41 38
SUBBA REDDY S AOL Questions
11/17/2020
FNDLOAD apps/msc123 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct
/oraspace/patches/vjafcpprog.ldt
PROGRAM APPLICATION_SHORT_NAME='MSCAR'

(4) how to download the concurrent programs which are registered under all custom
applications ??????????

select 'FNDLOAD apps/msc123 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct


/oraspace/patches/vjafcpprog.ldt PROGRAM
APPLICATION_SHORT_NAME=555'||APPLICATION_SHORT_NAME||'556' from
fnd_APPLICATION WHERE last_updated_by not in(1);

(5) how to download the concurrent executable definition for a specific executable ???????????

FNDLOAD apps/msc123 0 Y DOWNLOAD afcpprog.lct /oraspace/patches/vjafcpprog2.ldt


EXECUTABLE
EXECUTABLE_NAME='MSCSC_NOTES_ORDER_HEADERS'

Once the files were downloaded successfully we can upload the files using the upload argument
for ex

FNDLOAD apps/msc123 0 Y UPLOAD afcpprog.lct /oraspace/patches/vjafcpprog.ldt

FNDLOAD apps/msc123 0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lct


vjafcpprogmsccus.ldt


Vijay.Cherukuri
Oracle Applications DBA
[email protected]

The program afcpprog.lct is used for download/upload data of a Concurrent


Program.

e.g For Download:


$FND_TOP/bin/FNDLOAD apps/apps 0 Y DOWNLOAD
$FND_TOP/patch/115/import/afcpprog.
lct
<ldt_result_file> PROGRAM CONCURRENT_PROGRAM_NAME=<your_program_name&
gt;
APPLICATION_SHORT_NAME=<your_appln_shortname>

For Upload:
$FND_TOP/bin/FNDLOAD APPS/APPS 0 Y UPLOAD
$FND_TOP/patch/115/import/afcpprog.
lct <ldt_result_file>

afcpprog.lct does download value sets associated with concurrent programs, but
does not offer a method to download and upload value set values.

Page 39 of 41 39
SUBBA REDDY S AOL Questions
11/17/2020
The only way to accomplish this is by using afffload.lct.An example of
downloading the values of an Independent value set is:

e.g For Download


$FND_TOP/bin/FNDLOAD <apps/apps_pwd> 0 Y DOWNLOAD @FND:
admin/import/afffload.lct
<ldt_result_file> VALUE_SET_VALUE FLEX_VALUE_SET_NAME=<your_value_set&
gt;

e.g For Upload


$FND_TOP/bin/FNDLOAD APPS/APPS 0 Y UPLOAD
$FND_TOP/patch/115/import/afffload.
lct <ldt_result_file>

1. Download Request Set definitions (Using Entity "REQ_SET")

$FNDLOAD sqllogon 0 Y DOWNLOAD @FND:patch/115/import/afcprset.lct


<sample>.ldt REQ_SET REQUEST_SET_NAME="<Request_Set_Name>"

Usage of entity "REQ_SET" with FNDLOAD will download request


definitions of <Request_Set_Name> into <sample>.ldt using
information in afcprset.lct
Check the version of afcprset.lct that is compatible with your FND Patchset
Level.
Example , use afcprset.lct 115.21 in case of Applications version 11.5.8

2. Download Request Set Stage links information. (Using Entity "


REQ_SET_LINKS")

$FNDLOAD sqllogon 0 Y DOWNLOAD @FND:patch/115/import/afcprset.lct


<sample_links>.ldt REQ_SET_LINKS REQUEST_SET_NAME="<
Request_Set_Name>"

Usage of entity "REQ_SET_LINKS" with FNDLOAD will download request


stage linkage information of <Request_Set_Name> into <sample_links>.
ldt using information in afcprset.lct .Check the version of afcprset.lct that
is compatible with your FND Patchset Level.

Now,use the resultant files <sample>.ldt and <sample_links>.ldt for


uploading the Request Set data in another Instance, by using the commands given
below int he following sequence :-

3. Upload Request Set definitions.

$FNDLOAD apps/<apps_pwd> 0 Y UPLOAD @FND:patch/115/import/afcprset.lct &


lt;sample>.ldt

4.Upload Request Set Stage links information.

Page 40 of 41 40
SUBBA REDDY S AOL Questions
11/17/2020
$FNDLOAD apps/<apps_pwd> 0 Y UPLOAD @FND:patch/115/import/afcprset.lct &
lt;sample_links>.ldt

All the required Concurrent Program definitions should exist before loading
the Request Set on the Target Instance.

Page 41 of 41 41

You might also like