sql >> Base de Datos >  >> RDS >> Oracle

Las 30 consultas de administrador concurrente más útiles

Índice

  • ¿Qué son los administradores concurrentes
  • Las 30 consultas de administrador simultáneas más útiles
    • Consulta para verificar la configuración del ICM en el entorno de Concurrent Manager
    • Consulta para verificar los detalles de todos los administradores concurrentes habilitados
    • Cómo verificar el tipo de solicitud y los programas para los administradores concurrentes
    • Cómo verificar/encontrar  el turno/máximo/mínimo para todos los gerentes simultáneos
    • Consulta para verificar todos los valores de la opción de perfil de nivel de sitio relacionada con el administrador concurrente y buscar allí
    • Consulta para verificar el estado del administrador simultáneo desde el backend
    • Para comprobar todos los trabajos en ejecución con detalles de sesión de base de datos en el nodo de base de datos actual
    • Para encontrar el archivo de rastreo para una solicitud concurrente en particular
    • Para encontrar la actividad general del conjunto de solicitudes y su tiempo de finalización de varias solicitudes
    • Para encontrar el sid a partir del id de la solicitud
    • Para encontrar todas las cosas en detalle desde la identificación de solicitud particular/consulta para encontrar detalles de solicitud concurrente/cómo verificar el estado de solicitud concurrente de backend/ consulta para encontrar el tiempo de ejecución del programa simultáneo
    • Sql para buscar solicitudes pendientes en todos los Administradores simultáneos/consulta para encontrar solicitudes concurrentes pendientes
    • Cómo encontrar qué administrador ejecuta su ID de solicitud/consulta para encontrar un administrador simultáneo para un programa simultáneo
    • Para encontrar el historial del programa de ID de solicitud
    • Consulta para comprobar el historial de ejecución simultánea del programa
  • Consulta para encontrar una solicitud en ejecución en Concurrent Manager/cómo verificar la ejecución de una solicitud concurrente desde el backend/consulta de estado del programa concurrente en las aplicaciones de Oracle
    • Consulta para encontrar solicitudes de finalización en Concurrent Manager
    • Consulta para encontrar solicitudes en pausa en Concurrent Manager
    • Verifique el registro y el archivo de salida creados a partir de cierto período de tiempo
    • Consulta para encontrar la identificación del programa concurrente de la solicitud concurrente
    • Detalle de las últimas 100 ejecuciones del programa concurrente
    • Para encontrar el archivo de registro/archivo de salida/nombre de nodo para la solicitud en particular
    • Compruebe que ICM se está ejecutando en qué nodo
    • Comprobar ID de proceso del sistema operativo/nodo de destino para CM
    • Para conocer el estado correcto de la solicitud concurrente desde el back-end
    • Verifique el texto de finalización para la solicitud simultánea
    • Para verificar los procesos reales y de destino para el administrador interno
    • Para verificar los procesos reales y de destino para Standard Manager
    • Para comprobar los objetos no válidos relacionados con FND
    • Consulta para verificar si hay alguna regla de especialización definida para cualquier administrador concurrente que incluya/excluya el programa concurrente en cuestión.
    • Para cada administrador, obtenga el número de solicitudes pendientes y en ejecución en cada cola:
    • Para obtener programas simultáneos de larga ejecución:
    • Comprobación de las incompatibilidades entre los programas/consulta para encontrar un programa incompatible de un concurrente La siguiente consulta se puede utilizar para encontrar todas las incompatibilidades en un instancia de aplicación.
    • OBTENGA LA EJECUCIÓN DE LA DECLARACIÓN SQL ACTUAL PARA UNA SOLICITUD CONCURRENTE
    • Cancelar solicitud simultánea/actualizar estado de solicitud simultánea desde el backend
    • Cómo enviar un programa concurrente utilizando la utilidad CONCSUB desde el sistema operativo
  • cómo habilitar el rastreo para una solicitud concurrente en ejecución
  • Encuentre las solicitudes concurrentes programadas:
  • Historial de solicitudes simultáneas con error en los últimos 2 días
  • consulta para verificar el seguimiento habilitado para el programa simultáneo
  • Cursos  recomendados

¿Qué son los administradores concurrentes

  • Los administradores concurrentes son los controladores del procesamiento en segundo plano para las aplicaciones de Oracle.
  • La función principal de los administradores concurrentes es regular y controlar las solicitudes de procesos en función de un conjunto de reglas.
  • Es una técnica utilizada para ejecutar programas dependientes de datos no interactivos simultáneamente en segundo plano.
  • Oracle Applications viene con administradores predefinidos, incluidos el administrador concurrente interno (ICM), el administrador estándar, el administrador de resolución de conflictos (CRM) y los administradores de transacciones (TM).
  • El administrador concurrente interno controla todos los demás administradores concurrentes que son procesos del sistema operativo que sondean las solicitudes.
  • Dentro de Aplicaciones, también puede crear cualquier cantidad de Administradores concurrentes para manejar tipos particulares de solicitudes o programas y especializarlos para sus requisitos comerciales
  • El ICM (Administrador Concurrente Interno) controla todos los demás administradores concurrentes.
  • El gerente estándar acepta todas y cada una de las solicitudes. No tiene reglas de especialización predefinidas y está activo todo el tiempo. No se recomienda agregar reglas de especialización al administrador estándar, ya que es común que cause problemas.
  • El administrador de resolución de conflictos resuelve los conflictos, como las incompatibilidades de solicitudes.

La solución de problemas de Concurrent Manager es una parte importante de la administración de aplicaciones de Oracle. Estas son las 30 consultas de administrador simultáneas más útiles para ayudarlo a resolver problemas. Simplemente inicie sesión en la base de datos de Oracle con aplicaciones similares a las del usuario para obtener todos los detalles

Las 30 consultas de administrador simultáneas más útiles

Consulta para verificar la configuración del ICM en el entorno del administrador concurrente

seleccione 'PCP' "nombre", valor de apps.fnd_env_contextwhere variable_name ='APPLDCP' andconcurrent_process_id =(seleccione max(concurrent_process_id)from apps.fnd_concurrent_processes where concurrent_queue_id =1)UNION ALLselect 'RAC' "name", decode(count( *), 0, 'N', 1, 'N', 'Y') "valor" de V$threadUNION ALLselect 'GSM' "name", NVL(v.profile_option_value, 'N') "value"from apps. fnd_profile_options p, apps.fnd_profile_option_values ​​vwhere p.profile_option_name ='CONC_GSM_ENABLED'and p.profile_option_id =v.profile_option_idUNION ALLselect name, value from apps.fnd_concurrent_queue_paramswhere queue_application_id =0 and concurrent_queue_id =1;

Consulta para verificar los detalles de todos los administradores concurrentes habilitados

