The following query finds total run-time (in minutes) for a concurrent program. Thus, with a little modification to this query, you can track which concurrent programs take (very) long time to complete, and may need performance tuning.
Change the concurrent program name (tl.user_concurrent_program_name, see below) according to your search criteria. In this example, my concurrent program is "Autoinvoice Import Program". You can also uncomment the "&Start_Date" line to get the list for a specific date.
-------------------------------------------------------------------------------
-- Query to find runtime for a concurrent program
-------------------------------------------------------------------------------
SELECT /*+ rule */
rq.parent_request_id "Parent Req. ID",
rq.request_id "Req. ID",
tl.user_concurrent_program_name
"Program Name",
rq.actual_start_date "Start Date",
rq.actual_completion_date
"Completion Date",
ROUND((rq.actual_completion_date
-
rq.actual_start_date) *
1440, 2) "Runtime (in Minutes)"
FROM
applsys.fnd_concurrent_programs_tl tl,
applsys.fnd_concurrent_requests rq
WHERE tl.application_id = rq.program_application_id
AND
tl.concurrent_program_id = rq.concurrent_program_id
AND
tl.LANGUAGE = USERENV('LANG')
AND
rq.actual_start_date IS NOT NULL
AND
rq.actual_completion_date IS NOT NULL
AND
tl.user_concurrent_program_name = 'Autoinvoice
Import Program' --
<change it>
-- AND TRUNC(rq.actual_start_date) =
'&start_date' -- uncomment this for
a specific date
ORDER BY rq.request_id DESC;
1 comment:
Hi,
I think you should be using apps not applsys as the schema you get the data from. The current query will pick up set1 and set2 rows for an editioned table.
Post a Comment