Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
3| Name | Data Type | Length | Description |
|---|---|---|---|
| @p_cliente | int | 4 | |
| @p_desde | varchar | 20 | |
| @p_hasta | varchar | 20 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
/* =============================================
Imprerium: Reportes Ingresos y Egresos
María Inés Soria
25/11/2020
exec Imperium_reporte_ingresos_egresos 9936068, '2023-03-29', '2023-03-29'
exec Imperium_reporte_ingresos_egresos 3915936,'2025-01-10','2025-01-10'
-- ============================================= */
CREATE OR ALTER PROCEDURE dbo.Imperium_reporte_ingresos_egresos
@p_cliente int,
@p_desde varchar(20),
@p_hasta varchar(20)
AS
BEGIN
SET NOCOUNT ON;
set @p_desde = @p_desde + ' 00:00:00'
set @p_hasta = @p_hasta + ' 23:59:59'
declare @desde datetime = convert(datetime, @p_desde)
declare @hasta datetime = convert(datetime, @p_hasta)
select led_control_ingreso.horario,
case led_control_ingreso.tipo_acceso
when 'I' then 'Ingreso'
when 'E' then 'Egreso'
else NULL
end
as tipo,
convert(varchar(16), led_control_ingreso.horario, 120) as horario_ymdhm,
convert(date, led_control_ingreso.horario) as horario_ymd,
nombre_locacion as locacion_name,
users.first_name + ' ' + users.last_name as usuario,
padrones_1.nombre_persona +
iif(padrones_1.identificacion is not null, ' (' + identificadores_1.abreviatura + ' ' + convert(varchar,padrones_1.identificacion) + ')', '')
as datos_contratista,
padrones.nombre_persona +
iif(padrones.identificacion is not null, ' (' + identificadores.abreviatura + ' ' + convert(varchar,padrones.identificacion) + ')', '')
as datos_subcontratista,
padrones_e.nombre_persona +
iif(padrones_e.identificacion is not null, ' (' + identificadores_e.abreviatura + ' ' + convert(varchar,padrones_e.identificacion) + ')', '')
as datos_empleado,
/*
led_vehiculos.nombre_vehiculo + ' ' + isnull(led_vehiculos.modelo,'') +
iif(led_vehiculos.dominio is not null, ' (' + led_vehiculos.dominio + ')','')
as datos_vehiculo,
*/
led_vehiculos.nombre_vehiculo + ' ' + iif(led_vehiculos.modelo is null,'',convert(varchar(100),led_vehiculos.modelo)) + iif(led_vehiculos.dominio is not null, ' (' + convert(varchar(100),led_vehiculos.dominio) + ')','') as datos_vehiculo,
/* excepcion as exc,*/
case excepcion
when 1 then 'SI'
when 2 then 'SI'
else'NO'
end as exc,
--iif(led_control_ingreso.estado_autorizacion='P','PENDIENTE','APROBADA') AS estado_autorizacion,
/*led_control_ingreso.estado_autorizacion,*/
case led_control_ingreso.estado_autorizacion
when 'P' then 'PENDIENTE'
when 'R' then 'RECHAZADA'
else 'APROBADA'
end
as estado_autorizacion,
led_control_ingreso.autoriza_rechaza,
led_locaciones.nombre_locacion,
users.first_name, users.last_name, users.username, users.email,
clientes.nombre_cliente, led_contratistas.contratista_1,
padrones.nombre_persona AS nombre_contratista, padrones.numero, identificadores.abreviatura,
padrones_1.nombre_persona AS nombre_contratista_1, padrones_1.numero AS numero_1, identificadores_1.abreviatura AS abreviatura_1,
padrones_e.nombre_persona AS nombre_empleado, padrones_e.numero AS numero_e, identificadores_e.abreviatura AS abreviatura_e,
led_vehiculos.nombre_vehiculo, led_vehiculos.dominio, led_vehiculos.modelo,
led_cliente_personal.nombre_completo as autorizante, led_cliente_personal.sector, led_cliente_personal.telefono, led_cliente_personal.locacion
from led_control_ingreso
inner join users ON led_control_ingreso.usuario_control = users.user_id
inner join clientes ON led_control_ingreso.cliente = clientes.cliente
inner join led_contratistas ON led_control_ingreso.contratista = led_contratistas.contratista
inner join padrones ON led_contratistas.id_padron = padrones.id_padron
inner join identificadores ON padrones.identificador = identificadores.identificador
inner join led_contratistas AS led_contratistas_1 ON led_contratistas.contratista_1 = led_contratistas_1.contratista
inner join padrones AS padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
inner join identificadores AS identificadores_1 ON padrones_1.identificador = identificadores_1.identificador
inner join led_locaciones on led_control_ingreso.locacion = led_locaciones.locacion
left outer join led_empleados ON led_control_ingreso.empleado = led_empleados.empleado
left outer join padrones AS padrones_e ON led_empleados.id_padron = padrones_e.id_padron
left outer join identificadores AS identificadores_e ON padrones_e.identificador = identificadores_e.identificador
left outer join led_vehiculos ON led_control_ingreso.vehiculo = led_vehiculos.vehiculo
left outer join led_cliente_personal ON led_control_ingreso.autorizante = led_cliente_personal.persona
where
led_control_ingreso.cliente = @p_cliente
and
led_control_ingreso.horario >= @desde
and
led_control_ingreso.horario <= @hasta
/* 29/03/2023: Agregamos lo de lista blanca */
UNION
select led_control_ingreso.horario,
case led_control_ingreso.tipo_acceso
when 'I' then 'Ingreso'
when 'E' then 'Egreso'
else NULL
end
as tipo,
convert(varchar(16), led_control_ingreso.horario, 120) as horario_ymdhm,
convert(date, led_control_ingreso.horario) as horario_ymd,
nombre_locacion as locacion_name,
users.first_name + ' ' + users.last_name as usuario,
padrones_1.nombre_persona +
iif(padrones_1.identificacion is not null, ' (' + identificadores_1.abreviatura + ' ' + convert(varchar,padrones_1.identificacion) + ')', '')
+ ' (LISTA BLANCA)'
as datos_contratista,
NULL
as datos_subcontratista,
NULL
as datos_empleado,
NULL as datos_vehiculo,
'NO' as exc,
/*0 as exc,*/
/*led_control_ingreso.estado_autorizacion,*/
iif(led_control_ingreso.estado_autorizacion='P','PENDIENTE','APROBADA') AS estado_autorizacion,
led_control_ingreso.autoriza_rechaza,
led_locaciones.nombre_locacion,
users.first_name, users.last_name, users.username, users.email,
clientes.nombre_cliente, NULL AS contratista_1,
NULL AS nombre_contratista, NULL as numero, NULL as abreviatura,
padrones_1.nombre_persona AS nombre_contratista_1, padrones_1.numero AS numero_1, identificadores_1.abreviatura AS abreviatura_1,
NULL AS nombre_empleado, NULL AS numero_e, NULL AS abreviatura_e,
NULL AS nombre_vehiculo, NULL AS dominio, NULL AS modelo,
led_cliente_personal.nombre_completo as autorizante, led_cliente_personal.sector, led_cliente_personal.telefono, led_cliente_personal.locacion
from led_control_ingreso
inner join users ON led_control_ingreso.usuario_control = users.user_id
inner join clientes ON led_control_ingreso.cliente = clientes.cliente
inner join padrones AS padrones_1 ON led_control_ingreso.whitelist_id_padron = padrones_1.id_padron
inner join identificadores AS identificadores_1 ON padrones_1.identificador = identificadores_1.identificador
inner join led_locaciones on led_control_ingreso.locacion = led_locaciones.locacion
left outer join led_cliente_personal ON led_control_ingreso.autorizante = led_cliente_personal.persona
where
led_control_ingreso.cliente = @p_cliente
and
led_control_ingreso.whitelist_id_padron is not null
and
led_control_ingreso.horario >= @desde
and
led_control_ingreso.horario <= @hasta
/**/
order by led_control_ingreso.horario DESC
END
GO
GO
/* =============================================
Imprerium: Reportes Ingresos y Egresos
María Inés Soria
25/11/2020
exec Imperium_reporte_ingresos_egresos 9936068, '2023-03-29', '2023-03-29'
exec Imperium_reporte_ingresos_egresos 3915936,'2025-01-10','2025-01-10'
-- ============================================= */
CREATE OR ALTER PROCEDURE dbo.Imperium_reporte_ingresos_egresos
@p_cliente int,
@p_desde varchar(20),
@p_hasta varchar(20)
AS
BEGIN
SET NOCOUNT ON;
set @p_desde = @p_desde + ' 00:00:00'
set @p_hasta = @p_hasta + ' 23:59:59'
declare @desde datetime = convert(datetime, @p_desde)
declare @hasta datetime = convert(datetime, @p_hasta)
select led_control_ingreso.horario,
case led_control_ingreso.tipo_acceso
when 'I' then 'Ingreso'
when 'E' then 'Egreso'
else NULL
end
as tipo,
convert(varchar(16), led_control_ingreso.horario, 120) as horario_ymdhm,
convert(date, led_control_ingreso.horario) as horario_ymd,
nombre_locacion as locacion_name,
users.first_name + ' ' + users.last_name as usuario,
padrones_1.nombre_persona +
iif(padrones_1.identificacion is not null, ' (' + identificadores_1.abreviatura + ' ' + convert(varchar,padrones_1.identificacion) + ')', '')
as datos_contratista,
padrones.nombre_persona +
iif(padrones.identificacion is not null, ' (' + identificadores.abreviatura + ' ' + convert(varchar,padrones.identificacion) + ')', '')
as datos_subcontratista,
padrones_e.nombre_persona +
iif(padrones_e.identificacion is not null, ' (' + identificadores_e.abreviatura + ' ' + convert(varchar,padrones_e.identificacion) + ')', '')
as datos_empleado,
/*
led_vehiculos.nombre_vehiculo + ' ' + isnull(led_vehiculos.modelo,'') +
iif(led_vehiculos.dominio is not null, ' (' + led_vehiculos.dominio + ')','')
as datos_vehiculo,
*/
led_vehiculos.nombre_vehiculo + ' ' + iif(led_vehiculos.modelo is null,'',convert(varchar(100),led_vehiculos.modelo)) + iif(led_vehiculos.dominio is not null, ' (' + convert(varchar(100),led_vehiculos.dominio) + ')','') as datos_vehiculo,
/* excepcion as exc,*/
case excepcion
when 1 then 'SI'
when 2 then 'SI'
else'NO'
end as exc,
--iif(led_control_ingreso.estado_autorizacion='P','PENDIENTE','APROBADA') AS estado_autorizacion,
/*led_control_ingreso.estado_autorizacion,*/
case led_control_ingreso.estado_autorizacion
when 'P' then 'PENDIENTE'
when 'R' then 'RECHAZADA'
else 'APROBADA'
end
as estado_autorizacion,
led_control_ingreso.autoriza_rechaza,
led_locaciones.nombre_locacion,
users.first_name, users.last_name, users.username, users.email,
clientes.nombre_cliente, led_contratistas.contratista_1,
padrones.nombre_persona AS nombre_contratista, padrones.numero, identificadores.abreviatura,
padrones_1.nombre_persona AS nombre_contratista_1, padrones_1.numero AS numero_1, identificadores_1.abreviatura AS abreviatura_1,
padrones_e.nombre_persona AS nombre_empleado, padrones_e.numero AS numero_e, identificadores_e.abreviatura AS abreviatura_e,
led_vehiculos.nombre_vehiculo, led_vehiculos.dominio, led_vehiculos.modelo,
led_cliente_personal.nombre_completo as autorizante, led_cliente_personal.sector, led_cliente_personal.telefono, led_cliente_personal.locacion
from led_control_ingreso
inner join users ON led_control_ingreso.usuario_control = users.user_id
inner join clientes ON led_control_ingreso.cliente = clientes.cliente
inner join led_contratistas ON led_control_ingreso.contratista = led_contratistas.contratista
inner join padrones ON led_contratistas.id_padron = padrones.id_padron
inner join identificadores ON padrones.identificador = identificadores.identificador
inner join led_contratistas AS led_contratistas_1 ON led_contratistas.contratista_1 = led_contratistas_1.contratista
inner join padrones AS padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
inner join identificadores AS identificadores_1 ON padrones_1.identificador = identificadores_1.identificador
inner join led_locaciones on led_control_ingreso.locacion = led_locaciones.locacion
left outer join led_empleados ON led_control_ingreso.empleado = led_empleados.empleado
left outer join padrones AS padrones_e ON led_empleados.id_padron = padrones_e.id_padron
left outer join identificadores AS identificadores_e ON padrones_e.identificador = identificadores_e.identificador
left outer join led_vehiculos ON led_control_ingreso.vehiculo = led_vehiculos.vehiculo
left outer join led_cliente_personal ON led_control_ingreso.autorizante = led_cliente_personal.persona
where
led_control_ingreso.cliente = @p_cliente
and
led_control_ingreso.horario >= @desde
and
led_control_ingreso.horario <= @hasta
/* 29/03/2023: Agregamos lo de lista blanca */
UNION
select led_control_ingreso.horario,
case led_control_ingreso.tipo_acceso
when 'I' then 'Ingreso'
when 'E' then 'Egreso'
else NULL
end
as tipo,
convert(varchar(16), led_control_ingreso.horario, 120) as horario_ymdhm,
convert(date, led_control_ingreso.horario) as horario_ymd,
nombre_locacion as locacion_name,
users.first_name + ' ' + users.last_name as usuario,
padrones_1.nombre_persona +
iif(padrones_1.identificacion is not null, ' (' + identificadores_1.abreviatura + ' ' + convert(varchar,padrones_1.identificacion) + ')', '')
+ ' (LISTA BLANCA)'
as datos_contratista,
NULL
as datos_subcontratista,
NULL
as datos_empleado,
NULL as datos_vehiculo,
'NO' as exc,
/*0 as exc,*/
/*led_control_ingreso.estado_autorizacion,*/
iif(led_control_ingreso.estado_autorizacion='P','PENDIENTE','APROBADA') AS estado_autorizacion,
led_control_ingreso.autoriza_rechaza,
led_locaciones.nombre_locacion,
users.first_name, users.last_name, users.username, users.email,
clientes.nombre_cliente, NULL AS contratista_1,
NULL AS nombre_contratista, NULL as numero, NULL as abreviatura,
padrones_1.nombre_persona AS nombre_contratista_1, padrones_1.numero AS numero_1, identificadores_1.abreviatura AS abreviatura_1,
NULL AS nombre_empleado, NULL AS numero_e, NULL AS abreviatura_e,
NULL AS nombre_vehiculo, NULL AS dominio, NULL AS modelo,
led_cliente_personal.nombre_completo as autorizante, led_cliente_personal.sector, led_cliente_personal.telefono, led_cliente_personal.locacion
from led_control_ingreso
inner join users ON led_control_ingreso.usuario_control = users.user_id
inner join clientes ON led_control_ingreso.cliente = clientes.cliente
inner join padrones AS padrones_1 ON led_control_ingreso.whitelist_id_padron = padrones_1.id_padron
inner join identificadores AS identificadores_1 ON padrones_1.identificador = identificadores_1.identificador
inner join led_locaciones on led_control_ingreso.locacion = led_locaciones.locacion
left outer join led_cliente_personal ON led_control_ingreso.autorizante = led_cliente_personal.persona
where
led_control_ingreso.cliente = @p_cliente
and
led_control_ingreso.whitelist_id_padron is not null
and
led_control_ingreso.horario >= @desde
and
led_control_ingreso.horario <= @hasta
/**/
order by led_control_ingreso.horario DESC
END
GO
Depends On
10Used By
No items found