seleccione fcq.application_id "ID de la aplicación",fcq.concurrent_queue_name, fcq.user_concurrent_queue_name "Servicio",fa.application_short_name, fcq.target_node "Nodo",fcq.max_processes "Objetivo",fcq.node_name "Principal", fcq. node_name2 "Secundario",fcq.cache_size "Tamaño de caché",fcp.concurrent_processor_name "Program Library",sleep_secondsfrom apps.fnd_concurrent_queues_vl fcq, apps.fnd_application fa, apps.fnd_concurrent_processors fcpwhere fcq.application_id =fa.application_idand fcq.processor_application_id =fcpand.application_id. fcq.concurrent_processor_id =fcp.concurrent_processor_id y fcq.enabled_flag='Y';

Cómo verificar el tipo de solicitud y los Programas para los Administradores simultáneos

formato de acción de columna a10formato de administrador de columna a20formato de objeto de columna a20formato de tipo de columna a10establecer páginas 0establecer líneas 400select q.application_id, q.concurrent_queue_name,q.user_concurrent_queue_name "Administrador", l1.significa "Acción", l2.significa "Tipo", p .user_concurrent_program_name "Object" from apps.fnd_concurrent_queue_content c, apps.fnd_concurrent_queues_vl q,apps.fnd_concurrent_programs_vl p, apps.fnd_lookups l1, apps.fnd_lookups l2where q.concurrent_queue_id =c.concurrent_queue_idand q.application_id =c.queue_application_code =id y c'. 'y c.type_id =p.concurrent_program_idand c.type_application_id =p.application_idand l1.lookup_code =c.include_flagand l1.lookup_type ='INCLUDE_EXCLUDE'and l2.lookup_code ='P' and l2.lookup_type ='CP_SPECIAL_RULES'UNION ALLselect q. application_id, q.concurrent_queue_name,q.user_concurrent_queue_name "Administrador", l1.que significa "Acción", 'Aplicación' "Tipo", a.application_name "Objeto" de apps.fnd_concurrent_queue_content c, apps.fnd_concu rrent_queues_vl q,apps.fnd_application_vl a, apps.fnd_lookups l1donde q.concurrent_queue_id =c.concurrent_queue_idand q.application_id =c.queue_application_idand c.type_code ='P' y c.type_id es nulo y c.type_application_id =a.application_idand l1.lookup_code =c.include_flagand l1.lookup_type ='INCLUDE_EXCLUDE'UNION ALLselect q.application_id, q.concurrent_queue_name,q.user_concurrent_queue_name "Administrador", l1.que significa "Acción", l2.que significa "Tipo", x.complex_rule_name "Objeto" de las aplicaciones. fnd_concurrent_queue_content c, apps.fnd_concurrent_queues_vl q,apps.fnd_concurrent_complex_rules x,apps.fnd_lookups l1, apps.fnd_lookups l2where q.concurrent_queue_id =c.concurrent_queue_idand q.application_id =c.queue_application_idand c.type_code ='C' y c.type_id =x. complex_rule_id y c.type_application_id =x.application_idand l1.lookup_code =c.include_flag y l1.lookup_type ='INCLUDE_EXCLUDE'and l2.lookup_code ='C'and l2.lookup_type ='CP_SPECIAL_RULES'UNION ALLselect q.application_id, q .concurrent_queue_name,q.user_concurrent_queue_name "Administrador", l1.significa "Acción", l2.significa "Tipo", r.request_class_name "Object"from apps.fnd_concurrent_queue_content c, apps.fnd_concurrent_queues_vl q, apps.fnd_concurrent_request_class r,apps.fnd_lookups l1 , apps.fnd_lookups l2where q.concurrent_queue_id =c.concurrent_queue_idand q.application_id =c.queue_application_idand c.type_code ='R'and c.type_id =r.request_class_idand c.type_application_id =r.application_idand l1.lookup_code =c.include_flag y l1 .lookup_type ='INCLUDE_EXCLUDE' y l2.lookup_code ='R' y l2.lookup_type ='CP_SPECIAL_RULES'UNION ALLselect q.application_id, q.concurrent_queue_name,q.user_concurrent_queue_name "Administrador", l1.significado "Acción", l2.significado " Type", o.oracle_username "Object"from apps.fnd_concurrent_queue_content c, apps.fnd_concurrent_queues_vl q, apps.fnd_oracle_userid o,apps.fnd_lookups l1, apps.fnd_lookups l2where q.concurrent_queue_id =c.concurrent_queue_id y q.application_id =c.queue _application_idand c.type_code ='O'and c.type_id =o.oracle_idand l1.lookup_code =c.include_flag and l1.lookup_type ='INCLUDE_EXCLUDE'and l2.lookup_code ='O'and l2.lookup_type ='CP_SPECIAL_RULES'UNION ALLselect q .application_id, q.concurrent_queue_name,q.user_concurrent_queue_name "Administrador", l1.que significa "Acción", l2.que significa "Tipo", u.user_name "Objeto" de apps.fnd_concurrent_queue_content c, apps.fnd_concurrent_queues_vl q, apps.FND_OAM_FNDUSER_VL u, apps.fnd_lookups l1, apps.fnd_lookups l2where q.concurrent_queue_id =c.concurrent_queue_idand q.application_id =c.queue_application_idand c.type_code ='U'and c.type_id =u.user_idand l1.lookup_code =c.include_flag and l1.lookup_type ='INCLUDE_EXCLUDE' y l2.lookup_code ='U' y l2.lookup_type ='CP_SPECIAL_RULES'UNION ALLselect q.application_id, q.concurrent_queue_name,q.user_concurrent_queue_name "Administrador", l1.significa "Acción", l2.significa "Tipo", to_char(c.type_id) "Objeto" de apps.fnd_concurrent_queue_content c, apps.fnd_concur rent_queues_vl q,apps.fnd_lookups l1, apps.fnd_lookups l2donde q.concurrent_queue_id =c.concurrent_queue_idand q.application_id =c.queue_application_idand c.type_code not in ('C','P','O','R', 'U ') y l1.lookup_code =c.include_flag and l1.lookup_type ='INCLUDE_EXCLUDE'and l2.lookup_code =c.type_code and l2.lookup_type ='CP_SPECIAL_RULES';

Cómo verificar/encontrar  el turno/máximo/mínimo para todos los gerentes simultáneos

seleccione fcq.application_id,fcq.concurrent_queue_name,fcq.user_concurrent_queue_name,ftp.application_id,ftp.concurrent_time_period_name,fa.application_short_name,ftp.description,fcqs.min_processes,fcqs.max_processes,fcqs.sleep_seconds,fcqs.service_parametersfrom apps.fnd_convl fcq,apps.fnd_concurrent_queue_size fcqs,apps.fnd_concurrent_time_periods ftp,apps.fnd_application fawhere fcq.application_id =fcqs.queue_application_idand fcq.concurrent_queue_id =fcqs.concurrent_queue_idand fcqs.period_application_id =ftp.application_idand fcqs.concurrent_time_period_id =ftp.concurrent_time_period_idand ftp.application_id =fa. id_aplicación;

