Saturday, April 2, 2016

Concurrent Manager Scripts

1) Concurrent Manager/Request Processing Information
set heading ON
set lines 150
ttitle center 'Concurrent Manager/Request Processing Information' skip 1
center '*****************************************' skip 2
col NAME heading "Concurrent|Queue Name" format a50
col run heading "Request|Running" format 999
col pend heading "Request|Pending" format 9999
col max_processes heading "Maximum|Processes (Target)" format 999
col running_processes heading "Actual|Processes" format 999
col sleep heading "Sleep|Seconds" format 9999
set pagesize 200
SELECT a.user_concurrent_queue_name NAME,
       a.running_processes          running_processes,
       a.max_processes              max_processes,
       Nvl(a.sleep_seconds, 0)      sleep,
       Nvl(b.running, 0)            run,
       Nvl(c.pending, 0)            pend
FROM   apps.fnd_concurrent_queues_vl a,
       (SELECT concurrent_queue_name,
               COUNT(*) running
        FROM   apps.fnd_concurrent_worker_requests
        WHERE  phase_code = 'R'
        GROUP  BY concurrent_queue_name) b,
       (SELECT concurrent_queue_name,
               COUNT(*) pending
        FROM   apps.fnd_concurrent_worker_requests
        WHERE  phase_code = 'P'
               AND requested_start_date <= SYSDATE
               AND status_code IN ( 'Q', 'I' )
               AND hold_flag = 'N'
        GROUP  BY concurrent_queue_name) c,
       (SELECT concurrent_queue_name,
               Decode(control_code, 'E', 'Deactivated',
                                    ' ') status
        FROM   applsys.fnd_concurrent_queues) d
WHERE  a.concurrent_queue_name = b.concurrent_queue_name (+)
       AND a.concurrent_queue_name = c.concurrent_queue_name (+)
       AND a.concurrent_queue_name = d.concurrent_queue_name (+)
       AND a.user_concurrent_queue_name LIKE '%&queue_name%'
       AND d.status != 'Deactivated'
GROUP  BY a.user_concurrent_queue_name,
          Nvl(b.running, 0),
          Nvl(c.pending, 0),
          Nvl(a.sleep_seconds, 0),
          a.target_node,
          a.running_processes,
          a.max_processes
ORDER  BY 2 DESC; 
 2) Pending Concurrent Requests for a Manager/Queue_name
set heading ON
set lines 220
ttitle 'Concurrent Request Processing Information' skip 1
'*****************************************' skip 2
col NAME heading "Concurrent Queue Name" format a50
col run heading "Running" format 999
col pend heading "Pending" format 9999
set pagesize 200
SELECT a.user_concurrent_queue_name NAME,
       Nvl(b.running, 0)            run,
       Nvl(c.pending, 0)            pend
FROM   apps.fnd_concurrent_queues_vl a,
       (SELECT concurrent_queue_name,
               COUNT(*) running
        FROM   apps.fnd_concurrent_worker_requests
        WHERE  phase_code = 'R'
        GROUP  BY concurrent_queue_name) b,
       (SELECT concurrent_queue_name,
               COUNT(*) pending
        FROM   apps.fnd_concurrent_worker_requests
        WHERE  phase_code = 'P'
               AND requested_start_date <= SYSDATE
               AND status_code IN ( 'Q', 'I' )
               AND hold_flag = 'N'
        GROUP  BY concurrent_queue_name) c,
       (SELECT concurrent_queue_name,
               Decode(control_code, 'E', 'Deactivated',
                                    ' ') status
        FROM   applsys.fnd_concurrent_queues) d
WHERE  a.concurrent_queue_name = b.concurrent_queue_name (+)
       AND a.concurrent_queue_name = c.concurrent_queue_name (+)
       AND a.concurrent_queue_name = d.concurrent_queue_name (+)
       AND a.user_concurrent_queue_name LIKE '%&queue_name%'
       AND d.status != 'Deactivated'
GROUP  BY a.user_concurrent_queue_name,
          Nvl(b.running, 0),
          Nvl(c.pending, 0)
ORDER  BY 2 DESC; 
3) Concurrent Manager Processes Details
set heading ON
set lines 220
ttitle 'Concurrent Manager Information' skip 1
'*****************************************' skip 2
col NAME heading "Concurrent Queue Name" format a50
col max_processes heading "Maximum Processes (Target)" format 999
col running_processes heading "Actual Processes" format 999
col sleep heading "Sleep Seconds" format 9999
Column node heading 'Target' format a10
set pagesize 200
SELECT a.user_concurrent_queue_name NAME,
       running_processes,
       b.max_processes,
       Nvl(b.sleep_seconds, 0)      sleep
FROM   apps.fnd_concurrent_queues_vl a,
       apps.fnd_concurrent_queue_size b
WHERE  1 = 1
       AND a.concurrent_queue_id = b.concurrent_queue_id
       AND b.max_processes > 0
       AND a.user_concurrent_queue_name LIKE ( '%&ManagerName%' )
GROUP  BY a.user_concurrent_queue_name,
          b.max_processes,
          running_processes,
          Nvl(b.sleep_seconds, 0)
ORDER  BY 2 DESC;

4) Concurrent Managers with their defined capacities for the current shift
set heading ON
set pages 1000 
Set linesize 220 
ttitle 'Concurrent Manager Information' skip 1
'*****************************************' skip 2
Column manager heading 'Manager' format a55 
Column node heading 'Target' format a10 
Column apid heading 'Appl ID' format 9999990 
Column q_id heading 'Q ID' format 9999990 
Column running heading 'Running' format 990 
Column MAX heading 'Max' format 999 
Column buf heading 'Buf' format 999 
set head ON
SELECT application_id             apid, 
       concurrent_queue_id        q_id, 
       user_concurrent_queue_name manager, 
       target_node                node, 
       running_processes          running, 
       max_processes              MAX, 
       cache_size                 buf, 
       diagnostic_level           d 
FROM   apps.fnd_concurrent_queues_vl 
ORDER  BY 5 DESC;
Note: For IE user Just double click the code and then Ctrl+C. 
This solves the problem of missing line feeds.
(Internet Explorer displays newlines correctly,
 copied code does not have any)
~~~ Cheers

No comments :

Post a Comment