Estaba realizando solicitudes de capacitación y en la opción de administración de solicitudes (
Desarrollo > Capacitación > Administración solicitudes de capacitación) no me mostraba todas las solicitudes.
Validé con el PROFILER de SQLSERVEr, qué query estaba generando y me encontré que el query que ejecuta es el siguiente:
WITH Q AS (SELECT sol_codigo,
exp_codigo_alternativo,
exp_nombres_apellidos,
case
when sol_tipo = 'Interna' then 'Interna'
when sol_tipo = 'Externa' then 'Externa'
end sol_tipo,
case
when sol_codeve_asignado is null then 0
else 1
end sol_codeve_asignado,
case
when eve_estado = 'Programado' then 'Programado'
when eve_estado = 'EnEjecucion' then 'En Ejecución'
when eve_estado = 'Finalizado' then 'Finalizado'
when eve_estado = 'Cancelado' then 'Cancelado'
else ''
end eve_estado,
sol_anulado ,
case
when sol_estado_workflow = 'Anulado' then 'Anulado'
when sol_estado_workflow = 'Autorizado' then 'Autorizado'
when sol_estado_workflow = 'Denegado' then 'Denegado'
when sol_estado_workflow = 'Pendiente' then 'Pendiente'
end sol_estado_workflow,
sol_fecha_cambio_estado FROM cap.sol_solicitud_capacitacion
join exp.emp_empleos on emp_codigo = sol_codemp
JOIN exp.exp_expedientes on exp_codigo = emp_codexp
join eor.plz_plazas on plz_codigo = sol_codemp
join eor.cia_companias on cia_codigo = plz_codcia
join eor.grc_grupos_corporativos on grc_codigo = cia_codgrc
left join cap.eve_eventos on eve_codigo = sol_codeve_asignado
WHERE (exists (select null from sco.permiso_grupo_tabla('admin') where grc_codigo = codgrc)
AND (sol_estado_workflow <> 'Pendiente' or sol_codigo_workflow is not null)
)
),
Q_TOTAL_RECS AS (SELECT COUNT() G_TOTAL_RECS FROM Q) SELECT Q., -1 G_RECORD_NUMBER, G_TOTAL_RECS FROM Q, Q_TOTAL_RECS
Lo que no permite mostrar todas las solicitudes es el join
join eor.plz_plazas on plz_codigo = sol_codemp
Favor de indicar qué procede.
asked
18 Aug '17, 15:24
Juan Carlos Soria
1.1k●171●179●185
accept rate:
41%