Consulta para comprobar todos los valores de la opción de perfil de nivel de sitio relacionada con el administrador simultáneo y búsqueda

SELECCIONE fpo.profile_option_name,fpo.profile_option_id,fpov.profile_option_value,fpov.level_id,fa.application_short_name,fpo.user_profile_option_name,fpo.sql_validation,fpo.descriptionFROM apps.FND_PROFILE_OPTIONS_VL fpo,apps.FND_PROFILE_whereOPTION_VALUES fpov_,apps.fafnd fpoplication .application_id =0 y fpo.site_enabled_flag ='Y' y (fpo.profile_option_name como 'CONC_%' o fpo.profile_option_name como 'FS_%' o fpo.profile_option_name como 'PRINTER%' o fpo.profile_option_name en ('EDITOR_CHAR', ' FNDCPVWR_FONT_SIZE', 'MAX_PAGE_LENGTH', 'APPLWRK')) y fpo.profile_option_id =fpov.profile_option_idand fpo.application_id =fpov.application_idand fpo.application_id =fa.application_idand fpov.level_id =10001;

Consulta para verificar el estado del administrador simultáneo desde el backend

select q.user_concurrent_queue_name service_name,a.application_name srvc_app_name,a.application_short_name srvc_app_short_name,q.concurrent_queue_name service_short_name,decode( ( select count(*)from apps.fnd_concurrent_processes fcp1where fcp1.concurrent_queue_id =q.concurrent_queue_id_que y fcp1. application_idand ( fcp1.process_status_code en ('C','M') o ( fcp1.process_status_code en ('A', 'D', 'T') y existe (seleccione 1 de gv$sessiondonde fcp1.session_id =audsid ))) )/*actual_processes */, 0, decode(q.max_processes, 0,'NO_STARTED', 'DOWN'),q.max_processes, 'UP', 'WARNING' ) service_status,q.max_processes target_processes,(select count(* )from apps.fnd_concurrent_processes fcp2where fcp2.concurrent_queue_id =q.concurrent_queue_idand fcp2.queue_application_id =q.application_idand ( fcp2.process_status_code in ('C','M') /* Conectando o Migrando */o ( fcp2.process_status_code in ('A ', 'D', 'T') y existe (seleccione 1 de gv$sessionwhere fcp2.session_id =au dsid)))) actual_processes,'' message, s.service_handle srvc_handlefrom apps.fnd_concurrent_queues_vl q, apps.fnd_application_vl a,apps.fnd_cp_services swhere q.application_id =a.application_idand s.service_id =q.manager_typeUNION/* Necesita cubrir el caso donde un administrador no tiene filas en FND_CONCURRENT_PROCESSES. Las uniones externas no lo cortarán. */select q.user_concurrent_queue_name service_name,a.application_name srvc_app_name,a.application_short_name srvc_app_short_name,q.concurrent_queue_name srvc_short_name,decode( q.max_processes, 0, 'NO_COMENZADO', 'DOWN') service_status,q.max_processes target_processes,'0 real_processes ' mensaje, s.service_handle srvc_handlefrom apps.fnd_concurrent_queues_vl q, apps.fnd_application_vl a,apps.fnd_cp_services swhere q.application_id =a.application_idand s.service_id =q.manager_type y no existe (seleccione 1 de apps.fnd_concurrent_processes pwhere process_status_code in ('C' ,'M','A','D','T') y q.concurrent_queue_id =p.concurrent_queue_idand q.application_id =p.queue_application_id);

Para comprobar todos los trabajos en ejecución con detalles de sesión de base de datos en el nodo de base de datos actual

establecer líneas 200establecer páginas 200columna FASE encabezado 'Fase' formato A8columna ESTADO encabezado 'Estado' formato A8columna PROGRAM encabezado 'Nombre del programa' formato A25columna SOLICITANTE encabezado 'Solicitante' formato A9columna START_TIME encabezado 'Hora de inicio' formato A15columna RUN_TIME justificar encabezado izquierdo ' Runtime(m)' formato 9999.99column OSPID encabezado 'OSPID' formato a5column SID encabezado 'DBSID' formato 99999spool crrunning.lstselect fcrv.request_id SOLICITUD,decodificación(fcrv.phase_code,'P','Pending','R','Running ','I','Inactivo','Completado')FASE,decodificación(fcrv.estado_código, 'A','Esperando', 'B','Reanudando', 'C','Normal', 'F', 'Programado', 'G', 'Advertencia', 'H', 'En espera', 'I', 'Normal', 'M', 'Sin administrador', 'Q', 'En espera', 'R', 'Normal', 'S', 'Suspendido', 'T', 'Terminando', 'U', 'Deshabilitado', 'W', 'Pausado', 'X', 'Terminado', 'Z', 'En espera ',fcrv.status_code)STATUS,substr(fcrv.program,1,25)PROGRAM,substr(fcrv.requestor,1,9)REQUESTOR,to_char(fcrv.actual_start_date,'MM/DD/RR HH24:MI')START_TIME ,redondo(((sysdate - fcrv.actual_start_date)*1440) ,2)RUN_TIME,substr(fcr.oracle_process_id,1,7)OSPID,vs.sid SID--substr(fcr.os_process_id,1,7)OS_PIDfrom apps.fnd_conc_req_summary_v fcrv,apps.fnd_concurrent_requests fcr,v$session vs,v $process vpwhere fcrv.phase_code ='R'and fcrv.request_id =fcr.request_idand fcr.oracle_process_id =vp.spidand vs.paddr =vp.addrorder by PHASE, STATUS, SOLICITUD desc/

Para encontrar el archivo de rastreo para una solicitud concurrente particularst

column traceid format a8column tracename format a80column user_concurrent_program_name format a40column execname format a15column enable_trace format a12set lines 80set pages 22set head offSELECT 'Request id:'||request_id ,'Trace id:'||oracle_Process_id,'Trace Flag:'|| req.enable_trace,'Nombre de seguimiento:'||dest.value||'/'||lower(dbnm.value)||'_ora_'||oracle_process_id||'.trc','Prog. Nombre:'||prog.user_concurrent_program_name,' Nombre del archivo:'||execname.execution_file_name|| execname.subroutine_name ,'Status :'||decode(phase_code,'R','Running')||'-'||decode(status_code,'R','Normal'),'SID Serial:'||ses .sid||','|| ses.serial#,'Module :'||ses.modulefrom apps.fnd_concurrent_requests req, v$session ses, v$process proc,v$parameter dest, v$parameter dbnm, apps.fnd_concurrent_programs_vl prog,apps.fnd_executables execnamewhere req. request_id =&requestand req.oracle_process_id=proc.spid(+)and proc.addr =ses.paddr(+)and dest.name='user_dump_dest'and dbnm.name='db_name'and req.concurrent_program_id =prog.concurrent_program_idand req. program_application_id =prog.application_idand prog.application_id =execname.application_idand prog.executable_id=execname.executable_id;

Para encontrar la actividad general del conjunto de solicitudes y su tiempo de finalización de varias solicitudes

