Professional Documents
Culture Documents
General AOL
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.
How do I find out what the currently installed release of Applications is?
SELECT release_name FROM fnd_product_groups
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 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
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.
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)
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
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
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".
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
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)
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
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
Networking
The listener default name is LISTENER. If the listener has a different name, you must
supply the name
Reports/Printing
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
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.
Alerts
Concurrent Manager
UPDATE fnd_concurrent_queues
SET running_processes=0, max_processes=0;
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
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.
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.
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
How does my environment need to be set before starting the Forms Server?
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.
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 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 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
Customization
Now custom concurrent programs, forms, reports, etc. can be registered against
your new application.
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.
Immediate programs:
Just don't do it.
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.
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.
Can I disable the items in the Help menu? (like Trace, Debug, etc)
Yes.
Web Applications
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
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.