Tuesday, August 29, 2023

Query for Forms sessions that may be locking or inactive

 SELECT
    objects.owner,
    objects.object_name,
    objects.object_type,
    user1.user_name                                          locking_fnd_user_name,
    user1.end_date                                           user_end_date,
    round((nvl(NULL, sysdate) - login.start_time) * 1440, 4) elapsed_time_in_mins,
    login.start_time                                         locking_fnd_user_login_time,
    vs.module,
    vs.machine,
    vs.osuser,
    vlocked.oracle_username,
    vs.sid,
    vp.pid,
    vp.spid                                                  os_process,
    vs.serial#,
    vs.status,
    client_identifier,
    round(vs.last_call_et/60,1) wait,
    vs.saddr,
    vs.audsid,
    vs.process,
    blocking_session,
    blocking_session_status,
    blocking_instance,
    blocking_session,
    final_blocking_session_status,
    final_blocking_instance,
    final_blocking_session
FROM
    apps.fnd_logins login,
    apps.fnd_user   user1,
    v$locked_object vlocked,
    v$process       vp,
    v$session       vs,
    dba_objects     objects
WHERE
        1 = 1
--AND upper(VS.MODULE) like '%WIPTXSFM%'
    AND objects.object_name LIKE '%WIP%'
    AND vlocked.session_id = vs.sid
    AND objects.object_id = vlocked.object_id
    AND vp.addr = vs.paddr
    AND login.process_spid (+) = vp.spid
    AND login.pid (+) = vp.pid
    AND user1.user_id (+) = login.user_id
--and VS.STATUS <> 'ACTIVE'
;