establecer tamaño de línea 300col "Nombre del programa" formato a50col Formato transcurrido 9999.99col "ID del proceso" formato a10col SOLICITUD_FECHA formato a15col FECHA_INICIO_ACTUAL formato a15col SOLICITUD formato 999999999col PADRE formato 999999999col argumento_texto formato a50SELECT /*+ USO ORDENADO_NL(x fcr fcp fcptl)*/ fcr.request_id "SOLICITUD", fcr.parent_request_id "PADRE",fcr.oracle_process_id "ID del proceso",fcptl.user_concurrent_program_name "Nombre del programa",fcr.argument_text,DECODE(fcr.phase_code,'X', 'Terminado','E ', 'Error', 'C', 'Completado', 'P', 'Pendiente', 'R', 'En ejecución', código_fase) "Fase", DECODE(fcr.código_estado, 'X', 'Terminado', 'C', 'Normal', 'D', 'Cancelado', 'E', 'Error', 'G', 'Advertencia', 'Q', 'Programado', 'R', 'Normal', 'W ','Paused','No estoy seguro') "Status",--fcr.phase_code,--fcr.status_code,fcr.request_date,fcr.actual_start_date,fcr.actual_completion_date,(fcr.actual_completion_date - fcr.actual_start_date)*1440 "Transcurrido" DE (SELECCIONAR /*+ índice (fcr1 FND_CONCURRENT_REQUESTS_N3) */fcr1.request_idFROM fnd_concurrent_requests fcr1W AQUÍ 1=1COMENZAR CON fcr1.request_id =&request_id--CONECTAR POR ANTERIOR fcr1.parent_request_id =fcr1.request_id) x,CONECTAR POR ANTERIOR fcr1.request_id =fcr1.parent_request_id) x,fnd_concurrent_requests fcr,fnd_concurrent_programs fcp,fnd_concurrent_programs_tl fcptlWHERE fcr.request_id =x.request_idAND fcr.concurrent_program_id =fcp.concurrent_program_idAND fcr.program_application_id =fcp.application_idAND fcp.application_id =fcptl.application_idAND fcp.concurrent_program_id =fcptl.concurrent_program_idAND fcptl.LANGUAGE ='US'ORDEN BY 1

T o encuentre el sid de la identificación de la solicitud

seleccione s.inst_id, fcr.request_id, fv.requestor, fv.Program cmgr_job,p.PID,p.SERIAL#,p.USERNAME p_user,p.SPID,to_char(s.logon_time,'DD-MON- YY HH24:MI:SS') Logon_Time,s.program,s.command,s.sid,s.serial#,s.username,s.process,s.machine,s.action,s.modulefrom apps.fnd_concurrent_requests fcr ,apps.FND_CONC_REQ_SUMMARY_V fv,gv$session s,gv$process pwhere fcr.request_id =&request_idand p.SPID =fcr.oracle_process_idand s.process =fcr.OS_PROCESS_IDand s.inst_id =p.inst_idand p.addr =s.paddrand fv. request_id =fcr.request_id;

Para encontrar todas las cosas en detalle de la identificación de solicitud particular/consulta para encontrar detalles de solicitudes concurrentes/cómo verificar el estado de solicitud concurrente desde el backend/consulta para encontrar el tiempo de ejecución del programa concurrente

 establecer páginas 100;col request_class_application_id format 99999999 header 'REQUEST_CLASS|APP_ID'col os_process_id format a8col application_short_name format a5col Request_start_date format a18 header 'REQUEST DATE'col actual_start_date format a18 header 'START DATE'col real_completion_date format a18 header 'COMPLETE DATE' --seleccione r.REQUEST_ID,u.user_name, decode(r.PHASE_CODE,'C', 'Complete','P', 'Pending', 'R', 'Running', r.PHASE_CODE) fase,decode(r .STATUS_CODE, 'C', 'Normal', 'I', 'Normal', 'R', 'Normal', 'Q', 'En espera', 'E', 'Error', 'X', 'Terminado' ,'W', 'Paused' , r.STATUS_CODE) status,r.PRIORITY,decode(r.HOLD_FLAG,'N','"NO en espera"','Y','"EN ESPERA"',r. HOLD_FLAG) Hold_flag, p.application_short_name,f.user_concurrent_program_name,f.concurrent_program_name,e.EXECUTABLE_NAME,e.EXECUTION_FILE_NAME,e.EXECUTION_METHOD_CODE,e.EXECUTION_FILE_PATH, v.RESPONSIBILITY_name, r.REQUEST_CLASS_APPLICATION_ID, q.request_class_name, r.PARENT_toREQUEST_ r.REQUESTED_START_DATE,'DD-MO N-YYYY HH:MI') fecha_de_inicio_solicitada,to_char(r.FECHA_DE_INICIO_ACTUAL,'DD-MON-AAAA HH:MI') fecha_de_inicio_real,decode(r.FECHA_DE_FINALIZACIÓN_ACTUAL,null,'"Todavía en ejecución"',to_char(r.FECHA_DE_FINALIZACIÓN_ACTUAL, 'DD-MON-YYYY HH:MI')) fecha_de_finalización_real,to_char(decode(r.FECHA_DE_FINALIZACIÓN_ACTUAL,null,SYSDATE,r.FECHA_DE_FINALIZACIÓN_ACTUAL)-decode(r.FECHA_DE_INICIO_ACTUAL,null,SYSDATE,r.FECHA_DE_INICIO_ACTUAL),'MI') "Tiempo de ejecución",r.CPU_SECONDS,r.LOGICAL_IOS,r.PHYSICAL_IOS,r.ORACLE_PROCESS_ID,r.ORACLE_SESSION_ID,r.OS_PROCESS_ID,r.CD_ID,decode(r.ENABLE_TRACE,'N', '"NOT Tracing"', 'Y', '"TRACING"', r.ENABLE_TRACE) Trace,decode(f.run_alone_flag, 'N', '"NOT Alone"', 'Y', '"RUN ALONE"', f.run_alone_flag) Solo, r.ARGUMENT_TEXT Parámetros, r.LOGFILE_NAMEfrom fnd_concurrent_requests r, fnd_user u, fnd_application p, fnd_concurrent_programs_vl f,fnd_EXECUTABLEs e, fnd_responsibility_vl v, fnd_concurrent_request_class qwhere u.user_id =r.requested_byand p.application_id =r.PROGRAM_aplicación_id_concum. RRENT_PROGRAM_IDand f.EXECUTABLE_ID=e.EXECUTABLE_IDand v.responsibility_id =r.responsibility_idand q.request_class_id (+)=r.concurrent_request_class_idand r.request_id =&reqid;

Sql para buscar solicitudes pendientes en todos los Administradores simultáneos/consulta para encontrar solicitudes concurrentes pendientes

