Professional Documents
Culture Documents
Objective:
Agenda:
Register Functions:
Menus:
Menus (Contd.):
WHERE
frv.responsibility_name
,fmv.user_menu_name
fnd_resp_functions frf
,fnd_menus_vl fmv
,fnd_responsibility_vl frv
frf.rule_type =M
AND frf.action_id = fmv.menu_id
AND frf.responsibility_id = frv.responsibility_id
AND frv.responsibility_name = &resp_name;
WHERE
frv.responsibility_name
,fffv.user_function_name
fnd_resp_functions frf
,fnd_form_functions_vl fffv
,fnd_responsibility_vl frv
frf.rule_type =F
AND frf.action_id = fffv.function_id
AND frf.responsibility_id = frv.responsibility_id
AND frv.responsibility_name = &resp_name;
Concurrent Program Name, Responsibility Name and User Name for a concurrent request id?
SELECT
FROM
WHERE
fcr.request_id
,frv.responsibility_name
,fcpv.concurrent_program_name PROG_SHORT_NAME
,fcpv.user_concurrent_program_name CON_PROG_NAME
,fu.user_name REQUESTED_BY
fnd_concurrent_requests fcr
,fnd_concurrent_programs_vl fcpv
,fnd_user fu
,fnd_responsibility_vl frv
fcpv.concurrent_program_id = fcr.concurrent_program_id
AND fu.user_id = fcr.requested_by
AND frv.responsibility_id = fcr.responsibility_id
AND fcr.request_id = &req_id;
Concurrent Program:
1.
2.
3.
4.
5.
6.
7.
8.
9. Spawned
The execution file is a C or Pro*C program.
10. Immediate
The execution file is a program written to run as a
subroutine of the concurrent manager.
Enter the execution file name without the file extension.
For PL/SQL stored procedures enter the <package>.<procedure name> in the execution
file name. This procedure must have 2 out parameters of type varchar2 preferably with
names errbuf and errout. These two parameters should be added before adding any other
parameters.
Concurrent Program:
The parameters are the placeholders for the input values to a concurrent program.
If the execution method of a concurrent program is Oracle Reports then each parameter is
linked to the actual report parameter via the Token field in the parameters window
For PL/SQL stored procedures these parameters are passed to the program by position.
Output formats of a concurrent program:
Logical ERP Solutions
HTML.
PDF.
TEXT.
PS (Post Script).
PCL (HPs Printer Control Language).
Note the Request group name for the responsibility, with which you want to attach the
concurrent program.
Query the request group and add your concurrent program to the group.
A request group is a collection of reports and concurrent programs.
A system administrator defines request group in order to control user access to reports
and concurrent programs.
FROM
WHERE
fcpv.concurrent_program_name SHORT_NAME
,fcpv.user_concurrent_program_name CONC_PROG_NAME
,frg.request_group_name REQ_GROUP_NAME
fnd_concurrent_programs_vl fcpv
,fnd_request_groups frg
,fnd_request_group_units frgu
fcpv.concurrent_program_id = frgu.request_unit_id
AND fcpv.enabled_flag = Y
AND frgu.request_group_id = frg.request_group_id
AND frg.request_group_name = &request_group_name;
FROM
fcpv.concurrent_program_name SHORT_NAME
,fcpv.user_concurrent_program_name CONC_PROG_NAME
,frg.request_group_name REQ_GROUP_NAME
,frv.responsibility_name
fnd_concurrent_programs_vl fcpv
,fnd_request_groups frg
WHERE
,fnd_request_group_units frgu
,fnd_responsibility_vl frv
fcpv.concurrent_program_id = frgu.request_unit_id
AND fcpv.enabled_flag = Y
AND frgu.request_group_id = frg.request_group_id
AND frg.request_group_id = frv.request_group_id
AND frv.responsibility_name = &resp_name
AND fcpv.user_concurrent_program_name = &con_prg_name;
SRS Form:
Then use SRS (Standard Report Submission) form for running and monitoring your
applications reports/concurrent programs at specific time interval.
This lets user specify run and print options and parameter value for reports and
concurrent programs.
Use fnd_file.put_line(fnd_file.log, any message) to show message in conc program log
file.
A concurrent request proceeds through three, possibly four, life cycle stages or phases:
Pending
Request is waiting to be run
Running
Request is running
Completed
Request has finished
Inactive
Request cannot be run.
Concurrent Programs Business Events:
In R12 for concurrent programs submission and completion has business events associated with
them
in the concurrent program definition form there is a business events tab which displays the list of
events associated
here you specify the points at which business events are enabled. The possible points are:
Request Submitted
Request On Hold
Request Resumed
Request Running
Program Completed
Post Processing Started
Post Processing Ended
Request Completed.
But make sure you set the profile "Concurrent: Business Intelligence Integration Enable". You
will need to set "Yes" to enable Business Events from Concurrent Processing System
Within each phase, a requests 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:
Phase: PENDING:
Normal: Request is waiting for the next available manager.
Standby: Program to run request is incompatible with other program(s) currently running.
Scheduled: Request is scheduled to start at a future time or date.
Waiting: A child request is waiting for its Parent request to mark it ready to run.
Phase: RUNNING:
Normal: Request is running normally.
Paused: Parent request pauses for all its child requests to complete.
Resuming: All requests submitted by the same parent request have completed running.
The Parent request is waiting to be restarted.
Terminating: Running request is terminated, by selecting Terminate in the Status field of
the Request Details zone.
Phase: COMPLETED:
Normal: Request completes normally.
Error: Request failed to complete successfully.
Warning: Request completes with warnings. For example, a report is generated
successfully but fails to print.
Cancelled: Pending or Inactive request is cancelled, by selecting Cancel in the Status
field of the Request Details zone.
Terminated: Running request is terminated, by selecting Terminate in the Status field of
the Request Details zone.
Phase: INACTIVE:
Disabled: Program to run request is not enabled. Contact your system administrator.
On Hold: Pending request is placed on hold, by selecting Hold in the Status field of the
Request Details zone.
Logical ERP Solutions
No Manager: No manager is defined to run the request. Check with your system
administrator.
Request Set:
Request Sets are a method of grouping multiple reports and/or concurrent programs by
business function with common run and print options.
The various tasks of the request set are linked together to determine the execution order,
whether the tasks execute sequentially or in parallel.
Stage is a component of a request set used to group requests within the set. All requests in
a stage are run in parallel, while stages themselves are run sequentially in the set.
Tasks that must operate separately are created in different stages.
After defining the initial stage for execution, all subsequent stages are defined under the
three completion status codes for the previous stage.
AND
fdfcut.application_id = fdfcud.application_id
AND
fdfcut.descriptive_flex_context_code = fdfcud.descriptive_flex_context_code
AND
fdfcut.descriptive_flexfield_name = fdfcud.descriptive_flexfield_name
AND
fdfcut.application_column_name = fdfcud.application_column_name
AND
fdfcu.flex_value_set_id = ffvs.flex_value_set_id
AND
fcp.EXECUTION_METHOD_CODE = fl.lookup_code
AND
fl.lookup_type = 'CP_EXECUTION_METHOD_CODE'
AND
fcp.executable_id = fe.executable_id
ORDER BY 1, 2 ,3
SELECT cpt.USER_CONCURRENT_PROGRAM_NAME,
cpt.DESCRIPTION,
cp.CONCURRENT_PROGRAM_NAME,
a.APPLICATION_SHORT_NAME,
e.EXECUTABLE_NAME,
cp.CREATION_DATE,
uc.USER_NAME CREATOR,
cp.LAST_UPDATE_DATE,
ulu.USER_NAME UPDATER,
cp.ENABLED_FLAG,
cp.RUN_ALONE_FLAG,
cp.SRS_FLAG,
cp.PRINT_FLAG,
cp.SAVE_OUTPUT_FLAG,
cp.REQUIRED_STYLE,
cp.OUTPUT_PRINT_STYLE,
cp.PRINTER_NAME,
cp.MINIMUM_WIDTH,
cp.MINIMUM_LENGTH,
cp.OUTPUT_FILE_TYPE,
cp.ENABLE_TRACE,
cp.RESTART,
cp.NLS_COMPLIANT,
cp.REQUEST_SET_FLAG
FROM
applsys.fnd_concurrent_programs cp,
applsys.fnd_concurrent_programs_tl cpt,
applsys.fnd_application a,
applsys.fnd_executables e,
applsys.fnd_user uc,
applsys.fnd_user ulu
WHERE
cp.CREATION_DATE > to_date('17-MAY-1995')-- Enter Creation Date
AND
cp.APPLICATION_ID = cpt.APPLICATION_ID
Logical ERP Solutions
AND
cp.CONCURRENT_PROGRAM_ID = cpt.CONCURRENT_PROGRAM_ID
AND
cpt.LANGUAGE = sys_context('USERENV', 'LANG')
AND
cp.APPLICATION_ID = a.APPLICATION_ID
AND
cp.EXECUTABLE_APPLICATION_ID = e.APPLICATION_ID
AND
cp.EXECUTABLE_ID = e.EXECUTABLE_ID
AND
cp.CREATED_BY = uc.USER_ID
AND
cp.LAST_UPDATED_BY = ulu.USER_ID
AND
cpt.user_concurrent_program_name='Payables Open Interface Import'
order by cp.CONCURRENT_PROGRAM_NAME
cp.CONCURRENT_PROGRAM_NAME,
cu.*,
vs.FLEX_VALUE_SET_NAME
FROM
applsys.fnd_concurrent_programs cp,
applsys.fnd_descr_flex_column_usages cu,
applsys.fnd_flex_value_sets vs
WHERE
cp.CREATION_DATE > to_date('17-MAY-1995') --Enter Creation Date
AND
cu.application_id = cp.application_id
AND
cu.descriptive_flexfield_name = '$SRS$.' || cp.concurrent_program_name
AND
cu.FLEX_VALUE_SET_ID = vs.FLEX_VALUE_SET_ID
AND
cp.CONCURRENT_PROGRAM_ID=:CONCURRENT_PROGRAM_ID -(Enter CONCURRENT_PROGRAM_ID of CONCURRENT_PROGRAM)
order by cp.CONCURRENT_PROGRAM_NAME, cu.COLUMN_SEQ_NUM
3. Concurrent Request Details
SELECT
FROM
WHERE
AND
AND
AND
AND
AND
AND
AND
p.concurrent_program_name,
pt.user_concurrent_program_name,
rt.responsibility_name,
r.*
applsys.fnd_concurrent_requests r,
applsys.fnd_concurrent_programs p,
applsys.fnd_concurrent_programs_tl pt,
applsys.fnd_responsibility rsp,
applsys.fnd_responsibility_tl rt
r.request_id = &Request_ID -- Enter Request ID
r.program_application_id = p.application_id
r.concurrent_program_id = p.concurrent_program_id
p.application_id = pt.application_id
p.concurrent_program_id = pt.concurrent_program_id
pt.language = sys_context('USERENV', 'LANG')
r.responsibility_application_id = rsp.application_id
r.responsibility_id = rsp.responsibility_id
AND
rsp.application_id = rt.application_id
AND
rsp.responsibility_id = rt.responsibility_id
AND rt.language = sys_context('USERENV', 'LANG')
4. Request Group Details
SELECT
FROM
WHERE
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
rst.USER_REQUEST_SET_NAME,
rs.REQUEST_SET_NAME,
rsst_start.USER_STAGE_NAME start_stage,
rss.DISPLAY_SEQUENCE stage_sequence,
rss.STAGE_NAME,
rss.REQUEST_SET_STAGE_ID,
rss.SUCCESS_LINK,
rss.WARNING_LINK,
rss.ERROR_LINK,
rsst.USER_STAGE_NAME,
rsst.DESCRIPTION stage_description,
rsp.sequence program_sequence,
cp.user_concurrent_program_name,
pa.*
FROM
applsys.fnd_request_sets_tl rst,
applsys.fnd_request_sets rs,
applsys.fnd_request_set_stages_tl rsst_start,
applsys.fnd_request_set_stages rss,
applsys.fnd_request_set_stages_tl rsst,
applsys.fnd_request_set_programs rsp,
applsys.fnd_concurrent_programs_tl cp,
applsys.fnd_request_set_program_args pa
where rs.REQUEST_SET_NAME like '%' -- Enter Request Set Name
AND
rs.application_id = rst.application_id
AND
rs.REQUEST_SET_ID = rst.REQUEST_SET_ID
AND
rst.language = sys_context('USERENV', 'LANG')
AND
rsst_start.SET_APPLICATION_ID = rs.application_id
AND
rsst_start.REQUEST_SET_ID = rs.REQUEST_SET_ID
AND
rsst_start.REQUEST_SET_STAGE_ID = rs.START_STAGE
AND
rsst_start.language = 'US'
AND
rss.SET_APPLICATION_ID = rs.application_id
AND
rss.REQUEST_SET_ID = rs.REQUEST_SET_ID
AND
rsst.SET_APPLICATION_ID = rss.SET_APPLICATION_ID
AND
rsst.REQUEST_SET_ID = rss.REQUEST_SET_ID
AND
rsst.REQUEST_SET_STAGE_ID = rss.REQUEST_SET_STAGE_ID
AND
rsst.language = 'US'
AND
rsp.SET_APPLICATION_ID = rss.SET_APPLICATION_ID
AND
rsp.REQUEST_SET_ID = rss.REQUEST_SET_ID
AND
rsp.REQUEST_SET_STAGE_ID = rss.REQUEST_SET_STAGE_ID
AND
rsp.program_application_id = cp.application_id
AND
rsp.concurrent_program_id = cp.concurrent_program_id
AND
cp.language = 'US'
AND
pa.application_id (+) = rsp.SET_APPLICATION_ID
AND
pa.REQUEST_SET_ID (+) = rsp.REQUEST_SET_ID
AND
pa.REQUEST_SET_PROGRAM_ID (+) = rsp.REQUEST_SET_PROGRAM_ID
ORDER BY rst.USER_REQUEST_SET_NAME,
rss.DISPLAY_SEQUENCE,
rsp.sequence,
pa.DESCRIPTIVE_FLEX_APPL_ID,
pa.DESCRIPTIVE_FLEXFIELD_NAME,
pa.APPLICATION_COLUMN_NAME
First create a user in the database using SQL*Plus under the system account.
o For example:
$ sqlplus system/system password.
SQL> create user XXCUS identified by CUST default table space USER_DATA
temporary table space TEMP quota unlimited on USER_DATA quota unlimited on
TEMP;
SQL> grant connect to XXCUS identified by CUST;
Then Register the user with the Application Object Library.
Log into Oracle Apps as the System Administrator and navigate to Security -> ORACLE ->
Register.
Log into Applications as the System Administrator and navigate to Security ->
ORACLE-> Data Group.
It is recommend that you use the STANDARD data group and associate the custom
schema with APPS.
Now you can create your custom tables, indexes and sequences in custom schema.
Then Grant ALL access to APPS.
Create Synonyms, views, triggers and Packages in APPS schema.
Responsibility:
A responsibility is a set of authority in Oracle Applications that lets users access only that
functionality of the application appropriate to their role.
How much of an applications functionality a user can use
What reports and concurrent program a user can access
Which application data these reports and concurrent programs can access.
Most businesses use codes made up of meaningful segments to identify Account Number,
Part number and other business entities, eg: a company might have a part number
PADNRYEL8 1/2x14 indicating a notepad, narrowruled, yellow, and 14 by 8
1/2.
A Flex field is a field which is made up of segments.
Each segment has a name and a set of valid values.
A Key flex field identifies an entity.
Register your key flex field with Oracle Application Object Library.
Each key flex field has one corresponding table, known as the combinations table,
where the flex field stores a list of the complete codes, with one column for each
segment of the code.
There is a corresponding unique ID number (a code combination ID number or
CCID) for that code which is also stored in the combination table.
A flex field structure is a specific configuration of segments. Same flex field can have
multiple segment structure.
A segment is a single subfield within a flex field. You define the appearance and
meaning of individual segments when customizing a flex field.
A segment is represented in your database as a single table column.
Flex field validates each segment against a set of valid values, which are mostly
predefined
A flex field qualifier identifies a particular segment of a key flex field.
Dynamic Insertion:
The insertion of a new valid combination into a combinations table from a form other
than the combinations form.
Descriptive flex fields provide customizable "expansion space" on your forms. You can
use descriptive flex fields to have additional information, important and unique to your
business that would not otherwise be captured by the form.
A descriptive flex field appears on a form as a single-character, unnamed field enclosed
in brackets.
Descriptive flex fields have two different types of segments, global and context-sensitive.
A global segment is a segment that always appears in the descriptive flex field pop-up
window.
A context-sensitive segment is a segment that may or may not appear depending upon
what other information is present in your form.
Global Segments:
In Order management, if you want to add some extra Order line information, then query
the DFF for Additional Line Attribute information
Go to Global Data Elements context field.
Click segments to view the DFF segments.
A context-sensitive descriptive flex field can gather context information from either a
field on the form, or from a special field (a context field) inside the descriptive flex
field pop-up window.
If the descriptive flex field derives the context information from a form field, that
field is called a reference field for the descriptive flex field.
In DFF Segments form check Displayed for the context.
Optionally change the prompt of context
Choose the reference field from LOV, which should be initially defined in Register
DFF form.
If you use a reference field, the value of that field populates its own column. For
example, if the reference field on the form is the "Country" field, it populates the
"country" column in the table.
However, the reference field value also populates the structure (context) column in the
table, since that value specifies which structure the flex field displays.
Flex fields provides features that are required to satisfy the following business needs:
1. Customize your applications to conform to your current business practice for
accounting codes, product codes, and other codes.
2. Customize your applications to capture data that would not otherwise be tracked
by your application.
3. Have intelligent fields that are fields comprised of one or more segments, where
each segment has both a value and a meaning.
4. Rely upon your application to validate the values and the combination of values
that you enter in intelligent fields (Cross Validation Rules).
5. Have the structure of an intelligent field change depending on data in your form
or application data.
6. Customize data fields to your meet your business needs without programming.
7. Query intelligent fields for very specific information.
Value Sets:
Use value set to:
Determine which values users can enter into flex field segments and concurrent program
parameters.
Provide a list of valid values using list of values feature
Dependent
This Query gives details of value sets that are based on a oracle application tables:
Profiles:
User Profile:
A profile is a set of changeable options that affects the way your application runs
System Profile Options
1. Set by the System administrator
2. User cannot change
3. Any change in the system profile becomes effective only when the user logs on
again or change responsibility
Personal Profile Options
1. Set by the System Administrator
2. User can change the option values
3. Any changes become effective immediately
You need to create a profile in Application Developer responsibility and then assign its
system and personal values.
Define new user profile option at the time of developing a new application
Profile names must be unique
A profile option cannot be deleted.
User Profile:
User Profile Levels
A value set at the higher level overrides the one set at the lower level. User is the
highest level.
After implementation System Administrator sets the default profile values at the site level
Option values are dynamically set at the run time.