Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
8| Name | Data Type | Length | Description |
|---|---|---|---|
| @p_doc_id | bigint | 8 | |
| @p_contratista | int | 4 | |
| @p_periodo | int | 4 | |
| @p_tipo_doc | int | 4 | |
| @p_replicado | bigint | 8 | |
| @p_user_id | int | 4 | |
| @p_chequeo | bit | 1 | |
| @p_tiempo | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
/*
exec Imperium_Datos_Documento 4938688085
exec Imperium_Datos_Documento 2146811461
*/
-- =============================================
CREATE OR ALTER PROCEDURE dbo.Imperium_Datos_Documento
-- Add the parameters for the stored procedure here
@p_doc_id bigint = null,
@p_contratista int = null,
@p_periodo int = null,
@p_tipo_doc int = null,
@p_replicado bigint = NULL,
@p_user_id int = null,
@p_chequeo bit = 0,
@p_tiempo int = 30 -- minutos a tener en cuenta en el chequeo de si alguien tiene tomado ese doc
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
/* AGB 16-01-2025 MODIFICO ESTO MIENTRAS VEMOS PORQUE SE LO UTILIZA DE ESTA MANERA. NO TERMINA NUNCA*/
IF (@p_replicado IS NOT NULL)
BEGIN
SET @p_doc_id = @p_replicado
SET @p_replicado = NULL
END
/* AGB 16-01-2025 MODIFICO ESTO MIENTRAS VEMOS PORQUE SE LO UTILIZA DE ESTA MANERA. NO TERMINA NUNCA*/
if (@p_doc_id > 0) begin
/* 12/02/2024: Se hace el chequeo que el documento no este siendo trabajado por otro usuario en los últimos (@p_tiempo) minutos */
if (@p_chequeo = 1)
begin
declare @p_error bit = null, @p_mensaje varchar(200) = null
exec [ln_docs_chequeo] 'CHEQUEO', '73', @p_doc_id, @p_user_id, @p_tiempo, @p_error output, @p_mensaje output
if @p_error = 1
begin
select @p_error as error, @p_mensaje as mensaje
return
end
end
SELECT led_docs.doc_id, led_docs.doc_version, led_docs.cliente, clientes.nombre_cliente,
led_docs.contratista_1, led_docs.contratista, led_docs.estado_doc,
led_docs.led_seccion, led_docs.periodo, led_docs.fecha_tolerancia, led_docs.fecha_vigencia,
ISNULL(led_docs.aprobacion_parcial, 0) AS aprobacion_parcial, led_docs.status_doc, led_tipos_doc.periodicidad,
led_docs.empleado, led_docs.vehiculo, led_docs.tipo_doc, led_tipos_doc.nombre_tipo_doc, led_tipos_doc.modalidad,
ISNULL(led_tipos_doc.validar_cuit,0) AS validar_cuit,
ISNULL(led_tipos_doc.validar_lista_cuil,0) AS validar_lista_cuil,
ISNULL(led_tipos_doc.validar_lista_dominios,0) AS validar_lista_dominios,
iif((ISNULL(led_tipos_doc.validar_cuit,0)
+ ISNULL(led_tipos_doc.validar_lista_cuil,0)
+ ISNULL(led_tipos_doc.validar_lista_dominios,0)) > 0, 1, 0) AS es_doc_lista,
padrones.nombre_persona, padrones.identificador, padrones.numero, padrones.identificacion,
identificadores.abreviatura, identificadores.country_code,
padrones_1.nombre_persona as nombre_persona_1, padrones_1.identificador as identificador_1,
padrones_1.numero as numero_1, padrones_1.identificacion as identificacion_1,
identificadores_1.abreviatura as abreviatura_1, identificadores_1.country_code as country_code_1,
led_tipos_contratista.nombre_tipo_contratista, led_tipos_contratista_1.nombre_tipo_contratista as nombre_tipo_contratista_1,
padrones_e.nombre_persona as nombre_persona_e, padrones_e.identificador as identificador_e,
padrones_e.numero as numero_e, padrones_e.identificacion as identificacion_e,
identificadores_e.abreviatura as abreviatura_e, identificadores_e.country_code as country_code_e,
led_vehiculos.nombre_vehiculo, led_vehiculos.dominio, led_vehiculos.country_code as country_code_v,
convert(varchar, led_docs.ingresado, 103)+' '+convert(varchar(5), led_docs.ingresado, 14) AS ingresado,
led_docs.ingresado AS ingresadito,
convert(varchar, led_docs.verificado, 103)+' '+convert(varchar(5), led_docs.verificado, 14) AS verificado,
convert(varchar, led_docs.rechazado, 103)+' '+convert(varchar(5), led_docs.rechazado, 14) AS rechazado,
led_docs.ingresado_por, led_docs.verificado_por, led_docs.rechazado_por, led_docs.texto_rechazo,
isnull(users_i.first_name,'') + ' ' + isnull(users_i.last_name,'') as ingresado_por_usuario,
isnull(users_v.first_name,'') + ' ' + isnull(users_v.last_name,'') as verificado_por_usuario,
isnull(users_r.first_name,'') + ' ' + isnull(users_r.last_name,'') as rechazado_por_usuario,
isnull(users_v.aliasname, isnull(users_v.first_name,'') + ' ' + isnull(users_v.last_name,'')) as aliasname_v,
isnull(users_r.aliasname, isnull(users_r.first_name,'') + ' ' + isnull(users_r.last_name,'')) as aliasname_r,
CASE WHEN led_docs.status_doc = 'R' THEN 'Rechazado'
WHEN led_docs.status_doc = 'E' THEN 'Vencido'
WHEN led_docs.status_doc = 'P' THEN 'Aprob. parcial'
WHEN led_docs.status_doc = 'N' THEN 'No ingresado'
WHEN led_docs.status_doc = 'I' THEN 'Ingresado'
WHEN led_docs.status_doc = 'V' THEN 'Verificado' END AS nombre_estado,
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,
convert(varchar, led_docs.fecha_vigencia, 103) AS vigencia,
convert(date, led_docs.fecha_vigencia) AS vigencia_amd,
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"></i>'
WHEN led_docs.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos"></i>'
WHEN led_docs.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales"></i>'
WHEN led_docs.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes"></i>'
WHEN led_docs.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados"></i>'
WHEN led_docs.status_doc = 'V' THEN '<i class="fa fa-check text-verificados"></i>' END AS icono,
led_docs.doc_log, led_docs.doc_id_lista, led_docs.grupo_doc, led_docs.notificacion,
isnull(led_docs.reapertura_por_alta, 0) as reapertura_por_alta,
isnull(led_docs.parcial_actualizado, 0) as parcial_actualizado,
iif(ISNULL(led_cliente_contratista.ci_killer, 0)+ISNULL(led_cliente_empleado.ci_killer, 0)+ISNULL(led_cliente_vehiculo.ci_killer, 0) > 0 AND led_tipos_doc.modalidad = 'A', 1, 0) AS ci_killer,
convert(varchar, led_notificaciones.horario, 103)+' '+convert(varchar(5), led_notificaciones.horario, 14) AS horario_notificacion,
led_notificaciones.texto_notificacion,
CASE WHEN led_docs.led_seccion = 'C' THEN ISNULL(led_cliente_contratista.requiere_upload, 0)
WHEN led_docs.led_seccion = 'E' THEN ISNULL(led_cliente_empleado.requiere_upload, 0)
WHEN led_docs.led_seccion = 'V' THEN ISNULL(led_cliente_vehiculo.requiere_upload, 0) END AS requiere_upload,
convert(varchar(6),led_docs.periodo)+'/'+convert(varchar,led_docs.cliente)+'/'+convert(varchar,led_docs.contratista_1)+'/' as doc_path,
convert(varchar(6),led_docs.periodo)+'_'+convert(varchar,led_docs.cliente)+'_'+right('00000'+convert(varchar(5),led_docs.tipo_doc),5)+'_'+led_docs.led_seccion+convert(varchar,led_docs.doc_id)+'_' as preffix,
-- Condición de próximo a vencer: verificado, periodo adelantado, killer de acceso, y dentro de las 96 horas de vencimiento en la versión 0
-- Si hay una versión de reemplazo las mismas condiciones pero en estado ingresado o rechazado en las dos tablas
iif(led_docs.estado_doc = 'V' AND
led_tipos_doc.modalidad = 'A' AND
led_docs.periodo = dbo.PeriodoAdelantado() AND
(ISNULL(led_cliente_contratista.ci_killer, 0)+ISNULL(led_cliente_empleado.ci_killer, 0)+ISNULL(led_cliente_vehiculo.ci_killer, 0)) > 0 AND
DATEDIFF(HOUR, GETDATE(), ISNULL(led_docs.fecha_vigencia, DATEFROMPARTS(2059,12,31))) <= 96 AND
DATEDIFF(HOUR, GETDATE(), ISNULL(led_docs.fecha_vigencia, DATEFROMPARTS(2059,12,31))) >= 0, 1,
-- Else hay versión de reemplazo y se encuentra ingresada o rechazada con las mismas condiciones anteriores
iif (led_docs.doc_version > 0 AND
led_docs.estado_doc IN ('I','R') AND
led_docs_aux.estado_doc IN ('I','R') AND
led_tipos_doc.modalidad = 'A' AND
led_docs.periodo = dbo.PeriodoAdelantado() AND
(ISNULL(led_cliente_contratista.ci_killer, 0)+ISNULL(led_cliente_empleado.ci_killer, 0)+ISNULL(led_cliente_vehiculo.ci_killer, 0)) > 0 AND
DATEDIFF(HOUR, GETDATE(), ISNULL(led_docs.fecha_vigencia, DATEFROMPARTS(2059,12,31))) <= 96 AND
DATEDIFF(HOUR, GETDATE(), ISNULL(led_docs.fecha_vigencia, DATEFROMPARTS(2059,12,31))) >= 0, 1, 0)
) AS prox_vencer,
led_docs.replicated_doc_id, doc_empresa.doc_id AS doc_id_padre,led_docs.cuit_found,
LN_contrapartes.contraparte,led_tipos_doc.es_plan_de_pago
FROM led_docs
INNER JOIN led_tipos_doc ON led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN clientes ON led_docs.cliente = clientes.cliente
INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN led_tipos_contratista ON led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN led_contratistas led_contratistas_1 ON led_docs.contratista_1 = led_contratistas_1.contratista
INNER JOIN led_tipos_contratista led_tipos_contratista_1 ON led_contratistas_1.tipo_contratista = led_tipos_contratista_1.tipo_contratista
INNER JOIN padrones padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
INNER JOIN identificadores identificadores_1 ON padrones_1.identificador = identificadores_1.identificador
LEFT OUTER JOIN led_cliente_contratista ON (led_docs.cliente = led_cliente_contratista.cliente
AND led_docs.tipo_doc = led_cliente_contratista.tipo_doc
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista)
LEFT OUTER JOIN users users_i on led_docs.ingresado_por = users_i.user_id
LEFT OUTER JOIN users users_v on led_docs.verificado_por = users_v.user_id
LEFT OUTER JOIN users users_r on led_docs.rechazado_por = users_r.user_id
LEFT OUTER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
LEFT OUTER JOIN padrones padrones_e ON led_empleados.id_padron = padrones_e.id_padron
LEFT OUTER JOIN identificadores identificadores_e ON padrones_e.identificador = identificadores_e.identificador
LEFT OUTER JOIN led_cliente_empleado ON (led_docs.cliente = led_cliente_empleado.cliente
AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc
AND led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado)
LEFT OUTER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
LEFT OUTER JOIN led_cliente_vehiculo ON (led_docs.cliente = led_cliente_vehiculo.cliente
AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc
AND led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo)
LEFT OUTER JOIN led_notificaciones ON led_docs.notificacion = led_notificaciones.notificacion
LEFT OUTER JOIN led_docs_aux ON (led_docs.doc_id = led_docs_aux.doc_id AND led_docs.doc_version = led_docs_aux.doc_version)
LEFT OUTER JOIN led_docs doc_empresa ON (led_docs.doc_id_lista = doc_empresa.tipo_doc
AND led_docs.periodo = doc_empresa.periodo
AND led_docs.contratista = doc_empresa.contratista)
LEFT OUTER JOIN LN_contrapartes ON (led_docs.contratista_1 = LN_contrapartes.id_imperium AND LN_contrapartes.servicio_contratado = 73)
WHERE led_docs.doc_id = @p_doc_id
end
else if (@p_replicado > 0) begin
declare @inicial bigint = @p_replicado
declare @original bigint = null
declare @temp bigint
while @original is null begin
select @temp = replicated_doc_id from led_docs where doc_id=@inicial
if (@temp is null)
set @original = @inicial
else
set @inicial = @temp
end
select @original AS doc_id
end
END
GO
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
/*
exec Imperium_Datos_Documento 4938688085
exec Imperium_Datos_Documento 2146811461
*/
-- =============================================
CREATE OR ALTER PROCEDURE dbo.Imperium_Datos_Documento
-- Add the parameters for the stored procedure here
@p_doc_id bigint = null,
@p_contratista int = null,
@p_periodo int = null,
@p_tipo_doc int = null,
@p_replicado bigint = NULL,
@p_user_id int = null,
@p_chequeo bit = 0,
@p_tiempo int = 30 -- minutos a tener en cuenta en el chequeo de si alguien tiene tomado ese doc
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
/* AGB 16-01-2025 MODIFICO ESTO MIENTRAS VEMOS PORQUE SE LO UTILIZA DE ESTA MANERA. NO TERMINA NUNCA*/
IF (@p_replicado IS NOT NULL)
BEGIN
SET @p_doc_id = @p_replicado
SET @p_replicado = NULL
END
/* AGB 16-01-2025 MODIFICO ESTO MIENTRAS VEMOS PORQUE SE LO UTILIZA DE ESTA MANERA. NO TERMINA NUNCA*/
if (@p_doc_id > 0) begin
/* 12/02/2024: Se hace el chequeo que el documento no este siendo trabajado por otro usuario en los últimos (@p_tiempo) minutos */
if (@p_chequeo = 1)
begin
declare @p_error bit = null, @p_mensaje varchar(200) = null
exec [ln_docs_chequeo] 'CHEQUEO', '73', @p_doc_id, @p_user_id, @p_tiempo, @p_error output, @p_mensaje output
if @p_error = 1
begin
select @p_error as error, @p_mensaje as mensaje
return
end
end
SELECT led_docs.doc_id, led_docs.doc_version, led_docs.cliente, clientes.nombre_cliente,
led_docs.contratista_1, led_docs.contratista, led_docs.estado_doc,
led_docs.led_seccion, led_docs.periodo, led_docs.fecha_tolerancia, led_docs.fecha_vigencia,
ISNULL(led_docs.aprobacion_parcial, 0) AS aprobacion_parcial, led_docs.status_doc, led_tipos_doc.periodicidad,
led_docs.empleado, led_docs.vehiculo, led_docs.tipo_doc, led_tipos_doc.nombre_tipo_doc, led_tipos_doc.modalidad,
ISNULL(led_tipos_doc.validar_cuit,0) AS validar_cuit,
ISNULL(led_tipos_doc.validar_lista_cuil,0) AS validar_lista_cuil,
ISNULL(led_tipos_doc.validar_lista_dominios,0) AS validar_lista_dominios,
iif((ISNULL(led_tipos_doc.validar_cuit,0)
+ ISNULL(led_tipos_doc.validar_lista_cuil,0)
+ ISNULL(led_tipos_doc.validar_lista_dominios,0)) > 0, 1, 0) AS es_doc_lista,
padrones.nombre_persona, padrones.identificador, padrones.numero, padrones.identificacion,
identificadores.abreviatura, identificadores.country_code,
padrones_1.nombre_persona as nombre_persona_1, padrones_1.identificador as identificador_1,
padrones_1.numero as numero_1, padrones_1.identificacion as identificacion_1,
identificadores_1.abreviatura as abreviatura_1, identificadores_1.country_code as country_code_1,
led_tipos_contratista.nombre_tipo_contratista, led_tipos_contratista_1.nombre_tipo_contratista as nombre_tipo_contratista_1,
padrones_e.nombre_persona as nombre_persona_e, padrones_e.identificador as identificador_e,
padrones_e.numero as numero_e, padrones_e.identificacion as identificacion_e,
identificadores_e.abreviatura as abreviatura_e, identificadores_e.country_code as country_code_e,
led_vehiculos.nombre_vehiculo, led_vehiculos.dominio, led_vehiculos.country_code as country_code_v,
convert(varchar, led_docs.ingresado, 103)+' '+convert(varchar(5), led_docs.ingresado, 14) AS ingresado,
led_docs.ingresado AS ingresadito,
convert(varchar, led_docs.verificado, 103)+' '+convert(varchar(5), led_docs.verificado, 14) AS verificado,
convert(varchar, led_docs.rechazado, 103)+' '+convert(varchar(5), led_docs.rechazado, 14) AS rechazado,
led_docs.ingresado_por, led_docs.verificado_por, led_docs.rechazado_por, led_docs.texto_rechazo,
isnull(users_i.first_name,'') + ' ' + isnull(users_i.last_name,'') as ingresado_por_usuario,
isnull(users_v.first_name,'') + ' ' + isnull(users_v.last_name,'') as verificado_por_usuario,
isnull(users_r.first_name,'') + ' ' + isnull(users_r.last_name,'') as rechazado_por_usuario,
isnull(users_v.aliasname, isnull(users_v.first_name,'') + ' ' + isnull(users_v.last_name,'')) as aliasname_v,
isnull(users_r.aliasname, isnull(users_r.first_name,'') + ' ' + isnull(users_r.last_name,'')) as aliasname_r,
CASE WHEN led_docs.status_doc = 'R' THEN 'Rechazado'
WHEN led_docs.status_doc = 'E' THEN 'Vencido'
WHEN led_docs.status_doc = 'P' THEN 'Aprob. parcial'
WHEN led_docs.status_doc = 'N' THEN 'No ingresado'
WHEN led_docs.status_doc = 'I' THEN 'Ingresado'
WHEN led_docs.status_doc = 'V' THEN 'Verificado' END AS nombre_estado,
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,
convert(varchar, led_docs.fecha_vigencia, 103) AS vigencia,
convert(date, led_docs.fecha_vigencia) AS vigencia_amd,
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"></i>'
WHEN led_docs.status_doc = 'E' THEN '<i class="fa fa-warning text-vencidos"></i>'
WHEN led_docs.status_doc = 'P' THEN '<i class="fa fa-exclamation text-parciales"></i>'
WHEN led_docs.status_doc = 'N' THEN '<i class="fa fa-cloud-upload text-pendientes"></i>'
WHEN led_docs.status_doc = 'I' THEN '<i class="fa fa-pause text-ingresados"></i>'
WHEN led_docs.status_doc = 'V' THEN '<i class="fa fa-check text-verificados"></i>' END AS icono,
led_docs.doc_log, led_docs.doc_id_lista, led_docs.grupo_doc, led_docs.notificacion,
isnull(led_docs.reapertura_por_alta, 0) as reapertura_por_alta,
isnull(led_docs.parcial_actualizado, 0) as parcial_actualizado,
iif(ISNULL(led_cliente_contratista.ci_killer, 0)+ISNULL(led_cliente_empleado.ci_killer, 0)+ISNULL(led_cliente_vehiculo.ci_killer, 0) > 0 AND led_tipos_doc.modalidad = 'A', 1, 0) AS ci_killer,
convert(varchar, led_notificaciones.horario, 103)+' '+convert(varchar(5), led_notificaciones.horario, 14) AS horario_notificacion,
led_notificaciones.texto_notificacion,
CASE WHEN led_docs.led_seccion = 'C' THEN ISNULL(led_cliente_contratista.requiere_upload, 0)
WHEN led_docs.led_seccion = 'E' THEN ISNULL(led_cliente_empleado.requiere_upload, 0)
WHEN led_docs.led_seccion = 'V' THEN ISNULL(led_cliente_vehiculo.requiere_upload, 0) END AS requiere_upload,
convert(varchar(6),led_docs.periodo)+'/'+convert(varchar,led_docs.cliente)+'/'+convert(varchar,led_docs.contratista_1)+'/' as doc_path,
convert(varchar(6),led_docs.periodo)+'_'+convert(varchar,led_docs.cliente)+'_'+right('00000'+convert(varchar(5),led_docs.tipo_doc),5)+'_'+led_docs.led_seccion+convert(varchar,led_docs.doc_id)+'_' as preffix,
-- Condición de próximo a vencer: verificado, periodo adelantado, killer de acceso, y dentro de las 96 horas de vencimiento en la versión 0
-- Si hay una versión de reemplazo las mismas condiciones pero en estado ingresado o rechazado en las dos tablas
iif(led_docs.estado_doc = 'V' AND
led_tipos_doc.modalidad = 'A' AND
led_docs.periodo = dbo.PeriodoAdelantado() AND
(ISNULL(led_cliente_contratista.ci_killer, 0)+ISNULL(led_cliente_empleado.ci_killer, 0)+ISNULL(led_cliente_vehiculo.ci_killer, 0)) > 0 AND
DATEDIFF(HOUR, GETDATE(), ISNULL(led_docs.fecha_vigencia, DATEFROMPARTS(2059,12,31))) <= 96 AND
DATEDIFF(HOUR, GETDATE(), ISNULL(led_docs.fecha_vigencia, DATEFROMPARTS(2059,12,31))) >= 0, 1,
-- Else hay versión de reemplazo y se encuentra ingresada o rechazada con las mismas condiciones anteriores
iif (led_docs.doc_version > 0 AND
led_docs.estado_doc IN ('I','R') AND
led_docs_aux.estado_doc IN ('I','R') AND
led_tipos_doc.modalidad = 'A' AND
led_docs.periodo = dbo.PeriodoAdelantado() AND
(ISNULL(led_cliente_contratista.ci_killer, 0)+ISNULL(led_cliente_empleado.ci_killer, 0)+ISNULL(led_cliente_vehiculo.ci_killer, 0)) > 0 AND
DATEDIFF(HOUR, GETDATE(), ISNULL(led_docs.fecha_vigencia, DATEFROMPARTS(2059,12,31))) <= 96 AND
DATEDIFF(HOUR, GETDATE(), ISNULL(led_docs.fecha_vigencia, DATEFROMPARTS(2059,12,31))) >= 0, 1, 0)
) AS prox_vencer,
led_docs.replicated_doc_id, doc_empresa.doc_id AS doc_id_padre,led_docs.cuit_found,
LN_contrapartes.contraparte,led_tipos_doc.es_plan_de_pago
FROM led_docs
INNER JOIN led_tipos_doc ON led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN clientes ON led_docs.cliente = clientes.cliente
INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN led_tipos_contratista ON led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN led_contratistas led_contratistas_1 ON led_docs.contratista_1 = led_contratistas_1.contratista
INNER JOIN led_tipos_contratista led_tipos_contratista_1 ON led_contratistas_1.tipo_contratista = led_tipos_contratista_1.tipo_contratista
INNER JOIN padrones padrones_1 ON led_contratistas_1.id_padron = padrones_1.id_padron
INNER JOIN identificadores identificadores_1 ON padrones_1.identificador = identificadores_1.identificador
LEFT OUTER JOIN led_cliente_contratista ON (led_docs.cliente = led_cliente_contratista.cliente
AND led_docs.tipo_doc = led_cliente_contratista.tipo_doc
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista)
LEFT OUTER JOIN users users_i on led_docs.ingresado_por = users_i.user_id
LEFT OUTER JOIN users users_v on led_docs.verificado_por = users_v.user_id
LEFT OUTER JOIN users users_r on led_docs.rechazado_por = users_r.user_id
LEFT OUTER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
LEFT OUTER JOIN padrones padrones_e ON led_empleados.id_padron = padrones_e.id_padron
LEFT OUTER JOIN identificadores identificadores_e ON padrones_e.identificador = identificadores_e.identificador
LEFT OUTER JOIN led_cliente_empleado ON (led_docs.cliente = led_cliente_empleado.cliente
AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc
AND led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado)
LEFT OUTER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
LEFT OUTER JOIN led_cliente_vehiculo ON (led_docs.cliente = led_cliente_vehiculo.cliente
AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc
AND led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo)
LEFT OUTER JOIN led_notificaciones ON led_docs.notificacion = led_notificaciones.notificacion
LEFT OUTER JOIN led_docs_aux ON (led_docs.doc_id = led_docs_aux.doc_id AND led_docs.doc_version = led_docs_aux.doc_version)
LEFT OUTER JOIN led_docs doc_empresa ON (led_docs.doc_id_lista = doc_empresa.tipo_doc
AND led_docs.periodo = doc_empresa.periodo
AND led_docs.contratista = doc_empresa.contratista)
LEFT OUTER JOIN LN_contrapartes ON (led_docs.contratista_1 = LN_contrapartes.id_imperium AND LN_contrapartes.servicio_contratado = 73)
WHERE led_docs.doc_id = @p_doc_id
end
else if (@p_replicado > 0) begin
declare @inicial bigint = @p_replicado
declare @original bigint = null
declare @temp bigint
while @original is null begin
select @temp = replicated_doc_id from led_docs where doc_id=@inicial
if (@temp is null)
set @original = @inicial
else
set @inicial = @temp
end
select @original AS doc_id
end
END
GO
Depends On
19- dbo.LN_docs_chequeo
- dbo.validar_cuit
- dbo.PeriodoAdelantado
- dbo.clientes
- dbo.identificadores
- dbo.led_cliente_contratista
- dbo.led_cliente_empleado
- dbo.led_cliente_vehiculo
- dbo.led_contratistas
- dbo.led_docs
- dbo.led_docs_aux
- dbo.led_empleados
- dbo.led_notificaciones
- dbo.led_tipos_contratista
- dbo.led_tipos_doc
- dbo.led_vehiculos
- dbo.LN_contrapartes
- dbo.padrones
- dbo.users
Used By
No items found