seleccione request_id,b.user_concurrent_queue_namefrom apps.fnd_concurrent_worker_requests a,apps.fnd_concurrent_queues_vl bwhere a.phase_code ='P'and a.status_code ='I'and a.hold_flag !='Y'and a.requested_start_date <=sysdateand a .concurrent_queue_id =b.concurrent_queue_idand a.control_code is null--and a.concurrent_queue_name !='FNDCRM'and a.concurrent_queue_name not in ('FNDCRM')order byrequest_id, b.user_concurrent_queue_name/

Cómo encontrar qué administrador ejecuta su ID de solicitud/consulta para encontrar un administrador simultáneo para un programa simultáneom

Column OsId Format A7Column Oracle_Process_ID Format 99999Column Concurrent_Queue_Name Format A20Column Log Format A25Column Started_At Format A20Set Head OffSet Verify OffSet Echo OffSelect'The ' || Nombre_de_cola_concurrente ||' el administrador concurrente ejecutó su solicitud from',to_char(Actual_Start_date, 'MON-DD-YY HH:MI:SS AM') || ' - to - ' ||to_char(Actual_COMPLETION_date, 'MON-DD-YY HH:MI:SS AM'),'The ' || Nombre_de_cola_concurrente ||' el archivo de registro del administrador concurrente es ' || P.Logfile_Name,'El archivo de registro de solicitud es ' || R.Logfile_NameFrom Fnd_Concurrent_Queues Q,Fnd_Concurrent_requests R,Fnd_Concurrent_Processes PWhere(P.Concurrent_Queue_ID =Q.Concurrent_Queue_ID AndQueue_Application_ID =Q.Application_ID )And R.Controlling_Manager =P.Concurrent_Process_IDAnd R.Phase_Code ='C'And Request_ID =&Request_ID;set head on 

Para encontrar el historial del programa Request ID

establecer tamaño de línea 250col formato de fecha de solicitud a15col formato de fecha de inicio solicitado a15col formato de fecha de inicio_actual a15col formato de fecha de finalización real a15col formato de texto de argumento a70col formato transcurrido 9999.99select * from (seleccione a.request_id, a.parent_request_id,DECODE(a.phase_code,'C','Completado' ,'I', 'Inactivo', 'P', 'Pendiente', 'R', 'En ejecución') || ' ' ||DECODE(a.status_code, 'A', 'Esperando', 'B',' Reanudando','C','Normal','D','Cancelado','E','Error','G','Advertencia','H','En espera','I',' Normal ','M','Sin administrador','P','Programado','Q','En espera','R','Normal','S','Suspendido','T','Terminando' ,'U','Deshabilitado','W','En pausa','X','Terminado','Z','En espera') "ESTADO_FASE ", a.fecha_solicitud, a.fecha_inicio_solicitada, a.fecha_inicio_real, a .actual_completion_date ,(nvl(actual_completion_date,sysdate) - real_start_date)*1440 "Elapsed", a.argument_text ,a.USER_CONCURRENT_PROGRAM_NAMEfrom apps.FND_CONC_REQ_SUMMARY_V a where a.concurrent_program_id=(seleccione concurrent_program_id from fnd_concurrent_requests where reque st_id=&1)---(nvl(actual_completion_date,sysdate) - actual_start_date)*1440> 10order by a.request_id desc) where rownum <100;

Consulta para comprobar el historial de ejecución simultánea del programa

ttitle offset linesize 180set pagesize 60set newpage 0set pause offset termout onttitle 'CM Analysis Report' skip1col conc_que format a15 header "Conc Queue"col user_name format a12 header "Requestor"col reqid format 99999999 header "Req ID"col sdate format a9 encabezado "Fecha"col astart formato a8 encabezado "ActSt|Time"col acomp formato a8 encabezado "ActEnd|Time"col rtime formato 99,999 encabezado "ExTme|(Sec)"col wtime formato 99,999 encabezado "WtTme|(Sec)"col pname1 formato a40 encabezado "Corto|Nombre"col pname2 formato a65 encabezado "Nombre del programa"col args formato a25 encabezado "Argumentos"selecttrunc(real_start_date) sdate,request_id reqid,user_name,to_char(actual_start_date,'HH24:MI:SS') astart, to_char(fecha_de_finalización_real,'HH24:MI:SS') acomp,((fecha_de_inicio_real - fecha_de_inicio_solicitada)*60*60*24) wtime,((fecha_de_finalización_real - fecha_de_inicio_real)*60*60*24) rtime,que.concurrent_queue_name conc_que,prog .user_concurrent_program_name pname2,req.argument_text argsfromapplsys.fnd_concurrent_queues que,app lsys.fnd_user usr,applsys.fnd_concurrent_programs prog,applsys.fnd_concurrent_requests req,applsys.fnd_concurrent_processes procwhere(actual_start_date between to_date('&start_date', 'DD-MON-YYYY HH24:MI:SS') and to_date('&end_date', 'DD -MON-YYYY HH24:MI:SS') o fecha_real_de_finalización entre to_date('&start_dte', 'DD-MON-YYYY HH24:MI:SS') y to_date('&end_date', 'DD-MON-YYYY HH24:MI:SS '))anduser_concurrent_program_name like '&program_name%'andque.application_id=proc.queue_application_idandque.concurrent_queue_id =proc.concurrent_queue_idandreq.controlling_manager=proc.concurrent_process_idandusr.user_id =req.requested_byandprog.concurrent_program_id =req.concurrent_program_idandprog.application_id =req.program_application_idand prog.concurrent_program_name not in('ACTIVAR','ABORTAR','DESACTIVAR','VERIFICAR')ordenar poractual_fecha_de_inicio;

Consulta para encontrar una solicitud en ejecución en Concurrent Manager/ cómo comprobar la ejecución de una solicitud concurrente desde backend/consulta de estado del programa concurrente en las aplicaciones de Oracle

set pages 58set linesize 79Column Reqst Format 999999Column Requestor Format A10Column Orcl Format A7Column Program Format A10Column Started Format A14Column Manager Format A11Column LN Format a10Column Reqst HEADING 'Request|ID 'Column Requestor HEADING 'Requestor'Column Orcl HEADING 'Oracle|Name' Columna Iniciada HEADING 'Iniciado en'Columna MANAGER HEADING 'Controlling|Manager'Column LN HEADING 'Logfile|name'Column Program HEADING 'Program'select Request_Id Reqst, User_Name Requestor, Oracle_Username Orcl,Fcr.Logfile_Name LN,Concurrent_Queue_Name Manager,Concurrent_Program_Name Program, To_Char(Actual_Start_Date, 'Mm-Dd-Yy Hh24:Mi') Started,Run_Alone_Flag, Single_Thread_FlagFrom Fnd_Concurrent_Requests Fcr, Fnd_Concurrent_Programs Fcp,Fnd_Oracle_Userid O, Fnd_Concurrent_Processes P,Fnd_Concurrent_Queues Q, Fnd_UserWhereControlling_Manager =Concurrent_Process_IDAnd ( P.Concurrent_Queue_ID =Q.Concurrent_Queue_ID ANDP.Queue_Application_ID =Q.Application_ID )Y O.Oracle_Id =Fcr.Orac le_IdAnd ( Fcr.Program_Application_Id =Fcp.Application_IdAnd Fcr.Concurrent_Program_Id =Fcp.Concurrent_Program_Id )And Requested_By =User_IdAnd Phase_Code ='R' and Status_Code ='R'Order By Actual_Start_Date, Request_Id/

