Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
9| Name | Data Type | Length | Description |
|---|---|---|---|
| @accion | varchar | 30 | |
| @p_user_id | int | 4 | |
| @p_activo | tinyint | 1 | |
| @p_cliente | int | 4 | |
| @p_country_code | varchar | 2 | |
| @p_tipo_doc | int | 4 | |
| @p_contraparte | int | 4 | |
| @p_id_verif | int | 4 | |
| @plataforma | varchar | 20 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
/*
exec ln_verificacion_docs_ 'queue',422946826,1,1226057645
exec ln_verificacion_docs_ 'queue',422946826
exec ln_verificacion_docs_ 'FACON_AGRUPADO',422946826,null,null,null,null,null,null,10
@p_activo tinyint = 1,
@p_cliente int = null,
@p_country_code varchar(2) = null,
@p_tipo_doc int = null,
@p_contraparte int = null,
@p_id_verif int = null,
@poronga varchar(20) = '47,73,10'
select * from clientes where cliente in (1226057645,
1226057645,
3920694,
3920694,
3920694,
3920694,
3920694,
3920694,
4390310)
*/
-- =============================================
CREATE OR ALTER PROCEDURE dbo.LN_verificacion_docs_
-- Add the parameters for the stored procedure here
@accion varchar(30),
@p_user_id int = null,
@p_activo tinyint = 1,
@p_cliente int = null,
@p_country_code varchar(2) = null,
@p_tipo_doc int = null,
@p_contraparte int = null,
@p_id_verif int = null,
@plataforma varchar(20) = '47,73,10'
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
if (@plataforma is null)
begin
set @plataforma='47,73'
end
if (@accion = 'insert') begin
if not exists (select user_id, cliente, country_code, tipo_doc, contraparte
from LN_verificacion_docs
where user_id = @p_user_id
and cliente = @p_cliente
and country_code = @p_country_code
and tipo_doc = @p_tipo_doc
and contraparte = @p_contraparte)
insert into LN_verificacion_docs
(user_id, activo, cliente, country_code, tipo_doc, contraparte)
values
(@p_user_id, @p_activo, @p_cliente, @p_country_code, @p_tipo_doc, @p_contraparte)
end else
if (@accion = 'delete') begin
if (@p_id_verif is not null)
delete from LN_verificacion_docs
where id_verif = @p_id_verif
end else
if (@accion = 'change') begin
update LN_verificacion_docs set
activo = iif(activo = 1, 0, 1)
where id_verif = @p_id_verif
end else
if (@accion = 'search') begin
if (@p_user_id is null)
select users.first_name, users.last_name, users.email, users.username,
clientes.nombre_cliente, country.country_name, clientes.cli_codigo,
LN_tipos_doc.nombre_tipo_doc, padrones.identificador, padrones.identificacion,
padrones.numero, identificadores.abreviatura, padrones.nombre_persona,
LN_verificacion_docs.cliente, LN_verificacion_docs.country_code,
LN_verificacion_docs.tipo_doc, LN_verificacion_docs.contraparte,
LN_verificacion_docs.activo, LN_verificacion_docs.user_id,
LN_verificacion_docs.id_verif
from LN_verificacion_docs
inner join users on LN_verificacion_docs.user_id = users.user_id
left outer join clientes on LN_verificacion_docs.cliente = clientes.cliente
left outer join LN_contrapartes on LN_verificacion_docs.contraparte = LN_contrapartes.contraparte
left outer join padrones ON LN_contrapartes.id_padron = padrones.id_padron
left outer join identificadores on padrones.identificador = identificadores.identificador
left outer join LN_tipos_doc on LN_verificacion_docs.tipo_doc = LN_tipos_doc.tipo_doc
left outer join country on LN_verificacion_docs.country_code = country.country_code
order by users.first_name, users.last_name
else
select users.first_name, users.last_name, users.email, users.username,
clientes.nombre_cliente, country.country_name, clientes.cli_codigo,
LN_tipos_doc.nombre_tipo_doc, padrones.identificador, padrones.identificacion,
padrones.numero, identificadores.abreviatura, padrones.nombre_persona,
LN_verificacion_docs.cliente, LN_verificacion_docs.country_code,
LN_verificacion_docs.tipo_doc, LN_verificacion_docs.contraparte,
LN_verificacion_docs.activo, LN_verificacion_docs.user_id,
LN_verificacion_docs.id_verif
from LN_verificacion_docs
inner join users on LN_verificacion_docs.user_id = users.user_id
left outer join clientes on LN_verificacion_docs.cliente = clientes.cliente
left outer join LN_contrapartes on LN_verificacion_docs.contraparte = LN_contrapartes.contraparte
left outer join padrones ON LN_contrapartes.id_padron = padrones.id_padron
left outer join identificadores on padrones.identificador = identificadores.identificador
left outer join LN_tipos_doc on LN_verificacion_docs.tipo_doc = LN_tipos_doc.tipo_doc
left outer join country on LN_verificacion_docs.country_code = country.country_code
where LN_verificacion_docs.user_id = @p_user_id
order by users.first_name, users.last_name
end else
IF (@p_user_id is not null) BEGIN
CREATE TABLE #tempDocsTable (
doc_id int,
PRIMARY KEY NONCLUSTERED (doc_id ASC)
)
DECLARE @docs VARCHAR(MAX)=''
DECLARE @doc int
DECLARE @cc varchar(2), @cl int, @td int, @cont int
DECLARE Permisos CURSOR FOR
select country_code, cliente, tipo_doc, contraparte
from LN_verificacion_docs
where user_id = @p_user_id
and activo = 1
order by country_code, cliente, tipo_doc, contraparte
OPEN Permisos
FETCH NEXT FROM Permisos INTO @cc, @cl, @td, @cont
WHILE @@FETCH_STATUS = 0 BEGIN
if (isnull(@cont,0) > 0) begin
/* por contraparte : ignora cliente y paĆs */
if (isnull(@td,0) > 0)
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where contraparte = @cont
and estado_doc = 'I'
and tipo_doc = @td
else
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where contraparte = @cont
and estado_doc = 'I'
end else begin
/* contraparte nula */
if (isnull(@cl,0) > 0) begin
/* por cliente */
if (@td is null AND @cc is null)
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where cliente = @cl
and estado_doc = 'I'
else
if (@td > 0 AND @cc is null)
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where cliente = @cl
and estado_doc = 'I'
and tipo_doc = @td
else
if (@td is null AND @cc is not null)
DECLARE Documentos CURSOR FOR
select LN_docs.doc_id from LN_docs
inner join LN_tipos_doc on LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
where LN_docs.cliente = @cl
and LN_docs.estado_doc = 'I'
and LN_tipos_doc.country_code = @cc
else
DECLARE Documentos CURSOR FOR
select LN_docs.doc_id from LN_docs
inner join LN_tipos_doc on LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
where LN_docs.cliente = @cl
and LN_docs.estado_doc = 'I'
and LN_docs.tipo_doc = @td
and LN_tipos_doc.country_code = @cc
end else begin
/* cliente nulo */
if (@td is null AND @cc is null)
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where estado_doc = 'I'
else
if (@td > 0 AND @cc is null)
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where estado_doc = 'I'
and tipo_doc = @td
else
if (@td is null AND @cc is not null)
DECLARE Documentos CURSOR FOR
select LN_docs.doc_id from LN_docs
inner join LN_tipos_doc on LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
where LN_docs.estado_doc = 'I'
and LN_tipos_doc.country_code = @cc
else
DECLARE Documentos CURSOR FOR
select LN_docs.doc_id from LN_docs
inner join LN_tipos_doc on LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
where LN_docs.estado_doc = 'I'
and LN_docs.tipo_doc = @td
and LN_tipos_doc.country_code = @cc
end
end
Open Documentos
FETCH NEXT FROM Documentos INTO @doc
WHILE @@FETCH_STATUS = 0 BEGIN
--select @docs as ffff
if (@docs != '') begin set @docs = @docs + ',' end
set @docs = @docs + convert(varchar, @doc)
FETCH NEXT FROM Documentos INTO @doc
BEGIN TRY
INSERT INTO #tempDocsTable (doc_id) VALUES (@doc)
END TRY
BEGIN CATCH
END CATCH
END
Close Documentos
Deallocate Documentos
FETCH NEXT FROM Permisos INTO @cc, @cl, @td, @cont
END
CLOSE Permisos
DEALLOCATE Permisos
--select * from #tempDocsTable
--INSERT INTO #tempDocsTable (doc_id) VALUES (287126)
/* ACCION PARA NUEVOS FACONES QUE AGRUPAN DOCUMENTOS */
IF (@p_cliente IS NULL AND @accion='FACON_AGRUPADO' AND @docs IS NOT NULL) /*SI NO SE ESPECIFICA CLIENTE ASUMIMOS TODOS LOS CLIENTES*/
BEGIN
/*AGB RAMI*/
SELECT 'AA' as gg,@plataforma as PLATAFORMA,LN_contrapartes.servicio_contratado as Segmentado,
LN_docs.doc_id, LN_docs.contraparte, LN_docs.cliente, LN_docs.tipo_doc,
LN_docs.doc_version, LN_docs.estado_doc, LN_docs.doc_log, LN_docs.doc_attach,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'Pendiente de ingreso'
WHEN LN_docs.estado_doc = 'I' THEN 'Ingresado'
WHEN LN_docs.estado_doc = 'R' THEN 'Rechazado'
WHEN LN_docs.estado_doc = 'V' THEN 'Verificado'
END AS estado_documento,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'text-info'
WHEN LN_docs.estado_doc = 'I' THEN 'text-warning'
WHEN LN_docs.estado_doc = 'R' THEN 'text-danger'
WHEN LN_docs.estado_doc = 'V' THEN 'text-success'
END AS class_estado,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'cloud-upload fa-cloud-upload-alt'
WHEN LN_docs.estado_doc = 'I' THEN 'exclamation'
WHEN LN_docs.estado_doc = 'R' THEN 'times'
WHEN LN_docs.estado_doc = 'V' THEN 'check'
END AS icon_estado,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 103) AS fecha_vigencia,
iif(LN_docs.fecha_vigencia IS NOT NULL,
CASE
WHEN LN_tipos_doc.tipo_vigencia = 'M' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-1,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'B' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-2,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'T' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-3,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'C' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-4,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'S' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-6,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'A' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-12,LN_docs.fecha_vigencia)),103)
ELSE NULL
END, NULL) AS inicio_vigencia,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 121) AS fecha_vigencia_ymd,
CONVERT(VARCHAR, LN_docs.vencimiento_carga, 103) AS vencimiento_carga,
ISNULL(LN_tipos_doc.es_balance, 0) AS es_balance, LN_docs.texto_rechazo,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio, LN_docs.gestion,
CONVERT(VARCHAR,isnull(LN_docs.ingresado,LN_docs.created),103)+' '+CONVERT(VARCHAR(5),isnull(LN_docs.ingresado,LN_docs.created),14) as ingresado,
CONVERT(VARCHAR,isnull(LN_docs.ingresado,LN_docs.created),103) AS ingresado_dmy,
CONVERT(VARCHAR,isnull(LN_docs.ingresado,LN_docs.created),121) AS ingresado_ymd,
CONVERT(VARCHAR,LN_docs.rechazado,103)+' '+CONVERT(VARCHAR(5),LN_docs.rechazado,14) as rechazado,
CONVERT(VARCHAR,LN_docs.verificado_backend,103)+' '+CONVERT(VARCHAR(5),LN_docs.verificado_backend,14) as verificado_backend,
CONVERT(VARCHAR(19),LN_docs.verificado_cliente,121) as verificado_cliente,
CONVERT(VARCHAR(19),LN_docs.created,121) as created,
CONVERT(VARCHAR(19),LN_docs.modified,121) as modified,
LN_docs.ingresado_por, LN_docs.rechazado_por, LN_docs.verificado_backend_por,
LN_docs.verificado_cliente_por, LN_docs.created_by, LN_docs.modified_by,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.identificacion, padrones.numero, identificadores.abreviatura, identificadores.country_code,
country.country_name, LN_contrapartes.activo, LN_contrapartes.nombre_contacto,
LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
LN_tipos_doc.nombre_tipo_doc,LN_docs.id_externo,
users1.first_name + ' ' + users1.last_name AS ingresado_por_usuario,
users2.first_name + ' ' + users2.last_name AS rechazado_por_usuario,
users3.first_name + ' ' + users3.last_name AS verificado_backend_por_usuario,
users4.first_name + ' ' + users4.last_name AS verificado_cliente_por_usuario,
users5.first_name + ' ' + users5.last_name AS created_by_usuario,
users6.first_name + ' ' + users6.last_name AS modified_by_usuario,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 121) AS inicio_ejercicio_ymd,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 121) AS fin_ejercicio_ymd,
balances_contables.id_balance,
balances_contables.fecha_balance, balances_contables.ejercicio,
balances_contables.periodo, balances_contables.visible,
balances_contables.estado, balances_contables.ruta_archivo,
convert(varchar, balances_contables.fecha_balance, 103) as fecha_cierre,
balances_contables.moneda, monedas.nombre_moneda,
LN_contrapartes.id_padre, padrones2.nombre_persona as nombre_persona_padre,
padrones2.identificador as identificador_padre, padrones2.numero as numero_padre,
padrones2.identificacion as identificacion_padre,
identificadores2.abreviatura as abreviatura_padre, padre.id_padron as id_padron_padre,isnull(ln_docs.revisado,0) as revisado ,
informes.informe,ln_demo.integ_carga,ln_demo.integ_rech,ln_demo.integ_verif,ln_demo.docs_ok ,
iif(LN_contrapartes.carga_inicial=0,'NO','SI') as carga_inicial,
isnull(LN_contrapartes.limite_carga_inicial,getdate()-1) as limite_carga_inicial, getdate()-LN_contrapartes.limite_carga_inicial as limite,productos.nombre_producto as nombre_servicio
,ln_familias.nombre_familia
FROM LN_docs
/*INNER JOIN dbo.DelimitedSplit8K(@docs, ',') Docs on LN_docs.doc_id = Docs.Item*/
INNER JOIN #tempDocsTable ON LN_docs.doc_id = #tempDocsTable.doc_id
INNER JOIN clientes ON LN_docs.cliente = clientes.cliente
INNER JOIN LN_contrapartes ON LN_docs.contraparte = LN_contrapartes.contraparte
-- 04/06/2024 (que los documentos sean de la gestion actual)
INNER JOIN LN_gestiones on (LN_gestiones.contraparte = LN_docs.contraparte and LN_gestiones.gestion = LN_docs.gestion and LN_gestiones.vigente = 1)
--
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN country ON identificadores.country_code = country.country_code
INNER JOIN LN_tipos_doc ON LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
LEFT OUTER JOIN LN_contrapartes padre ON LN_contrapartes.id_padre = padre.contraparte
LEFT OUTER JOIN padrones padrones2 ON padre.id_padron = padrones2.id_padron
LEFT OUTER JOIN identificadores identificadores2 ON padrones2.identificador = identificadores2.identificador
LEFT OUTER JOIN balances_contables on LN_docs.id_externo = balances_contables.id_balance
LEFT OUTER JOIN monedas ON balances_contables.moneda = monedas.moneda
LEFT OUTER JOIN users users1 ON LN_docs.ingresado_por = users1.user_id
LEFT OUTER JOIN users users2 ON LN_docs.rechazado_por = users2.user_id
LEFT OUTER JOIN users users3 ON LN_docs.verificado_backend_por = users3.user_id
LEFT OUTER JOIN users users4 ON LN_docs.verificado_cliente_por = users4.user_id
LEFT OUTER JOIN users users5 ON LN_docs.created_by = users5.user_id
LEFT OUTER JOIN users users6 ON LN_docs.modified_by = users6.user_id
LEFT join ln_demo on (ln_docs.contraparte = ln_demo.contraparte and ln_docs.gestion = ln_demo.gestion)
LEFT join informes on ln_demo.informe = informes.informe
INNER JOIN dbo.DelimitedSplit8K(@plataforma, ',') Segmentado on LN_contrapartes.servicio_contratado = Segmentado.Item
/* AGB */
INNER join productos on ln_contrapartes.servicio_contratado = productos.producto
INNER JOIN LN_contraparte_familias on ln_contraparte_familias.contraparte = ln_contrapartes.contraparte
INNER JOIN LN_familias on LN_familias.familia = ln_contraparte_familias.familia
where LN_tipos_doc.tipo_doc in (select tipo_doc from ln_tipos_doc where tipo_doc_padre is null )
/*and LN_docs.doc_id in ( select LN_docs.doc_id from LN_docs where LN_docs.estado_doc = 'I')*/
/* AGB */
-- exec ln_verificacion_docs_AGB 'FACON_AGRUPADO',422946826
-- exec ln_verificacion_docs_ 'FACON_AGRUPADO',422946826
-- exec ln_verificacion_docs_ 'FACON_AGRUPADO',422946826,null,null,null,null,null,null,47
ORDER BY LN_docs.ingresado
END
/*AGB INSERTA */
if (@docs IS NOT NULL AND @accion !='FACON_AGRUPADO')
begin
IF (@p_cliente IS NULL) /*SI NO SE ESPECIFICA CLIENTE ASUMIMOS TODOS LOS CLIENTES MENOS EL BBVA 1226057645 */
BEGIN
SELECT LN_docs.doc_id, LN_docs.contraparte, LN_docs.cliente, LN_docs.tipo_doc,
LN_docs.doc_version, LN_docs.estado_doc, LN_docs.doc_log, LN_docs.doc_attach,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'Pendiente de ingreso'
WHEN LN_docs.estado_doc = 'I' THEN 'Ingresado'
WHEN LN_docs.estado_doc = 'R' THEN 'Rechazado'
WHEN LN_docs.estado_doc = 'V' THEN 'Verificado'
END AS estado_documento,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'text-info'
WHEN LN_docs.estado_doc = 'I' THEN 'text-warning'
WHEN LN_docs.estado_doc = 'R' THEN 'text-danger'
WHEN LN_docs.estado_doc = 'V' THEN 'text-success'
END AS class_estado,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'cloud-upload fa-cloud-upload-alt'
WHEN LN_docs.estado_doc = 'I' THEN 'exclamation'
WHEN LN_docs.estado_doc = 'R' THEN 'times'
WHEN LN_docs.estado_doc = 'V' THEN 'check'
END AS icon_estado,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 103) AS fecha_vigencia,
iif(LN_docs.fecha_vigencia IS NOT NULL,
CASE
WHEN LN_tipos_doc.tipo_vigencia = 'M' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-1,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'B' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-2,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'T' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-3,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'C' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-4,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'S' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-6,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'A' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-12,LN_docs.fecha_vigencia)),103)
ELSE NULL
END, NULL) AS inicio_vigencia,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 121) AS fecha_vigencia_ymd,
CONVERT(VARCHAR, LN_docs.vencimiento_carga, 103) AS vencimiento_carga,
ISNULL(LN_tipos_doc.es_balance, 0) AS es_balance, LN_docs.texto_rechazo,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio, LN_docs.gestion,
CONVERT(VARCHAR,LN_docs.ingresado,103)+' '+CONVERT(VARCHAR(5),LN_docs.ingresado,14) as ingresado,
CONVERT(VARCHAR,LN_docs.ingresado,103) AS ingresado_dmy,
CONVERT(VARCHAR,LN_docs.ingresado,121) AS ingresado_ymd,
CONVERT(VARCHAR,LN_docs.rechazado,103)+' '+CONVERT(VARCHAR(5),LN_docs.rechazado,14) as rechazado,
CONVERT(VARCHAR,LN_docs.verificado_backend,103)+' '+CONVERT(VARCHAR(5),LN_docs.verificado_backend,14) as verificado_backend,
CONVERT(VARCHAR(19),LN_docs.verificado_cliente,121) as verificado_cliente,
CONVERT(VARCHAR(19),LN_docs.created,121) as created,
CONVERT(VARCHAR(19),LN_docs.modified,121) as modified,
LN_docs.ingresado_por, LN_docs.rechazado_por, LN_docs.verificado_backend_por,
LN_docs.verificado_cliente_por, LN_docs.created_by, LN_docs.modified_by,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.identificacion, padrones.numero, identificadores.abreviatura, identificadores.country_code,
country.country_name, LN_contrapartes.activo, LN_contrapartes.nombre_contacto,
LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
LN_tipos_doc.nombre_tipo_doc,LN_docs.id_externo,
users1.first_name + ' ' + users1.last_name AS ingresado_por_usuario,
users2.first_name + ' ' + users2.last_name AS rechazado_por_usuario,
users3.first_name + ' ' + users3.last_name AS verificado_backend_por_usuario,
users4.first_name + ' ' + users4.last_name AS verificado_cliente_por_usuario,
users5.first_name + ' ' + users5.last_name AS created_by_usuario,
users6.first_name + ' ' + users6.last_name AS modified_by_usuario,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 121) AS inicio_ejercicio_ymd,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 121) AS fin_ejercicio_ymd,
balances_contables.id_balance,
balances_contables.fecha_balance, balances_contables.ejercicio,
balances_contables.periodo, balances_contables.visible,
balances_contables.estado, balances_contables.ruta_archivo,
convert(varchar, balances_contables.fecha_balance, 103) as fecha_cierre,
balances_contables.moneda, monedas.nombre_moneda,
LN_contrapartes.id_padre, padrones2.nombre_persona as nombre_persona_padre,
padrones2.identificador as identificador_padre, padrones2.numero as numero_padre,
padrones2.identificacion as identificacion_padre,
identificadores2.abreviatura as abreviatura_padre, padre.id_padron as id_padron_padre,isnull(ln_docs.revisado,0) as revisado ,
informes.informe,
ln_familias.nombre_familia
FROM LN_docs
/*INNER JOIN dbo.DelimitedSplit8K(@docs, ',') Docs on LN_docs.doc_id = Docs.Item*/
INNER JOIN #tempDocsTable ON LN_docs.doc_id = #tempDocsTable.doc_id
INNER JOIN clientes ON LN_docs.cliente = clientes.cliente
INNER JOIN LN_contrapartes ON LN_docs.contraparte = LN_contrapartes.contraparte
-- 04/06/2024 (que los documentos sean de la gestion actual)
INNER JOIN LN_gestiones on (LN_gestiones.contraparte = LN_docs.contraparte and LN_gestiones.gestion = LN_docs.gestion and LN_gestiones.vigente = 1)
--
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN country ON identificadores.country_code = country.country_code
INNER JOIN LN_tipos_doc ON LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
LEFT OUTER JOIN LN_contrapartes padre ON LN_contrapartes.id_padre = padre.contraparte
LEFT OUTER JOIN padrones padrones2 ON padre.id_padron = padrones2.id_padron
LEFT OUTER JOIN identificadores identificadores2 ON padrones2.identificador = identificadores2.identificador
LEFT OUTER JOIN balances_contables on LN_docs.id_externo = balances_contables.id_balance
LEFT OUTER JOIN monedas ON balances_contables.moneda = monedas.moneda
LEFT OUTER JOIN users users1 ON LN_docs.ingresado_por = users1.user_id
LEFT OUTER JOIN users users2 ON LN_docs.rechazado_por = users2.user_id
LEFT OUTER JOIN users users3 ON LN_docs.verificado_backend_por = users3.user_id
LEFT OUTER JOIN users users4 ON LN_docs.verificado_cliente_por = users4.user_id
LEFT OUTER JOIN users users5 ON LN_docs.created_by = users5.user_id
LEFT OUTER JOIN users users6 ON LN_docs.modified_by = users6.user_id
/* WHERE ln_docs.cliente != 1226057645 */
inner join ln_demo on (ln_docs.contraparte = ln_demo.contraparte and ln_docs.gestion = ln_demo.gestion)
inner join informes on ln_demo.informe = informes.informe
INNER JOIN LN_contraparte_familias on ln_contraparte_familias.contraparte = ln_contrapartes.contraparte
INNER JOIN LN_familias on LN_familias.familia = ln_contraparte_familias.familia
/* AGB */
/* where LN_tipos_doc.tipo_doc in (select tipo_doc from ln_tipos_doc where tipo_doc_padre is null )
lo remuevo porque hay documentos que estƔn como hijos de otros pero en los facones anteriores son principales y no se los ve para verificar, implementar un action diferente en el SP
*/
/* AGB */
ORDER BY LN_docs.ingresado
END
IF (@p_cliente IS NOT NULL) /*SE LISTAN SOLO LOS DEL CLIENTE SOLICITADO 1226057645 */
BEGIN
SELECT LN_docs.doc_id, LN_docs.contraparte, LN_docs.cliente, LN_docs.tipo_doc,
LN_docs.doc_version, LN_docs.estado_doc, LN_docs.doc_log, LN_docs.doc_attach,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'Pendiente de ingreso'
WHEN LN_docs.estado_doc = 'I' THEN 'Ingresado'
WHEN LN_docs.estado_doc = 'R' THEN 'Rechazado'
WHEN LN_docs.estado_doc = 'V' THEN 'Verificado'
END AS estado_documento,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'text-info'
WHEN LN_docs.estado_doc = 'I' THEN 'text-warning'
WHEN LN_docs.estado_doc = 'R' THEN 'text-danger'
WHEN LN_docs.estado_doc = 'V' THEN 'text-success'
END AS class_estado,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'cloud-upload fa-cloud-upload-alt'
WHEN LN_docs.estado_doc = 'I' THEN 'exclamation'
WHEN LN_docs.estado_doc = 'R' THEN 'times'
WHEN LN_docs.estado_doc = 'V' THEN 'check'
END AS icon_estado,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 103) AS fecha_vigencia,
iif(LN_docs.fecha_vigencia IS NOT NULL,
CASE
WHEN LN_tipos_doc.tipo_vigencia = 'M' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-1,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'B' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-2,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'T' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-3,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'C' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-4,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'S' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-6,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'A' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-12,LN_docs.fecha_vigencia)),103)
ELSE NULL
END, NULL) AS inicio_vigencia,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 121) AS fecha_vigencia_ymd,
CONVERT(VARCHAR, LN_docs.vencimiento_carga, 103) AS vencimiento_carga,
ISNULL(LN_tipos_doc.es_balance, 0) AS es_balance, LN_docs.texto_rechazo,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio, gestion,
CONVERT(VARCHAR,LN_docs.ingresado,103)+' '+CONVERT(VARCHAR(5),LN_docs.ingresado,14) as ingresado,
CONVERT(VARCHAR,LN_docs.ingresado,103) AS ingresado_dmy,
CONVERT(VARCHAR,LN_docs.ingresado,121) AS ingresado_ymd,
CONVERT(VARCHAR,LN_docs.rechazado,103)+' '+CONVERT(VARCHAR(5),LN_docs.rechazado,14) as rechazado,
CONVERT(VARCHAR,LN_docs.verificado_backend,103)+' '+CONVERT(VARCHAR(5),LN_docs.verificado_backend,14) as verificado_backend,
CONVERT(VARCHAR(19),LN_docs.verificado_cliente,121) as verificado_cliente,
CONVERT(VARCHAR(19),LN_docs.created,121) as created,
CONVERT(VARCHAR(19),LN_docs.modified,121) as modified,
LN_docs.ingresado_por, LN_docs.rechazado_por, LN_docs.verificado_backend_por,
LN_docs.verificado_cliente_por, LN_docs.created_by, LN_docs.modified_by,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.identificacion, padrones.numero, identificadores.abreviatura, identificadores.country_code,
country.country_name, LN_contrapartes.activo, LN_contrapartes.nombre_contacto,
LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
LN_tipos_doc.nombre_tipo_doc,LN_docs.id_externo,
users1.first_name + ' ' + users1.last_name AS ingresado_por_usuario,
users2.first_name + ' ' + users2.last_name AS rechazado_por_usuario,
users3.first_name + ' ' + users3.last_name AS verificado_backend_por_usuario,
users4.first_name + ' ' + users4.last_name AS verificado_cliente_por_usuario,
users5.first_name + ' ' + users5.last_name AS created_by_usuario,
users6.first_name + ' ' + users6.last_name AS modified_by_usuario,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 121) AS inicio_ejercicio_ymd,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 121) AS fin_ejercicio_ymd,
balances_contables.id_balance,
balances_contables.fecha_balance, balances_contables.ejercicio,
balances_contables.periodo, balances_contables.visible,
balances_contables.estado, balances_contables.ruta_archivo,
convert(varchar, balances_contables.fecha_balance, 103) as fecha_cierre,
balances_contables.moneda, monedas.nombre_moneda,
LN_contrapartes.id_padre, padrones2.nombre_persona as nombre_persona_padre,
padrones2.identificador as identificador_padre, padrones2.numero as numero_padre,
padrones2.identificacion as identificacion_padre,
identificadores2.abreviatura as abreviatura_padre, padre.id_padron as id_padron_padre,isnull(ln_docs.revisado,0) as revisado
,ln_familias.nombre_familia
FROM LN_docs
/*INNER JOIN dbo.DelimitedSplit8K(@docs, ',') Docs on LN_docs.doc_id = Docs.Item*/
INNER JOIN #tempDocsTable ON LN_docs.doc_id = #tempDocsTable.doc_id
INNER JOIN clientes ON LN_docs.cliente = clientes.cliente
INNER JOIN LN_contrapartes ON LN_docs.contraparte = LN_contrapartes.contraparte
-- 04/06/2024 (que los documentos sean de la gestion actual)
INNER JOIN LN_gestiones on (LN_gestiones.contraparte = LN_docs.contraparte and LN_gestiones.gestion = LN_docs.gestion and LN_gestiones.vigente = 1)
--
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN country ON identificadores.country_code = country.country_code
INNER JOIN LN_tipos_doc ON LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
LEFT OUTER JOIN LN_contrapartes padre ON LN_contrapartes.id_padre = padre.contraparte
LEFT OUTER JOIN padrones padrones2 ON padre.id_padron = padrones2.id_padron
LEFT OUTER JOIN identificadores identificadores2 ON padrones2.identificador = identificadores2.identificador
LEFT OUTER JOIN balances_contables on LN_docs.id_externo = balances_contables.id_balance
LEFT OUTER JOIN monedas ON balances_contables.moneda = monedas.moneda
LEFT OUTER JOIN users users1 ON LN_docs.ingresado_por = users1.user_id
LEFT OUTER JOIN users users2 ON LN_docs.rechazado_por = users2.user_id
LEFT OUTER JOIN users users3 ON LN_docs.verificado_backend_por = users3.user_id
LEFT OUTER JOIN users users4 ON LN_docs.verificado_cliente_por = users4.user_id
LEFT OUTER JOIN users users5 ON LN_docs.created_by = users5.user_id
LEFT OUTER JOIN users users6 ON LN_docs.modified_by = users6.user_id
INNER JOIN LN_contraparte_familias on ln_contraparte_familias.contraparte = ln_contrapartes.contraparte
INNER JOIN LN_familias on LN_familias.familia = ln_contraparte_familias.familia
WHERE ln_docs.cliente = @p_cliente
/* AGB */
--and LN_tipos_doc.tipo_doc in (select tipo_doc from ln_tipos_doc where tipo_doc_padre is null )
/* AGB */
ORDER BY LN_docs.ingresado
END
end
DROP TABLE #tempDocsTable
END
END
GO
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
/*
exec ln_verificacion_docs_ 'queue',422946826,1,1226057645
exec ln_verificacion_docs_ 'queue',422946826
exec ln_verificacion_docs_ 'FACON_AGRUPADO',422946826,null,null,null,null,null,null,10
@p_activo tinyint = 1,
@p_cliente int = null,
@p_country_code varchar(2) = null,
@p_tipo_doc int = null,
@p_contraparte int = null,
@p_id_verif int = null,
@poronga varchar(20) = '47,73,10'
select * from clientes where cliente in (1226057645,
1226057645,
3920694,
3920694,
3920694,
3920694,
3920694,
3920694,
4390310)
*/
-- =============================================
CREATE OR ALTER PROCEDURE dbo.LN_verificacion_docs_
-- Add the parameters for the stored procedure here
@accion varchar(30),
@p_user_id int = null,
@p_activo tinyint = 1,
@p_cliente int = null,
@p_country_code varchar(2) = null,
@p_tipo_doc int = null,
@p_contraparte int = null,
@p_id_verif int = null,
@plataforma varchar(20) = '47,73,10'
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
if (@plataforma is null)
begin
set @plataforma='47,73'
end
if (@accion = 'insert') begin
if not exists (select user_id, cliente, country_code, tipo_doc, contraparte
from LN_verificacion_docs
where user_id = @p_user_id
and cliente = @p_cliente
and country_code = @p_country_code
and tipo_doc = @p_tipo_doc
and contraparte = @p_contraparte)
insert into LN_verificacion_docs
(user_id, activo, cliente, country_code, tipo_doc, contraparte)
values
(@p_user_id, @p_activo, @p_cliente, @p_country_code, @p_tipo_doc, @p_contraparte)
end else
if (@accion = 'delete') begin
if (@p_id_verif is not null)
delete from LN_verificacion_docs
where id_verif = @p_id_verif
end else
if (@accion = 'change') begin
update LN_verificacion_docs set
activo = iif(activo = 1, 0, 1)
where id_verif = @p_id_verif
end else
if (@accion = 'search') begin
if (@p_user_id is null)
select users.first_name, users.last_name, users.email, users.username,
clientes.nombre_cliente, country.country_name, clientes.cli_codigo,
LN_tipos_doc.nombre_tipo_doc, padrones.identificador, padrones.identificacion,
padrones.numero, identificadores.abreviatura, padrones.nombre_persona,
LN_verificacion_docs.cliente, LN_verificacion_docs.country_code,
LN_verificacion_docs.tipo_doc, LN_verificacion_docs.contraparte,
LN_verificacion_docs.activo, LN_verificacion_docs.user_id,
LN_verificacion_docs.id_verif
from LN_verificacion_docs
inner join users on LN_verificacion_docs.user_id = users.user_id
left outer join clientes on LN_verificacion_docs.cliente = clientes.cliente
left outer join LN_contrapartes on LN_verificacion_docs.contraparte = LN_contrapartes.contraparte
left outer join padrones ON LN_contrapartes.id_padron = padrones.id_padron
left outer join identificadores on padrones.identificador = identificadores.identificador
left outer join LN_tipos_doc on LN_verificacion_docs.tipo_doc = LN_tipos_doc.tipo_doc
left outer join country on LN_verificacion_docs.country_code = country.country_code
order by users.first_name, users.last_name
else
select users.first_name, users.last_name, users.email, users.username,
clientes.nombre_cliente, country.country_name, clientes.cli_codigo,
LN_tipos_doc.nombre_tipo_doc, padrones.identificador, padrones.identificacion,
padrones.numero, identificadores.abreviatura, padrones.nombre_persona,
LN_verificacion_docs.cliente, LN_verificacion_docs.country_code,
LN_verificacion_docs.tipo_doc, LN_verificacion_docs.contraparte,
LN_verificacion_docs.activo, LN_verificacion_docs.user_id,
LN_verificacion_docs.id_verif
from LN_verificacion_docs
inner join users on LN_verificacion_docs.user_id = users.user_id
left outer join clientes on LN_verificacion_docs.cliente = clientes.cliente
left outer join LN_contrapartes on LN_verificacion_docs.contraparte = LN_contrapartes.contraparte
left outer join padrones ON LN_contrapartes.id_padron = padrones.id_padron
left outer join identificadores on padrones.identificador = identificadores.identificador
left outer join LN_tipos_doc on LN_verificacion_docs.tipo_doc = LN_tipos_doc.tipo_doc
left outer join country on LN_verificacion_docs.country_code = country.country_code
where LN_verificacion_docs.user_id = @p_user_id
order by users.first_name, users.last_name
end else
IF (@p_user_id is not null) BEGIN
CREATE TABLE #tempDocsTable (
doc_id int,
PRIMARY KEY NONCLUSTERED (doc_id ASC)
)
DECLARE @docs VARCHAR(MAX)=''
DECLARE @doc int
DECLARE @cc varchar(2), @cl int, @td int, @cont int
DECLARE Permisos CURSOR FOR
select country_code, cliente, tipo_doc, contraparte
from LN_verificacion_docs
where user_id = @p_user_id
and activo = 1
order by country_code, cliente, tipo_doc, contraparte
OPEN Permisos
FETCH NEXT FROM Permisos INTO @cc, @cl, @td, @cont
WHILE @@FETCH_STATUS = 0 BEGIN
if (isnull(@cont,0) > 0) begin
/* por contraparte : ignora cliente y paĆs */
if (isnull(@td,0) > 0)
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where contraparte = @cont
and estado_doc = 'I'
and tipo_doc = @td
else
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where contraparte = @cont
and estado_doc = 'I'
end else begin
/* contraparte nula */
if (isnull(@cl,0) > 0) begin
/* por cliente */
if (@td is null AND @cc is null)
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where cliente = @cl
and estado_doc = 'I'
else
if (@td > 0 AND @cc is null)
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where cliente = @cl
and estado_doc = 'I'
and tipo_doc = @td
else
if (@td is null AND @cc is not null)
DECLARE Documentos CURSOR FOR
select LN_docs.doc_id from LN_docs
inner join LN_tipos_doc on LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
where LN_docs.cliente = @cl
and LN_docs.estado_doc = 'I'
and LN_tipos_doc.country_code = @cc
else
DECLARE Documentos CURSOR FOR
select LN_docs.doc_id from LN_docs
inner join LN_tipos_doc on LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
where LN_docs.cliente = @cl
and LN_docs.estado_doc = 'I'
and LN_docs.tipo_doc = @td
and LN_tipos_doc.country_code = @cc
end else begin
/* cliente nulo */
if (@td is null AND @cc is null)
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where estado_doc = 'I'
else
if (@td > 0 AND @cc is null)
DECLARE Documentos CURSOR FOR
select doc_id from LN_docs
where estado_doc = 'I'
and tipo_doc = @td
else
if (@td is null AND @cc is not null)
DECLARE Documentos CURSOR FOR
select LN_docs.doc_id from LN_docs
inner join LN_tipos_doc on LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
where LN_docs.estado_doc = 'I'
and LN_tipos_doc.country_code = @cc
else
DECLARE Documentos CURSOR FOR
select LN_docs.doc_id from LN_docs
inner join LN_tipos_doc on LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
where LN_docs.estado_doc = 'I'
and LN_docs.tipo_doc = @td
and LN_tipos_doc.country_code = @cc
end
end
Open Documentos
FETCH NEXT FROM Documentos INTO @doc
WHILE @@FETCH_STATUS = 0 BEGIN
--select @docs as ffff
if (@docs != '') begin set @docs = @docs + ',' end
set @docs = @docs + convert(varchar, @doc)
FETCH NEXT FROM Documentos INTO @doc
BEGIN TRY
INSERT INTO #tempDocsTable (doc_id) VALUES (@doc)
END TRY
BEGIN CATCH
END CATCH
END
Close Documentos
Deallocate Documentos
FETCH NEXT FROM Permisos INTO @cc, @cl, @td, @cont
END
CLOSE Permisos
DEALLOCATE Permisos
--select * from #tempDocsTable
--INSERT INTO #tempDocsTable (doc_id) VALUES (287126)
/* ACCION PARA NUEVOS FACONES QUE AGRUPAN DOCUMENTOS */
IF (@p_cliente IS NULL AND @accion='FACON_AGRUPADO' AND @docs IS NOT NULL) /*SI NO SE ESPECIFICA CLIENTE ASUMIMOS TODOS LOS CLIENTES*/
BEGIN
/*AGB RAMI*/
SELECT 'AA' as gg,@plataforma as PLATAFORMA,LN_contrapartes.servicio_contratado as Segmentado,
LN_docs.doc_id, LN_docs.contraparte, LN_docs.cliente, LN_docs.tipo_doc,
LN_docs.doc_version, LN_docs.estado_doc, LN_docs.doc_log, LN_docs.doc_attach,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'Pendiente de ingreso'
WHEN LN_docs.estado_doc = 'I' THEN 'Ingresado'
WHEN LN_docs.estado_doc = 'R' THEN 'Rechazado'
WHEN LN_docs.estado_doc = 'V' THEN 'Verificado'
END AS estado_documento,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'text-info'
WHEN LN_docs.estado_doc = 'I' THEN 'text-warning'
WHEN LN_docs.estado_doc = 'R' THEN 'text-danger'
WHEN LN_docs.estado_doc = 'V' THEN 'text-success'
END AS class_estado,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'cloud-upload fa-cloud-upload-alt'
WHEN LN_docs.estado_doc = 'I' THEN 'exclamation'
WHEN LN_docs.estado_doc = 'R' THEN 'times'
WHEN LN_docs.estado_doc = 'V' THEN 'check'
END AS icon_estado,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 103) AS fecha_vigencia,
iif(LN_docs.fecha_vigencia IS NOT NULL,
CASE
WHEN LN_tipos_doc.tipo_vigencia = 'M' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-1,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'B' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-2,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'T' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-3,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'C' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-4,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'S' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-6,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'A' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-12,LN_docs.fecha_vigencia)),103)
ELSE NULL
END, NULL) AS inicio_vigencia,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 121) AS fecha_vigencia_ymd,
CONVERT(VARCHAR, LN_docs.vencimiento_carga, 103) AS vencimiento_carga,
ISNULL(LN_tipos_doc.es_balance, 0) AS es_balance, LN_docs.texto_rechazo,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio, LN_docs.gestion,
CONVERT(VARCHAR,isnull(LN_docs.ingresado,LN_docs.created),103)+' '+CONVERT(VARCHAR(5),isnull(LN_docs.ingresado,LN_docs.created),14) as ingresado,
CONVERT(VARCHAR,isnull(LN_docs.ingresado,LN_docs.created),103) AS ingresado_dmy,
CONVERT(VARCHAR,isnull(LN_docs.ingresado,LN_docs.created),121) AS ingresado_ymd,
CONVERT(VARCHAR,LN_docs.rechazado,103)+' '+CONVERT(VARCHAR(5),LN_docs.rechazado,14) as rechazado,
CONVERT(VARCHAR,LN_docs.verificado_backend,103)+' '+CONVERT(VARCHAR(5),LN_docs.verificado_backend,14) as verificado_backend,
CONVERT(VARCHAR(19),LN_docs.verificado_cliente,121) as verificado_cliente,
CONVERT(VARCHAR(19),LN_docs.created,121) as created,
CONVERT(VARCHAR(19),LN_docs.modified,121) as modified,
LN_docs.ingresado_por, LN_docs.rechazado_por, LN_docs.verificado_backend_por,
LN_docs.verificado_cliente_por, LN_docs.created_by, LN_docs.modified_by,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.identificacion, padrones.numero, identificadores.abreviatura, identificadores.country_code,
country.country_name, LN_contrapartes.activo, LN_contrapartes.nombre_contacto,
LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
LN_tipos_doc.nombre_tipo_doc,LN_docs.id_externo,
users1.first_name + ' ' + users1.last_name AS ingresado_por_usuario,
users2.first_name + ' ' + users2.last_name AS rechazado_por_usuario,
users3.first_name + ' ' + users3.last_name AS verificado_backend_por_usuario,
users4.first_name + ' ' + users4.last_name AS verificado_cliente_por_usuario,
users5.first_name + ' ' + users5.last_name AS created_by_usuario,
users6.first_name + ' ' + users6.last_name AS modified_by_usuario,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 121) AS inicio_ejercicio_ymd,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 121) AS fin_ejercicio_ymd,
balances_contables.id_balance,
balances_contables.fecha_balance, balances_contables.ejercicio,
balances_contables.periodo, balances_contables.visible,
balances_contables.estado, balances_contables.ruta_archivo,
convert(varchar, balances_contables.fecha_balance, 103) as fecha_cierre,
balances_contables.moneda, monedas.nombre_moneda,
LN_contrapartes.id_padre, padrones2.nombre_persona as nombre_persona_padre,
padrones2.identificador as identificador_padre, padrones2.numero as numero_padre,
padrones2.identificacion as identificacion_padre,
identificadores2.abreviatura as abreviatura_padre, padre.id_padron as id_padron_padre,isnull(ln_docs.revisado,0) as revisado ,
informes.informe,ln_demo.integ_carga,ln_demo.integ_rech,ln_demo.integ_verif,ln_demo.docs_ok ,
iif(LN_contrapartes.carga_inicial=0,'NO','SI') as carga_inicial,
isnull(LN_contrapartes.limite_carga_inicial,getdate()-1) as limite_carga_inicial, getdate()-LN_contrapartes.limite_carga_inicial as limite,productos.nombre_producto as nombre_servicio
,ln_familias.nombre_familia
FROM LN_docs
/*INNER JOIN dbo.DelimitedSplit8K(@docs, ',') Docs on LN_docs.doc_id = Docs.Item*/
INNER JOIN #tempDocsTable ON LN_docs.doc_id = #tempDocsTable.doc_id
INNER JOIN clientes ON LN_docs.cliente = clientes.cliente
INNER JOIN LN_contrapartes ON LN_docs.contraparte = LN_contrapartes.contraparte
-- 04/06/2024 (que los documentos sean de la gestion actual)
INNER JOIN LN_gestiones on (LN_gestiones.contraparte = LN_docs.contraparte and LN_gestiones.gestion = LN_docs.gestion and LN_gestiones.vigente = 1)
--
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN country ON identificadores.country_code = country.country_code
INNER JOIN LN_tipos_doc ON LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
LEFT OUTER JOIN LN_contrapartes padre ON LN_contrapartes.id_padre = padre.contraparte
LEFT OUTER JOIN padrones padrones2 ON padre.id_padron = padrones2.id_padron
LEFT OUTER JOIN identificadores identificadores2 ON padrones2.identificador = identificadores2.identificador
LEFT OUTER JOIN balances_contables on LN_docs.id_externo = balances_contables.id_balance
LEFT OUTER JOIN monedas ON balances_contables.moneda = monedas.moneda
LEFT OUTER JOIN users users1 ON LN_docs.ingresado_por = users1.user_id
LEFT OUTER JOIN users users2 ON LN_docs.rechazado_por = users2.user_id
LEFT OUTER JOIN users users3 ON LN_docs.verificado_backend_por = users3.user_id
LEFT OUTER JOIN users users4 ON LN_docs.verificado_cliente_por = users4.user_id
LEFT OUTER JOIN users users5 ON LN_docs.created_by = users5.user_id
LEFT OUTER JOIN users users6 ON LN_docs.modified_by = users6.user_id
LEFT join ln_demo on (ln_docs.contraparte = ln_demo.contraparte and ln_docs.gestion = ln_demo.gestion)
LEFT join informes on ln_demo.informe = informes.informe
INNER JOIN dbo.DelimitedSplit8K(@plataforma, ',') Segmentado on LN_contrapartes.servicio_contratado = Segmentado.Item
/* AGB */
INNER join productos on ln_contrapartes.servicio_contratado = productos.producto
INNER JOIN LN_contraparte_familias on ln_contraparte_familias.contraparte = ln_contrapartes.contraparte
INNER JOIN LN_familias on LN_familias.familia = ln_contraparte_familias.familia
where LN_tipos_doc.tipo_doc in (select tipo_doc from ln_tipos_doc where tipo_doc_padre is null )
/*and LN_docs.doc_id in ( select LN_docs.doc_id from LN_docs where LN_docs.estado_doc = 'I')*/
/* AGB */
-- exec ln_verificacion_docs_AGB 'FACON_AGRUPADO',422946826
-- exec ln_verificacion_docs_ 'FACON_AGRUPADO',422946826
-- exec ln_verificacion_docs_ 'FACON_AGRUPADO',422946826,null,null,null,null,null,null,47
ORDER BY LN_docs.ingresado
END
/*AGB INSERTA */
if (@docs IS NOT NULL AND @accion !='FACON_AGRUPADO')
begin
IF (@p_cliente IS NULL) /*SI NO SE ESPECIFICA CLIENTE ASUMIMOS TODOS LOS CLIENTES MENOS EL BBVA 1226057645 */
BEGIN
SELECT LN_docs.doc_id, LN_docs.contraparte, LN_docs.cliente, LN_docs.tipo_doc,
LN_docs.doc_version, LN_docs.estado_doc, LN_docs.doc_log, LN_docs.doc_attach,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'Pendiente de ingreso'
WHEN LN_docs.estado_doc = 'I' THEN 'Ingresado'
WHEN LN_docs.estado_doc = 'R' THEN 'Rechazado'
WHEN LN_docs.estado_doc = 'V' THEN 'Verificado'
END AS estado_documento,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'text-info'
WHEN LN_docs.estado_doc = 'I' THEN 'text-warning'
WHEN LN_docs.estado_doc = 'R' THEN 'text-danger'
WHEN LN_docs.estado_doc = 'V' THEN 'text-success'
END AS class_estado,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'cloud-upload fa-cloud-upload-alt'
WHEN LN_docs.estado_doc = 'I' THEN 'exclamation'
WHEN LN_docs.estado_doc = 'R' THEN 'times'
WHEN LN_docs.estado_doc = 'V' THEN 'check'
END AS icon_estado,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 103) AS fecha_vigencia,
iif(LN_docs.fecha_vigencia IS NOT NULL,
CASE
WHEN LN_tipos_doc.tipo_vigencia = 'M' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-1,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'B' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-2,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'T' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-3,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'C' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-4,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'S' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-6,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'A' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-12,LN_docs.fecha_vigencia)),103)
ELSE NULL
END, NULL) AS inicio_vigencia,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 121) AS fecha_vigencia_ymd,
CONVERT(VARCHAR, LN_docs.vencimiento_carga, 103) AS vencimiento_carga,
ISNULL(LN_tipos_doc.es_balance, 0) AS es_balance, LN_docs.texto_rechazo,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio, LN_docs.gestion,
CONVERT(VARCHAR,LN_docs.ingresado,103)+' '+CONVERT(VARCHAR(5),LN_docs.ingresado,14) as ingresado,
CONVERT(VARCHAR,LN_docs.ingresado,103) AS ingresado_dmy,
CONVERT(VARCHAR,LN_docs.ingresado,121) AS ingresado_ymd,
CONVERT(VARCHAR,LN_docs.rechazado,103)+' '+CONVERT(VARCHAR(5),LN_docs.rechazado,14) as rechazado,
CONVERT(VARCHAR,LN_docs.verificado_backend,103)+' '+CONVERT(VARCHAR(5),LN_docs.verificado_backend,14) as verificado_backend,
CONVERT(VARCHAR(19),LN_docs.verificado_cliente,121) as verificado_cliente,
CONVERT(VARCHAR(19),LN_docs.created,121) as created,
CONVERT(VARCHAR(19),LN_docs.modified,121) as modified,
LN_docs.ingresado_por, LN_docs.rechazado_por, LN_docs.verificado_backend_por,
LN_docs.verificado_cliente_por, LN_docs.created_by, LN_docs.modified_by,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.identificacion, padrones.numero, identificadores.abreviatura, identificadores.country_code,
country.country_name, LN_contrapartes.activo, LN_contrapartes.nombre_contacto,
LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
LN_tipos_doc.nombre_tipo_doc,LN_docs.id_externo,
users1.first_name + ' ' + users1.last_name AS ingresado_por_usuario,
users2.first_name + ' ' + users2.last_name AS rechazado_por_usuario,
users3.first_name + ' ' + users3.last_name AS verificado_backend_por_usuario,
users4.first_name + ' ' + users4.last_name AS verificado_cliente_por_usuario,
users5.first_name + ' ' + users5.last_name AS created_by_usuario,
users6.first_name + ' ' + users6.last_name AS modified_by_usuario,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 121) AS inicio_ejercicio_ymd,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 121) AS fin_ejercicio_ymd,
balances_contables.id_balance,
balances_contables.fecha_balance, balances_contables.ejercicio,
balances_contables.periodo, balances_contables.visible,
balances_contables.estado, balances_contables.ruta_archivo,
convert(varchar, balances_contables.fecha_balance, 103) as fecha_cierre,
balances_contables.moneda, monedas.nombre_moneda,
LN_contrapartes.id_padre, padrones2.nombre_persona as nombre_persona_padre,
padrones2.identificador as identificador_padre, padrones2.numero as numero_padre,
padrones2.identificacion as identificacion_padre,
identificadores2.abreviatura as abreviatura_padre, padre.id_padron as id_padron_padre,isnull(ln_docs.revisado,0) as revisado ,
informes.informe,
ln_familias.nombre_familia
FROM LN_docs
/*INNER JOIN dbo.DelimitedSplit8K(@docs, ',') Docs on LN_docs.doc_id = Docs.Item*/
INNER JOIN #tempDocsTable ON LN_docs.doc_id = #tempDocsTable.doc_id
INNER JOIN clientes ON LN_docs.cliente = clientes.cliente
INNER JOIN LN_contrapartes ON LN_docs.contraparte = LN_contrapartes.contraparte
-- 04/06/2024 (que los documentos sean de la gestion actual)
INNER JOIN LN_gestiones on (LN_gestiones.contraparte = LN_docs.contraparte and LN_gestiones.gestion = LN_docs.gestion and LN_gestiones.vigente = 1)
--
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN country ON identificadores.country_code = country.country_code
INNER JOIN LN_tipos_doc ON LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
LEFT OUTER JOIN LN_contrapartes padre ON LN_contrapartes.id_padre = padre.contraparte
LEFT OUTER JOIN padrones padrones2 ON padre.id_padron = padrones2.id_padron
LEFT OUTER JOIN identificadores identificadores2 ON padrones2.identificador = identificadores2.identificador
LEFT OUTER JOIN balances_contables on LN_docs.id_externo = balances_contables.id_balance
LEFT OUTER JOIN monedas ON balances_contables.moneda = monedas.moneda
LEFT OUTER JOIN users users1 ON LN_docs.ingresado_por = users1.user_id
LEFT OUTER JOIN users users2 ON LN_docs.rechazado_por = users2.user_id
LEFT OUTER JOIN users users3 ON LN_docs.verificado_backend_por = users3.user_id
LEFT OUTER JOIN users users4 ON LN_docs.verificado_cliente_por = users4.user_id
LEFT OUTER JOIN users users5 ON LN_docs.created_by = users5.user_id
LEFT OUTER JOIN users users6 ON LN_docs.modified_by = users6.user_id
/* WHERE ln_docs.cliente != 1226057645 */
inner join ln_demo on (ln_docs.contraparte = ln_demo.contraparte and ln_docs.gestion = ln_demo.gestion)
inner join informes on ln_demo.informe = informes.informe
INNER JOIN LN_contraparte_familias on ln_contraparte_familias.contraparte = ln_contrapartes.contraparte
INNER JOIN LN_familias on LN_familias.familia = ln_contraparte_familias.familia
/* AGB */
/* where LN_tipos_doc.tipo_doc in (select tipo_doc from ln_tipos_doc where tipo_doc_padre is null )
lo remuevo porque hay documentos que estƔn como hijos de otros pero en los facones anteriores son principales y no se los ve para verificar, implementar un action diferente en el SP
*/
/* AGB */
ORDER BY LN_docs.ingresado
END
IF (@p_cliente IS NOT NULL) /*SE LISTAN SOLO LOS DEL CLIENTE SOLICITADO 1226057645 */
BEGIN
SELECT LN_docs.doc_id, LN_docs.contraparte, LN_docs.cliente, LN_docs.tipo_doc,
LN_docs.doc_version, LN_docs.estado_doc, LN_docs.doc_log, LN_docs.doc_attach,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'Pendiente de ingreso'
WHEN LN_docs.estado_doc = 'I' THEN 'Ingresado'
WHEN LN_docs.estado_doc = 'R' THEN 'Rechazado'
WHEN LN_docs.estado_doc = 'V' THEN 'Verificado'
END AS estado_documento,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'text-info'
WHEN LN_docs.estado_doc = 'I' THEN 'text-warning'
WHEN LN_docs.estado_doc = 'R' THEN 'text-danger'
WHEN LN_docs.estado_doc = 'V' THEN 'text-success'
END AS class_estado,
CASE
WHEN LN_docs.estado_doc = 'N' THEN 'cloud-upload fa-cloud-upload-alt'
WHEN LN_docs.estado_doc = 'I' THEN 'exclamation'
WHEN LN_docs.estado_doc = 'R' THEN 'times'
WHEN LN_docs.estado_doc = 'V' THEN 'check'
END AS icon_estado,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 103) AS fecha_vigencia,
iif(LN_docs.fecha_vigencia IS NOT NULL,
CASE
WHEN LN_tipos_doc.tipo_vigencia = 'M' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-1,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'B' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-2,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'T' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-3,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'C' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-4,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'S' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-6,LN_docs.fecha_vigencia)),103)
WHEN LN_tipos_doc.tipo_vigencia = 'A' THEN CONVERT(VARCHAR,DATEADD(DAY,1,DATEADD(MONTH,-12,LN_docs.fecha_vigencia)),103)
ELSE NULL
END, NULL) AS inicio_vigencia,
CONVERT(VARCHAR, LN_docs.fecha_vigencia, 121) AS fecha_vigencia_ymd,
CONVERT(VARCHAR, LN_docs.vencimiento_carga, 103) AS vencimiento_carga,
ISNULL(LN_tipos_doc.es_balance, 0) AS es_balance, LN_docs.texto_rechazo,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio, gestion,
CONVERT(VARCHAR,LN_docs.ingresado,103)+' '+CONVERT(VARCHAR(5),LN_docs.ingresado,14) as ingresado,
CONVERT(VARCHAR,LN_docs.ingresado,103) AS ingresado_dmy,
CONVERT(VARCHAR,LN_docs.ingresado,121) AS ingresado_ymd,
CONVERT(VARCHAR,LN_docs.rechazado,103)+' '+CONVERT(VARCHAR(5),LN_docs.rechazado,14) as rechazado,
CONVERT(VARCHAR,LN_docs.verificado_backend,103)+' '+CONVERT(VARCHAR(5),LN_docs.verificado_backend,14) as verificado_backend,
CONVERT(VARCHAR(19),LN_docs.verificado_cliente,121) as verificado_cliente,
CONVERT(VARCHAR(19),LN_docs.created,121) as created,
CONVERT(VARCHAR(19),LN_docs.modified,121) as modified,
LN_docs.ingresado_por, LN_docs.rechazado_por, LN_docs.verificado_backend_por,
LN_docs.verificado_cliente_por, LN_docs.created_by, LN_docs.modified_by,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.identificacion, padrones.numero, identificadores.abreviatura, identificadores.country_code,
country.country_name, LN_contrapartes.activo, LN_contrapartes.nombre_contacto,
LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
LN_tipos_doc.nombre_tipo_doc,LN_docs.id_externo,
users1.first_name + ' ' + users1.last_name AS ingresado_por_usuario,
users2.first_name + ' ' + users2.last_name AS rechazado_por_usuario,
users3.first_name + ' ' + users3.last_name AS verificado_backend_por_usuario,
users4.first_name + ' ' + users4.last_name AS verificado_cliente_por_usuario,
users5.first_name + ' ' + users5.last_name AS created_by_usuario,
users6.first_name + ' ' + users6.last_name AS modified_by_usuario,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 103) AS inicio_ejercicio,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 103) AS fin_ejercicio,
CONVERT(VARCHAR(10), LN_docs.inicio_ejercicio, 121) AS inicio_ejercicio_ymd,
CONVERT(VARCHAR(10), LN_docs.fin_ejercicio, 121) AS fin_ejercicio_ymd,
balances_contables.id_balance,
balances_contables.fecha_balance, balances_contables.ejercicio,
balances_contables.periodo, balances_contables.visible,
balances_contables.estado, balances_contables.ruta_archivo,
convert(varchar, balances_contables.fecha_balance, 103) as fecha_cierre,
balances_contables.moneda, monedas.nombre_moneda,
LN_contrapartes.id_padre, padrones2.nombre_persona as nombre_persona_padre,
padrones2.identificador as identificador_padre, padrones2.numero as numero_padre,
padrones2.identificacion as identificacion_padre,
identificadores2.abreviatura as abreviatura_padre, padre.id_padron as id_padron_padre,isnull(ln_docs.revisado,0) as revisado
,ln_familias.nombre_familia
FROM LN_docs
/*INNER JOIN dbo.DelimitedSplit8K(@docs, ',') Docs on LN_docs.doc_id = Docs.Item*/
INNER JOIN #tempDocsTable ON LN_docs.doc_id = #tempDocsTable.doc_id
INNER JOIN clientes ON LN_docs.cliente = clientes.cliente
INNER JOIN LN_contrapartes ON LN_docs.contraparte = LN_contrapartes.contraparte
-- 04/06/2024 (que los documentos sean de la gestion actual)
INNER JOIN LN_gestiones on (LN_gestiones.contraparte = LN_docs.contraparte and LN_gestiones.gestion = LN_docs.gestion and LN_gestiones.vigente = 1)
--
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN country ON identificadores.country_code = country.country_code
INNER JOIN LN_tipos_doc ON LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
LEFT OUTER JOIN LN_contrapartes padre ON LN_contrapartes.id_padre = padre.contraparte
LEFT OUTER JOIN padrones padrones2 ON padre.id_padron = padrones2.id_padron
LEFT OUTER JOIN identificadores identificadores2 ON padrones2.identificador = identificadores2.identificador
LEFT OUTER JOIN balances_contables on LN_docs.id_externo = balances_contables.id_balance
LEFT OUTER JOIN monedas ON balances_contables.moneda = monedas.moneda
LEFT OUTER JOIN users users1 ON LN_docs.ingresado_por = users1.user_id
LEFT OUTER JOIN users users2 ON LN_docs.rechazado_por = users2.user_id
LEFT OUTER JOIN users users3 ON LN_docs.verificado_backend_por = users3.user_id
LEFT OUTER JOIN users users4 ON LN_docs.verificado_cliente_por = users4.user_id
LEFT OUTER JOIN users users5 ON LN_docs.created_by = users5.user_id
LEFT OUTER JOIN users users6 ON LN_docs.modified_by = users6.user_id
INNER JOIN LN_contraparte_familias on ln_contraparte_familias.contraparte = ln_contrapartes.contraparte
INNER JOIN LN_familias on LN_familias.familia = ln_contraparte_familias.familia
WHERE ln_docs.cliente = @p_cliente
/* AGB */
--and LN_tipos_doc.tipo_doc in (select tipo_doc from ln_tipos_doc where tipo_doc_padre is null )
/* AGB */
ORDER BY LN_docs.ingresado
END
end
DROP TABLE #tempDocsTable
END
END
GO
Depends On
18Used By
No items found