Professional Documents
Culture Documents
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
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 aredirectory names.
If $APPLCSF is not set, it places the files under the product top of the application
associated with the request.
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.
And: <username> = The id of the user that submitted the request
How do I find out what the currently installed release of Applications is?
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')
where: applsys/pwd is the APPLSYS user and password and APP is the short name of
the application (like PO or INV)
Page 2 of 5
Use FND_REQUEST.SUBMIT_REQUEST
Note that this can only be called from a concurrent program. See the Coding Standards
for parameter details
The Sysadmin responsibility can cancel or hold any running request
There is no adrelink, we supply executables pre-built. There is no need to relink as on
UNIX.
You're just full of trick questions today… Applications for NT does not include character
mode forms.
This profile option controls whether users can use the Examine utility.
How do I set the name of the site that shows up under Help->About Oracle Applications?
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
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.
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)
Page 3 of 5
For example :
adfrmgen product="fnd gl" filepath="forms" (entire directories from multiple products)
Example:
Note that in Release 11, adadmin will allow you to compile specific forms
Binary executables are created with adrelink. For example, if addmimp is missing use:
(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.
Concurrent Manager
This will tell whether the internal manager is running, what the PMON method is, and
where the log file is,
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?
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.
vd11 13703 13660 0 May 11? 0:01 FNDLIBR FND Concurrent_Processor
MANAGE OLOGIN="APPS_APPDEMO/94C4B1C10000000000 n1070161 24938
24927 0 Apr 29? 0:06 FNDLIBR FND Concurrent_Processor
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:
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.
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.
Page 5 of 5
Can I submit a report set using CONCSUB?
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.
Java/JDK
In the DOS window where appletviewer is running, hit Control and Break
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.
1. CLASSPATH is an environment variable the Java interpreter uses to search for class
files.
2. It is set to a colon separated list of directories, similar to the PATH variable.
3. It it used both to locate the Java system classes, and user-written classes.
4. In Java 1.0, you always had to set it, or it would not be able to find the system classes.
5. In Java 1.1, the interpreter uses classes.zip and the current directory as a default if
CLASSPATH is not set.
6. This means that using the 1.1 JDK on the PC, you do not need to set CLASSPATH.
7. It also means that if you do set it, you must include the defaults, or the system classes
will not be found.
8. 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
identity.database=C:\\directory\\path
using the path you want the file placed in Note that you must use double backslashes
Customization
Step 1:
c. Make sure applmgr has the correct ownership and permissions.
d. Create subdirectories underneath this directory that you will need.
f. Add an entry into your APPLSYS.env file to set the product top environment
variable:
PF_TOP=/u01/appl/pf
h. 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:
b. Create a new Oracle ID in the database. Give the new schema any roles and
privileges it will need.
c. 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:
b. Navigate to the Register Oracle ID form. Enter the custom Oracle ID, password, and
logical database. Select 'Register' and save the screen.
Step 4:
b. Navigate to the Register Applications form. Enter the long and short application
name, abbreviation, and product top environment variable.
Step 5:
b. Navigate to the Define Data Group form. Add your application to a datagroup, using
the APPS schema as the Oracle ID.
Step 6:
b. 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
d. Now custom concurrent programs, forms, reports, etc. can be registered against your
new application.
Step 1:
b. Navigate to the Define Executable form (AOL Reference manual pg 9-84)
c. This determines the type of program being run, ie an Oracle Report, a C program, a
shell script etc.
d. Fill in the executable name, application and execution method.
e. For the Execution File, fill in just the filename. The concurrent manager will look in
the appropriate directory under the application's top directory.
f. For spawned programs, the file must be in the bin directory, for Oracle Reports the
rdf file must be in the srw directory.
g. For PLSQL concurrent programs, put the name of the stored procedure.
Step 2:
b. 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.
c. Enter the concurrent program name, application, short name and description.
d. Check Standard Submission if you want to be able to submit this program from the
Standard Report Submission form.
e. Enter the name of the executable you defined and any report information if
necessary.
f. Also define any parameters your program needs here and any incompatibilities.
Step 3:
b. First you will need to find the name of the Report Group to use.
c. Go to Security->Responsibility and query the responsibility you want to run the
program with.
d. It should show a Report Group name. Query this name in Security->Responsibility-
>Report
e. 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.
Spawned programs:
Step 1:
Step 2:
Step 3:
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:
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
Page 3 of 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.
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
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.
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?
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.
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
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.
Where do I find the configuration files for the Webserver?
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 link should be named the same as your script without the .prog extension. It should
be in the same directory as the script.
Page 4 of 4
1. You register your custom application tables using a PL/SQL routine in the AD_DD
package.
2. To alter a registration you should first delete the registration, then reregister the table or
column.
3. You should delete the column registration first, then the table registration.
4. The AD_DD API does not check for the existence of the registered table or column in
the database schema, but only updates the required AOL tables. You must ensure that the
tables and columns registered actually exist and have the same format as that defined
using the AD_DD API.
Example
p_col_name in varchar2);
p_appl_short_name: The application short name of the application that owns the table
(usually your custom application).
p_tab_type: Use ’T’ if it is a transaction table (almost all application tables), or ’S’ for a
”seed data” table(used only by Oracle Applications products).
p_pct_free: The percentage of space in each of the table’s blocks reserved for future
updates to the table (1–99). The sum of p_pct_free and p_pct_usedmust be less than 100.
p_pct_used: Minimum percentage of used space in each data block of thetable (1–99).
The sum of p_pct_free and p_pct_used must be less than 100.
p_col_seq: The sequence number of the column in the table (the order in which the
column appears in the table definition).
p_col_width: The column size (a number). Use 9 for DATE columns, 38 for NUMBER
columns (unless it has a specific width).
p_nullable: Use ’N’ if the column is mandatory or ’Y’ if the column allows null values.
p_translate: Use ’Y’ if the column values will be translated for an Oracle Applications
product release (used only by Oracle Applications products) or ’N’ if the values are not
translated (most application columns).
p_next_extent: The next extent size, in kilobytes. Do not include the ’K’.
p_scale: The number of digits to the right of the decimal point in a number.
PART3
PACKAGE AD_DD
package ad_dd as
p_tab_type in varchar2, p_next_extent in number default 512, p_pct_free in number default 10,
p_pct_used in number default 70);
end ad_dd;
Definitions
An instance of an execution file, along with parameter definitions and incompatibilities.
Several concurrent programs may use the same execution file to perform their specific tasks,
each having different parameter defaults and incompatibilites.
An executable file that performs a specific task. The file may be a program written in a
standard language, a reporting tool or an operating system language.
n instance of a running concurrent program that runs simultaneously with other
concurrent processes.
program that processes user’s requests and runs concurrent programs. System
Administrators define concurrent managers to run different kinds of requests.
Concurrent program that runs in a separate process than that of the concurrent manager
that starts it. L/SQL stored procedures run in the same process as the concurrent manager; use
them when spawned concurrent programs are not feasible.
Page 2 of 3
What are the phases and statuses through which a concurrent prequest runs through?
A concurrent request proceeds through three, possibly four, life cycle stages or phases:
Within each phase, a request's condition or status may change. Below appears a listing of
each phase and the various states that a concurrent request can go through.
Concurrent Request Phase and Status
Paused Parent request pauses for all its child requests to
complete. For example, a report set pauses for all reports in the set to complete.
Page 3 of 3
Reports and concurrent programs can be assembled into request groups and request sets.
2. Request sets define run and print options, and possibly, parameter values, for a collection
of reports or concurrent program. End users and System Administrators can define
request sets. A System Administrator has request set privileges beyond those of an end
user.
Standard Request Submission is an Oracle Applications feature that allows you to select
and run all your reports and other concurrent programs from a single, standard form. The
standard submission form is called Submit Requests, although it can be customized to display a
different title.
3. The reports and concurrent programs that may be selected from the Submit Requests
form belong to a request security group, which is a request group assigned to a
responsibility.
4. The reports and concurrent programs that may be selected from a customized Submit
Requests form belong to a request group that uses a code.
In summary, request groups can be used to control access to reports and concurrent
programs in two ways; according to a user's responsibility, or according to a customized standard
submission (Run Requests) form.