Consulta para encontrar solicitudes de finalización en Concurrent Manager

set pages 58set linesize 79Column Reqst Format 999999Column Requestor Format A10Column Orcl Format A7Column Program Format A10Column Started Format A14Column Manager Format A11Column LN Format a10Column Reqst HEADING 'Request|ID 'Column Requestor HEADING 'Requestor'Column Orcl HEADING 'Oracle|Name' Columna Iniciada HEADING 'Iniciado en'Columna MANAGER HEADING 'Controlling|Manager'Column LN HEADING 'Logfile|name'Column Program HEADING 'Program'Select Request_Id Reqst, User_Name Requestor, Oracle_Username Orcl,Fcr.Logfile_Name LN,Concurrent_Queue_Name Manager,Concurrent_Program_Name Program, To_Char(Actual_Start_Date, 'Mm-Dd-Yy Hh24:Mi') Started,Run_Alone_Flag, Single_Thread_FlagFrom Fnd_Concurrent_Requests Fcr, Fnd_Concurrent_Programs Fcp,Fnd_Oracle_Userid O, Fnd_Concurrent_Processes P,Fnd_Concurrent_Queues Q, Fnd_UserWhereControlling_Manager =Concurrent_Process_IDAnd ( P.Concurrent_Queue_ID =Q.Concurrent_Queue_ID ANDP.Queue_Application_ID =Q.Application_ID )And O.Oracle_Id =Fcr.Orac le_IdAnd ( Fcr.Program_Application_Id =Fcp.Application_IdAnd Fcr.Concurrent_Program_Id =Fcp.Concurrent_Program_Id )And Requested_By =User_IdAnd Phase_Code ='R' and Status_Code ='T'Order By Actual_Start_Date, Request_Id/

Query to find Paused Requests in Concurrent Manager

set pages 58set linesize 79Column Reqst Format 999999Column Requestor Format A10Column Orcl Format A7Column Program Format A10Column Started Format A14Column Manager Format A11Column LN Format a10Column Reqst HEADING 'Request|ID 'Column Requestor HEADING 'Requestor'Column Orcl HEADING 'Oracle|Name'Column Started HEADING 'Started at'Column MANAGER HEADING 'Controlling|Manager'Column LN HEADING 'Logfile|name'Column Program HEADING 'Program'Select Request_Id Reqst, User_Name Requestor, Oracle_Username Orcl,Fcr.Logfile_Name LN,Concurrent_Program_Name Program,To_Char(Actual_Start_Date, 'Mm-Dd-Yy Hh24:Mi') Started,Run_Alone_Flag, Single_Thread_FlagFrom Fnd_Concurrent_Requests Fcr, Fnd_Concurrent_Programs Fcp,Fnd_Oracle_Userid O, Fnd_UserWhere Status_Code ='W'And Fcr.Concurrent_Program_Id =Fcp.Concurrent_Program_IdAnd Fcr.Program_Application_Id =Fcp.Application_IdAnd Requested_By =User_IdAnd O.Oracle_Id =Fcr.Oracle_IdOrder By Actual_Start_Date, Request_Id/

Check the log and outfile created from certain time period

select outfile_node_name,outfile_name, logfile_node_name,logfile_namefrom fnd_concurrent_requestswhere phase_code ='C' andactual_completion_date  

Run the following query to check whether any specialization rule defined for any concurrent manager that includes/excludes the concurrent program in question. Query returns ‘no rows selected’ when there are no Include/Exclude specialization rules of Program type for the given concurrent program.

select 'Concurrent program '||fcp.concurrent_program_name||' is ' ||decode(fcqc.include_flag,'I','included in ','E','excluded from ')||fcqv.user_concurrent_queue_name specialization_rule_details from fnd_concurrent_queues_vl fcqv,fnd_concurrent_queue_content fcqc,fnd_concurrent_programs fcp where fcqv.concurrent_queue_id=fcqc.concurrent_queue_id and fcqc.type_id=fcp.concurrent_program_id and fcp.concurrent_program_name='';

Query to find the concurrent program id from concurrent request

select concurrent_program_id from fnd_concurrent_requests where request_id=&1;

Last 100 execution detail of concurrent program

set linesize 250col request_date format a15col requested_start_date format a15col actual_start_date format a15col actual_completion_date format a15col argument_text format a70col Elapsed format 9999.99select * from (select  a.request_id, a.parent_request_id,DECODE(a.phase_code,'C','Completed','I','Inactive','P','Pending','R','Running') || ' ' ||DECODE(a.status_code,'A','Waiting','B','Resuming','C','Normal','D','Cancelled','E','Error','G','Warning','H','On Hold','I',' Normal','M','No Manager','P','Scheduled','Q','Standby','R','  Normal','S','Suspended','T','Terminating','U','Disabled','W','Paused','X','Terminated','Z',' Waiting') "PHASE_STATUS ", a.request_date, a.requested_start_date, a.actual_start_date, a.actual_completion_date,(nvl(actual_completion_date,sysdate) - actual_start_date)*1440 "Elapsed", a.argument_text ,a.USER_CONCURRENT_PROGRAM_NAMEfrom apps.FND_CONC_REQ_SUMMARY_V a where a.concurrent_program_id=(select concurrent_program_id from fnd_concurrent_requests where request_id=&1)order by a.request_id desc) where rownum <100;

To find the logfile /outfile/node name for the particular request

SELECT  'LOGFILE_NAME=' || logfile_nameFROM    fnd_concurrent_requestsWHERE   request_id =&req/SELECT  'LOGFILE_NODE_NAME=' || logfile_node_nameFROM    fnd_concurrent_requestsWHERE   request_id =&req/SELECT  'OUTFILE_NAME=' || outfile_nameFROM    fnd_concurrent_requestsWHERE   request_id =&req/SELECT  'OUTFILE_NODE_NAME=' || outfile_node_nameFROM    fnd_concurrent_requestsWHERE   request_id =&req

Check ICM is running on what node

select a.concurrent_queue_name,a.target_node, substr(b.os_process_id,0,10) “OS Proc”, b.oracle_process_id “Oracle ID”, b.process_status_codefrom apps.fnd_concurrent_queues a, apps.fnd_concurrent_processes bwhere a.concurrent_queue_id=b.concurrent_queue_idand a.concurrent_queue_name=’FNDICM’and b.process_status_code=’A’order by b.process_status_code/

Check OS process ID/Target node for CM

