Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
18| Name | Data Type | Length | Description |
|---|---|---|---|
| @accion | varchar | 40 | |
| @p_contraparte | int | 4 | |
| @p_id_padron | int | 4 | |
| @p_cliente | int | 4 | |
| @p_datos_comerciales | text | -1 | |
| @p_activo | tinyint | 1 | |
| @p_nombre_contacto | varchar | 512 | |
| @p_email_contacto | varchar | 512 | |
| @p_telefono_contacto | varchar | 512 | |
| @p_fecha_ultimo_cierre | datetime | 8 | |
| @p_periodicidad_ejercicio | varchar | 1 | |
| @p_clave | varchar | 80 | |
| @p_vigencia_desde | date | 3 | |
| @p_vigencia_hasta | date | 3 | |
| @p_user_id | int | 4 | |
| @p_subcontratista | bit | 1 | |
| @p_id_padre | int | 4 | |
| @p_id_producto | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
/*
select * from users where username='f0000'
exec ln_contrapartes_ 'insert',null,7,9700868,null,1,null,null,null,null,1063064806
Se agregó para la accion SEARCH la consideración del parámetro @p_id_padron
cuando @p_cliente IS NOT NULL para poder buscar una contraparte por id_padron
dentro del cliente y eliminar posibilidad de duplicaciones.
select * from ln_contrapartes where id_padron = (select id_padron from padrones where identificacion = '30708841532')
exec ln_contrapartes_ 'DOCUMENTOS_GESTION_ACTIVA',31286,null,null,null,null,null,null,null,null,null,null,null,null,null
select * from ln_docs where contraparte = 394 and aplica = 0
exec LN_contrapartes_DEV 'search_informes_contraparte', null, null, 5546348, null, null, null, null, null, null, null, null, null, null, 1, null, null, 73
exec LN_contrapartes_DEV 'search_contraparte', 107, null, 5546348, null, null, null, null, null, null, null, null, null, null, 1, null, null, null
*/
-- Description: <Description,,>
-- =============================================
CREATE OR ALTER PROCEDURE dbo.LN_contrapartes_DEV
-- Add the parameters for the stored procedure here
@accion varchar(40),
@p_contraparte int,
@p_id_padron int,
@p_cliente int,
@p_datos_comerciales text,
@p_activo tinyint,
@p_nombre_contacto varchar(512),
@p_email_contacto varchar(512),
@p_telefono_contacto varchar(512),
@p_fecha_ultimo_cierre datetime,
@p_periodicidad_ejercicio varchar(1),
@p_clave varchar(80),
@p_vigencia_desde date,
@p_vigencia_hasta date,
@p_user_id int,
@p_subcontratista bit = 0,
@p_id_padre int = NULL,
@p_id_producto int = NULL
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
DECLARE @country_code VARCHAR(2)
DECLARE @clave_anterior VARCHAR(80)
IF (@accion = 'INSERT') BEGIN
IF (@p_id_padron > 0 AND @p_cliente > 0) begin
DECLARE @contraparte int
SELECT @country_code = identificadores.country_code
FROM identificadores INNER JOIN padrones ON identificadores.identificador = padrones.identificador
WHERE padrones.id_padron = @p_id_padron
INSERT INTO LN_contrapartes (id_padron, cliente, country_code, datos_comerciales, activo,
nombre_contacto, email_contacto, telefono_contacto,
fecha_ultimo_cierre, periodicidad_ejercicio, vigencia_desde, vigencia_hasta,
clave, clave_temporal, clave_cambio, clave_expira,
subcontratista, id_padre,
created, created_by)
VALUES (@p_id_padron, @p_cliente, @country_code, @p_datos_comerciales, 1,
@p_nombre_contacto, @p_email_contacto, @p_telefono_contacto,
CONVERT(DATE,@p_fecha_ultimo_cierre), @p_periodicidad_ejercicio,
@p_vigencia_desde, @p_vigencia_hasta, @p_clave, 1,
NULL, DATEADD(day, 5, getdate()),
@p_subcontratista, @p_id_padre,
GETDATE(), @p_user_id)
SET @contraparte = SCOPE_IDENTITY()
SELECT @contraparte AS contraparte from LN_contrapartes
end
END ELSE
IF (@accion = 'UPDATE') BEGIN
/*SELECT @country_code = identificadores.country_code
FROM identificadores INNER JOIN padrones ON identificadores.identificador = padrones.identificador
WHERE padrones.id_padron = @p_id_padron*/
IF (@p_fecha_ultimo_cierre IS NULL)
SELECT @p_fecha_ultimo_cierre = fecha_ultimo_cierre
FROM LN_contrapartes
WHERE contraparte = @p_contraparte
IF (@p_periodicidad_ejercicio IS NULL)
SELECT @p_periodicidad_ejercicio = periodicidad_ejercicio
FROM LN_contrapartes
WHERE contraparte = @p_contraparte
UPDATE LN_contrapartes SET
/*id_padron = @p_id_padron,
cliente = @p_cliente,
country_code = @country_code,*/
datos_comerciales = @p_datos_comerciales,
activo = @p_activo,
nombre_contacto = @p_nombre_contacto,
email_contacto = @p_email_contacto,
telefono_contacto = @p_telefono_contacto,
fecha_ultimo_cierre = CONVERT(DATE,@p_fecha_ultimo_cierre),
periodicidad_ejercicio = @p_periodicidad_ejercicio,
subcontratista = @p_subcontratista,
id_padre = @p_id_padre,
vigencia_desde = @p_vigencia_desde,
vigencia_hasta = @p_vigencia_hasta,
modified = GETDATE(),
modified_by = @p_user_id
WHERE contraparte = @p_contraparte
END ELSE
IF (@accion = 'CHANGE_PASSWORD') BEGIN
SELECT @clave_anterior = clave FROM LN_contrapartes
WHERE contraparte = @p_contraparte
IF (@clave_anterior <> @p_clave) BEGIN
if (@p_user_id > 0)
UPDATE LN_contrapartes SET
clave = @p_clave,
clave_cambio = GETDATE(),
clave_expira = DATEADD(day, 90, getdate()),
clave_temporal = 0,
modified = GETDATE(),
modified_by = @p_user_id
WHERE contraparte = @p_contraparte
else
UPDATE LN_contrapartes SET
clave = @p_clave,
clave_cambio = GETDATE(),
clave_expira = DATEADD(day, 90, getdate()),
clave_temporal = 0
WHERE contraparte = @p_contraparte
END
END ELSE
IF (@accion = 'SELECT') BEGIN
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
LN_contrapartes.subcontratista, LN_contrapartes.id_padre,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 103) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(10), LN_contrapartes.created, 103) as created_str,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
p2.nombre_persona as nombre_persona_padre,
p2.identificador as identificador_padre,
p2.numero as numero_padre,
p2.identificacion as identificacion_padre,
i2.abreviatura as abreviatura_padre,
c2.country_code as country_code_padre,
c2.country_name as country_name_padre,
CONVERT(VARCHAR,LN_contrapartes.inicio_actividades,103) AS inicio_actividades,
LN_contrapartes.empleados, LN_contrapartes.resenia,
convert(varchar(10),LN_contrapartes.limite_carga_inicial,103) as limite_carga_inicial
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_contrapartes PADRE on LN_contrapartes.id_padre = PADRE.contraparte
LEFT OUTER JOIN padrones p2 on PADRE.id_padron = p2.id_padron
LEFT OUTER JOIN identificadores i2 on p2.identificador = i2.identificador
LEFT OUTER JOIN country c2 on i2.country_code = c2.country_code
WHERE LN_contrapartes.contraparte = @p_contraparte
END ELSE
IF (@accion = 'SEARCH') BEGIN
if(@p_cliente is null AND @p_activo is null) begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion
FROM LN_contrapartes
INNER JOIN ln_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.subcontratista = 0
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
ORDER BY padrones.nombre_persona
end else
if (@p_cliente is not null AND @p_activo is null) begin
if (@p_id_padron is null) begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
ORDER BY padrones.nombre_persona
/*
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_demo.informe as informe
--es acá
FROM LN_contrapartes
INNER JOIN LN_demo ON LN_demo.contraparte = LN_contrapartes.contraparte
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
ORDER BY padrones.nombre_persona
*/
end else begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.id_padron = @p_id_padron
ORDER BY padrones.nombre_persona
end
end else
if (@p_cliente is null AND @p_activo is not null) begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.activo = @p_activo
AND LN_contrapartes.subcontratista = 0
and LN_contrapartes.servicio_contratado = isnull(@p_id_producto,47)
ORDER BY padrones.nombre_persona
end else
if (@p_id_padron is null) begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.activo = @p_activo
AND LN_contrapartes.subcontratista = 0
and LN_contrapartes.servicio_contratado = isnull(@p_id_producto,47)
ORDER BY padrones.nombre_persona
end else begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.activo = @p_activo
AND LN_contrapartes.id_padron = @p_id_padron
and LN_contrapartes.servicio_contratado = isnull(@p_id_producto,47)
ORDER BY padrones.nombre_persona
end
END ELSE
IF (@accion = 'DELETE') BEGIN
DELETE FROM LN_contrapartes WHERE contraparte = @p_contraparte
END ELSE
IF (@accion = 'NOVEDADES') BEGIN
select LN_contrapartes.contraparte, monitoreos_resultados.cuit,
CONVERT(VARCHAR, monitoreos_resultados.fecha, 103) AS fecha_dmy,
CONVERT(VARCHAR, monitoreos_resultados.fecha, 121) AS fecha,
monitoreos_resultados.tipo_novedad, padrones.nombre_persona,
monitoreos_resultados.seccion_mantenimiento,
monitoreos_resultados.tabla
from monitoreos_resultados
inner join padrones on monitoreos_resultados.cuit = padrones.identificacion
inner join LN_contrapartes on padrones.id_padron = LN_contrapartes.id_padron
where LN_contrapartes.contraparte = @p_contraparte
and monitoreos_resultados.seccion_mantenimiento <> 7
group by LN_contrapartes.contraparte, monitoreos_resultados.cuit,
monitoreos_resultados.fecha, monitoreos_resultados.tipo_novedad,
padrones.nombre_persona, monitoreos_resultados.seccion_mantenimiento,
monitoreos_resultados.tabla
order by monitoreos_resultados.fecha desc, monitoreos_resultados.tipo_novedad
END ELSE
IF (@accion = 'DOCUMENTOS_GESTION_ACTIVA') BEGIN
SELECT LN_docs.doc_id, LN_docs.contraparte, LN_docs.cliente, LN_docs.tipo_doc,
LN_docs.doc_version,
IIF(ln_docs.aplica = 0, 'N',LN_docs.estado_doc) as estado_doc,
LN_docs.doc_log, LN_docs.doc_attach,
IIF(ln_docs.aplica = 0, 'No solicitado',
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,
IIF(ln_docs.aplica = 0, 'text-info',
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,
IIF(ln_docs.aplica = 0, 'minus',
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,
IIF(ln_docs.aplica = 0, '999',
CASE
WHEN LN_docs.estado_doc = 'N' THEN 1
WHEN LN_docs.estado_doc = 'I' THEN 3
WHEN LN_docs.estado_doc = 'R' THEN 2
WHEN LN_docs.estado_doc = 'V' THEN 4
END) AS orden_estado,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.fecha_vigencia, 112)) AS fecha_vigencia,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.fecha_vigencia, 103)) AS fecha_vigencia_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.vencimiento_carga, 112)) AS vencimiento_carga,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.vencimiento_carga, 103)) AS vencimiento_carga_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.created, 112)) AS created,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.created, 103)) AS created_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.modified, 112)) AS modified,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.modified, 103)) AS modified_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.ingresado, 112)) AS ingresado,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.ingresado, 103)) AS ingresado_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.rechazado, 112)) AS rechazado,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.rechazado, 103)) AS rechazado_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.verificado_backend, 112)) AS verificado_backend,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.verificado_backend, 103)) AS verificado_backend_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.verificado_cliente, 112)) AS verificado_cliente,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.verificado_cliente, 103)) AS verificado_cliente_dmy,
ISNULL(LN_tipos_doc.es_balance, 0) AS es_balance,
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,
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.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_tipos_doc.tipo_vigencia, 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,
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
FROM LN_docs
INNER JOIN clientes ON LN_docs.cliente = clientes.cliente
INNER JOIN LN_contrapartes ON LN_docs.contraparte = LN_contrapartes.contraparte
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
INNER JOIN LN_gestiones ON (LN_contrapartes.contraparte = LN_gestiones.contraparte
AND LN_docs.gestion = LN_gestiones.gestion)
INNER JOIN LN_contraparte_familias ON LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
INNER JOIN LN_familias ON LN_contraparte_familias.familia = LN_familias.familia
INNER JOIN LN_set_tipo_doc ON (LN_familias.set_doc = LN_set_tipo_doc.set_doc
AND LN_tipos_doc.tipo_doc = LN_set_tipo_doc.tipo_doc
AND LN_set_tipo_doc.activo = 1)
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_contrapartes.contraparte = @p_contraparte
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
AND LN_docs.estado_doc != 'X'
AND (LN_docs.aplica = 1 OR
(LN_docs.aplica = 0 and
not exists (select * from LN_docs b
where b.contraparte = ln_docs.contraparte
and b.tipo_doc = ln_docs.tipo_doc
and b.gestion = ln_docs.gestion
and b.aplica = 1))
)
ORDER BY clientes.nombre_cliente, padrones.nombre_persona, LN_docs.aplica desc, orden_estado, LN_set_tipo_doc.orden, LN_tipos_doc.nombre_tipo_doc, LN_docs.doc_version
END ELSE
IF (@accion = 'PRODUCTO_SUBCONTRATISTAS') BEGIN
/* dada una contraparte, determinar si puede dar de alta subcontratistas
en función de los productos asociados al cliente y la familia a la
que pertenece la misma */
select LN_productos.producto
from LN_contraparte_familias
inner join LN_contrapartes ON LN_contraparte_familias.contraparte = LN_contrapartes.contraparte
inner join LN_gestiones ON LN_contrapartes.contraparte = LN_gestiones.contraparte
inner join LN_familias ON (LN_contraparte_familias.familia = LN_familias.familia
AND LN_contrapartes.cliente = LN_familias.cliente)
inner join LN_familia_productos ON LN_familias.familia = LN_familia_productos.familia
inner join LN_cliente_productos ON (LN_familias.cliente = LN_cliente_productos.cliente
AND LN_familia_productos.producto = LN_cliente_productos.producto)
inner join LN_productos on LN_cliente_productos.producto = LN_productos.producto
where LN_contraparte_familias.contraparte = @p_contraparte
AND LN_productos.subcontratistas = 1
AND LN_familias.visible = 1
AND LN_familia_productos.activo = 1
AND LN_cliente_productos.activo = 1
AND LN_productos.visible = 1
AND LN_gestiones.desde <= getdate() AND LN_gestiones.hasta >= getdate()
END ELSE
IF (@accion = 'DOCUMENTOS_SUBCONTRATISTAS') BEGIN
/* dada una contraparte (PADRE), determinar si existen productos del tipo documentación
asociada a sus subcontratistas, a través de las subfamilias correspondientes */
select LN_productos.producto
from LN_contraparte_familias
inner join LN_contrapartes ON LN_contraparte_familias.contraparte = LN_contrapartes.contraparte
inner join LN_gestiones ON LN_contrapartes.contraparte = LN_gestiones.contraparte
inner join LN_familias ON (LN_contraparte_familias.familia = LN_familias.familia
AND LN_contrapartes.cliente = LN_familias.cliente)
inner join LN_familia_productos ON LN_familias.familia = LN_familia_productos.familia
inner join LN_cliente_productos ON (LN_familias.cliente = LN_cliente_productos.cliente
AND LN_familia_productos.producto = LN_cliente_productos.producto)
inner join LN_productos on LN_cliente_productos.producto = LN_productos.producto
/* este join es para exigir que las subfamilias de subcontratistas estén vinculadas
a al menos una familia de la contraparte padre */
inner join (select LN_subfamilias.familia
from LN_subfamilias
inner join LN_familias on LN_subfamilias.familia = LN_familias.familia
inner join LN_contraparte_familias on LN_subfamilias.familia_padre = LN_contraparte_familias.familia
where LN_contraparte_familias.contraparte = @p_contraparte
and LN_familias.subfamilia = 1
group by LN_subfamilias.familia) subf ON LN_familia_productos.familia = subf.familia
where LN_contrapartes.id_padre = @p_contraparte
AND LN_contrapartes.subcontratista = 1
AND LN_productos.documentos = 1
AND LN_familias.visible = 1
AND LN_familia_productos.activo = 1
AND LN_cliente_productos.activo = 1
AND LN_productos.visible = 1
AND LN_gestiones.desde <= getdate() AND LN_gestiones.hasta >= getdate()
group by LN_productos.producto
END ELSE
/* Específico para el update de datos de contraparte desde el backend */
IF (@accion = 'UPDATE_BACKEND') BEGIN
UPDATE LN_contrapartes SET
datos_comerciales = @p_datos_comerciales,
activo = @p_activo,
nombre_contacto = @p_nombre_contacto,
email_contacto = @p_email_contacto,
telefono_contacto = @p_telefono_contacto,
vigencia_desde = @p_vigencia_desde,
vigencia_hasta = @p_vigencia_hasta,
modified = GETDATE(),
modified_by = @p_user_id
WHERE contraparte = @p_contraparte
END ELSE
/* Devolver un query con una columna modalidad_login con valores 'T' o 'L' según configuración --por tax id o por link */
IF (@accion = 'MODALIDAD_LOGIN') BEGIN
if (@p_contraparte is not null) begin
declare @modo varchar(1) = 'L', @ml varchar(1)
DECLARE Familias CURSOR FOR
select distinct ISNULL(LN_familias.modalidad_login, 'T') AS modalidad_login
from LN_contrapartes inner join LN_contraparte_familias on
LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join LN_familias on (LN_contraparte_familias.familia = LN_familias.familia
and LN_contrapartes.cliente = LN_familias.cliente)
where LN_contraparte_familias.contraparte = @p_contraparte
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
Open Familias
Fetch next from Familias into @ml
While @@FETCH_STATUS = 0 begin
if (@modo != 'T') begin
set @modo = @ml
end
Fetch next from Familias into @ml
End
Close Familias
Deallocate Familias
SELECT @p_contraparte AS contraparte, @modo AS modalidad_login
end
END
if (@accion ='search_informes_contraparteAGB')
BEGIN
select @p_id_producto as IDP
if (@p_id_producto is null)
SELECT LN_contrapartes.contraparte,ln_familias.nombre_familia, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
ISNULL(LN_contrapartes.modalidad_pago, 'CC') as modalidad_pago,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_gestiones.desde as desde,
CONVERT(VARCHAR, LN_gestiones.desde,103) AS gestion_desde,
CONVERT(VARCHAR, LN_gestiones.hasta,103) AS gestion_hasta,
LN_demo.informe as informe,
LN_productos.dossier,
/*,FAMPRODACTIVO.ACTIVO AS AGBACTIVO,LN_demo.producto as prodAGB,*/
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.status) AS status,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.valor) AS valor,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.moneda) AS moneda
--es acá
,ln_contrapartes.servicio_contratado,
UPPER(productos.nombre_producto) as servicio_contratado_name,
case LN_gestiones.Iv_informe
when 1 then 'SI'
when 0 then 'NO'
else null
end as iv_informe,
iif(isnull(CDE.DE,0) > 0,1,0) as tiene_de,
iif(isnull(CLCS.LCS, 0) > 0,1,0) as tiene_lcs,
iif(isnull(MLCS.LCS, 0) > 0,1,0) as tiene_mlcs,
iif(isnull(PP.PP, 0) > 0,1,0) as tiene_pp,
ln_contrapartes.pais_servicio as pais_servicio_cod,
pais_servicio.country_name as pais_servicio
FROM LN_contrapartes
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN country pais_servicio ON LN_contrapartes.pais_servicio = pais_servicio.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join ln_familias on LN_contraparte_familias.familia = ln_familias.familia
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_demo ON (LN_contrapartes.contraparte = LN_demo.contraparte AND LN_gestiones.gestion = LN_demo.gestion)
LEFT OUTER JOIN LN_productos ON LN_demo.producto = LN_productos.producto
LEFT OUTER JOIN productos on productos.producto = LN_contrapartes.servicio_contratado
/*
left join LN_familia_productos FAMPRODACTIVO on (LN_familias.familia=FAMPRODACTIVO.familia)
left OUTER JOIN LN_demo DEMOACT ON (LN_contrapartes.contraparte = DEMOACT.contraparte AND LN_gestiones.gestion = LN_demo.gestion and FAMPRODACTIVO.producto = DEMOACT.producto and FAMPRODACTIVO.activo=1)
-- left join LN_familia_productos FAMPRODACTIVO on (LN_DEMO.producto=FAMPRODACTIVO.producto and FAMPRODACTIVO.activo=1)
*/
LEFT OUTER JOIN pagos_transacciones ON LN_contrapartes.contraparte = pagos_transacciones.contraparte
left outer join (select FP.familia, count(*) as DE from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('dependEconomica','dependEconomicaBal')
group by FP.familia) CDE
on (CDE.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCredito')
group by FP.familia) CLCS
on (CLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCreditoMultiple')
group by FP.familia) MLCS
on (MLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as PP from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('planespago')
group by FP.familia) PP
on (PP.familia = LN_contraparte_familias.familia)
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
--AND LN_contrapartes.activo = 1
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
and ln_contrapartes.contraparte=83613
ORDER BY padrones.nombre_persona
else
SELECT LN_contrapartes.contraparte,ln_familias.nombre_familia, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
ISNULL(LN_contrapartes.modalidad_pago, 'CC') as modalidad_pago,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_gestiones.desde as desde,
CONVERT(VARCHAR, LN_gestiones.desde,103) AS gestion_desde,
CONVERT(VARCHAR, LN_gestiones.hasta,103) AS gestion_hasta,
LN_demo.informe as informe, LN_productos.dossier,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.status) AS status,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.valor) AS valor,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.moneda) AS moneda
--es acá
,ln_contrapartes.servicio_contratado,
UPPER(productos.nombre_producto) as servicio_contratado_name,
case LN_gestiones.Iv_informe
when 1 then 'SI'
when 0 then 'NO'
else null
end as iv_informe,
iif(isnull(CDE.DE,0) > 0,1,0) as tiene_de,
iif(isnull(CLCS.LCS, 0) > 0,1,0) as tiene_lcs,
iif(isnull(MLCS.LCS, 0) > 0,1,0) as tiene_mlcs,
iif(isnull(PP.PP, 0) > 0,1,0) as tiene_PP,
ln_contrapartes.pais_servicio as pais_servicio_cod,
pais_servicio.country_name as pais_servicio
FROM LN_contrapartes
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN country pais_servicio ON LN_contrapartes.pais_servicio = pais_servicio.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join ln_familias on LN_contraparte_familias.familia = ln_familias.familia
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_demo ON (LN_contrapartes.contraparte = LN_demo.contraparte
AND LN_gestiones.gestion = LN_demo.gestion)
LEFT OUTER JOIN LN_productos ON LN_demo.producto = LN_productos.producto
LEFT OUTER JOIN productos on productos.producto = LN_contrapartes.servicio_contratado
LEFT OUTER JOIN pagos_transacciones ON LN_contrapartes.contraparte = pagos_transacciones.contraparte
left outer join (select FP.familia, count(*) as DE from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('dependEconomica','dependEconomicaBal')
group by FP.familia) CDE
on (CDE.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCredito')
group by FP.familia) CLCS
on (CLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCreditoMultiple')
group by FP.familia) MLCS
on (MLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as PP from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('planespago')
group by FP.familia) PP
on (PP.familia = LN_contraparte_familias.familia)
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
--AND LN_contrapartes.activo = 1
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
AND LN_familias.id_producto = @p_id_producto
ORDER BY padrones.nombre_persona
end
/*** uso unicamente en backend en lista de contrapartes de un cliente. si se pasa el parámetro id_producto, toma las familias
asociadas al mismo (47 = LED , 10 = INQUIRO) */
if (@accion ='search_informes_contraparte')
BEGIN
if (@p_id_producto is null)
SELECT distinct LN_contrapartes.contraparte,ln_familias.nombre_familia, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, convert(varchar(max),LN_contrapartes.datos_comerciales) as datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
ISNULL(LN_contrapartes.modalidad_pago, 'CC') as modalidad_pago,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_gestiones.desde as desde,
CONVERT(VARCHAR, LN_gestiones.desde,103) AS gestion_desde,
CONVERT(VARCHAR, LN_gestiones.hasta,103) AS gestion_hasta,
LN_demo.informe as informe, LN_productos.dossier,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.status) AS status,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.valor) AS valor,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.moneda) AS moneda
--es acá
,ln_contrapartes.servicio_contratado,
UPPER(productos.nombre_producto) as servicio_contratado_name,
case LN_gestiones.Iv_informe
when 1 then 'SI'
when 0 then 'NO'
else null
end as iv_informe,
iif(isnull(CDE.DE,0) > 0,1,0) as tiene_de,
iif(isnull(CLCS.LCS, 0) > 0,1,0) as tiene_lcs,
iif(isnull(MLCS.LCS, 0) > 0,1,0) as tiene_mlcs,
iif(isnull(PP.PP, 0) > 0,1,0) as tiene_pp,
ln_contrapartes.pais_servicio as pais_servicio_cod,
pais_servicio.country_name as pais_servicio,
led_contratistas.codigo_interno
FROM LN_contrapartes
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN country pais_servicio ON LN_contrapartes.pais_servicio = pais_servicio.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join ln_familias on LN_contraparte_familias.familia = ln_familias.familia
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_demo ON (LN_contrapartes.contraparte = LN_demo.contraparte
AND LN_gestiones.gestion = LN_demo.gestion)
LEFT OUTER JOIN LN_productos ON LN_demo.producto = LN_productos.producto
LEFT OUTER JOIN productos on productos.producto = LN_contrapartes.servicio_contratado
LEFT JOIN led_contratistas ON LN_contrapartes.id_imperium=led_contratistas.contratista
LEFT OUTER JOIN pagos_transacciones ON LN_contrapartes.contraparte = pagos_transacciones.contraparte
left outer join (select FP.familia, count(*) as DE from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('dependEconomica','dependEconomicaBal')
group by FP.familia) CDE
on (CDE.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCredito')
group by FP.familia) CLCS
on (CLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCreditoMultiple')
group by FP.familia) MLCS
on (MLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as PP from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('planespago')
group by FP.familia) PP
on (PP.familia = LN_contraparte_familias.familia)
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
--AND LN_contrapartes.activo = 1
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
ORDER BY padrones.nombre_persona
else
SELECT distinct LN_contrapartes.contraparte,ln_familias.nombre_familia, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, convert(varchar(max),LN_contrapartes.datos_comerciales) as datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
ISNULL(LN_contrapartes.modalidad_pago, 'CC') as modalidad_pago,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_gestiones.desde as desde,
CONVERT(VARCHAR, LN_gestiones.desde,103) AS gestion_desde,
CONVERT(VARCHAR, LN_gestiones.hasta,103) AS gestion_hasta,
LN_demo.informe as informe, LN_productos.dossier,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.status) AS status,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.valor) AS valor,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.moneda) AS moneda
--es acá
,ln_contrapartes.servicio_contratado,
UPPER(productos.nombre_producto) as servicio_contratado_name,
case LN_gestiones.Iv_informe
when 1 then 'SI'
when 0 then 'NO'
else null
end as iv_informe,
iif(isnull(CDE.DE,0) > 0,1,0) as tiene_de,
iif(isnull(CLCS.LCS, 0) > 0,1,0) as tiene_lcs,
iif(isnull(MLCS.LCS, 0) > 0,1,0) as tiene_mlcs,
iif(isnull(PP.PP, 0) > 0,1,0) as tiene_PP,
ln_contrapartes.pais_servicio as pais_servicio_cod,
pais_servicio.country_name as pais_servicio
FROM LN_contrapartes
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN country pais_servicio ON LN_contrapartes.pais_servicio = pais_servicio.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join ln_familias on LN_contraparte_familias.familia = ln_familias.familia
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_demo ON (LN_contrapartes.contraparte = LN_demo.contraparte
AND LN_gestiones.gestion = LN_demo.gestion)
LEFT OUTER JOIN LN_productos ON LN_demo.producto = LN_productos.producto
LEFT OUTER JOIN productos on productos.producto = LN_contrapartes.servicio_contratado
LEFT OUTER JOIN pagos_transacciones ON LN_contrapartes.contraparte = pagos_transacciones.contraparte
left outer join (select FP.familia, count(*) as DE from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('dependEconomica','dependEconomicaBal')
group by FP.familia) CDE
on (CDE.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCredito')
group by FP.familia) CLCS
on (CLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCreditoMultiple')
group by FP.familia) MLCS
on (MLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as PP from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('planespago')
group by FP.familia) PP
on (PP.familia = LN_contraparte_familias.familia)
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
--AND LN_contrapartes.activo = 1
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
AND LN_familias.id_producto = @p_id_producto
ORDER BY padrones.nombre_persona
END
if (@accion ='search_contraparte')
BEGIN
SELECT top 1 LN_contrapartes.contraparte,ln_familias.nombre_familia, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
ISNULL(LN_contrapartes.modalidad_pago, 'CC') as modalidad_pago,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_gestiones.desde as desde,
CONVERT(VARCHAR, LN_gestiones.desde,103) AS gestion_desde,
CONVERT(VARCHAR, LN_gestiones.hasta,103) AS gestion_hasta,
LN_demo.informe as informe, LN_productos.dossier,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.status) AS status,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.valor) AS valor,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.moneda) AS moneda
--es acá
,ln_contrapartes.servicio_contratado,
UPPER(productos.nombre_producto) as servicio_contratado_name,
case LN_gestiones.Iv_informe
when 1 then 'SI'
when 0 then 'NO'
else null
end as iv_informe,
iif(isnull(CDE.DE,0) > 0,1,0) as tiene_de,
iif(isnull(CLCS.LCS, 0) > 0,1,0) as tiene_lcs ,
iif(isnull(MLCS.LCS, 0) > 0,1,0) as tiene_mlcs,
iif(isnull(PP.PP, 0) > 0,1,0) as tiene_PP,
pais_servicio.country_name as pais_servicio
FROM LN_contrapartes
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN country pais_servicio ON LN_contrapartes.pais_servicio = pais_servicio.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join ln_familias on LN_contraparte_familias.familia = ln_familias.familia
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_demo ON (LN_contrapartes.contraparte = LN_demo.contraparte
AND LN_gestiones.gestion = LN_demo.gestion)
LEFT OUTER JOIN LN_productos ON LN_demo.producto = LN_productos.producto
LEFT OUTER JOIN productos on productos.producto = LN_contrapartes.servicio_contratado
LEFT OUTER JOIN pagos_transacciones ON LN_contrapartes.contraparte = pagos_transacciones.contraparte
left outer join (select FP.familia, count(*) as DE from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('dependEconomica','dependEconomicaBal')
group by FP.familia) CDE
on (CDE.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCredito')
group by FP.familia) CLCS
on (CLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCreditoMultiple')
group by FP.familia) MLCS
on (MLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as PP from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('planespago')
group by FP.familia) PP
on (PP.familia = LN_contraparte_familias.familia)
WHERE LN_contrapartes.contraparte = @p_contraparte
--AND LN_contrapartes.subcontratista = 0
--AND LN_contrapartes.activo = 1
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
AND LN_gestiones.vigente = 1
ORDER BY padrones.nombre_persona
END
END
GO
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
/*
select * from users where username='f0000'
exec ln_contrapartes_ 'insert',null,7,9700868,null,1,null,null,null,null,1063064806
Se agregó para la accion SEARCH la consideración del parámetro @p_id_padron
cuando @p_cliente IS NOT NULL para poder buscar una contraparte por id_padron
dentro del cliente y eliminar posibilidad de duplicaciones.
select * from ln_contrapartes where id_padron = (select id_padron from padrones where identificacion = '30708841532')
exec ln_contrapartes_ 'DOCUMENTOS_GESTION_ACTIVA',31286,null,null,null,null,null,null,null,null,null,null,null,null,null
select * from ln_docs where contraparte = 394 and aplica = 0
exec LN_contrapartes_DEV 'search_informes_contraparte', null, null, 5546348, null, null, null, null, null, null, null, null, null, null, 1, null, null, 73
exec LN_contrapartes_DEV 'search_contraparte', 107, null, 5546348, null, null, null, null, null, null, null, null, null, null, 1, null, null, null
*/
-- Description: <Description,,>
-- =============================================
CREATE OR ALTER PROCEDURE dbo.LN_contrapartes_DEV
-- Add the parameters for the stored procedure here
@accion varchar(40),
@p_contraparte int,
@p_id_padron int,
@p_cliente int,
@p_datos_comerciales text,
@p_activo tinyint,
@p_nombre_contacto varchar(512),
@p_email_contacto varchar(512),
@p_telefono_contacto varchar(512),
@p_fecha_ultimo_cierre datetime,
@p_periodicidad_ejercicio varchar(1),
@p_clave varchar(80),
@p_vigencia_desde date,
@p_vigencia_hasta date,
@p_user_id int,
@p_subcontratista bit = 0,
@p_id_padre int = NULL,
@p_id_producto int = NULL
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
DECLARE @country_code VARCHAR(2)
DECLARE @clave_anterior VARCHAR(80)
IF (@accion = 'INSERT') BEGIN
IF (@p_id_padron > 0 AND @p_cliente > 0) begin
DECLARE @contraparte int
SELECT @country_code = identificadores.country_code
FROM identificadores INNER JOIN padrones ON identificadores.identificador = padrones.identificador
WHERE padrones.id_padron = @p_id_padron
INSERT INTO LN_contrapartes (id_padron, cliente, country_code, datos_comerciales, activo,
nombre_contacto, email_contacto, telefono_contacto,
fecha_ultimo_cierre, periodicidad_ejercicio, vigencia_desde, vigencia_hasta,
clave, clave_temporal, clave_cambio, clave_expira,
subcontratista, id_padre,
created, created_by)
VALUES (@p_id_padron, @p_cliente, @country_code, @p_datos_comerciales, 1,
@p_nombre_contacto, @p_email_contacto, @p_telefono_contacto,
CONVERT(DATE,@p_fecha_ultimo_cierre), @p_periodicidad_ejercicio,
@p_vigencia_desde, @p_vigencia_hasta, @p_clave, 1,
NULL, DATEADD(day, 5, getdate()),
@p_subcontratista, @p_id_padre,
GETDATE(), @p_user_id)
SET @contraparte = SCOPE_IDENTITY()
SELECT @contraparte AS contraparte from LN_contrapartes
end
END ELSE
IF (@accion = 'UPDATE') BEGIN
/*SELECT @country_code = identificadores.country_code
FROM identificadores INNER JOIN padrones ON identificadores.identificador = padrones.identificador
WHERE padrones.id_padron = @p_id_padron*/
IF (@p_fecha_ultimo_cierre IS NULL)
SELECT @p_fecha_ultimo_cierre = fecha_ultimo_cierre
FROM LN_contrapartes
WHERE contraparte = @p_contraparte
IF (@p_periodicidad_ejercicio IS NULL)
SELECT @p_periodicidad_ejercicio = periodicidad_ejercicio
FROM LN_contrapartes
WHERE contraparte = @p_contraparte
UPDATE LN_contrapartes SET
/*id_padron = @p_id_padron,
cliente = @p_cliente,
country_code = @country_code,*/
datos_comerciales = @p_datos_comerciales,
activo = @p_activo,
nombre_contacto = @p_nombre_contacto,
email_contacto = @p_email_contacto,
telefono_contacto = @p_telefono_contacto,
fecha_ultimo_cierre = CONVERT(DATE,@p_fecha_ultimo_cierre),
periodicidad_ejercicio = @p_periodicidad_ejercicio,
subcontratista = @p_subcontratista,
id_padre = @p_id_padre,
vigencia_desde = @p_vigencia_desde,
vigencia_hasta = @p_vigencia_hasta,
modified = GETDATE(),
modified_by = @p_user_id
WHERE contraparte = @p_contraparte
END ELSE
IF (@accion = 'CHANGE_PASSWORD') BEGIN
SELECT @clave_anterior = clave FROM LN_contrapartes
WHERE contraparte = @p_contraparte
IF (@clave_anterior <> @p_clave) BEGIN
if (@p_user_id > 0)
UPDATE LN_contrapartes SET
clave = @p_clave,
clave_cambio = GETDATE(),
clave_expira = DATEADD(day, 90, getdate()),
clave_temporal = 0,
modified = GETDATE(),
modified_by = @p_user_id
WHERE contraparte = @p_contraparte
else
UPDATE LN_contrapartes SET
clave = @p_clave,
clave_cambio = GETDATE(),
clave_expira = DATEADD(day, 90, getdate()),
clave_temporal = 0
WHERE contraparte = @p_contraparte
END
END ELSE
IF (@accion = 'SELECT') BEGIN
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
LN_contrapartes.subcontratista, LN_contrapartes.id_padre,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 103) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(10), LN_contrapartes.created, 103) as created_str,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
p2.nombre_persona as nombre_persona_padre,
p2.identificador as identificador_padre,
p2.numero as numero_padre,
p2.identificacion as identificacion_padre,
i2.abreviatura as abreviatura_padre,
c2.country_code as country_code_padre,
c2.country_name as country_name_padre,
CONVERT(VARCHAR,LN_contrapartes.inicio_actividades,103) AS inicio_actividades,
LN_contrapartes.empleados, LN_contrapartes.resenia,
convert(varchar(10),LN_contrapartes.limite_carga_inicial,103) as limite_carga_inicial
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_contrapartes PADRE on LN_contrapartes.id_padre = PADRE.contraparte
LEFT OUTER JOIN padrones p2 on PADRE.id_padron = p2.id_padron
LEFT OUTER JOIN identificadores i2 on p2.identificador = i2.identificador
LEFT OUTER JOIN country c2 on i2.country_code = c2.country_code
WHERE LN_contrapartes.contraparte = @p_contraparte
END ELSE
IF (@accion = 'SEARCH') BEGIN
if(@p_cliente is null AND @p_activo is null) begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion
FROM LN_contrapartes
INNER JOIN ln_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.subcontratista = 0
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
ORDER BY padrones.nombre_persona
end else
if (@p_cliente is not null AND @p_activo is null) begin
if (@p_id_padron is null) begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
ORDER BY padrones.nombre_persona
/*
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_demo.informe as informe
--es acá
FROM LN_contrapartes
INNER JOIN LN_demo ON LN_demo.contraparte = LN_contrapartes.contraparte
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
ORDER BY padrones.nombre_persona
*/
end else begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.id_padron = @p_id_padron
ORDER BY padrones.nombre_persona
end
end else
if (@p_cliente is null AND @p_activo is not null) begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.activo = @p_activo
AND LN_contrapartes.subcontratista = 0
and LN_contrapartes.servicio_contratado = isnull(@p_id_producto,47)
ORDER BY padrones.nombre_persona
end else
if (@p_id_padron is null) begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.activo = @p_activo
AND LN_contrapartes.subcontratista = 0
and LN_contrapartes.servicio_contratado = isnull(@p_id_producto,47)
ORDER BY padrones.nombre_persona
end else begin
SELECT LN_contrapartes.contraparte, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user
FROM LN_contrapartes
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.activo = @p_activo
AND LN_contrapartes.id_padron = @p_id_padron
and LN_contrapartes.servicio_contratado = isnull(@p_id_producto,47)
ORDER BY padrones.nombre_persona
end
END ELSE
IF (@accion = 'DELETE') BEGIN
DELETE FROM LN_contrapartes WHERE contraparte = @p_contraparte
END ELSE
IF (@accion = 'NOVEDADES') BEGIN
select LN_contrapartes.contraparte, monitoreos_resultados.cuit,
CONVERT(VARCHAR, monitoreos_resultados.fecha, 103) AS fecha_dmy,
CONVERT(VARCHAR, monitoreos_resultados.fecha, 121) AS fecha,
monitoreos_resultados.tipo_novedad, padrones.nombre_persona,
monitoreos_resultados.seccion_mantenimiento,
monitoreos_resultados.tabla
from monitoreos_resultados
inner join padrones on monitoreos_resultados.cuit = padrones.identificacion
inner join LN_contrapartes on padrones.id_padron = LN_contrapartes.id_padron
where LN_contrapartes.contraparte = @p_contraparte
and monitoreos_resultados.seccion_mantenimiento <> 7
group by LN_contrapartes.contraparte, monitoreos_resultados.cuit,
monitoreos_resultados.fecha, monitoreos_resultados.tipo_novedad,
padrones.nombre_persona, monitoreos_resultados.seccion_mantenimiento,
monitoreos_resultados.tabla
order by monitoreos_resultados.fecha desc, monitoreos_resultados.tipo_novedad
END ELSE
IF (@accion = 'DOCUMENTOS_GESTION_ACTIVA') BEGIN
SELECT LN_docs.doc_id, LN_docs.contraparte, LN_docs.cliente, LN_docs.tipo_doc,
LN_docs.doc_version,
IIF(ln_docs.aplica = 0, 'N',LN_docs.estado_doc) as estado_doc,
LN_docs.doc_log, LN_docs.doc_attach,
IIF(ln_docs.aplica = 0, 'No solicitado',
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,
IIF(ln_docs.aplica = 0, 'text-info',
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,
IIF(ln_docs.aplica = 0, 'minus',
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,
IIF(ln_docs.aplica = 0, '999',
CASE
WHEN LN_docs.estado_doc = 'N' THEN 1
WHEN LN_docs.estado_doc = 'I' THEN 3
WHEN LN_docs.estado_doc = 'R' THEN 2
WHEN LN_docs.estado_doc = 'V' THEN 4
END) AS orden_estado,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.fecha_vigencia, 112)) AS fecha_vigencia,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.fecha_vigencia, 103)) AS fecha_vigencia_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.vencimiento_carga, 112)) AS vencimiento_carga,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.vencimiento_carga, 103)) AS vencimiento_carga_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.created, 112)) AS created,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.created, 103)) AS created_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.modified, 112)) AS modified,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.modified, 103)) AS modified_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.ingresado, 112)) AS ingresado,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.ingresado, 103)) AS ingresado_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.rechazado, 112)) AS rechazado,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.rechazado, 103)) AS rechazado_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.verificado_backend, 112)) AS verificado_backend,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.verificado_backend, 103)) AS verificado_backend_dmy,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.verificado_cliente, 112)) AS verificado_cliente,
IIF(ln_docs.aplica = 0, null, CONVERT(VARCHAR, LN_docs.verificado_cliente, 103)) AS verificado_cliente_dmy,
ISNULL(LN_tipos_doc.es_balance, 0) AS es_balance,
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,
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.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_tipos_doc.tipo_vigencia, 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,
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
FROM LN_docs
INNER JOIN clientes ON LN_docs.cliente = clientes.cliente
INNER JOIN LN_contrapartes ON LN_docs.contraparte = LN_contrapartes.contraparte
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
INNER JOIN LN_gestiones ON (LN_contrapartes.contraparte = LN_gestiones.contraparte
AND LN_docs.gestion = LN_gestiones.gestion)
INNER JOIN LN_contraparte_familias ON LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
INNER JOIN LN_familias ON LN_contraparte_familias.familia = LN_familias.familia
INNER JOIN LN_set_tipo_doc ON (LN_familias.set_doc = LN_set_tipo_doc.set_doc
AND LN_tipos_doc.tipo_doc = LN_set_tipo_doc.tipo_doc
AND LN_set_tipo_doc.activo = 1)
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_contrapartes.contraparte = @p_contraparte
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
AND LN_docs.estado_doc != 'X'
AND (LN_docs.aplica = 1 OR
(LN_docs.aplica = 0 and
not exists (select * from LN_docs b
where b.contraparte = ln_docs.contraparte
and b.tipo_doc = ln_docs.tipo_doc
and b.gestion = ln_docs.gestion
and b.aplica = 1))
)
ORDER BY clientes.nombre_cliente, padrones.nombre_persona, LN_docs.aplica desc, orden_estado, LN_set_tipo_doc.orden, LN_tipos_doc.nombre_tipo_doc, LN_docs.doc_version
END ELSE
IF (@accion = 'PRODUCTO_SUBCONTRATISTAS') BEGIN
/* dada una contraparte, determinar si puede dar de alta subcontratistas
en función de los productos asociados al cliente y la familia a la
que pertenece la misma */
select LN_productos.producto
from LN_contraparte_familias
inner join LN_contrapartes ON LN_contraparte_familias.contraparte = LN_contrapartes.contraparte
inner join LN_gestiones ON LN_contrapartes.contraparte = LN_gestiones.contraparte
inner join LN_familias ON (LN_contraparte_familias.familia = LN_familias.familia
AND LN_contrapartes.cliente = LN_familias.cliente)
inner join LN_familia_productos ON LN_familias.familia = LN_familia_productos.familia
inner join LN_cliente_productos ON (LN_familias.cliente = LN_cliente_productos.cliente
AND LN_familia_productos.producto = LN_cliente_productos.producto)
inner join LN_productos on LN_cliente_productos.producto = LN_productos.producto
where LN_contraparte_familias.contraparte = @p_contraparte
AND LN_productos.subcontratistas = 1
AND LN_familias.visible = 1
AND LN_familia_productos.activo = 1
AND LN_cliente_productos.activo = 1
AND LN_productos.visible = 1
AND LN_gestiones.desde <= getdate() AND LN_gestiones.hasta >= getdate()
END ELSE
IF (@accion = 'DOCUMENTOS_SUBCONTRATISTAS') BEGIN
/* dada una contraparte (PADRE), determinar si existen productos del tipo documentación
asociada a sus subcontratistas, a través de las subfamilias correspondientes */
select LN_productos.producto
from LN_contraparte_familias
inner join LN_contrapartes ON LN_contraparte_familias.contraparte = LN_contrapartes.contraparte
inner join LN_gestiones ON LN_contrapartes.contraparte = LN_gestiones.contraparte
inner join LN_familias ON (LN_contraparte_familias.familia = LN_familias.familia
AND LN_contrapartes.cliente = LN_familias.cliente)
inner join LN_familia_productos ON LN_familias.familia = LN_familia_productos.familia
inner join LN_cliente_productos ON (LN_familias.cliente = LN_cliente_productos.cliente
AND LN_familia_productos.producto = LN_cliente_productos.producto)
inner join LN_productos on LN_cliente_productos.producto = LN_productos.producto
/* este join es para exigir que las subfamilias de subcontratistas estén vinculadas
a al menos una familia de la contraparte padre */
inner join (select LN_subfamilias.familia
from LN_subfamilias
inner join LN_familias on LN_subfamilias.familia = LN_familias.familia
inner join LN_contraparte_familias on LN_subfamilias.familia_padre = LN_contraparte_familias.familia
where LN_contraparte_familias.contraparte = @p_contraparte
and LN_familias.subfamilia = 1
group by LN_subfamilias.familia) subf ON LN_familia_productos.familia = subf.familia
where LN_contrapartes.id_padre = @p_contraparte
AND LN_contrapartes.subcontratista = 1
AND LN_productos.documentos = 1
AND LN_familias.visible = 1
AND LN_familia_productos.activo = 1
AND LN_cliente_productos.activo = 1
AND LN_productos.visible = 1
AND LN_gestiones.desde <= getdate() AND LN_gestiones.hasta >= getdate()
group by LN_productos.producto
END ELSE
/* Específico para el update de datos de contraparte desde el backend */
IF (@accion = 'UPDATE_BACKEND') BEGIN
UPDATE LN_contrapartes SET
datos_comerciales = @p_datos_comerciales,
activo = @p_activo,
nombre_contacto = @p_nombre_contacto,
email_contacto = @p_email_contacto,
telefono_contacto = @p_telefono_contacto,
vigencia_desde = @p_vigencia_desde,
vigencia_hasta = @p_vigencia_hasta,
modified = GETDATE(),
modified_by = @p_user_id
WHERE contraparte = @p_contraparte
END ELSE
/* Devolver un query con una columna modalidad_login con valores 'T' o 'L' según configuración --por tax id o por link */
IF (@accion = 'MODALIDAD_LOGIN') BEGIN
if (@p_contraparte is not null) begin
declare @modo varchar(1) = 'L', @ml varchar(1)
DECLARE Familias CURSOR FOR
select distinct ISNULL(LN_familias.modalidad_login, 'T') AS modalidad_login
from LN_contrapartes inner join LN_contraparte_familias on
LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join LN_familias on (LN_contraparte_familias.familia = LN_familias.familia
and LN_contrapartes.cliente = LN_familias.cliente)
where LN_contraparte_familias.contraparte = @p_contraparte
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
Open Familias
Fetch next from Familias into @ml
While @@FETCH_STATUS = 0 begin
if (@modo != 'T') begin
set @modo = @ml
end
Fetch next from Familias into @ml
End
Close Familias
Deallocate Familias
SELECT @p_contraparte AS contraparte, @modo AS modalidad_login
end
END
if (@accion ='search_informes_contraparteAGB')
BEGIN
select @p_id_producto as IDP
if (@p_id_producto is null)
SELECT LN_contrapartes.contraparte,ln_familias.nombre_familia, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
ISNULL(LN_contrapartes.modalidad_pago, 'CC') as modalidad_pago,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_gestiones.desde as desde,
CONVERT(VARCHAR, LN_gestiones.desde,103) AS gestion_desde,
CONVERT(VARCHAR, LN_gestiones.hasta,103) AS gestion_hasta,
LN_demo.informe as informe,
LN_productos.dossier,
/*,FAMPRODACTIVO.ACTIVO AS AGBACTIVO,LN_demo.producto as prodAGB,*/
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.status) AS status,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.valor) AS valor,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.moneda) AS moneda
--es acá
,ln_contrapartes.servicio_contratado,
UPPER(productos.nombre_producto) as servicio_contratado_name,
case LN_gestiones.Iv_informe
when 1 then 'SI'
when 0 then 'NO'
else null
end as iv_informe,
iif(isnull(CDE.DE,0) > 0,1,0) as tiene_de,
iif(isnull(CLCS.LCS, 0) > 0,1,0) as tiene_lcs,
iif(isnull(MLCS.LCS, 0) > 0,1,0) as tiene_mlcs,
iif(isnull(PP.PP, 0) > 0,1,0) as tiene_pp,
ln_contrapartes.pais_servicio as pais_servicio_cod,
pais_servicio.country_name as pais_servicio
FROM LN_contrapartes
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN country pais_servicio ON LN_contrapartes.pais_servicio = pais_servicio.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join ln_familias on LN_contraparte_familias.familia = ln_familias.familia
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_demo ON (LN_contrapartes.contraparte = LN_demo.contraparte AND LN_gestiones.gestion = LN_demo.gestion)
LEFT OUTER JOIN LN_productos ON LN_demo.producto = LN_productos.producto
LEFT OUTER JOIN productos on productos.producto = LN_contrapartes.servicio_contratado
/*
left join LN_familia_productos FAMPRODACTIVO on (LN_familias.familia=FAMPRODACTIVO.familia)
left OUTER JOIN LN_demo DEMOACT ON (LN_contrapartes.contraparte = DEMOACT.contraparte AND LN_gestiones.gestion = LN_demo.gestion and FAMPRODACTIVO.producto = DEMOACT.producto and FAMPRODACTIVO.activo=1)
-- left join LN_familia_productos FAMPRODACTIVO on (LN_DEMO.producto=FAMPRODACTIVO.producto and FAMPRODACTIVO.activo=1)
*/
LEFT OUTER JOIN pagos_transacciones ON LN_contrapartes.contraparte = pagos_transacciones.contraparte
left outer join (select FP.familia, count(*) as DE from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('dependEconomica','dependEconomicaBal')
group by FP.familia) CDE
on (CDE.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCredito')
group by FP.familia) CLCS
on (CLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCreditoMultiple')
group by FP.familia) MLCS
on (MLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as PP from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('planespago')
group by FP.familia) PP
on (PP.familia = LN_contraparte_familias.familia)
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
--AND LN_contrapartes.activo = 1
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
and ln_contrapartes.contraparte=83613
ORDER BY padrones.nombre_persona
else
SELECT LN_contrapartes.contraparte,ln_familias.nombre_familia, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
ISNULL(LN_contrapartes.modalidad_pago, 'CC') as modalidad_pago,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_gestiones.desde as desde,
CONVERT(VARCHAR, LN_gestiones.desde,103) AS gestion_desde,
CONVERT(VARCHAR, LN_gestiones.hasta,103) AS gestion_hasta,
LN_demo.informe as informe, LN_productos.dossier,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.status) AS status,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.valor) AS valor,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.moneda) AS moneda
--es acá
,ln_contrapartes.servicio_contratado,
UPPER(productos.nombre_producto) as servicio_contratado_name,
case LN_gestiones.Iv_informe
when 1 then 'SI'
when 0 then 'NO'
else null
end as iv_informe,
iif(isnull(CDE.DE,0) > 0,1,0) as tiene_de,
iif(isnull(CLCS.LCS, 0) > 0,1,0) as tiene_lcs,
iif(isnull(MLCS.LCS, 0) > 0,1,0) as tiene_mlcs,
iif(isnull(PP.PP, 0) > 0,1,0) as tiene_PP,
ln_contrapartes.pais_servicio as pais_servicio_cod,
pais_servicio.country_name as pais_servicio
FROM LN_contrapartes
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN country pais_servicio ON LN_contrapartes.pais_servicio = pais_servicio.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join ln_familias on LN_contraparte_familias.familia = ln_familias.familia
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_demo ON (LN_contrapartes.contraparte = LN_demo.contraparte
AND LN_gestiones.gestion = LN_demo.gestion)
LEFT OUTER JOIN LN_productos ON LN_demo.producto = LN_productos.producto
LEFT OUTER JOIN productos on productos.producto = LN_contrapartes.servicio_contratado
LEFT OUTER JOIN pagos_transacciones ON LN_contrapartes.contraparte = pagos_transacciones.contraparte
left outer join (select FP.familia, count(*) as DE from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('dependEconomica','dependEconomicaBal')
group by FP.familia) CDE
on (CDE.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCredito')
group by FP.familia) CLCS
on (CLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCreditoMultiple')
group by FP.familia) MLCS
on (MLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as PP from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('planespago')
group by FP.familia) PP
on (PP.familia = LN_contraparte_familias.familia)
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
--AND LN_contrapartes.activo = 1
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
AND LN_familias.id_producto = @p_id_producto
ORDER BY padrones.nombre_persona
end
/*** uso unicamente en backend en lista de contrapartes de un cliente. si se pasa el parámetro id_producto, toma las familias
asociadas al mismo (47 = LED , 10 = INQUIRO) */
if (@accion ='search_informes_contraparte')
BEGIN
if (@p_id_producto is null)
SELECT distinct LN_contrapartes.contraparte,ln_familias.nombre_familia, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, convert(varchar(max),LN_contrapartes.datos_comerciales) as datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
ISNULL(LN_contrapartes.modalidad_pago, 'CC') as modalidad_pago,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_gestiones.desde as desde,
CONVERT(VARCHAR, LN_gestiones.desde,103) AS gestion_desde,
CONVERT(VARCHAR, LN_gestiones.hasta,103) AS gestion_hasta,
LN_demo.informe as informe, LN_productos.dossier,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.status) AS status,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.valor) AS valor,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.moneda) AS moneda
--es acá
,ln_contrapartes.servicio_contratado,
UPPER(productos.nombre_producto) as servicio_contratado_name,
case LN_gestiones.Iv_informe
when 1 then 'SI'
when 0 then 'NO'
else null
end as iv_informe,
iif(isnull(CDE.DE,0) > 0,1,0) as tiene_de,
iif(isnull(CLCS.LCS, 0) > 0,1,0) as tiene_lcs,
iif(isnull(MLCS.LCS, 0) > 0,1,0) as tiene_mlcs,
iif(isnull(PP.PP, 0) > 0,1,0) as tiene_pp,
ln_contrapartes.pais_servicio as pais_servicio_cod,
pais_servicio.country_name as pais_servicio,
led_contratistas.codigo_interno
FROM LN_contrapartes
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN country pais_servicio ON LN_contrapartes.pais_servicio = pais_servicio.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join ln_familias on LN_contraparte_familias.familia = ln_familias.familia
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_demo ON (LN_contrapartes.contraparte = LN_demo.contraparte
AND LN_gestiones.gestion = LN_demo.gestion)
LEFT OUTER JOIN LN_productos ON LN_demo.producto = LN_productos.producto
LEFT OUTER JOIN productos on productos.producto = LN_contrapartes.servicio_contratado
LEFT JOIN led_contratistas ON LN_contrapartes.id_imperium=led_contratistas.contratista
LEFT OUTER JOIN pagos_transacciones ON LN_contrapartes.contraparte = pagos_transacciones.contraparte
left outer join (select FP.familia, count(*) as DE from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('dependEconomica','dependEconomicaBal')
group by FP.familia) CDE
on (CDE.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCredito')
group by FP.familia) CLCS
on (CLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCreditoMultiple')
group by FP.familia) MLCS
on (MLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as PP from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('planespago')
group by FP.familia) PP
on (PP.familia = LN_contraparte_familias.familia)
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
--AND LN_contrapartes.activo = 1
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
ORDER BY padrones.nombre_persona
else
SELECT distinct LN_contrapartes.contraparte,ln_familias.nombre_familia, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, convert(varchar(max),LN_contrapartes.datos_comerciales) as datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
ISNULL(LN_contrapartes.modalidad_pago, 'CC') as modalidad_pago,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_gestiones.desde as desde,
CONVERT(VARCHAR, LN_gestiones.desde,103) AS gestion_desde,
CONVERT(VARCHAR, LN_gestiones.hasta,103) AS gestion_hasta,
LN_demo.informe as informe, LN_productos.dossier,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.status) AS status,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.valor) AS valor,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.moneda) AS moneda
--es acá
,ln_contrapartes.servicio_contratado,
UPPER(productos.nombre_producto) as servicio_contratado_name,
case LN_gestiones.Iv_informe
when 1 then 'SI'
when 0 then 'NO'
else null
end as iv_informe,
iif(isnull(CDE.DE,0) > 0,1,0) as tiene_de,
iif(isnull(CLCS.LCS, 0) > 0,1,0) as tiene_lcs,
iif(isnull(MLCS.LCS, 0) > 0,1,0) as tiene_mlcs,
iif(isnull(PP.PP, 0) > 0,1,0) as tiene_PP,
ln_contrapartes.pais_servicio as pais_servicio_cod,
pais_servicio.country_name as pais_servicio
FROM LN_contrapartes
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN country pais_servicio ON LN_contrapartes.pais_servicio = pais_servicio.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join ln_familias on LN_contraparte_familias.familia = ln_familias.familia
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_demo ON (LN_contrapartes.contraparte = LN_demo.contraparte
AND LN_gestiones.gestion = LN_demo.gestion)
LEFT OUTER JOIN LN_productos ON LN_demo.producto = LN_productos.producto
LEFT OUTER JOIN productos on productos.producto = LN_contrapartes.servicio_contratado
LEFT OUTER JOIN pagos_transacciones ON LN_contrapartes.contraparte = pagos_transacciones.contraparte
left outer join (select FP.familia, count(*) as DE from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('dependEconomica','dependEconomicaBal')
group by FP.familia) CDE
on (CDE.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCredito')
group by FP.familia) CLCS
on (CLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCreditoMultiple')
group by FP.familia) MLCS
on (MLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as PP from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('planespago')
group by FP.familia) PP
on (PP.familia = LN_contraparte_familias.familia)
WHERE LN_contrapartes.cliente = @p_cliente
AND LN_contrapartes.subcontratista = 0
--AND LN_contrapartes.activo = 1
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
AND LN_familias.id_producto = @p_id_producto
ORDER BY padrones.nombre_persona
END
if (@accion ='search_contraparte')
BEGIN
SELECT top 1 LN_contrapartes.contraparte,ln_familias.nombre_familia, LN_contrapartes.country_code, LN_contrapartes.cliente,
LN_contrapartes.id_padron, LN_contrapartes.datos_comerciales, LN_contrapartes.activo,
LN_contrapartes.nombre_contacto, LN_contrapartes.email_contacto, LN_contrapartes.telefono_contacto,
CONVERT(VARCHAR(10), LN_contrapartes.fecha_ultimo_cierre, 103) AS fecha_ultimo_cierre,
LN_contrapartes.periodicidad_ejercicio,
CONVERT(VARCHAR, LN_contrapartes.vigencia_desde,103) AS vigencia_desde,
CONVERT(VARCHAR, LN_contrapartes.vigencia_hasta,103) AS vigencia_hasta,
LN_contrapartes.clave, LN_contrapartes.clave_temporal,
CONVERT(VARCHAR(19), LN_contrapartes.clave_cambio, 121) as clave_cambio,
CONVERT(VARCHAR(19), LN_contrapartes.clave_expira, 121) as clave_expira,
CONVERT(VARCHAR(19), LN_contrapartes.last_login, 121) as last_login,
ISNULL(LN_contrapartes.modalidad_pago, 'CC') as modalidad_pago,
LN_contrapartes.created_by, LN_contrapartes.modified_by,
padrones.identificador, padrones.numero, padrones.nombre_persona, identificadores.abreviatura,
padrones.identificacion, country.country_name, clientes.nombre_cliente,
CONVERT(VARCHAR(19), LN_contrapartes.created, 121) as created,
CONVERT(VARCHAR(19), LN_contrapartes.modified, 121) as modified,
users1.first_name + ' ' + users1.last_name as created_by_user,
users2.first_name + ' ' + users2.last_name as modified_by_user,
LN_gestiones.gestion as gestion,
LN_gestiones.desde as desde,
CONVERT(VARCHAR, LN_gestiones.desde,103) AS gestion_desde,
CONVERT(VARCHAR, LN_gestiones.hasta,103) AS gestion_hasta,
LN_demo.informe as informe, LN_productos.dossier,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.status) AS status,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.valor) AS valor,
IIF(ISNULL(LN_contrapartes.modalidad_pago, 'CC') = 'CC', NULL, pagos_transacciones.moneda) AS moneda
--es acá
,ln_contrapartes.servicio_contratado,
UPPER(productos.nombre_producto) as servicio_contratado_name,
case LN_gestiones.Iv_informe
when 1 then 'SI'
when 0 then 'NO'
else null
end as iv_informe,
iif(isnull(CDE.DE,0) > 0,1,0) as tiene_de,
iif(isnull(CLCS.LCS, 0) > 0,1,0) as tiene_lcs ,
iif(isnull(MLCS.LCS, 0) > 0,1,0) as tiene_mlcs,
iif(isnull(PP.PP, 0) > 0,1,0) as tiene_PP,
pais_servicio.country_name as pais_servicio
FROM LN_contrapartes
INNER JOIN LN_gestiones on LN_gestiones.contraparte = LN_contrapartes.contraparte
INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
INNER JOIN clientes ON LN_contrapartes.cliente = clientes.cliente
INNER JOIN country ON LN_contrapartes.country_code = country.country_code
INNER JOIN country pais_servicio ON LN_contrapartes.pais_servicio = pais_servicio.country_code
INNER JOIN users users1 ON LN_contrapartes.created_by = users1.user_id
inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
inner join ln_familias on LN_contraparte_familias.familia = ln_familias.familia
LEFT OUTER JOIN users users2 ON LN_contrapartes.modified_by = users2.user_id
LEFT OUTER JOIN LN_demo ON (LN_contrapartes.contraparte = LN_demo.contraparte
AND LN_gestiones.gestion = LN_demo.gestion)
LEFT OUTER JOIN LN_productos ON LN_demo.producto = LN_productos.producto
LEFT OUTER JOIN productos on productos.producto = LN_contrapartes.servicio_contratado
LEFT OUTER JOIN pagos_transacciones ON LN_contrapartes.contraparte = pagos_transacciones.contraparte
left outer join (select FP.familia, count(*) as DE from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('dependEconomica','dependEconomicaBal')
group by FP.familia) CDE
on (CDE.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCredito')
group by FP.familia) CLCS
on (CLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as LCS from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('limiteCreditoMultiple')
group by FP.familia) MLCS
on (MLCS.familia = LN_contraparte_familias.familia)
left outer join (select FP.familia, count(*) as PP from
LN_familia_productos FP
inner join
LN_cliente_productos CP on (CP.producto = FP.producto and CP.cliente = @p_cliente and CP.activo = 1)
inner join
LN_productos P on P.producto = FP.producto
where FP.activo = 1
and P.visible = 1
and P.producto_id in ('planespago')
group by FP.familia) PP
on (PP.familia = LN_contraparte_familias.familia)
WHERE LN_contrapartes.contraparte = @p_contraparte
--AND LN_contrapartes.subcontratista = 0
--AND LN_contrapartes.activo = 1
AND LN_gestiones.desde <= CONVERT(date, GETDATE())
AND LN_gestiones.hasta >= CONVERT(date, GETDATE())
AND LN_gestiones.vigente = 1
ORDER BY padrones.nombre_persona
END
END
GO
Depends On
24- dbo.balances_contables
- dbo.clientes
- dbo.country
- dbo.identificadores
- dbo.led_contratistas
- dbo.LN_cliente_productos
- dbo.LN_contraparte_familias
- dbo.LN_contrapartes
- dbo.LN_demo
- dbo.LN_docs
- dbo.LN_familia_productos
- dbo.LN_familias
- dbo.LN_gestiones
- dbo.LN_productos
- dbo.LN_set_tipo_doc
- dbo.LN_subfamilias
- dbo.LN_tipos_doc
- dbo.monedas
- dbo.monitoreos_resultados
- dbo.padrones
- dbo.pagos_transacciones
- dbo.pp
- dbo.productos
- dbo.users
Used By
No items found