Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
5| Name | Data Type | Length | Description |
|---|---|---|---|
| @p_contratista | int | 4 | |
| @p_led_seccion | varchar | 1 | |
| @p_estado | varchar | 1 | |
| @p_periodo | int | 4 | |
| @p_contratista_1 | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
/*
Imperium_Recursos_Contratista 1288, 'E', 'A'
exec Imperium_Recursos_Contratista_fancy 4282,'S','A',202310,4282
*/
CREATE OR ALTER PROCEDURE dbo.Imperium_Recursos_Contratista_FANCY
-- Add the parameters for the stored procedure here
@p_contratista int = null,
@p_led_seccion varchar(1) = null,
@p_estado varchar(1) = null,
@p_periodo int = null,
@p_contratista_1 int = null
AS
BEGIN
SET NOCOUNT ON;
if ( (@p_contratista is not null OR @p_contratista_1 is not null) and @p_periodo is not null and @p_led_seccion is not null) begin
if (@p_estado is not null) begin
if (@p_led_seccion = 'E')
if (@p_contratista_1 is null)
select led_empleados_periodo.periodo,
convert(varchar,led_empleados_periodo.periodo) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado
from led_empleados
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
where led_empleados.contratista = @p_contratista
and led_empleados_periodo.periodo = @p_periodo
and led_empleados.estado_empleado = @p_estado
order by padrones.nombre_persona
else
select led_empleados_periodo.periodo,
convert(varchar,led_empleados_periodo.periodo) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado
from led_empleados
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
where led_empleados.contratista = @p_contratista
and led_empleados.contratista_1 = @p_contratista_1
and led_empleados_periodo.periodo = @p_periodo
and led_empleados.estado_empleado = @p_estado
order by padrones.nombre_persona
else if (@p_led_seccion = 'V')
if (@p_contratista_1 is null)
select led_vehiculos_periodo.periodo,
convert(varchar,led_vehiculos_periodo.periodo) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
where led_vehiculos.contratista = @p_contratista
and led_vehiculos_periodo.periodo = @p_periodo
and led_vehiculos.estado_vehiculo = @p_estado
order by led_vehiculos.nombre_vehiculo
else
select led_vehiculos_periodo.periodo,
convert(varchar,led_vehiculos_periodo.periodo) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
where led_vehiculos.contratista = @p_contratista
and led_vehiculos.contratista_1 = @p_contratista_1
and led_vehiculos_periodo.periodo = @p_periodo
and led_vehiculos.estado_vehiculo = @p_estado
order by led_vehiculos.nombre_vehiculo
else if (@p_led_seccion = 'S' OR @p_led_seccion = 'R')
select led_subcontratista_periodo.periodo,
convert(varchar,led_subcontratista_periodo.periodo) as periodo_Ym,
led_subcontratista_periodo.subcontratista,
led_contratistas.contratista, led_contratistas.estado_contratista, led_contratistas.contratista_1,
led_contratistas.cliente, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_contratistas.cliente, clientes.nombre_cliente,
LOWER(identificadores.country_code) as country_code, country.country_name, led_tipos_contratista.nombre_tipo_contratista,
padrones_d.nombre_persona as nombre_persona_d,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_contratistas.estado_contratista = 'A', 'Activo', 'No activo') as estado
from led_contratistas
inner join led_subcontratista_periodo on led_contratistas.contratista = led_subcontratista_periodo.subcontratista
inner join padrones on led_contratistas.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_contratistas.cliente = clientes.cliente
inner join country on identificadores.country_code = country.country_code
inner join led_tipos_contratista on led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
inner join led_contratistas contratista_d on led_contratistas.subcontratista_de = contratista_d.contratista
inner join padrones padrones_d on contratista_d.id_padron = padrones_d.id_padron
where led_contratistas.contratista_1 = @p_contratista_1
and led_subcontratista_periodo.periodo = @p_periodo
and led_contratistas.estado_contratista = @p_estado
order by padrones.nombre_persona
end else begin
/* sin filtro de estado */
if (@p_led_seccion = 'E')
if (@p_contratista_1 is null)
select led_empleados_periodo.periodo,
convert(varchar,led_empleados_periodo.periodo) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado,
PENDIENTES.total_pendientes,
INGRESADOS.total_ingresados,
RECHAZADOS.total_rechazados,
VERIFICADOS.total_verificados,
ultimo.periodo_Ym as ultimo_periodo,
convert(varchar,EVENTUALES.valor_fecha,103) as fecha_eventual
from led_empleados
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
left outer join (select empleado, max(periodo) as periodo,
left(convert(varchar(6), MAX(periodo)),4) + '-' + right(convert(varchar(6), MAX(periodo)),2) AS periodo_Ym
from led_empleados_periodo
group by empleado) ultimo on ultimo.empleado = led_empleados.empleado
left outer join
(select led_docs.empleado, count(*) as total_pendientes
from led_docs
inner join led_empleados on led_docs.empleado = led_empleados.empleado
inner join led_cliente_empleado on
(led_docs.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
and led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
where led_empleados.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'N'
group by led_docs.empleado) PENDIENTES ON led_empleados.empleado = PENDIENTES.empleado
left outer join
(select led_docs.empleado, count(*) as total_ingresados
from led_docs
inner join led_empleados on led_docs.empleado = led_empleados.empleado
inner join led_cliente_empleado on
(led_docs.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
and led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
where led_empleados.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'I'
group by led_docs.empleado) INGRESADOS ON led_empleados.empleado = INGRESADOS.empleado
left outer join
(select led_docs.empleado, count(*) as total_rechazados
from led_docs
inner join led_empleados on led_docs.empleado = led_empleados.empleado
inner join led_cliente_empleado on
(led_docs.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
and led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
where led_empleados.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'R'
group by led_docs.empleado) RECHAZADOS ON led_empleados.empleado = RECHAZADOS.empleado
left outer join
(select led_docs.empleado, count(*) as total_verificados
from led_docs
inner join led_empleados on led_docs.empleado = led_empleados.empleado
inner join led_cliente_empleado on
(led_docs.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
and led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
where led_empleados.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'V'
group by led_docs.empleado) VERIFICADOS ON led_empleados.empleado = VERIFICADOS.empleado
/* 10/04/2023 */
left outer join
(select led_docs.empleado, led_campos_doc.valor_fecha
from led_docs
inner join led_campos_doc on (led_campos_doc.doc_id = led_docs.doc_id and campo_tipo_doc = 2)
where led_docs.tipo_doc = 346
and contratista_1 = @p_contratista
and led_docs.estado_doc = 'V'
and led_docs.periodo = @p_periodo) EVENTUALES ON led_empleados.empleado = EVENTUALES.empleado
/* */
where led_empleados.contratista = @p_contratista
and led_empleados_periodo.periodo = @p_periodo
order by padrones.nombre_persona
else
select led_empleados_periodo.periodo,
convert(varchar,led_empleados_periodo.periodo) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado,
ultimo.periodo_ym as ultimo_periodo,
convert(varchar,EVENTUALES.valor_fecha,103) as fecha_eventual
from led_empleados
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
left outer join (select empleado, max(periodo) as periodo,
left(convert(varchar(6), MAX(periodo)),4) + '-' + right(convert(varchar(6), MAX(periodo)),2) AS periodo_Ym
from led_empleados_periodo
group by empleado) ultimo on ultimo.empleado = led_empleados.empleado
/* 10/04/2023 */
left outer join
(select led_docs.empleado, led_campos_doc.valor_fecha
from led_docs
inner join led_campos_doc on (led_campos_doc.doc_id = led_docs.doc_id and campo_tipo_doc = 2)
where led_docs.tipo_doc = 346
and contratista_1 = @p_contratista_1
and led_docs.estado_doc = 'V'
and led_docs.periodo = @p_periodo) EVENTUALES ON led_empleados.empleado = EVENTUALES.empleado
/* */
where led_empleados.contratista = @p_contratista
and led_empleados.contratista_1 = @p_contratista_1
and led_empleados_periodo.periodo = @p_periodo
order by padrones.nombre_persona
else if (@p_led_seccion = 'V')
if (@p_contratista_1 is null)
select led_vehiculos_periodo.periodo,
convert(varchar,led_vehiculos_periodo.periodo) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,
PENDIENTES.total_pendientes,
INGRESADOS.total_ingresados,
RECHAZADOS.total_rechazados,
VERIFICADOS.total_verificados,
ultimo.periodo_Ym as ultimo_periodo,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
left outer join (select vehiculo, max(periodo) as periodo,
left(convert(varchar(6), MAX(periodo)),4) + '-' + right(convert(varchar(6), MAX(periodo)),2) AS periodo_Ym
from led_vehiculos_periodo
group by vehiculo) ultimo on ultimo.vehiculo = led_vehiculos.vehiculo
left outer join
(select led_docs.vehiculo, count(*) as total_pendientes
from led_docs
inner join led_vehiculos on led_docs.vehiculo = led_vehiculos.vehiculo
inner join led_cliente_vehiculo on
(led_docs.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
and led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
where led_vehiculos.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'N'
group by led_docs.vehiculo) PENDIENTES ON led_vehiculos.vehiculo = PENDIENTES.vehiculo
left outer join
(select led_docs.vehiculo, count(*) as total_ingresados
from led_docs
inner join led_vehiculos on led_docs.vehiculo = led_vehiculos.vehiculo
inner join led_cliente_vehiculo on
(led_docs.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
and led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
where led_vehiculos.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'I'
group by led_docs.vehiculo) INGRESADOS ON led_vehiculos.vehiculo = INGRESADOS.vehiculo
left outer join
(select led_docs.vehiculo, count(*) as total_rechazados
from led_docs
inner join led_vehiculos on led_docs.vehiculo = led_vehiculos.vehiculo
inner join led_cliente_vehiculo on
(led_docs.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
and led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
where led_vehiculos.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'R'
group by led_docs.vehiculo) RECHAZADOS ON led_vehiculos.vehiculo = RECHAZADOS.vehiculo
left outer join
(select led_docs.vehiculo, count(*) as total_verificados
from led_docs
inner join led_vehiculos on led_docs.vehiculo = led_vehiculos.vehiculo
inner join led_cliente_vehiculo on
(led_docs.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
and led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
where led_vehiculos.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'V'
group by led_docs.vehiculo) VERIFICADOS ON led_vehiculos.vehiculo = VERIFICADOS.vehiculo
where led_vehiculos.contratista = @p_contratista
and led_vehiculos_periodo.periodo = @p_periodo
order by led_vehiculos.nombre_vehiculo
else
select led_vehiculos_periodo.periodo,
convert(varchar,led_vehiculos_periodo.periodo) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,
ultimo.periodo_Ym as ultimo_periodo,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
left outer join (select vehiculo, max(periodo) as periodo,
left(convert(varchar(6), MAX(periodo)),4) + '-' + right(convert(varchar(6), MAX(periodo)),2) AS periodo_Ym
from led_vehiculos_periodo
group by vehiculo) ultimo on ultimo.vehiculo = led_vehiculos.vehiculo
where led_vehiculos.contratista = @p_contratista
and led_vehiculos.contratista_1 = @p_contratista_1
and led_vehiculos_periodo.periodo = @p_periodo
order by led_vehiculos.nombre_vehiculo
else if (@p_led_seccion = 'S' OR @p_led_seccion = 'R')
select led_subcontratista_periodo.periodo,
convert(varchar,led_subcontratista_periodo.periodo) as periodo_Ym,
led_subcontratista_periodo.subcontratista,
led_contratistas.contratista, led_contratistas.estado_contratista, led_contratistas.contratista_1,
led_contratistas.cliente, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_contratistas.cliente, clientes.nombre_cliente,
LOWER(identificadores.country_code) as country_code, country.country_name, led_tipos_contratista.nombre_tipo_contratista,
padrones_d.nombre_persona as nombre_persona_d,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_contratistas.estado_contratista = 'A', 'Activo', 'No activo') as estado,
PENDIENTES.total_pendientes,
INGRESADOS.total_ingresados,
RECHAZADOS.total_rechazados,
VERIFICADOS.total_verificados,
ultimo.periodo_ym as ultimo_periodo
from led_contratistas
inner join led_subcontratista_periodo on led_contratistas.contratista = led_subcontratista_periodo.subcontratista
left outer join (select subcontratista, max(periodo) as periodo,
left(convert(varchar(6), MAX(periodo)),4) + '-' + right(convert(varchar(6), MAX(periodo)),2) AS periodo_Ym
from led_subcontratista_periodo
group by subcontratista) ultimo on ultimo.subcontratista = led_contratistas.contratista
inner join padrones on led_contratistas.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_contratistas.cliente = clientes.cliente
inner join country on identificadores.country_code = country.country_code
inner join led_tipos_contratista on led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
inner join led_contratistas contratista_d on led_contratistas.subcontratista_de = contratista_d.contratista
inner join padrones padrones_d on contratista_d.id_padron = padrones_d.id_padron
left outer join
(select led_docs.contratista, count(*) as total_pendientes
from led_docs
inner join led_contratistas on led_docs.contratista = led_contratistas.contratista
inner join led_cliente_contratista on
(led_docs.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
where led_contratistas.contratista_1 = @p_contratista_1
and led_contratistas.contratista_1 != led_contratistas.contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'N'
group by led_docs.contratista) PENDIENTES ON led_contratistas.contratista = PENDIENTES.contratista
left outer join
(select led_docs.contratista, count(*) as total_ingresados
from led_docs
inner join led_contratistas on led_docs.contratista = led_contratistas.contratista
inner join led_cliente_contratista on
(led_docs.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
where led_contratistas.contratista_1 = @p_contratista_1
and led_contratistas.contratista_1 != led_contratistas.contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'I'
group by led_docs.contratista) INGRESADOS ON led_contratistas.contratista = INGRESADOS.contratista
left outer join
(select led_docs.contratista, count(*) as total_rechazados
from led_docs
inner join led_contratistas on led_docs.contratista = led_contratistas.contratista
inner join led_cliente_contratista on
(led_docs.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
where led_contratistas.contratista_1 = @p_contratista_1
and led_contratistas.contratista_1 != led_contratistas.contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'R'
group by led_docs.contratista) RECHAZADOS ON led_contratistas.contratista = RECHAZADOS.contratista
left outer join
(select led_docs.contratista, count(*) as total_verificados
from led_docs
inner join led_contratistas on led_docs.contratista = led_contratistas.contratista
inner join led_cliente_contratista on
(led_docs.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
where led_contratistas.contratista_1 = @p_contratista_1
and led_contratistas.contratista_1 != led_contratistas.contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'V'
group by led_docs.contratista) VERIFICADOS ON led_contratistas.contratista = VERIFICADOS.contratista
where led_contratistas.contratista_1 = @p_contratista_1
and led_contratistas.contratista_1 != led_contratistas.contratista
and led_subcontratista_periodo.periodo = @p_periodo
order by padrones.nombre_persona
end
end
--- Para consultar nómina sin depender a afectación a ningún perÃodo,
--- debe pasarse el contratista y la sección. El estado es opcional. Para uso web Cliente en www.fidelitas.com.ar
if (@p_contratista is not null and @p_periodo IS NULL and @p_led_seccion is not null) begin
if (@p_estado is null) begin
if (@p_led_seccion = 'E')
select MAX(led_empleados_periodo.periodo) as periodo,
right(convert(varchar(6), MAX(led_empleados_periodo.periodo)),2) + '/' + left(convert(varchar(6), MAX(led_empleados_periodo.periodo)),4) AS periodo_mY,
left(convert(varchar(6), MAX(led_empleados_periodo.periodo)),4) + '-' + right(convert(varchar(6), MAX(led_empleados_periodo.periodo)),2) AS periodo_Ym,
--convert(varchar,MAX(led_empleados_periodo.periodo)) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado
from led_empleados
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
where led_empleados.contratista = @p_contratista
group by
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code), country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion,
identificadores.country_code,
led_empleados.estado_empleado
order by padrones.nombre_persona
else if (@p_led_seccion = 'V')
select MAX(led_vehiculos_periodo.periodo) as periodo,
right(convert(varchar(6), MAX(led_vehiculos_periodo.periodo)),2) + '/' + left(convert(varchar(6), MAX(led_vehiculos_periodo.periodo)),4) AS periodo_mY,
left(convert(varchar(6), MAX(led_vehiculos_periodo.periodo)),4) + '-' + right(convert(varchar(6), MAX(led_vehiculos_periodo.periodo)),2) AS periodo_Ym,
--convert(varchar,MAX(led_vehiculos_periodo.periodo)) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
where led_vehiculos.contratista = @p_contratista
group by led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, led_vehiculos.country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
led_vehiculos.country_code,
led_vehiculos.estado_vehiculo,tara,tarimas
order by led_vehiculos.nombre_vehiculo
else
-- en el caso de solicitar nomina de subcontratistas, busco en el campo de contratista principal _1
select max(led_subcontratista_periodo.periodo) as periodo,
right(convert(varchar(6), MAX(led_subcontratista_periodo.periodo)),2) + '/' + left(convert(varchar(6), MAX(led_subcontratista_periodo.periodo)),4) AS periodo_mY,
left(convert(varchar(6), MAX(led_subcontratista_periodo.periodo)),4) + '-' + right(convert(varchar(6), MAX(led_subcontratista_periodo.periodo)),2) AS periodo_Ym,
--convert(varchar,max(led_subcontratista_periodo.periodo)) as periodo_Ym,
led_contratistas.contratista, led_contratistas.estado_contratista, led_contratistas.contratista_1,
led_contratistas.cliente, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_contratistas.cliente, clientes.nombre_cliente,
LOWER(identificadores.country_code) as country_code, country.country_name, led_tipos_contratista.nombre_tipo_contratista,
padrones_d.nombre_persona as nombre_persona_d,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_contratistas.estado_contratista = 'A', 'Activo', 'No activo') as estado
from led_contratistas
inner join padrones on led_contratistas.id_padron = padrones.id_padron
inner join led_subcontratista_periodo on led_contratistas.contratista = led_subcontratista_periodo.subcontratista
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_contratistas.cliente = clientes.cliente
inner join country on identificadores.country_code = country.country_code
inner join led_tipos_contratista on led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
inner join led_contratistas contratista_d on led_contratistas.contratista_1 = contratista_d.contratista
inner join padrones padrones_d on contratista_d.id_padron = padrones_d.id_padron
where led_contratistas.contratista_1 = @p_contratista
and led_contratistas.contratista_1 != led_contratistas.contratista
group by led_contratistas.contratista, led_contratistas.estado_contratista, led_contratistas.contratista_1,
led_contratistas.cliente, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_contratistas.cliente, clientes.nombre_cliente,
identificadores.country_code, country.country_name, led_tipos_contratista.nombre_tipo_contratista,
padrones_d.nombre_persona,
identificadores.abreviatura + ' ' + padrones.identificacion,
identificadores.country_code,
led_contratistas.estado_contratista
order by padrones.nombre_persona
end else
begin
-- consulta con estado
if (@p_led_seccion = 'E')
select led_empleados_periodo.periodo,
convert(varchar,led_empleados_periodo.periodo) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado
from led_empleados
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
where led_empleados.contratista = @p_contratista
and led_empleados.estado_empleado = @p_estado
order by padrones.nombre_persona
else if (@p_led_seccion = 'V')
select led_vehiculos_periodo.periodo,
convert(varchar,led_vehiculos_periodo.periodo) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
where led_vehiculos.contratista = @p_contratista
and led_vehiculos.estado_vehiculo = @p_estado
order by led_vehiculos.nombre_vehiculo
else
-- en el caso de solicitar nomina de subcontratistas, busco en el campo de contratista principal _1
select led_subcontratista_periodo.periodo,
convert(varchar,led_subcontratista_periodo.periodo) as periodo_Ym,
led_contratistas.contratista, led_contratistas.estado_contratista, led_contratistas.contratista_1,
led_contratistas.cliente, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_contratistas.cliente, clientes.nombre_cliente,
LOWER(identificadores.country_code) as country_code, country.country_name, led_tipos_contratista.nombre_tipo_contratista,
padrones_d.nombre_persona as nombre_persona_d,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_contratistas.estado_contratista = 'A', 'Activo', 'No activo') as estado
from led_contratistas
inner join led_subcontratista_periodo on led_contratistas.contratista = led_subcontratista_periodo.subcontratista
inner join padrones on led_contratistas.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_contratistas.cliente = clientes.cliente
inner join country on identificadores.country_code = country.country_code
inner join led_tipos_contratista on led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
inner join led_contratistas contratista_d on led_contratistas.contratista_1 = contratista_d.contratista
inner join padrones padrones_d on contratista_d.id_padron = padrones_d.id_padron
where led_contratistas.contratista_1 = @p_contratista
and led_contratistas.estado_contratista = @p_estado
and led_contratistas.contratista_1 != led_contratistas.contratista
order by padrones.nombre_persona
end
end
END
GO
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
/*
Imperium_Recursos_Contratista 1288, 'E', 'A'
exec Imperium_Recursos_Contratista_fancy 4282,'S','A',202310,4282
*/
CREATE OR ALTER PROCEDURE dbo.Imperium_Recursos_Contratista_FANCY
-- Add the parameters for the stored procedure here
@p_contratista int = null,
@p_led_seccion varchar(1) = null,
@p_estado varchar(1) = null,
@p_periodo int = null,
@p_contratista_1 int = null
AS
BEGIN
SET NOCOUNT ON;
if ( (@p_contratista is not null OR @p_contratista_1 is not null) and @p_periodo is not null and @p_led_seccion is not null) begin
if (@p_estado is not null) begin
if (@p_led_seccion = 'E')
if (@p_contratista_1 is null)
select led_empleados_periodo.periodo,
convert(varchar,led_empleados_periodo.periodo) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado
from led_empleados
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
where led_empleados.contratista = @p_contratista
and led_empleados_periodo.periodo = @p_periodo
and led_empleados.estado_empleado = @p_estado
order by padrones.nombre_persona
else
select led_empleados_periodo.periodo,
convert(varchar,led_empleados_periodo.periodo) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado
from led_empleados
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
where led_empleados.contratista = @p_contratista
and led_empleados.contratista_1 = @p_contratista_1
and led_empleados_periodo.periodo = @p_periodo
and led_empleados.estado_empleado = @p_estado
order by padrones.nombre_persona
else if (@p_led_seccion = 'V')
if (@p_contratista_1 is null)
select led_vehiculos_periodo.periodo,
convert(varchar,led_vehiculos_periodo.periodo) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
where led_vehiculos.contratista = @p_contratista
and led_vehiculos_periodo.periodo = @p_periodo
and led_vehiculos.estado_vehiculo = @p_estado
order by led_vehiculos.nombre_vehiculo
else
select led_vehiculos_periodo.periodo,
convert(varchar,led_vehiculos_periodo.periodo) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
where led_vehiculos.contratista = @p_contratista
and led_vehiculos.contratista_1 = @p_contratista_1
and led_vehiculos_periodo.periodo = @p_periodo
and led_vehiculos.estado_vehiculo = @p_estado
order by led_vehiculos.nombre_vehiculo
else if (@p_led_seccion = 'S' OR @p_led_seccion = 'R')
select led_subcontratista_periodo.periodo,
convert(varchar,led_subcontratista_periodo.periodo) as periodo_Ym,
led_subcontratista_periodo.subcontratista,
led_contratistas.contratista, led_contratistas.estado_contratista, led_contratistas.contratista_1,
led_contratistas.cliente, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_contratistas.cliente, clientes.nombre_cliente,
LOWER(identificadores.country_code) as country_code, country.country_name, led_tipos_contratista.nombre_tipo_contratista,
padrones_d.nombre_persona as nombre_persona_d,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_contratistas.estado_contratista = 'A', 'Activo', 'No activo') as estado
from led_contratistas
inner join led_subcontratista_periodo on led_contratistas.contratista = led_subcontratista_periodo.subcontratista
inner join padrones on led_contratistas.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_contratistas.cliente = clientes.cliente
inner join country on identificadores.country_code = country.country_code
inner join led_tipos_contratista on led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
inner join led_contratistas contratista_d on led_contratistas.subcontratista_de = contratista_d.contratista
inner join padrones padrones_d on contratista_d.id_padron = padrones_d.id_padron
where led_contratistas.contratista_1 = @p_contratista_1
and led_subcontratista_periodo.periodo = @p_periodo
and led_contratistas.estado_contratista = @p_estado
order by padrones.nombre_persona
end else begin
/* sin filtro de estado */
if (@p_led_seccion = 'E')
if (@p_contratista_1 is null)
select led_empleados_periodo.periodo,
convert(varchar,led_empleados_periodo.periodo) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado,
PENDIENTES.total_pendientes,
INGRESADOS.total_ingresados,
RECHAZADOS.total_rechazados,
VERIFICADOS.total_verificados,
ultimo.periodo_Ym as ultimo_periodo,
convert(varchar,EVENTUALES.valor_fecha,103) as fecha_eventual
from led_empleados
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
left outer join (select empleado, max(periodo) as periodo,
left(convert(varchar(6), MAX(periodo)),4) + '-' + right(convert(varchar(6), MAX(periodo)),2) AS periodo_Ym
from led_empleados_periodo
group by empleado) ultimo on ultimo.empleado = led_empleados.empleado
left outer join
(select led_docs.empleado, count(*) as total_pendientes
from led_docs
inner join led_empleados on led_docs.empleado = led_empleados.empleado
inner join led_cliente_empleado on
(led_docs.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
and led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
where led_empleados.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'N'
group by led_docs.empleado) PENDIENTES ON led_empleados.empleado = PENDIENTES.empleado
left outer join
(select led_docs.empleado, count(*) as total_ingresados
from led_docs
inner join led_empleados on led_docs.empleado = led_empleados.empleado
inner join led_cliente_empleado on
(led_docs.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
and led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
where led_empleados.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'I'
group by led_docs.empleado) INGRESADOS ON led_empleados.empleado = INGRESADOS.empleado
left outer join
(select led_docs.empleado, count(*) as total_rechazados
from led_docs
inner join led_empleados on led_docs.empleado = led_empleados.empleado
inner join led_cliente_empleado on
(led_docs.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
and led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
where led_empleados.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'R'
group by led_docs.empleado) RECHAZADOS ON led_empleados.empleado = RECHAZADOS.empleado
left outer join
(select led_docs.empleado, count(*) as total_verificados
from led_docs
inner join led_empleados on led_docs.empleado = led_empleados.empleado
inner join led_cliente_empleado on
(led_docs.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
and led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
where led_empleados.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'V'
group by led_docs.empleado) VERIFICADOS ON led_empleados.empleado = VERIFICADOS.empleado
/* 10/04/2023 */
left outer join
(select led_docs.empleado, led_campos_doc.valor_fecha
from led_docs
inner join led_campos_doc on (led_campos_doc.doc_id = led_docs.doc_id and campo_tipo_doc = 2)
where led_docs.tipo_doc = 346
and contratista_1 = @p_contratista
and led_docs.estado_doc = 'V'
and led_docs.periodo = @p_periodo) EVENTUALES ON led_empleados.empleado = EVENTUALES.empleado
/* */
where led_empleados.contratista = @p_contratista
and led_empleados_periodo.periodo = @p_periodo
order by padrones.nombre_persona
else
select led_empleados_periodo.periodo,
convert(varchar,led_empleados_periodo.periodo) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado,
ultimo.periodo_ym as ultimo_periodo,
convert(varchar,EVENTUALES.valor_fecha,103) as fecha_eventual
from led_empleados
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
left outer join (select empleado, max(periodo) as periodo,
left(convert(varchar(6), MAX(periodo)),4) + '-' + right(convert(varchar(6), MAX(periodo)),2) AS periodo_Ym
from led_empleados_periodo
group by empleado) ultimo on ultimo.empleado = led_empleados.empleado
/* 10/04/2023 */
left outer join
(select led_docs.empleado, led_campos_doc.valor_fecha
from led_docs
inner join led_campos_doc on (led_campos_doc.doc_id = led_docs.doc_id and campo_tipo_doc = 2)
where led_docs.tipo_doc = 346
and contratista_1 = @p_contratista_1
and led_docs.estado_doc = 'V'
and led_docs.periodo = @p_periodo) EVENTUALES ON led_empleados.empleado = EVENTUALES.empleado
/* */
where led_empleados.contratista = @p_contratista
and led_empleados.contratista_1 = @p_contratista_1
and led_empleados_periodo.periodo = @p_periodo
order by padrones.nombre_persona
else if (@p_led_seccion = 'V')
if (@p_contratista_1 is null)
select led_vehiculos_periodo.periodo,
convert(varchar,led_vehiculos_periodo.periodo) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,
PENDIENTES.total_pendientes,
INGRESADOS.total_ingresados,
RECHAZADOS.total_rechazados,
VERIFICADOS.total_verificados,
ultimo.periodo_Ym as ultimo_periodo,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
left outer join (select vehiculo, max(periodo) as periodo,
left(convert(varchar(6), MAX(periodo)),4) + '-' + right(convert(varchar(6), MAX(periodo)),2) AS periodo_Ym
from led_vehiculos_periodo
group by vehiculo) ultimo on ultimo.vehiculo = led_vehiculos.vehiculo
left outer join
(select led_docs.vehiculo, count(*) as total_pendientes
from led_docs
inner join led_vehiculos on led_docs.vehiculo = led_vehiculos.vehiculo
inner join led_cliente_vehiculo on
(led_docs.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
and led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
where led_vehiculos.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'N'
group by led_docs.vehiculo) PENDIENTES ON led_vehiculos.vehiculo = PENDIENTES.vehiculo
left outer join
(select led_docs.vehiculo, count(*) as total_ingresados
from led_docs
inner join led_vehiculos on led_docs.vehiculo = led_vehiculos.vehiculo
inner join led_cliente_vehiculo on
(led_docs.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
and led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
where led_vehiculos.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'I'
group by led_docs.vehiculo) INGRESADOS ON led_vehiculos.vehiculo = INGRESADOS.vehiculo
left outer join
(select led_docs.vehiculo, count(*) as total_rechazados
from led_docs
inner join led_vehiculos on led_docs.vehiculo = led_vehiculos.vehiculo
inner join led_cliente_vehiculo on
(led_docs.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
and led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
where led_vehiculos.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'R'
group by led_docs.vehiculo) RECHAZADOS ON led_vehiculos.vehiculo = RECHAZADOS.vehiculo
left outer join
(select led_docs.vehiculo, count(*) as total_verificados
from led_docs
inner join led_vehiculos on led_docs.vehiculo = led_vehiculos.vehiculo
inner join led_cliente_vehiculo on
(led_docs.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
and led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
where led_vehiculos.contratista = @p_contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'V'
group by led_docs.vehiculo) VERIFICADOS ON led_vehiculos.vehiculo = VERIFICADOS.vehiculo
where led_vehiculos.contratista = @p_contratista
and led_vehiculos_periodo.periodo = @p_periodo
order by led_vehiculos.nombre_vehiculo
else
select led_vehiculos_periodo.periodo,
convert(varchar,led_vehiculos_periodo.periodo) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,
ultimo.periodo_Ym as ultimo_periodo,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
left outer join (select vehiculo, max(periodo) as periodo,
left(convert(varchar(6), MAX(periodo)),4) + '-' + right(convert(varchar(6), MAX(periodo)),2) AS periodo_Ym
from led_vehiculos_periodo
group by vehiculo) ultimo on ultimo.vehiculo = led_vehiculos.vehiculo
where led_vehiculos.contratista = @p_contratista
and led_vehiculos.contratista_1 = @p_contratista_1
and led_vehiculos_periodo.periodo = @p_periodo
order by led_vehiculos.nombre_vehiculo
else if (@p_led_seccion = 'S' OR @p_led_seccion = 'R')
select led_subcontratista_periodo.periodo,
convert(varchar,led_subcontratista_periodo.periodo) as periodo_Ym,
led_subcontratista_periodo.subcontratista,
led_contratistas.contratista, led_contratistas.estado_contratista, led_contratistas.contratista_1,
led_contratistas.cliente, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_contratistas.cliente, clientes.nombre_cliente,
LOWER(identificadores.country_code) as country_code, country.country_name, led_tipos_contratista.nombre_tipo_contratista,
padrones_d.nombre_persona as nombre_persona_d,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_contratistas.estado_contratista = 'A', 'Activo', 'No activo') as estado,
PENDIENTES.total_pendientes,
INGRESADOS.total_ingresados,
RECHAZADOS.total_rechazados,
VERIFICADOS.total_verificados,
ultimo.periodo_ym as ultimo_periodo
from led_contratistas
inner join led_subcontratista_periodo on led_contratistas.contratista = led_subcontratista_periodo.subcontratista
left outer join (select subcontratista, max(periodo) as periodo,
left(convert(varchar(6), MAX(periodo)),4) + '-' + right(convert(varchar(6), MAX(periodo)),2) AS periodo_Ym
from led_subcontratista_periodo
group by subcontratista) ultimo on ultimo.subcontratista = led_contratistas.contratista
inner join padrones on led_contratistas.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_contratistas.cliente = clientes.cliente
inner join country on identificadores.country_code = country.country_code
inner join led_tipos_contratista on led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
inner join led_contratistas contratista_d on led_contratistas.subcontratista_de = contratista_d.contratista
inner join padrones padrones_d on contratista_d.id_padron = padrones_d.id_padron
left outer join
(select led_docs.contratista, count(*) as total_pendientes
from led_docs
inner join led_contratistas on led_docs.contratista = led_contratistas.contratista
inner join led_cliente_contratista on
(led_docs.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
where led_contratistas.contratista_1 = @p_contratista_1
and led_contratistas.contratista_1 != led_contratistas.contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'N'
group by led_docs.contratista) PENDIENTES ON led_contratistas.contratista = PENDIENTES.contratista
left outer join
(select led_docs.contratista, count(*) as total_ingresados
from led_docs
inner join led_contratistas on led_docs.contratista = led_contratistas.contratista
inner join led_cliente_contratista on
(led_docs.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
where led_contratistas.contratista_1 = @p_contratista_1
and led_contratistas.contratista_1 != led_contratistas.contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'I'
group by led_docs.contratista) INGRESADOS ON led_contratistas.contratista = INGRESADOS.contratista
left outer join
(select led_docs.contratista, count(*) as total_rechazados
from led_docs
inner join led_contratistas on led_docs.contratista = led_contratistas.contratista
inner join led_cliente_contratista on
(led_docs.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
where led_contratistas.contratista_1 = @p_contratista_1
and led_contratistas.contratista_1 != led_contratistas.contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'R'
group by led_docs.contratista) RECHAZADOS ON led_contratistas.contratista = RECHAZADOS.contratista
left outer join
(select led_docs.contratista, count(*) as total_verificados
from led_docs
inner join led_contratistas on led_docs.contratista = led_contratistas.contratista
inner join led_cliente_contratista on
(led_docs.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
where led_contratistas.contratista_1 = @p_contratista_1
and led_contratistas.contratista_1 != led_contratistas.contratista
and led_docs.periodo = @p_periodo
and led_docs.estado_doc = 'V'
group by led_docs.contratista) VERIFICADOS ON led_contratistas.contratista = VERIFICADOS.contratista
where led_contratistas.contratista_1 = @p_contratista_1
and led_contratistas.contratista_1 != led_contratistas.contratista
and led_subcontratista_periodo.periodo = @p_periodo
order by padrones.nombre_persona
end
end
--- Para consultar nómina sin depender a afectación a ningún perÃodo,
--- debe pasarse el contratista y la sección. El estado es opcional. Para uso web Cliente en www.fidelitas.com.ar
if (@p_contratista is not null and @p_periodo IS NULL and @p_led_seccion is not null) begin
if (@p_estado is null) begin
if (@p_led_seccion = 'E')
select MAX(led_empleados_periodo.periodo) as periodo,
right(convert(varchar(6), MAX(led_empleados_periodo.periodo)),2) + '/' + left(convert(varchar(6), MAX(led_empleados_periodo.periodo)),4) AS periodo_mY,
left(convert(varchar(6), MAX(led_empleados_periodo.periodo)),4) + '-' + right(convert(varchar(6), MAX(led_empleados_periodo.periodo)),2) AS periodo_Ym,
--convert(varchar,MAX(led_empleados_periodo.periodo)) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado
from led_empleados
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
where led_empleados.contratista = @p_contratista
group by
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code), country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion,
identificadores.country_code,
led_empleados.estado_empleado
order by padrones.nombre_persona
else if (@p_led_seccion = 'V')
select MAX(led_vehiculos_periodo.periodo) as periodo,
right(convert(varchar(6), MAX(led_vehiculos_periodo.periodo)),2) + '/' + left(convert(varchar(6), MAX(led_vehiculos_periodo.periodo)),4) AS periodo_mY,
left(convert(varchar(6), MAX(led_vehiculos_periodo.periodo)),4) + '-' + right(convert(varchar(6), MAX(led_vehiculos_periodo.periodo)),2) AS periodo_Ym,
--convert(varchar,MAX(led_vehiculos_periodo.periodo)) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
where led_vehiculos.contratista = @p_contratista
group by led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, led_vehiculos.country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
led_vehiculos.country_code,
led_vehiculos.estado_vehiculo,tara,tarimas
order by led_vehiculos.nombre_vehiculo
else
-- en el caso de solicitar nomina de subcontratistas, busco en el campo de contratista principal _1
select max(led_subcontratista_periodo.periodo) as periodo,
right(convert(varchar(6), MAX(led_subcontratista_periodo.periodo)),2) + '/' + left(convert(varchar(6), MAX(led_subcontratista_periodo.periodo)),4) AS periodo_mY,
left(convert(varchar(6), MAX(led_subcontratista_periodo.periodo)),4) + '-' + right(convert(varchar(6), MAX(led_subcontratista_periodo.periodo)),2) AS periodo_Ym,
--convert(varchar,max(led_subcontratista_periodo.periodo)) as periodo_Ym,
led_contratistas.contratista, led_contratistas.estado_contratista, led_contratistas.contratista_1,
led_contratistas.cliente, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_contratistas.cliente, clientes.nombre_cliente,
LOWER(identificadores.country_code) as country_code, country.country_name, led_tipos_contratista.nombre_tipo_contratista,
padrones_d.nombre_persona as nombre_persona_d,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_contratistas.estado_contratista = 'A', 'Activo', 'No activo') as estado
from led_contratistas
inner join padrones on led_contratistas.id_padron = padrones.id_padron
inner join led_subcontratista_periodo on led_contratistas.contratista = led_subcontratista_periodo.subcontratista
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_contratistas.cliente = clientes.cliente
inner join country on identificadores.country_code = country.country_code
inner join led_tipos_contratista on led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
inner join led_contratistas contratista_d on led_contratistas.contratista_1 = contratista_d.contratista
inner join padrones padrones_d on contratista_d.id_padron = padrones_d.id_padron
where led_contratistas.contratista_1 = @p_contratista
and led_contratistas.contratista_1 != led_contratistas.contratista
group by led_contratistas.contratista, led_contratistas.estado_contratista, led_contratistas.contratista_1,
led_contratistas.cliente, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_contratistas.cliente, clientes.nombre_cliente,
identificadores.country_code, country.country_name, led_tipos_contratista.nombre_tipo_contratista,
padrones_d.nombre_persona,
identificadores.abreviatura + ' ' + padrones.identificacion,
identificadores.country_code,
led_contratistas.estado_contratista
order by padrones.nombre_persona
end else
begin
-- consulta con estado
if (@p_led_seccion = 'E')
select led_empleados_periodo.periodo,
convert(varchar,led_empleados_periodo.periodo) as periodo_Ym,
led_empleados.empleado, led_empleados.estado_empleado, led_empleados.tipo_empleado, led_empleados.id_padron,
led_empleados.contratista, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_empleados.cliente, led_empleados.contratista_1, clientes.nombre_cliente,
led_tipos_empleado.nombre_tipo_empleado, LOWER(identificadores.country_code) as country_code, country.country_name,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_empleados.estado_empleado = 'A', 'Activo', 'No activo') as estado
from led_empleados
inner join padrones on led_empleados.id_padron = padrones.id_padron
inner join led_empleados_periodo on led_empleados.empleado = led_empleados_periodo.empleado
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_empleados.cliente = clientes.cliente
inner join led_tipos_empleado on led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
inner join country on identificadores.country_code = country.country_code
where led_empleados.contratista = @p_contratista
and led_empleados.estado_empleado = @p_estado
order by padrones.nombre_persona
else if (@p_led_seccion = 'V')
select led_vehiculos_periodo.periodo,
convert(varchar,led_vehiculos_periodo.periodo) as periodo_Ym,
led_vehiculos.vehiculo, led_vehiculos.dominio, led_vehiculos.nombre_vehiculo, led_vehiculos.modelo,
led_vehiculos.estado_vehiculo, led_vehiculos.tipo_vehiculo, led_vehiculos.cliente,
led_vehiculos.contratista_1, clientes.nombre_cliente, LOWER(led_vehiculos.country_code) as country_code, country.country_name,
led_tipos_vehiculo.nombre_tipo_vehiculo,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(led_vehiculos.country_code) + '"></span>' as country,
iif(led_vehiculos.estado_vehiculo = 'A', 'Activo', 'No activo') as estado,tara,tarimas
from led_vehiculos
inner join led_vehiculos_periodo on led_vehiculos.vehiculo = led_vehiculos_periodo.vehiculo
inner join clientes on led_vehiculos.cliente = clientes.cliente
inner join country on led_vehiculos.country_code = country.country_code
inner join led_tipos_vehiculo on led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
where led_vehiculos.contratista = @p_contratista
and led_vehiculos.estado_vehiculo = @p_estado
order by led_vehiculos.nombre_vehiculo
else
-- en el caso de solicitar nomina de subcontratistas, busco en el campo de contratista principal _1
select led_subcontratista_periodo.periodo,
convert(varchar,led_subcontratista_periodo.periodo) as periodo_Ym,
led_contratistas.contratista, led_contratistas.estado_contratista, led_contratistas.contratista_1,
led_contratistas.cliente, padrones.nombre_persona, padrones.identificacion, padrones.numero, padrones.identificador,
identificadores.abreviatura, led_contratistas.cliente, clientes.nombre_cliente,
LOWER(identificadores.country_code) as country_code, country.country_name, led_tipos_contratista.nombre_tipo_contratista,
padrones_d.nombre_persona as nombre_persona_d,
identificadores.abreviatura + ' ' + padrones.identificacion as taxid,
'<span class="flag-icon flag-icon-background flag-icon-' + LOWER(identificadores.country_code) + '"></span>' as country,
iif(led_contratistas.estado_contratista = 'A', 'Activo', 'No activo') as estado
from led_contratistas
inner join led_subcontratista_periodo on led_contratistas.contratista = led_subcontratista_periodo.subcontratista
inner join padrones on led_contratistas.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join clientes on led_contratistas.cliente = clientes.cliente
inner join country on identificadores.country_code = country.country_code
inner join led_tipos_contratista on led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
inner join led_contratistas contratista_d on led_contratistas.contratista_1 = contratista_d.contratista
inner join padrones padrones_d on contratista_d.id_padron = padrones_d.id_padron
where led_contratistas.contratista_1 = @p_contratista
and led_contratistas.estado_contratista = @p_estado
and led_contratistas.contratista_1 != led_contratistas.contratista
order by padrones.nombre_persona
end
end
END
GO
Depends On
18- dbo.clientes
- dbo.country
- dbo.identificadores
- dbo.led_campos_doc
- dbo.led_cliente_contratista
- dbo.led_cliente_empleado
- dbo.led_cliente_vehiculo
- dbo.led_contratistas
- dbo.led_docs
- dbo.led_empleados
- dbo.led_empleados_periodo
- dbo.led_subcontratista_periodo
- dbo.led_tipos_contratista
- dbo.led_tipos_empleado
- dbo.led_tipos_vehiculo
- dbo.led_vehiculos
- dbo.led_vehiculos_periodo
- dbo.padrones
Used By
No items found