Select User_Concurrent_Queue_Name Manager, Q.Target_Node Node, Os_Process_IDfrom apps.fnd_concurrent_queues_vl Q,apps.Fnd_Concurrent_Processes Pwhere Q.Application_Id =Queue_Application_IDAnd (Q.Concurrent_Queue_ID =P.Concurrent_Queue_ID);

To know the correct status of the Concurrent request from the back end

The view FND_AMP_REQUESTS_V shows the proper phase and statusselect request_id, phase, statusfrom fnd_amp_requests_v;

Check the completion text for the concurrent request

select COMPLETION_TEXT from apps.fnd_concurrent_requests where REQUEST_ID=&n;

To Check Actual and Target Processes for Internal Manager

select MAX_PROCESSES,RUNNING_PROCESSESfrom FND_CONCURRENT_QUEUESwhere CONCURRENT_QUEUE_NAME='FNDICM';

To check the Actual and Target Processes for Standard Manager

select MAX_PROCESSES,RUNNING_PROCESSESfrom FND_CONCURRENT_QUEUESwhere CONCURRENT_QUEUE_NAME='STANDARD';

To check the invalid objects related to FND

select substr(owner,1, 12) owner, substr(object_type,1,12) type,substr(status,1,8) status, substr(object_name, 1, 25) namefrom dba_objectswhere object_name like 'FND_%'and status='INVALID';

Query to check whether any specialization rule defined for any concurrent manager that includes/excludes the concurrent program in question.

select 'Concurrent program '||fcp.concurrent_program_name||' is ' ||decode(fcqc.include_flag,'I','included in ','E','excluded from ')||fcqv.user_concurrent_queue_name specialization_rule_details from fnd_concurrent_queues_vl fcqv,fnd_concurrent_queue_content fcqc,fnd_concurrent_programs fcp where fcqv.concurrent_queue_id=fcqc.concurrent_queue_id and fcqc.type_id=fcp.concurrent_program_id and fcp.concurrent_program_name='';

Note:Program Short Name is visible when the program is queried in concurrent program definition form.

Query returns ‘no rows selected’ when there are no Include/Exclude specialization rules of Program type for the given concurrent program.

For each manager get the number of pending and running requests in each queue:

col "USER_CONCURRENT_QUEUE_NAME" format a40;SELECT a.USER_CONCURRENT_QUEUE_NAME,a.MAX_PROCESSES,sum(decode(b.PHASE_CODE,'P',decode(b.STATUS_CODE,'Q',1,0),0)) Pending_Standby,sum(decode(b.PHASE_CODE,'P',decode(b.STATUS_CODE,'I',1,0),0)) Pending_Normal,sum(decode(b.PHASE_CODE,'R',decode(b.STATUS_CODE,'R',1,0),0)) Running_NormalFROM FND_CONCURRENT_QUEUES_VL a, FND_CONCURRENT_WORKER_REQUESTS bwhere a.concurrent_queue_id =b.concurrent_queue_idAND b.Requested_Start_Date<=SYSDATEGROUP BY a.USER_CONCURRENT_QUEUE_NAME,a.MAX_PROCESSES

To Get Long Running Concurrent Programs:

SELECT fcr.oracle_session_id,fcr.request_id rqst_id,fcr.requested_by rqst_by,fu.user_name,fr.responsibility_name,fcr.concurrent_program_id cp_id,fcp.user_concurrent_program_name cp_name,TO_CHAR (fcr.actual_start_date, 'DD-MON-YYYY HH24:MI:SS')act_start_datetime,DECODE (fcr.status_code, 'R', 'R:Running', fcr.status_code) status,ROUND (((SYSDATE - fcr.actual_start_date) * 60 * 24), 2) runtime_min,ROUND (((SYSDATE - fcr.actual_start_date) * 60 * 60 * 24), 2)runtime_sec,fcr.oracle_process_id "oracle_pid/SPID",fcr.os_process_id os_pid,fcr.argument_text,fcr.outfile_name,fcr.logfile_name,fcr.enable_traceFROM apps.fnd_concurrent_requests fcr,apps.fnd_user fu,apps.fnd_responsibility_tl fr,apps.fnd_concurrent_programs_tl fcpWHERE fcr.status_code LIKE 'R'AND fu.user_id =fcr.requested_byAND fr.responsibility_id =fcr.responsibility_idAND fcr.concurrent_program_id =fcp.concurrent_program_idAND fcr.program_application_id =fcp.application_idAND ROUND (((SYSDATE - fcr.actual_start_date) * 60 * 24), 2)> 60ORDER BY fcr.concurrent_program_id,request_id DESC;

Checking the incompatibilities between the programs/query to find incompatible program of a concurrent
The below query can be used to find all incompatibilities in an application instance.

SELECT a2.application_name, a1.user_concurrent_program_name, DECODE (running_type, 'P', 'Program', 'S', 'Request set', 'UNKNOWN' ) "Type", b2.application_name "Incompatible App", b1.user_concurrent_program_name "Incompatible_Prog", DECODE (to_run_type, 'P', 'Program', 'S', 'Request set', 'UNKNOWN' ) incompatible_type FROM apps.fnd_concurrent_program_serial cps, apps.fnd_concurrent_programs_tl a1, apps.fnd_concurrent_programs_tl b1, apps.fnd_application_tl a2, apps.fnd_application_tl b2 WHERE a1.application_id =cps.running_application_id AND a1.concurrent_program_id =cps.running_concurrent_program_id AND a2.application_id =cps.running_application_id AND b1.application_id =cps.to_run_application_id AND b1.concurrent_program_id =cps.to_run_concurrent_program_id AND b2.application_id =cps.to_run_application_id AND a1.language ='US' AND a2.language ='US' AND b1.language ='US' AND b2.language ='US';

GET THE CURRENT SQL STATEMENT RUNNING FOR A CONCURRENT REQUEST

SELECT A.REQUEST_ID, D.SID, D.SERIAL#, D.OSUSER, D.PROCESS, C.SPID,E.SQL_TEXTFROM APPS.FND_CONCURRENT_REQUESTS A,APPS.FND_CONCURRENT_PROCESSES B,V$PROCESS C,V$SESSION D,V$SQL EWHERE A.CONTROLLING_MANAGER =B.CONCURRENT_PROCESS_IDAND C.PID =B.ORACLE_PROCESS_IDAND B.SESSION_ID =D.AUDSIDAND D.SQL_ADDRESS =E.ADDRESSAND A.REQUEST_ID ='&REQUEST_ID';

Cancelling Concurrent request/update concurrent request status from backend

--By request id update fnd_concurrent_requestsset status_code='D', phase_code='C'where request_id=&reqid;--By program_idupdate fnd_concurrent_requestsset status_code='D', phase_code='C'where CONCURRENT_PROGRAM_ID=&prgid;

How to submit a concurrent program using the CONCSUB utility from the operating system

