dbo.Imperium_contratista_admin_documentos

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

2
Name Data Type Length Description
@p_contratista int 4
@accion varchar 50

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
/*

EXEC [Imperium_contratista_admin_documentos] 4904,'estados'

*/

-- Description: <Description,,>
-- =============================================
CREATE OR ALTER PROCEDURE dbo.Imperium_contratista_admin_documentos
 -- Add the parameters for the stored procedure here

 @p_contratista            int = null,
 @accion              varchar(50) = NULL

AS
BEGIN
 -- SET NOCOUNT ON added to prevent extra result sets from
 -- interfering with SELECT statements.
 SET NOCOUNT ON;

    -- Insert statements for procedure here
 declare @cliente int


 if (@p_contratista is not null) begin

  if (@accion is NULL) begin

   select @cliente = cliente from led_contratistas where contratista = @p_contratista
  

   -- contratista
   SELECT led_docs.doc_id, led_docs.cliente, led_docs.contratista_1, led_docs.contratista,
     led_docs.led_seccion, led_docs.periodo, led_docs.fecha_tolerancia, 
     convert(date,led_docs.fecha_tolerancia) as fecha_tolerancia_ymd,
     convert(date,led_docs.fecha_vigencia) as fecha_vigencia_ymd,
     convert(varchar, led_docs.fecha_vigencia, 103) as fecha_vigencia,
     led_docs.aprobacion_parcial, led_docs.status_doc,
     led_docs.tipo_doc, led_tipos_doc.nombre_tipo_doc,
     padrones.nombre_persona as empresa, padrones.identificador, padrones.numero,
     padrones_1.nombre_persona as nombre_contratista,
   CASE WHEN led_docs.status_doc = 'R' THEN 1
     WHEN led_docs.status_doc = 'E' THEN 2
     WHEN led_docs.status_doc = 'P' THEN 3
     WHEN led_docs.status_doc = 'N' THEN 4
     WHEN led_docs.status_doc = 'I' THEN 5
     WHEN led_docs.status_doc = 'V' THEN 6 END AS orden_status,

   right(convert(varchar(6), led_docs.periodo),2) + '/' + left(convert(varchar(6), led_docs.periodo),4) AS periodo_my, 
   left(convert(varchar(6), led_docs.periodo),4) + '-' + right(convert(varchar(6), led_docs.periodo),2) AS periodo_Ym, 
   
   convert(varchar, led_docs.fecha_tolerancia, 103) AS plazo_carga,

   CASE WHEN led_docs.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
     WHEN led_docs.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
     WHEN led_docs.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
     WHEN led_docs.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
     WHEN led_docs.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
     WHEN led_docs.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,

   CASE    WHEN led_docs.status_doc = 'R' THEN 'Rechazados'
     WHEN led_docs.status_doc = 'E' THEN 'Vencidos'
     WHEN led_docs.status_doc = 'P' THEN 'Parciales'
     WHEN led_docs.status_doc = 'N' THEN 'Pendientes'
     WHEN led_docs.status_doc = 'I' THEN 'Ingresados'
     WHEN led_docs.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

   CASE WHEN led_docs.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
     WHEN led_docs.status_doc = 'E' THEN 'fa-warning text-vencidos'
     WHEN led_docs.status_doc = 'P' THEN 'fa-exclamation text-parciales'
     WHEN led_docs.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
     WHEN led_docs.status_doc = 'I' THEN 'fa-pause text-ingresados'
     WHEN led_docs.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono,

   CASE WHEN led_docs.led_seccion = 'C' THEN '<i class="fa fa-industry fa-2x"></i>'
     WHEN led_docs.led_seccion = 'E' THEN '<i class="fa fa-user fa-2x"></i>'
     WHEN led_docs.led_seccion = 'V' THEN '<i class="fa fa-truck fa-2x"></i>' END AS icono_seccion_full,

   CASE WHEN led_docs.led_seccion = 'C' THEN 'fa-industry'
     WHEN led_docs.led_seccion = 'E' THEN 'fa-user'
     WHEN led_docs.led_seccion = 'V' THEN 'fa-truck' END AS icono_seccion, 

   CASE WHEN led_docs.led_seccion = 'C' THEN 'Contratista'
     WHEN led_docs.led_seccion = 'E' THEN 'Empleados'
     WHEN led_docs.led_seccion = 'V' THEN 'VehĂ­culos' END AS txt_seccion,

   CASE WHEN led_tipos_doc.modalidad = 'A' THEN 'SI' ELSE 'NO' END AS acceso

   FROM led_docs
   INNER JOIN led_tipos_doc ON led_docs.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
   INNER JOIN led_contratistas led_contratistas_1 ON led_docs.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron

   INNER JOIN led_cliente_contratista ON (led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
              AND led_docs.tipo_doc = led_cliente_contratista.tipo_doc
              AND led_cliente_contratista.requiere_upload = 1
              AND led_cliente_contratista.cliente = @cliente)
  
   INNER JOIN led_contratista_periodo ON (led_contratistas_1.contratista = led_contratista_periodo.contratista 
             AND led_docs.periodo = led_contratista_periodo.periodo)

   WHERE led_docs.contratista_1 = @p_contratista
   AND led_contratistas.contratista_1 = led_contratistas.contratista
   AND led_docs.led_seccion = 'C'
   AND led_docs.doc_id_lista IS NULL
   /*AND led_docs.periodo >= dbo.PeriodoAnual()*/
            /*AND led_docs.periodo >= dbo.PeriodoBiAnual()*/
            


   UNION

   -- subcontratistas
   SELECT led_docs.doc_id, led_docs.cliente, led_docs.contratista_1, led_docs.contratista,
     led_docs.led_seccion, led_docs.periodo, led_docs.fecha_tolerancia, 
     convert(date,led_docs.fecha_tolerancia) as fecha_tolerancia_ymd,
     convert(date,led_docs.fecha_vigencia) as fecha_vigencia_ymd,
     convert(varchar, led_docs.fecha_vigencia, 103) as fecha_vigencia,
     led_docs.aprobacion_parcial, led_docs.status_doc,
     led_docs.tipo_doc, led_tipos_doc.nombre_tipo_doc,
     padrones.nombre_persona as empresa, padrones.identificador, padrones.numero,
     padrones_1.nombre_persona as nombre_contratista,
   CASE WHEN led_docs.status_doc = 'R' THEN 1
     WHEN led_docs.status_doc = 'E' THEN 2
     WHEN led_docs.status_doc = 'P' THEN 3
     WHEN led_docs.status_doc = 'N' THEN 4
     WHEN led_docs.status_doc = 'I' THEN 5
     WHEN led_docs.status_doc = 'V' THEN 6 END AS orden_status,

   right(convert(varchar(6), led_docs.periodo),2) + '/' + left(convert(varchar(6), led_docs.periodo),4) AS periodo_my, 
   left(convert(varchar(6), led_docs.periodo),4) + '-' + right(convert(varchar(6), led_docs.periodo),2) AS periodo_Ym, 
   convert(varchar, led_docs.fecha_tolerancia, 103) AS plazo_carga,

   CASE WHEN led_docs.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
     WHEN led_docs.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
     WHEN led_docs.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
     WHEN led_docs.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
     WHEN led_docs.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
     WHEN led_docs.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,

   CASE    WHEN led_docs.status_doc = 'R' THEN 'Rechazados'
     WHEN led_docs.status_doc = 'E' THEN 'Vencidos'
     WHEN led_docs.status_doc = 'P' THEN 'Parciales'
     WHEN led_docs.status_doc = 'N' THEN 'Pendientes'
     WHEN led_docs.status_doc = 'I' THEN 'Ingresados'
     WHEN led_docs.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

   CASE WHEN led_docs.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
     WHEN led_docs.status_doc = 'E' THEN 'fa-warning text-vencidos'
     WHEN led_docs.status_doc = 'P' THEN 'fa-exclamation text-parciales'
     WHEN led_docs.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
     WHEN led_docs.status_doc = 'I' THEN 'fa-pause text-ingresados'
     WHEN led_docs.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono,

   CASE WHEN led_docs.led_seccion = 'C' THEN '<i class="fa fa-industry fa-2x"></i>'
     WHEN led_docs.led_seccion = 'E' THEN '<i class="fa fa-user fa-2x"></i>'
     WHEN led_docs.led_seccion = 'V' THEN '<i class="fa fa-truck fa-2x"></i>' END AS icono_seccion_full,

   CASE WHEN led_docs.led_seccion = 'C' THEN 'fa-industry'
     WHEN led_docs.led_seccion = 'E' THEN 'fa-user'
     WHEN led_docs.led_seccion = 'V' THEN 'fa-truck' END AS icono_seccion,

   CASE WHEN led_docs.led_seccion = 'C' THEN 'Contratista'
     WHEN led_docs.led_seccion = 'E' THEN 'Empleados'
     WHEN led_docs.led_seccion = 'V' THEN 'VehĂ­culos' END AS txt_seccion,

   CASE WHEN led_tipos_doc.modalidad = 'A' THEN 'SI' ELSE 'NO' END AS acceso

   FROM led_docs
   INNER JOIN led_tipos_doc ON led_docs.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
   INNER JOIN led_contratistas led_contratistas_1 ON led_docs.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron

   INNER JOIN led_cliente_contratista ON (led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
              AND led_docs.tipo_doc = led_cliente_contratista.tipo_doc
              AND led_cliente_contratista.requiere_upload = 1
              AND led_cliente_contratista.cliente = @cliente)
  
   INNER JOIN led_subcontratista_periodo ON (led_contratistas.contratista = led_subcontratista_periodo.subcontratista 
             AND led_docs.periodo = led_subcontratista_periodo.periodo)

   WHERE led_docs.contratista_1 = @p_contratista
   AND led_contratistas.contratista_1 <> led_contratistas.contratista
   AND led_docs.led_seccion = 'C'
   AND led_contratistas.estado_contratista = 'A'
   AND led_docs.doc_id_lista IS NULL
   /*AND led_docs.periodo >= dbo.PeriodoAnual()*/
            /*AND led_docs.periodo >= dbo.PeriodoBiAnual()*/



   UNION


   -- empleados contratista
   SELECT NULL AS doc_id, led_contratistas_1.cliente, led_contratistas.contratista_1,
      led_contratistas.contratista, EMPLEADOS.led_seccion, EMPLEADOS.periodo,
      NULL AS fecha_tolerancia, NULL AS fecha_tolerancia_ymd, 
      NULL as fecha_vigencia_ymd, NULL AS fecha_vigencia, NULL AS aprobacion_parcial, 
      EMPLEADOS.status_doc, EMPLEADOS.tipo_doc, led_tipos_doc.nombre_tipo_doc,
      padrones.nombre_persona as empresa, padrones.identificador, padrones.numero,
      padrones_1.nombre_persona as nombre_contratista,
    CASE WHEN EMPLEADOS.status_doc = 'R' THEN 1
      WHEN EMPLEADOS.status_doc = 'E' THEN 2
      WHEN EMPLEADOS.status_doc = 'P' THEN 3
      WHEN EMPLEADOS.status_doc = 'N' THEN 4
      WHEN EMPLEADOS.status_doc = 'I' THEN 5
      WHEN EMPLEADOS.status_doc = 'V' THEN 6 END AS orden_status,

    right(convert(varchar(6), EMPLEADOS.periodo),2) + '/' + left(convert(varchar(6), EMPLEADOS.periodo),4) AS periodo_my,
       left(convert(varchar(6), EMPLEADOS.periodo),4) + '-' + right(convert(varchar(6), EMPLEADOS.periodo),2) AS periodo_Ym, 
    NULL AS plazo_carga,
    
    CASE WHEN EMPLEADOS.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
      WHEN EMPLEADOS.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
      WHEN EMPLEADOS.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
      WHEN EMPLEADOS.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
      WHEN EMPLEADOS.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
      WHEN EMPLEADOS.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,
    
    CASE WHEN EMPLEADOS.status_doc = 'R' THEN 'Rechazados'
     WHEN EMPLEADOS.status_doc = 'E' THEN 'Vencidos'
     WHEN EMPLEADOS.status_doc = 'P' THEN 'Parciales'
     WHEN EMPLEADOS.status_doc = 'N' THEN 'Pendientes'
     WHEN EMPLEADOS.status_doc = 'I' THEN 'Ingresados'
     WHEN EMPLEADOS.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

    CASE WHEN EMPLEADOS.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
      WHEN EMPLEADOS.status_doc = 'E' THEN 'fa-warning text-vencidos'
      WHEN EMPLEADOS.status_doc = 'P' THEN 'fa-exclamation text-parciales'
      WHEN EMPLEADOS.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
      WHEN EMPLEADOS.status_doc = 'I' THEN 'fa-pause text-ingresados'
      WHEN EMPLEADOS.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono,

    '<i class="fa fa-user fa-2x"></i>' AS icono_seccion_full,
    'fa-user' AS icono_seccion,
    'Empleados' AS txt_seccion,

    CASE WHEN led_tipos_doc.modalidad = 'A' THEN 'SI' ELSE 'NO' END AS acceso


   FROM
     (SELECT DOC_EMPLEADOS.tipo_doc, DOC_EMPLEADOS.led_seccion, DOC_EMPLEADOS.contratista_1,
     DOC_EMPLEADOS.contratista, DOC_EMPLEADOS.periodo, MAX(DOC_EMPLEADOS.estado_value) AS max_estado,
     CASE
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 10 THEN 'R'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 7 THEN 'E'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 5 THEN 'N'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 3 THEN 'I'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 1 THEN 'V'
     END AS status_doc   
     FROM
      (select led_docs.doc_id, led_docs.tipo_doc, led_docs.status_doc, led_docs.led_seccion,
         led_docs.contratista_1, led_docs.contratista, led_docs.periodo,
       CASE 
        WHEN led_docs.status_doc = 'R' THEN 10
        WHEN led_docs.status_doc = 'E' THEN 7
        WHEN led_docs.status_doc = 'N' THEN 5
        WHEN led_docs.status_doc = 'I' THEN 3
        WHEN led_docs.status_doc = 'V' THEN 1
       END AS estado_value
      from led_docs

      --inner join dbo.DelimitedSplit8K(@lista_tipos_doc, ',') tipos ON led_docs.tipo_doc = tipos.Item
      INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
      INNER JOIN led_cliente_empleado ON (led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
                 AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc
                 AND led_cliente_empleado.cliente = @cliente)
      INNER JOIN led_empleados_periodo ON (led_docs.empleado = led_empleados_periodo.empleado AND led_docs.periodo = led_empleados_periodo.periodo)

      inner join led_contratista_periodo on (led_empleados.contratista = led_contratista_periodo.contratista AND led_empleados_periodo.periodo = led_contratista_periodo.periodo)

      where led_docs.contratista_1 = @p_contratista
      and led_docs.led_seccion = 'E'
      AND led_docs.doc_id_lista IS NULL 
                        /*AND led_docs.periodo >= dbo.PeriodoBiAnual()*/
                        ) DOC_EMPLEADOS

     GROUP BY DOC_EMPLEADOS.tipo_doc, DOC_EMPLEADOS.led_seccion, DOC_EMPLEADOS.contratista_1,
       DOC_EMPLEADOS.contratista, DOC_EMPLEADOS.periodo) EMPLEADOS

   INNER JOIN led_tipos_doc ON EMPLEADOS.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas AS led_contratistas_1 ON EMPLEADOS.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones AS padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
   INNER JOIN led_contratistas ON EMPLEADOS.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron


   UNION

   -- empleados subcontratistas
   SELECT NULL AS doc_id, led_contratistas_1.cliente, led_contratistas.contratista_1,
      led_contratistas.contratista, EMPLEADOS.led_seccion, EMPLEADOS.periodo,
      NULL AS fecha_tolerancia, NULL AS fecha_tolerancia_ymd,
      NULL as fecha_vigencia_ymd, NULL AS fecha_vigencia, NULL AS aprobacion_parcial, 
      EMPLEADOS.status_doc, EMPLEADOS.tipo_doc, led_tipos_doc.nombre_tipo_doc,
      padrones.nombre_persona as empresa, padrones.identificador, padrones.numero,
      padrones_1.nombre_persona as nombre_contratista,
    CASE WHEN EMPLEADOS.status_doc = 'R' THEN 1
      WHEN EMPLEADOS.status_doc = 'E' THEN 2
      WHEN EMPLEADOS.status_doc = 'P' THEN 3
      WHEN EMPLEADOS.status_doc = 'N' THEN 4
      WHEN EMPLEADOS.status_doc = 'I' THEN 5
      WHEN EMPLEADOS.status_doc = 'V' THEN 6 END AS orden_status,

    right(convert(varchar(6), EMPLEADOS.periodo),2) + '/' + left(convert(varchar(6), EMPLEADOS.periodo),4) AS periodo_my, 
    left(convert(varchar(6), EMPLEADOS.periodo),4) + '-' + right(convert(varchar(6), EMPLEADOS.periodo),2) AS periodo_Ym, 
    NULL AS plazo_carga,

    CASE WHEN EMPLEADOS.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
      WHEN EMPLEADOS.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
      WHEN EMPLEADOS.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
      WHEN EMPLEADOS.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
      WHEN EMPLEADOS.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
      WHEN EMPLEADOS.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,

    CASE WHEN EMPLEADOS.status_doc = 'R' THEN 'Rechazados'
     WHEN EMPLEADOS.status_doc = 'E' THEN 'Vencidos'
     WHEN EMPLEADOS.status_doc = 'P' THEN 'Parciales'
     WHEN EMPLEADOS.status_doc = 'N' THEN 'Pendientes'
     WHEN EMPLEADOS.status_doc = 'I' THEN 'Ingresados'
     WHEN EMPLEADOS.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

    CASE WHEN EMPLEADOS.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
      WHEN EMPLEADOS.status_doc = 'E' THEN 'fa-warning text-vencidos'
      WHEN EMPLEADOS.status_doc = 'P' THEN 'fa-exclamation text-parciales'
      WHEN EMPLEADOS.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
      WHEN EMPLEADOS.status_doc = 'I' THEN 'fa-pause text-ingresados'
      WHEN EMPLEADOS.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono,

    '<i class="fa fa-user fa-2x"></i>' AS icono_seccion_full,
    'fa-user' AS icono_seccion,
    'Empleados' AS txt_seccion,

    CASE WHEN led_tipos_doc.modalidad = 'A' THEN 'SI' ELSE 'NO' END AS acceso


   FROM
     (SELECT DOC_EMPLEADOS.tipo_doc, DOC_EMPLEADOS.led_seccion, DOC_EMPLEADOS.contratista_1,
     DOC_EMPLEADOS.contratista, DOC_EMPLEADOS.periodo, MAX(DOC_EMPLEADOS.estado_value) AS max_estado,
     CASE
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 10 THEN 'R'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 7 THEN 'E'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 5 THEN 'N'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 3 THEN 'I'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 1 THEN 'V'
     END AS status_doc   
     FROM
      (select led_docs.doc_id, led_docs.tipo_doc, led_docs.status_doc, led_docs.led_seccion,
         led_docs.contratista_1, led_docs.contratista, led_docs.periodo,
       CASE 
        WHEN led_docs.status_doc = 'R' THEN 10
        WHEN led_docs.status_doc = 'E' THEN 7
        WHEN led_docs.status_doc = 'N' THEN 5
        WHEN led_docs.status_doc = 'I' THEN 3
        WHEN led_docs.status_doc = 'V' THEN 1
       END AS estado_value
      from led_docs

      --inner join dbo.DelimitedSplit8K(@lista_tipos_doc, ',') tipos ON led_docs.tipo_doc = tipos.Item
      INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
      INNER JOIN led_cliente_empleado ON (led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
                 AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc
                 AND led_cliente_empleado.cliente = @cliente)
      INNER JOIN led_empleados_periodo ON (led_docs.empleado = led_empleados_periodo.empleado AND led_docs.periodo = led_empleados_periodo.periodo)

      inner join led_subcontratista_periodo on (led_empleados.contratista = led_subcontratista_periodo.subcontratista AND led_empleados_periodo.periodo = led_subcontratista_periodo.periodo)

      where led_docs.contratista_1 = @p_contratista
      and led_docs.led_seccion = 'E'
      AND led_docs.doc_id_lista IS NULL 
                        /*AND led_docs.periodo >= dbo.PeriodoBiAnual()*/
                        ) DOC_EMPLEADOS
     GROUP BY DOC_EMPLEADOS.tipo_doc, DOC_EMPLEADOS.led_seccion, DOC_EMPLEADOS.contratista_1,
       DOC_EMPLEADOS.contratista, DOC_EMPLEADOS.periodo) EMPLEADOS

   INNER JOIN led_tipos_doc ON EMPLEADOS.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas AS led_contratistas_1 ON EMPLEADOS.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones AS padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
   INNER JOIN led_contratistas ON EMPLEADOS.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron



   UNION


   -- vehĂ­culos contratista
   SELECT NULL AS doc_id, led_contratistas_1.cliente, led_contratistas.contratista_1,
      led_contratistas.contratista, VEHICULOS.led_seccion, VEHICULOS.periodo,
      NULL AS fecha_tolerancia, NULL AS fecha_tolerancia_ymd, 
      NULL as fecha_vigencia_ymd, NULL AS fecha_vigencia, NULL AS aprobacion_parcial, 
      VEHICULOS.status_doc, VEHICULOS.tipo_doc, led_tipos_doc.nombre_tipo_doc,
      padrones.nombre_persona as empresa, padrones.identificador, padrones.numero,
      padrones_1.nombre_persona as nombre_contratista,
    CASE WHEN VEHICULOS.status_doc = 'R' THEN 1
      WHEN VEHICULOS.status_doc = 'E' THEN 2
      WHEN VEHICULOS.status_doc = 'P' THEN 3
      WHEN VEHICULOS.status_doc = 'N' THEN 4
      WHEN VEHICULOS.status_doc = 'I' THEN 5
      WHEN VEHICULOS.status_doc = 'V' THEN 6 END AS orden_status,

    right(convert(varchar(6), VEHICULOS.periodo),2) + '/' + left(convert(varchar(6), VEHICULOS.periodo),4) AS periodo_my, 
    left(convert(varchar(6), VEHICULOS.periodo),4) + '-' + right(convert(varchar(6), VEHICULOS.periodo),2) AS periodo_Ym, 

    NULL AS plazo_carga,

    CASE WHEN VEHICULOS.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
      WHEN VEHICULOS.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
      WHEN VEHICULOS.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
      WHEN VEHICULOS.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
      WHEN VEHICULOS.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
      WHEN VEHICULOS.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,

    CASE WHEN VEHICULOS.status_doc = 'R' THEN 'Rechazados'
     WHEN VEHICULOS.status_doc = 'E' THEN 'Vencidos'
     WHEN VEHICULOS.status_doc = 'P' THEN 'Parciales'
     WHEN VEHICULOS.status_doc = 'N' THEN 'Pendientes'
     WHEN VEHICULOS.status_doc = 'I' THEN 'Ingresados'
     WHEN VEHICULOS.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

    CASE WHEN VEHICULOS.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
      WHEN VEHICULOS.status_doc = 'E' THEN 'fa-warning text-vencidos'
      WHEN VEHICULOS.status_doc = 'P' THEN 'fa-exclamation text-parciales'
      WHEN VEHICULOS.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
      WHEN VEHICULOS.status_doc = 'I' THEN 'fa-pause text-ingresados'
      WHEN VEHICULOS.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono,

    '<i class="fa fa-truck fa-2x"></i>' AS icono_seccion_full,
    'fa-truck' AS icono_seccion,
    'VehĂ­culos' AS txt_seccion,

    CASE WHEN led_tipos_doc.modalidad = 'A' THEN 'SI' ELSE 'NO' END AS acceso


   FROM
     (SELECT DOC_VEHICULOS.tipo_doc, DOC_VEHICULOS.led_seccion, DOC_VEHICULOS.contratista_1,
     DOC_VEHICULOS.contratista, DOC_VEHICULOS.periodo, MAX(DOC_VEHICULOS.estado_value) AS max_estado,
     CASE
      WHEN MAX(DOC_VEHICULOS.estado_value) = 10 THEN 'R'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 7 THEN 'E'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 5 THEN 'N'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 3 THEN 'I'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 1 THEN 'V'
     END AS status_doc   
     FROM
      (select led_docs.doc_id, led_docs.tipo_doc, led_docs.status_doc, led_docs.led_seccion,
         led_docs.contratista_1, led_docs.contratista, led_docs.periodo,
       CASE 
        WHEN led_docs.status_doc = 'R' THEN 10
        WHEN led_docs.status_doc = 'E' THEN 7
        WHEN led_docs.status_doc = 'N' THEN 5
        WHEN led_docs.status_doc = 'I' THEN 3
        WHEN led_docs.status_doc = 'V' THEN 1
       END AS estado_value
      from led_docs
     
      --inner join dbo.DelimitedSplit8K(@lista_tipos_doc, ',') tipos ON led_docs.tipo_doc = tipos.Item
      INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
      INNER JOIN led_cliente_vehiculo ON (led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
                 AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc
                 AND led_cliente_vehiculo.cliente = @cliente)
      INNER JOIN led_vehiculos_periodo ON (led_docs.vehiculo = led_vehiculos_periodo.vehiculo AND led_docs.periodo = led_vehiculos_periodo.periodo)

      inner join led_contratista_periodo on (led_vehiculos.contratista = led_contratista_periodo.contratista AND led_vehiculos_periodo.periodo = led_contratista_periodo.periodo)   

      where led_docs.contratista_1 = @p_contratista
      and led_vehiculos.estado_vehiculo = 'A'
      and led_docs.led_seccion = 'V'
      AND led_docs.doc_id_lista IS NULL 
                        /*AND led_docs.periodo >= dbo.PeriodoBiAnual()*/
                        ) DOC_VEHICULOS
     GROUP BY DOC_VEHICULOS.tipo_doc, DOC_VEHICULOS.led_seccion, DOC_VEHICULOS.contratista_1,
       DOC_VEHICULOS.contratista, DOC_VEHICULOS.periodo) VEHICULOS

   INNER JOIN led_tipos_doc ON VEHICULOS.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas AS led_contratistas_1 ON VEHICULOS.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones AS padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
   INNER JOIN led_contratistas ON VEHICULOS.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron


   UNION


   -- vehĂ­culos subcontratistas
   SELECT NULL AS doc_id, led_contratistas_1.cliente, led_contratistas.contratista_1,
      led_contratistas.contratista, VEHICULOS.led_seccion, VEHICULOS.periodo,
      NULL AS fecha_tolerancia, NULL AS fecha_tolerancia_ymd,
      NULL AS fecha_vigencia_ymd, NULL AS fecha_vigencia, NULL AS aprobacion_parcial, 
      VEHICULOS.status_doc, VEHICULOS.tipo_doc, led_tipos_doc.nombre_tipo_doc,
      padrones.nombre_persona as empresa, padrones.identificador, padrones.numero,
      padrones_1.nombre_persona as nombre_contratista,
    CASE WHEN VEHICULOS.status_doc = 'R' THEN 1
      WHEN VEHICULOS.status_doc = 'E' THEN 2
      WHEN VEHICULOS.status_doc = 'P' THEN 3
      WHEN VEHICULOS.status_doc = 'N' THEN 4
      WHEN VEHICULOS.status_doc = 'I' THEN 5
      WHEN VEHICULOS.status_doc = 'V' THEN 6 END AS orden_status,

    right(convert(varchar(6), VEHICULOS.periodo),2) + '/' + left(convert(varchar(6), VEHICULOS.periodo),4) AS periodo_my, 
    left(convert(varchar(6), VEHICULOS.periodo),4) + '-' + right(convert(varchar(6), VEHICULOS.periodo),2) AS periodo_Ym, 

    NULL AS plazo_carga,

    CASE WHEN VEHICULOS.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
      WHEN VEHICULOS.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
      WHEN VEHICULOS.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
      WHEN VEHICULOS.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
      WHEN VEHICULOS.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
      WHEN VEHICULOS.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,

    CASE WHEN VEHICULOS.status_doc = 'R' THEN 'Rechazados'
     WHEN VEHICULOS.status_doc = 'E' THEN 'Vencidos'
     WHEN VEHICULOS.status_doc = 'P' THEN 'Parciales'
     WHEN VEHICULOS.status_doc = 'N' THEN 'Pendientes'
     WHEN VEHICULOS.status_doc = 'I' THEN 'Ingresados'
     WHEN VEHICULOS.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

    CASE WHEN VEHICULOS.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
      WHEN VEHICULOS.status_doc = 'E' THEN 'fa-warning text-vencidos'
      WHEN VEHICULOS.status_doc = 'P' THEN 'fa-exclamation text-parciales'
      WHEN VEHICULOS.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
      WHEN VEHICULOS.status_doc = 'I' THEN 'fa-pause text-ingresados'
      WHEN VEHICULOS.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono,

    '<i class="fa fa-truck fa-2x"></i>' AS icono_seccion_full,
    'fa-truck' AS icono_seccion,
       'VehĂ­culos' AS txt_seccion,

    CASE WHEN led_tipos_doc.modalidad = 'A' THEN 'SI' ELSE 'NO' END AS acceso


   FROM
     (SELECT DOC_VEHICULOS.tipo_doc, DOC_VEHICULOS.led_seccion, DOC_VEHICULOS.contratista_1,
     DOC_VEHICULOS.contratista, DOC_VEHICULOS.periodo, MAX(DOC_VEHICULOS.estado_value) AS max_estado,
     CASE
      WHEN MAX(DOC_VEHICULOS.estado_value) = 10 THEN 'R'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 7 THEN 'E'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 5 THEN 'N'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 3 THEN 'I'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 1 THEN 'V'
     END AS status_doc   
     FROM
      (select led_docs.doc_id, led_docs.tipo_doc, led_docs.status_doc, led_docs.led_seccion,
         led_docs.contratista_1, led_docs.contratista, led_docs.periodo,
       CASE 
        WHEN led_docs.status_doc = 'R' THEN 10
        WHEN led_docs.status_doc = 'E' THEN 7
        WHEN led_docs.status_doc = 'N' THEN 5
        WHEN led_docs.status_doc = 'I' THEN 3
        WHEN led_docs.status_doc = 'V' THEN 1
       END AS estado_value
      from led_docs
     
      --inner join dbo.DelimitedSplit8K(@lista_tipos_doc, ',') tipos ON led_docs.tipo_doc = tipos.Item
      INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
      INNER JOIN led_cliente_vehiculo ON (led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
                 AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc
                 AND led_cliente_vehiculo.cliente = @cliente)
      INNER JOIN led_vehiculos_periodo ON (led_docs.vehiculo = led_vehiculos_periodo.vehiculo AND led_docs.periodo = led_vehiculos_periodo.periodo)

      inner join led_subcontratista_periodo on (led_vehiculos.contratista = led_subcontratista_periodo.subcontratista AND led_vehiculos_periodo.periodo = led_subcontratista_periodo.periodo)   

      where led_docs.contratista_1 = @p_contratista
      and led_vehiculos.estado_vehiculo = 'A'
      and led_docs.led_seccion = 'V'
      AND led_docs.doc_id_lista IS NULL 
                        /*AND led_docs.periodo >= dbo.PeriodoBiAnual()*/
                        ) DOC_VEHICULOS
     GROUP BY DOC_VEHICULOS.tipo_doc, DOC_VEHICULOS.led_seccion, DOC_VEHICULOS.contratista_1,
       DOC_VEHICULOS.contratista, DOC_VEHICULOS.periodo) VEHICULOS

   INNER JOIN led_tipos_doc ON VEHICULOS.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas AS led_contratistas_1 ON VEHICULOS.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones AS padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
   INNER JOIN led_contratistas ON VEHICULOS.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron

   ORDER BY periodo desc,orden_status, nombre_tipo_doc

  end

  else if (@accion = 'periodos') begin

   declare @contratista_1 int

   select @contratista_1 = contratista_1 from led_contratistas where contratista = @p_contratista

   if (@p_contratista = @contratista_1)

    select periodo, right(convert(varchar(6), periodo),2) + '/' + left(convert(varchar(6), periodo),4) AS periodo_my,
      left(convert(varchar(6), periodo),4) + '-' + right(convert(varchar(6), periodo),2) AS periodo_ym
    from led_contratista_periodo 
    where contratista = @p_contratista order by periodo DESC

   else

    select periodo, right(convert(varchar(6), periodo),2) + '/' + left(convert(varchar(6), periodo),4) AS periodo_my,
      left(convert(varchar(6), periodo),4) + '-' + right(convert(varchar(6), periodo),2) AS periodo_ym
    from led_subcontratista_periodo 
    where subcontratista = @p_contratista order by periodo DESC


  end

  else if (@accion = 'empresas') begin

   select led_contratistas.contratista, padrones.nombre_persona, 0 as orden
   from led_contratistas inner join padrones on led_contratistas.id_padron = padrones.id_padron
   where led_contratistas.contratista = @p_contratista

   UNION

   select led_contratistas.contratista, padrones.nombre_persona, 1 as orden 
   from led_contratistas inner join padrones on led_contratistas.id_padron = padrones.id_padron
   where led_contratistas.contratista_1 = @p_contratista
   and led_contratistas.contratista_1 <> led_contratistas.contratista

   order by orden, nombre_persona

  end

  else if (@accion = 'estados') begin

   select @cliente = cliente from led_contratistas where contratista = @p_contratista


   -- CONTRATISTA --
   SELECT led_docs.status_doc,
   CASE WHEN led_docs.status_doc = 'R' THEN 1
     WHEN led_docs.status_doc = 'E' THEN 2
     WHEN led_docs.status_doc = 'P' THEN 3
     WHEN led_docs.status_doc = 'N' THEN 4
     WHEN led_docs.status_doc = 'I' THEN 5
     WHEN led_docs.status_doc = 'V' THEN 6 END AS orden_status,

   CASE WHEN led_docs.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
     WHEN led_docs.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
     WHEN led_docs.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
     WHEN led_docs.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
     WHEN led_docs.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
     WHEN led_docs.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,

   CASE    WHEN led_docs.status_doc = 'R' THEN 'Rechazados'
     WHEN led_docs.status_doc = 'E' THEN 'Vencidos'
     WHEN led_docs.status_doc = 'P' THEN 'Parciales'
     WHEN led_docs.status_doc = 'N' THEN 'Pendientes'
     WHEN led_docs.status_doc = 'I' THEN 'Ingresados'
     WHEN led_docs.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

   CASE WHEN led_docs.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
     WHEN led_docs.status_doc = 'E' THEN 'fa-warning text-vencidos'
     WHEN led_docs.status_doc = 'P' THEN 'fa-exclamation text-parciales'
     WHEN led_docs.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
     WHEN led_docs.status_doc = 'I' THEN 'fa-pause text-ingresados'
     WHEN led_docs.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono

   FROM led_docs
   INNER JOIN led_tipos_doc ON led_docs.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
   INNER JOIN led_contratistas led_contratistas_1 ON led_docs.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron

   INNER JOIN led_cliente_contratista ON (led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
              AND led_docs.tipo_doc = led_cliente_contratista.tipo_doc
              AND led_cliente_contratista.requiere_upload = 1
              AND led_cliente_contratista.cliente = @cliente)
  
   INNER JOIN led_contratista_periodo ON (led_contratistas_1.contratista = led_contratista_periodo.contratista 
             AND led_docs.periodo = led_contratista_periodo.periodo)

   WHERE led_docs.contratista_1 = @p_contratista
   AND led_contratistas.contratista_1 = led_contratistas.contratista
   AND led_docs.led_seccion = 'C'
   AND led_docs.doc_id_lista IS NULL
   GROUP BY led_docs.status_doc


   UNION

   -- SUBCONTRATISTAS --
   SELECT led_docs.status_doc,
   CASE WHEN led_docs.status_doc = 'R' THEN 1
     WHEN led_docs.status_doc = 'E' THEN 2
     WHEN led_docs.status_doc = 'P' THEN 3
     WHEN led_docs.status_doc = 'N' THEN 4
     WHEN led_docs.status_doc = 'I' THEN 5
     WHEN led_docs.status_doc = 'V' THEN 6 END AS orden_status,

   CASE WHEN led_docs.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
     WHEN led_docs.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
     WHEN led_docs.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
     WHEN led_docs.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
     WHEN led_docs.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
     WHEN led_docs.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,

   CASE    WHEN led_docs.status_doc = 'R' THEN 'Rechazados'
     WHEN led_docs.status_doc = 'E' THEN 'Vencidos'
     WHEN led_docs.status_doc = 'P' THEN 'Parciales'
     WHEN led_docs.status_doc = 'N' THEN 'Pendientes'
     WHEN led_docs.status_doc = 'I' THEN 'Ingresados'
     WHEN led_docs.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

   CASE WHEN led_docs.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
     WHEN led_docs.status_doc = 'E' THEN 'fa-warning text-vencidos'
     WHEN led_docs.status_doc = 'P' THEN 'fa-exclamation text-parciales'
     WHEN led_docs.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
     WHEN led_docs.status_doc = 'I' THEN 'fa-pause text-ingresados'
     WHEN led_docs.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono

   FROM led_docs
   INNER JOIN led_tipos_doc ON led_docs.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
   INNER JOIN led_contratistas led_contratistas_1 ON led_docs.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron

   INNER JOIN led_cliente_contratista ON (led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
              AND led_docs.tipo_doc = led_cliente_contratista.tipo_doc
              AND led_cliente_contratista.requiere_upload = 1
              AND led_cliente_contratista.cliente = @cliente)
  
   INNER JOIN led_subcontratista_periodo ON (led_contratistas.contratista = led_subcontratista_periodo.subcontratista 
             AND led_docs.periodo = led_subcontratista_periodo.periodo)

   WHERE led_docs.contratista_1 = @p_contratista
   AND led_contratistas.contratista_1 <> led_contratistas.contratista
   AND led_docs.led_seccion = 'C'
   AND led_contratistas.estado_contratista = 'A'
   AND led_docs.doc_id_lista IS NULL
   GROUP BY led_docs.status_doc


   UNION

   -- EMPLEADOS CONTRATISTA
   SELECT EMPLEADOS.status_doc,
   CASE WHEN EMPLEADOS.status_doc = 'R' THEN 1
     WHEN EMPLEADOS.status_doc = 'E' THEN 2
     WHEN EMPLEADOS.status_doc = 'P' THEN 3
     WHEN EMPLEADOS.status_doc = 'N' THEN 4
     WHEN EMPLEADOS.status_doc = 'I' THEN 5
     WHEN EMPLEADOS.status_doc = 'V' THEN 6 END AS orden_status,

   CASE WHEN EMPLEADOS.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
     WHEN EMPLEADOS.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
     WHEN EMPLEADOS.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
     WHEN EMPLEADOS.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
     WHEN EMPLEADOS.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
     WHEN EMPLEADOS.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,
    
   CASE WHEN EMPLEADOS.status_doc = 'R' THEN 'Rechazados'
    WHEN EMPLEADOS.status_doc = 'E' THEN 'Vencidos'
    WHEN EMPLEADOS.status_doc = 'P' THEN 'Parciales'
    WHEN EMPLEADOS.status_doc = 'N' THEN 'Pendientes'
    WHEN EMPLEADOS.status_doc = 'I' THEN 'Ingresados'
    WHEN EMPLEADOS.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

   CASE WHEN EMPLEADOS.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
     WHEN EMPLEADOS.status_doc = 'E' THEN 'fa-warning text-vencidos'
     WHEN EMPLEADOS.status_doc = 'P' THEN 'fa-exclamation text-parciales'
     WHEN EMPLEADOS.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
     WHEN EMPLEADOS.status_doc = 'I' THEN 'fa-pause text-ingresados'
     WHEN EMPLEADOS.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono

   FROM
     (SELECT DOC_EMPLEADOS.tipo_doc, DOC_EMPLEADOS.led_seccion, DOC_EMPLEADOS.contratista_1,
     DOC_EMPLEADOS.contratista, DOC_EMPLEADOS.periodo, MAX(DOC_EMPLEADOS.estado_value) AS max_estado,
     CASE
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 10 THEN 'R'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 7 THEN 'E'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 5 THEN 'N'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 3 THEN 'I'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 1 THEN 'V'
     END AS status_doc   
     FROM
      (select led_docs.doc_id, led_docs.tipo_doc, led_docs.status_doc, led_docs.led_seccion,
         led_docs.contratista_1, led_docs.contratista, led_docs.periodo,
       CASE 
        WHEN led_docs.status_doc = 'R' THEN 10
        WHEN led_docs.status_doc = 'E' THEN 7
        WHEN led_docs.status_doc = 'N' THEN 5
        WHEN led_docs.status_doc = 'I' THEN 3
        WHEN led_docs.status_doc = 'V' THEN 1
       END AS estado_value
      from led_docs

      --inner join dbo.DelimitedSplit8K(@lista_tipos_doc, ',') tipos ON led_docs.tipo_doc = tipos.Item
      INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
      INNER JOIN led_cliente_empleado ON (led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
                 AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc
                 AND led_cliente_empleado.cliente = @cliente)
      INNER JOIN led_empleados_periodo ON (led_docs.empleado = led_empleados_periodo.empleado AND led_docs.periodo = led_empleados_periodo.periodo)

      inner join led_contratista_periodo on (led_empleados.contratista = led_contratista_periodo.contratista AND led_empleados_periodo.periodo = led_contratista_periodo.periodo)

      where led_docs.contratista_1 = @p_contratista
      and led_docs.led_seccion = 'E'
      AND led_docs.doc_id_lista IS NULL) DOC_EMPLEADOS
     GROUP BY DOC_EMPLEADOS.tipo_doc, DOC_EMPLEADOS.led_seccion, DOC_EMPLEADOS.contratista_1,
       DOC_EMPLEADOS.contratista, DOC_EMPLEADOS.periodo) EMPLEADOS

   INNER JOIN led_tipos_doc ON EMPLEADOS.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas AS led_contratistas_1 ON EMPLEADOS.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones AS padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
   INNER JOIN led_contratistas ON EMPLEADOS.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
   GROUP BY EMPLEADOS.status_doc


   UNION

   -- ENPLEADOS SUBCONTRATISTAS --
   SELECT EMPLEADOS.status_doc,
   CASE WHEN EMPLEADOS.status_doc = 'R' THEN 1
     WHEN EMPLEADOS.status_doc = 'E' THEN 2
     WHEN EMPLEADOS.status_doc = 'P' THEN 3
     WHEN EMPLEADOS.status_doc = 'N' THEN 4
     WHEN EMPLEADOS.status_doc = 'I' THEN 5
     WHEN EMPLEADOS.status_doc = 'V' THEN 6 END AS orden_status,

   CASE WHEN EMPLEADOS.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
     WHEN EMPLEADOS.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
     WHEN EMPLEADOS.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
     WHEN EMPLEADOS.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
     WHEN EMPLEADOS.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
     WHEN EMPLEADOS.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,
    
   CASE WHEN EMPLEADOS.status_doc = 'R' THEN 'Rechazados'
    WHEN EMPLEADOS.status_doc = 'E' THEN 'Vencidos'
    WHEN EMPLEADOS.status_doc = 'P' THEN 'Parciales'
    WHEN EMPLEADOS.status_doc = 'N' THEN 'Pendientes'
    WHEN EMPLEADOS.status_doc = 'I' THEN 'Ingresados'
    WHEN EMPLEADOS.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

   CASE WHEN EMPLEADOS.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
     WHEN EMPLEADOS.status_doc = 'E' THEN 'fa-warning text-vencidos'
     WHEN EMPLEADOS.status_doc = 'P' THEN 'fa-exclamation text-parciales'
     WHEN EMPLEADOS.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
     WHEN EMPLEADOS.status_doc = 'I' THEN 'fa-pause text-ingresados'
     WHEN EMPLEADOS.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono

   FROM
     (SELECT DOC_EMPLEADOS.tipo_doc, DOC_EMPLEADOS.led_seccion, DOC_EMPLEADOS.contratista_1,
     DOC_EMPLEADOS.contratista, DOC_EMPLEADOS.periodo, MAX(DOC_EMPLEADOS.estado_value) AS max_estado,
     CASE
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 10 THEN 'R'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 7 THEN 'E'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 5 THEN 'N'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 3 THEN 'I'
      WHEN MAX(DOC_EMPLEADOS.estado_value) = 1 THEN 'V'
     END AS status_doc   
     FROM
      (select led_docs.doc_id, led_docs.tipo_doc, led_docs.status_doc, led_docs.led_seccion,
         led_docs.contratista_1, led_docs.contratista, led_docs.periodo,
       CASE 
        WHEN led_docs.status_doc = 'R' THEN 10
        WHEN led_docs.status_doc = 'E' THEN 7
        WHEN led_docs.status_doc = 'N' THEN 5
        WHEN led_docs.status_doc = 'I' THEN 3
        WHEN led_docs.status_doc = 'V' THEN 1
       END AS estado_value
      from led_docs

      --inner join dbo.DelimitedSplit8K(@lista_tipos_doc, ',') tipos ON led_docs.tipo_doc = tipos.Item
      INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
      INNER JOIN led_cliente_empleado ON (led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
                 AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc
                 AND led_cliente_empleado.cliente = @cliente)
      INNER JOIN led_empleados_periodo ON (led_docs.empleado = led_empleados_periodo.empleado AND led_docs.periodo = led_empleados_periodo.periodo)

      inner join led_subcontratista_periodo on (led_empleados.contratista = led_subcontratista_periodo.subcontratista AND led_empleados_periodo.periodo = led_subcontratista_periodo.periodo)

      where led_docs.contratista_1 = @p_contratista
      and led_docs.led_seccion = 'E'
      AND led_docs.doc_id_lista IS NULL) DOC_EMPLEADOS
     GROUP BY DOC_EMPLEADOS.tipo_doc, DOC_EMPLEADOS.led_seccion, DOC_EMPLEADOS.contratista_1,
       DOC_EMPLEADOS.contratista, DOC_EMPLEADOS.periodo) EMPLEADOS

   INNER JOIN led_tipos_doc ON EMPLEADOS.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas AS led_contratistas_1 ON EMPLEADOS.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones AS padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
   INNER JOIN led_contratistas ON EMPLEADOS.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
   GROUP BY EMPLEADOS.status_doc


   UNION

   -- VEHICULOS --
   SELECT VEHICULOS.status_doc,
   CASE WHEN VEHICULOS.status_doc = 'R' THEN 1
     WHEN VEHICULOS.status_doc = 'E' THEN 2
     WHEN VEHICULOS.status_doc = 'P' THEN 3
     WHEN VEHICULOS.status_doc = 'N' THEN 4
     WHEN VEHICULOS.status_doc = 'I' THEN 5
     WHEN VEHICULOS.status_doc = 'V' THEN 6 END AS orden_status,

   CASE WHEN VEHICULOS.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
     WHEN VEHICULOS.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
     WHEN VEHICULOS.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
     WHEN VEHICULOS.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
     WHEN VEHICULOS.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
     WHEN VEHICULOS.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,

   CASE WHEN VEHICULOS.status_doc = 'R' THEN 'Rechazados'
    WHEN VEHICULOS.status_doc = 'E' THEN 'Vencidos'
    WHEN VEHICULOS.status_doc = 'P' THEN 'Parciales'
    WHEN VEHICULOS.status_doc = 'N' THEN 'Pendientes'
    WHEN VEHICULOS.status_doc = 'I' THEN 'Ingresados'
    WHEN VEHICULOS.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

   CASE WHEN VEHICULOS.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
     WHEN VEHICULOS.status_doc = 'E' THEN 'fa-warning text-vencidos'
     WHEN VEHICULOS.status_doc = 'P' THEN 'fa-exclamation text-parciales'
     WHEN VEHICULOS.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
     WHEN VEHICULOS.status_doc = 'I' THEN 'fa-pause text-ingresados'
     WHEN VEHICULOS.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono

   FROM
     (SELECT DOC_VEHICULOS.tipo_doc, DOC_VEHICULOS.led_seccion, DOC_VEHICULOS.contratista_1,
     DOC_VEHICULOS.contratista, DOC_VEHICULOS.periodo, MAX(DOC_VEHICULOS.estado_value) AS max_estado,
     CASE
      WHEN MAX(DOC_VEHICULOS.estado_value) = 10 THEN 'R'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 7 THEN 'E'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 5 THEN 'N'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 3 THEN 'I'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 1 THEN 'V'
     END AS status_doc   
     FROM
      (select led_docs.doc_id, led_docs.tipo_doc, led_docs.status_doc, led_docs.led_seccion,
         led_docs.contratista_1, led_docs.contratista, led_docs.periodo,
       CASE 
        WHEN led_docs.status_doc = 'R' THEN 10
        WHEN led_docs.status_doc = 'E' THEN 7
        WHEN led_docs.status_doc = 'N' THEN 5
        WHEN led_docs.status_doc = 'I' THEN 3
        WHEN led_docs.status_doc = 'V' THEN 1
       END AS estado_value
      from led_docs
     
      --inner join dbo.DelimitedSplit8K(@lista_tipos_doc, ',') tipos ON led_docs.tipo_doc = tipos.Item
      INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
      INNER JOIN led_cliente_vehiculo ON (led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
                 AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc
                 AND led_cliente_vehiculo.cliente = @cliente)
      INNER JOIN led_vehiculos_periodo ON (led_docs.vehiculo = led_vehiculos_periodo.vehiculo AND led_docs.periodo = led_vehiculos_periodo.periodo)

      inner join led_contratista_periodo on (led_vehiculos.contratista = led_contratista_periodo.contratista AND led_vehiculos_periodo.periodo = led_contratista_periodo.periodo)   

      where led_docs.contratista_1 = @p_contratista
      and led_vehiculos.estado_vehiculo = 'A'
      and led_docs.led_seccion = 'V'
      AND led_docs.doc_id_lista IS NULL) DOC_VEHICULOS
     GROUP BY DOC_VEHICULOS.tipo_doc, DOC_VEHICULOS.led_seccion, DOC_VEHICULOS.contratista_1,
       DOC_VEHICULOS.contratista, DOC_VEHICULOS.periodo) VEHICULOS

   INNER JOIN led_tipos_doc ON VEHICULOS.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas AS led_contratistas_1 ON VEHICULOS.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones AS padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
   INNER JOIN led_contratistas ON VEHICULOS.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
   GROUP BY VEHICULOS.status_doc


   UNION

   -- VEHICULOS SUBCONTRATISTAS --
   SELECT VEHICULOS.status_doc,
   CASE WHEN VEHICULOS.status_doc = 'R' THEN 1
     WHEN VEHICULOS.status_doc = 'E' THEN 2
     WHEN VEHICULOS.status_doc = 'P' THEN 3
     WHEN VEHICULOS.status_doc = 'N' THEN 4
     WHEN VEHICULOS.status_doc = 'I' THEN 5
     WHEN VEHICULOS.status_doc = 'V' THEN 6 END AS orden_status,

   CASE WHEN VEHICULOS.status_doc = 'R' THEN '<i class="fa fa-exclamation-circle text-rechazados fa-2x"></i>'
     WHEN VEHICULOS.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos fa-2x"></i>'
     WHEN VEHICULOS.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales fa-2x"></i>'
     WHEN VEHICULOS.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes fa-2x"></i>'
     WHEN VEHICULOS.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados fa-2x"></i>'
     WHEN VEHICULOS.status_doc = 'V' THEN '<i class="fa fa-check text-verificados fa-2x"></i>' END AS icono_full,

   CASE WHEN VEHICULOS.status_doc = 'R' THEN 'Rechazados'
    WHEN VEHICULOS.status_doc = 'E' THEN 'Vencidos'
    WHEN VEHICULOS.status_doc = 'P' THEN 'Parciales'
    WHEN VEHICULOS.status_doc = 'N' THEN 'Pendientes'
    WHEN VEHICULOS.status_doc = 'I' THEN 'Ingresados'
    WHEN VEHICULOS.status_doc = 'V' THEN 'Verificados' END AS status_doc_txt,

   CASE WHEN VEHICULOS.status_doc = 'R' THEN 'fa-exclamation-circle text-rechazados'
     WHEN VEHICULOS.status_doc = 'E' THEN 'fa-warning text-vencidos'
     WHEN VEHICULOS.status_doc = 'P' THEN 'fa-exclamation text-parciales'
     WHEN VEHICULOS.status_doc = 'N' THEN 'fa-cloud-upload text-pendientes'
     WHEN VEHICULOS.status_doc = 'I' THEN 'fa-pause text-ingresados'
     WHEN VEHICULOS.status_doc = 'V' THEN 'fa-check text-verificados' END AS icono

   FROM
     (SELECT DOC_VEHICULOS.tipo_doc, DOC_VEHICULOS.led_seccion, DOC_VEHICULOS.contratista_1,
     DOC_VEHICULOS.contratista, DOC_VEHICULOS.periodo, MAX(DOC_VEHICULOS.estado_value) AS max_estado,
     CASE
      WHEN MAX(DOC_VEHICULOS.estado_value) = 10 THEN 'R'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 7 THEN 'E'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 5 THEN 'N'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 3 THEN 'I'
      WHEN MAX(DOC_VEHICULOS.estado_value) = 1 THEN 'V'
     END AS status_doc   
     FROM
      (select led_docs.doc_id, led_docs.tipo_doc, led_docs.status_doc, led_docs.led_seccion,
         led_docs.contratista_1, led_docs.contratista, led_docs.periodo,
       CASE 
        WHEN led_docs.status_doc = 'R' THEN 10
        WHEN led_docs.status_doc = 'E' THEN 7
        WHEN led_docs.status_doc = 'N' THEN 5
        WHEN led_docs.status_doc = 'I' THEN 3
        WHEN led_docs.status_doc = 'V' THEN 1
       END AS estado_value
      from led_docs
     
      --inner join dbo.DelimitedSplit8K(@lista_tipos_doc, ',') tipos ON led_docs.tipo_doc = tipos.Item
      INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
      INNER JOIN led_cliente_vehiculo ON (led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
                 AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc
                 AND led_cliente_vehiculo.cliente = @cliente)
      INNER JOIN led_vehiculos_periodo ON (led_docs.vehiculo = led_vehiculos_periodo.vehiculo AND led_docs.periodo = led_vehiculos_periodo.periodo)

      inner join led_subcontratista_periodo on (led_vehiculos.contratista = led_subcontratista_periodo.subcontratista AND led_vehiculos_periodo.periodo = led_subcontratista_periodo.periodo)   

      where led_docs.contratista_1 = @p_contratista
      and led_vehiculos.estado_vehiculo = 'A'
      and led_docs.led_seccion = 'V'
      AND led_docs.doc_id_lista IS NULL) DOC_VEHICULOS
     GROUP BY DOC_VEHICULOS.tipo_doc, DOC_VEHICULOS.led_seccion, DOC_VEHICULOS.contratista_1,
       DOC_VEHICULOS.contratista, DOC_VEHICULOS.periodo) VEHICULOS

   INNER JOIN led_tipos_doc ON VEHICULOS.tipo_doc = led_tipos_doc.tipo_doc
   INNER JOIN led_contratistas AS led_contratistas_1 ON VEHICULOS.contratista_1 = led_contratistas_1.contratista
   INNER JOIN padrones AS padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
   INNER JOIN led_contratistas ON VEHICULOS.contratista = led_contratistas.contratista
   INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron

   GROUP BY VEHICULOS.status_doc


   ORDER BY orden_status

  end


 end 
END
GO

Used By

No items found