CONCSUB / \[WAIT=N|Y|] \CONCURRENT \[PROGRAM_NAME=] \[ORG_ID=<#>] - R12 onwards only[REPEAT_TIME=] \[REPEAT_INTERVAL=] \[REPEAT_INTERVAL_UNIT=] \[REPEAT_INTERVAL_TYPE=] \[REPEAT_END=] \[START=] \[IMPLICIT= \[ ... ]

how to enable trace for a running concurrent request

First Find the sid and serial# using below queries

For RAC

select s.inst_id, fcr.request_id, fv.requestor, fv.Program cmgr_job,
p.PID,
p.SERIAL#,
p.USERNAME p_user,
p.SPID,
to_char(s.logon_time,'DD-MON-YY HH24:MI:SS') Logon_Time,
s.program,
s.command,
s.sid,
s.serial#,
s.username,
s.process,
s.machine,
s.action,
s.module
from apps.fnd_concurrent_requests fcr,
apps.FND_CONC_REQ_SUMMARY_V fv,
gv$session s,
gv$process p
where fcr.request_id =&request_id
and p.SPID =fcr.oracle_process_id
and s.process =fcr.OS_PROCESS_ID
and s.inst_id =p.inst_id
and p.addr =s.paddr
and fv.request_id =fcr.request_id
;

For Non-RAC, the above and below both can be used

select s.sid , s.serial# ,p.spid from fnd_concurrent_requests f,v$session s , v$process p where f.request_id =and f.oracle_process_id =p.spid and p.addr =s.paddr 

Enable Trace

EXEC DBMS_SYSTEM.SET_EV(&sid , &serial,10046, 12 ,''); 

Check the Trace file

Log on to the DB Tier …. Check for the trace file _ora_.trc

Find the scheduled concurrent requests:



SELECT cr.request_id,
DECODE (cp.user_concurrent_program_name,
'Report Set', 'Report Set:' || cr.description,
cp.user_concurrent_program_name
) NAME,
argument_text, cr.resubmit_interval,
NVL2 (cr.resubmit_interval,
'PERIODICALLY',
NVL2 (cr.release_class_id, 'ON SPECIFIC DAYS', 'ONCE')
) schedule_type,
DECODE (NVL2 (cr.resubmit_interval,
'PERIODICALLY',
NVL2 (cr.release_class_id, 'ON SPECIFIC DAYS', 'ONCE')
),
'PERIODICALLY', 'EVERY '
|| cr.resubmit_interval
|| ' '
|| cr.resubmit_interval_unit_code
|| ' FROM '
|| cr.resubmit_interval_type_code
|| ' OF PREV RUN',
'ONCE', 'AT :'
|| TO_CHAR (cr.requested_start_date, 'DD-MON-RR HH24:MI'),
'EVERY:' || fcr.class_info
) schedule,
fu.user_name, requested_start_date
FROM apps.fnd_concurrent_programs_tl cp,
apps.fnd_concurrent_requests cr,
apps.fnd_user fu,
apps.fnd_conc_release_classes fcr
WHERE cp.application_id =cr.program_application_id
AND cp.concurrent_program_id =cr.concurrent_program_id
AND cr.requested_by =fu.user_id
AND cr.phase_code ='P'
AND cr.requested_start_date> SYSDATE
AND cp.LANGUAGE ='US'
AND fcr.release_class_id(+) =cr.release_class_id
AND fcr.application_id(+) =cr.release_class_app_id;

History of concurrent requests which are error out in last 2 days

SELECT a.request_id "Req Id"
,a.phase_code,a.status_code
, actual_start_date
, actual_completion_date
,c.concurrent_program_name || ':' || ctl.user_concurrent_program_name "program"
FROM APPLSYS.fnd_Concurrent_requests a,APPLSYS.fnd_concurrent_processes b
,applsys.fnd_concurrent_queues q
,APPLSYS.fnd_concurrent_programs c
,APPLSYS.fnd_concurrent_programs_tl ctl
WHERE a.controlling_manager =b.concurrent_process_id
AND a.concurrent_program_id =c.concurrent_program_id
AND a.program_application_id =c.application_id
AND a.status_code ='E'
AND a.phase_code ='C'
AND actual_start_date> sysdate - 2
AND b.queue_application_id =q.application_id
AND b.concurrent_queue_id =q.concurrent_queue_id
AND ctl.concurrent_program_id =c.concurrent_program_id
AND ctl.LANGUAGE ='US'
ORDER BY 5 DESC;

query to check trace enabled for concurrent program

SELECT A.CONCURRENT_PROGRAM_NAME "Program Name", SUBSTR(A.USER_CONCURRENT_PROGRAM_NAME,1,40) "User Program Name", SUBSTR(B.USER_NAME,1,15) "Last Updated By", SUBSTR(B.DESCRIPTION,1,25) DESCRIPTION FROM APPS.FND_CONCURRENT_PROGRAMS_VL A, APPLSYS.FND_USER B WHERE A.ENABLE_TRACE='Y' AND A.LAST_UPDATED_BY=B.USER_ID;

Related Articles 

Oracle Concurrent Manager :How an E-Business Suite Concurrent Manager Process Works,Oracle Concurrent Manager,What is internal monitor,What is service manager and troubleshooting
Concurrent Request Phase and status :All information about Concurrent Request Phase and Status .The meaning derived for each combination .
Core files in Oracle Concurrent manager :his page contains description about core file for oracle concurrent manager.Core file can be used to debug various issues in CM
Priority for concurrent Program :This post has detailed description about changing Priority for Concurrent Program or user or request to solve user critical report running issues
Concurrent Manager Interview questions :Check out 24 Concurrent Manager Interview questions to help you in EBS interview. This consists of all sort of question on standard manager,service manager
Parallel Concurrent Processing:What is PCP, How to setup it, how to define internal monitor
ORA-01427 :Check out this for the solution on ORA-01427:single-row subquery returns more than one row error ,how to resolve it when it happens with Concurrent Manager

Cursos recomendados

Los siguientes son algunos de los cursos recomendados que puede comprar si quiere dar un paso más

Abajo se encuentran los enlaces a algunos de los cursos


Oracle DBA 11g/12c:administración de bases de datos para DBA junior :This course is good for the people who are starting as Junior DBA or aspire to be Oracle DBA. Esto proporcionará una buena comprensión de las tareas de copia de seguridad y recuperación y de administración general
Oracle Database:Oracle 12C R2 RAC Administration :This course covers the installation, administration of Oracle RAC. Un buen curso para Oracle DBA que desea actualizar sus habilidades para Oracle RAC
Oracle Data Guard:administración de bases de datos para Oracle 12C R2 :This course covers the installation, administration of Oracle Dataguard. Un buen curso para Oracle DBA que desea mejorar sus habilidades para Oracle Dataguard

Recommended Books

OCA/OCP Oracle Database 12c All-in-One Exam Guide (Exams 1Z0-061, 1Z0-062, &1Z0-063)
Oracle Database 12c DBA Handbook (Oracle Press)
Oracle DBA All-in-one Scripts – A guide every DBA must have:Oracle dba scripts collection used by expert database administrators everyday. Must have dba scripts for your daily activities!