Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
12| Name | Data Type | Length | Description |
|---|---|---|---|
| @accion | varchar | 30 | |
| @p_id | int | 4 | |
| @p_contraparte | int | 4 | |
| @p_nombre | varchar | 250 | |
| @p_seccion | varchar | 1 | |
| @p_tax_id | varchar | 50 | |
| @p_nacionalidad | varchar | 30 | |
| @p_porcentaje | decimal | 5 | |
| @p_tipo_relacion | varchar | 100 | |
| @p_cargo | varchar | 100 | |
| @p_fidecheck | varchar | 1 | |
| @p_detalle | varchar | 300 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
create OR ALTER PROCEDURE dbo.LN_demo_fidecheck_ANT
-- Add the parameters for the stored procedure here
@accion varchar(30) = null,
@p_id int = null,
@p_contraparte int = null,
@p_nombre varchar(250) = null,
@p_seccion varchar(1) = null,
@p_tax_id varchar(50) = null,
@p_nacionalidad varchar(30) = null,
@p_porcentaje decimal(5,2) = null,
@p_tipo_relacion varchar(100) = null,
@p_cargo varchar(100) = null,
@p_fidecheck varchar(1) = null,
@p_detalle varchar(300) = 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 @id int = null, @ord int = null, @contraparte int = null, @sec varchar(1) = NULL
IF (@accion = 'SEARCH') BEGIN
if (@p_seccion is null)
select LN_demo_fidecheck.*,
CASE
WHEN LN_demo_fidecheck.seccion = 'S' THEN 'Socios / Accionistas'
WHEN LN_demo_fidecheck.seccion = 'R' THEN 'Vinculaciones / Empresas relacionadas'
WHEN LN_demo_fidecheck.seccion = 'D' THEN 'Directivos'
ELSE NULL
END AS nombre_seccion,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN 'Negative'
WHEN LN_demo_fidecheck.fidecheck = 'R' THEN 'Relative'
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN 'Positive'
ELSE NULL
END AS pep,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#A72B2A" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'E' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#FFB81C" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#63b68c" /></svg>'
ELSE NULL
END AS estado,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.numero, padrones.identificacion, identificadores.abreviatura,
identificadores.country_code, country.country_name,
LN_contrapartes.id_padron, LN_contrapartes.cliente
from LN_demo_fidecheck
inner join LN_contrapartes on LN_demo_fidecheck.contraparte = LN_contrapartes.contraparte
inner join clientes on LN_contrapartes.cliente = clientes.cliente
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
where LN_demo_fidecheck.contraparte = @p_contraparte
and LN_demo_fidecheck.visible = 1
order by LN_demo_fidecheck.seccion, LN_demo_fidecheck.orden,
LN_demo_fidecheck.porcentaje desc, LN_demo_fidecheck.nombre
else
select LN_demo_fidecheck.*,
CASE
WHEN LN_demo_fidecheck.seccion = 'S' THEN 'Socios / Accionistas'
WHEN LN_demo_fidecheck.seccion = 'R' THEN 'Vinculaciones / Empresas relacionadas'
WHEN LN_demo_fidecheck.seccion = 'D' THEN 'Directivos'
END AS nombre_seccion,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN 'Negative'
WHEN LN_demo_fidecheck.fidecheck = 'R' THEN 'Relative'
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN 'Positive'
END AS pep,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#A72B2A" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'E' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#FFB81C" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#63b68c" /></svg>'
ELSE NULL
END AS estado,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.numero, padrones.identificacion, identificadores.abreviatura,
identificadores.country_code, country.country_name,
LN_contrapartes.id_padron, LN_contrapartes.cliente
from LN_demo_fidecheck
inner join LN_contrapartes on LN_demo_fidecheck.contraparte = LN_contrapartes.contraparte
inner join clientes on LN_contrapartes.cliente = clientes.cliente
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
where LN_demo_fidecheck.contraparte = @p_contraparte
and LN_demo_fidecheck.seccion = @p_seccion
and LN_demo_fidecheck.visible = 1
order by LN_demo_fidecheck.seccion, LN_demo_fidecheck.orden,
LN_demo_fidecheck.porcentaje desc, LN_demo_fidecheck.nombre
END
IF (@accion = 'SELECT') BEGIN
select LN_demo_fidecheck.*,
CASE
WHEN LN_demo_fidecheck.seccion = 'S' THEN 'Socios / Accionistas'
WHEN LN_demo_fidecheck.seccion = 'R' THEN 'Vinculaciones / Empresas relacionadas'
WHEN LN_demo_fidecheck.seccion = 'D' THEN 'Directivos'
END AS nombre_seccion,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN 'Negative'
WHEN LN_demo_fidecheck.fidecheck = 'R' THEN 'Relative'
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN 'Positive'
END AS pep,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#A72B2A" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'E' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#FFB81C" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#63b68c" /></svg>'
ELSE NULL
END AS estado,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.numero, padrones.identificacion, identificadores.abreviatura,
identificadores.country_code, country.country_name,
LN_contrapartes.id_padron, LN_contrapartes.cliente
from LN_demo_fidecheck
inner join LN_contrapartes on LN_demo_fidecheck.contraparte = LN_contrapartes.contraparte
inner join clientes on LN_contrapartes.cliente = clientes.cliente
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
where LN_demo_fidecheck.id_fidecheck = @p_id
END
IF (@accion = 'up') BEGIN
SELECT @ord = orden, @contraparte = contraparte FROM LN_demo_fidecheck WHERE id_fidecheck = @p_id
if (@ord > 1 and @contraparte is not null) begin
select @id = id_fidecheck
from LN_demo_fidecheck
where contraparte = @contraparte
and seccion = 'R'
and orden = @ord - 1
if (@id is not null) begin
update LN_demo_fidecheck SET
orden = @ord - 1
where id_fidecheck = @p_id
update LN_demo_fidecheck SET
orden = @ord
where id_fidecheck = @id
end
end
END
IF (@accion = 'down') BEGIN
SELECT @ord = orden, @contraparte = contraparte FROM LN_demo_fidecheck WHERE id_fidecheck = @p_id
if (@ord is not null and @contraparte is not null) begin
select @id = id_fidecheck
from LN_demo_fidecheck
where contraparte = @contraparte
and seccion = 'R'
and orden = @ord + 1
if (@id is not null) begin
update LN_demo_fidecheck SET
orden = @ord + 1
where id_fidecheck = @p_id
update LN_demo_fidecheck SET
orden = @ord
where id_fidecheck = @id
end
end
END
IF (@accion = 'INSERT') BEGIN
IF (@p_seccion != 'R')
INSERT INTO LN_demo_fidecheck
(contraparte, nombre, seccion, tax_id, nacionalidad, orden, porcentaje, tipo_relacion, cargo, fidecheck, detalle)
VALUES
(@p_contraparte, @p_nombre, @p_seccion, @p_tax_id, @p_nacionalidad, NULL, @p_porcentaje, @p_tipo_relacion, @p_cargo, @p_fidecheck, @p_detalle)
ELSE BEGIN
SELECT @ord = ISNULL(MAX(orden),0)+1 FROM LN_demo_fidecheck
WHERE contraparte = @p_contraparte AND seccion = 'R'
INSERT INTO LN_demo_fidecheck
(contraparte, nombre, seccion, tax_id, nacionalidad, orden, porcentaje, tipo_relacion, cargo, fidecheck, detalle)
VALUES
(@p_contraparte, @p_nombre, @p_seccion, @p_tax_id, @p_nacionalidad, @ord, @p_porcentaje, @p_tipo_relacion, @p_cargo, @p_fidecheck, @p_detalle)
END
END
IF (@accion = 'UPDATE') BEGIN
UPDATE LN_demo_fidecheck SET
contraparte = @p_contraparte,
nombre = @p_nombre,
seccion = @p_seccion,
tax_id = @p_tax_id,
nacionalidad = @p_nacionalidad,
porcentaje = @p_porcentaje,
tipo_relacion = @p_tipo_relacion,
cargo = @p_cargo,
fidecheck = @p_fidecheck,
detalle = @p_detalle
WHERE id_fidecheck = @p_id
END
IF (@accion = 'DELETE') BEGIN
select @sec = seccion,
@contraparte = contraparte,
@ord = orden
from LN_demo_fidecheck
where id_fidecheck = @p_id
if (@sec is not null AND @contraparte is not null) begin
if (@sec != 'R')
DELETE FROM LN_demo_fidecheck WHERE id_fidecheck = @p_id
else begin
if (@ord is not null) begin
DELETE FROM LN_demo_fidecheck WHERE id_fidecheck = @p_id
UPDATE LN_demo_fidecheck SET
orden = orden - 1
WHERE seccion = 'R'
AND contraparte = @contraparte
AND orden > @ord
end
end
end
END
IF (@accion = 'STATUS') BEGIN
IF (select count(*) from LN_demo_fidecheck
where contraparte = @p_contraparte
and fidecheck = 'P') > 0
SELECT 'P' AS fidecheck
ELSE
IF (select count(*) from LN_demo_fidecheck
where contraparte = @p_contraparte
and fidecheck = 'E') > 0
SELECT 'P' AS fidecheck
ELSE
IF (select count(*) from LN_demo_fidecheck
where contraparte = @p_contraparte
and fidecheck = 'N') > 0
SELECT 'N' AS fidecheck
ELSE
SELECT NULL AS fidecheck
END
END
GO
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
create OR ALTER PROCEDURE dbo.LN_demo_fidecheck_ANT
-- Add the parameters for the stored procedure here
@accion varchar(30) = null,
@p_id int = null,
@p_contraparte int = null,
@p_nombre varchar(250) = null,
@p_seccion varchar(1) = null,
@p_tax_id varchar(50) = null,
@p_nacionalidad varchar(30) = null,
@p_porcentaje decimal(5,2) = null,
@p_tipo_relacion varchar(100) = null,
@p_cargo varchar(100) = null,
@p_fidecheck varchar(1) = null,
@p_detalle varchar(300) = 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 @id int = null, @ord int = null, @contraparte int = null, @sec varchar(1) = NULL
IF (@accion = 'SEARCH') BEGIN
if (@p_seccion is null)
select LN_demo_fidecheck.*,
CASE
WHEN LN_demo_fidecheck.seccion = 'S' THEN 'Socios / Accionistas'
WHEN LN_demo_fidecheck.seccion = 'R' THEN 'Vinculaciones / Empresas relacionadas'
WHEN LN_demo_fidecheck.seccion = 'D' THEN 'Directivos'
ELSE NULL
END AS nombre_seccion,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN 'Negative'
WHEN LN_demo_fidecheck.fidecheck = 'R' THEN 'Relative'
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN 'Positive'
ELSE NULL
END AS pep,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#A72B2A" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'E' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#FFB81C" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#63b68c" /></svg>'
ELSE NULL
END AS estado,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.numero, padrones.identificacion, identificadores.abreviatura,
identificadores.country_code, country.country_name,
LN_contrapartes.id_padron, LN_contrapartes.cliente
from LN_demo_fidecheck
inner join LN_contrapartes on LN_demo_fidecheck.contraparte = LN_contrapartes.contraparte
inner join clientes on LN_contrapartes.cliente = clientes.cliente
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
where LN_demo_fidecheck.contraparte = @p_contraparte
and LN_demo_fidecheck.visible = 1
order by LN_demo_fidecheck.seccion, LN_demo_fidecheck.orden,
LN_demo_fidecheck.porcentaje desc, LN_demo_fidecheck.nombre
else
select LN_demo_fidecheck.*,
CASE
WHEN LN_demo_fidecheck.seccion = 'S' THEN 'Socios / Accionistas'
WHEN LN_demo_fidecheck.seccion = 'R' THEN 'Vinculaciones / Empresas relacionadas'
WHEN LN_demo_fidecheck.seccion = 'D' THEN 'Directivos'
END AS nombre_seccion,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN 'Negative'
WHEN LN_demo_fidecheck.fidecheck = 'R' THEN 'Relative'
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN 'Positive'
END AS pep,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#A72B2A" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'E' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#FFB81C" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#63b68c" /></svg>'
ELSE NULL
END AS estado,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.numero, padrones.identificacion, identificadores.abreviatura,
identificadores.country_code, country.country_name,
LN_contrapartes.id_padron, LN_contrapartes.cliente
from LN_demo_fidecheck
inner join LN_contrapartes on LN_demo_fidecheck.contraparte = LN_contrapartes.contraparte
inner join clientes on LN_contrapartes.cliente = clientes.cliente
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
where LN_demo_fidecheck.contraparte = @p_contraparte
and LN_demo_fidecheck.seccion = @p_seccion
and LN_demo_fidecheck.visible = 1
order by LN_demo_fidecheck.seccion, LN_demo_fidecheck.orden,
LN_demo_fidecheck.porcentaje desc, LN_demo_fidecheck.nombre
END
IF (@accion = 'SELECT') BEGIN
select LN_demo_fidecheck.*,
CASE
WHEN LN_demo_fidecheck.seccion = 'S' THEN 'Socios / Accionistas'
WHEN LN_demo_fidecheck.seccion = 'R' THEN 'Vinculaciones / Empresas relacionadas'
WHEN LN_demo_fidecheck.seccion = 'D' THEN 'Directivos'
END AS nombre_seccion,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN 'Negative'
WHEN LN_demo_fidecheck.fidecheck = 'R' THEN 'Relative'
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN 'Positive'
END AS pep,
CASE
WHEN LN_demo_fidecheck.fidecheck = 'P' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#A72B2A" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'E' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#FFB81C" /></svg>'
WHEN LN_demo_fidecheck.fidecheck = 'N' THEN '<svg height="20" width="20"><circle cx="10" cy="10" r="9" stroke="black" stroke-width="0" fill="#63b68c" /></svg>'
ELSE NULL
END AS estado,
clientes.nombre_cliente, padrones.nombre_persona, padrones.identificador,
padrones.numero, padrones.identificacion, identificadores.abreviatura,
identificadores.country_code, country.country_name,
LN_contrapartes.id_padron, LN_contrapartes.cliente
from LN_demo_fidecheck
inner join LN_contrapartes on LN_demo_fidecheck.contraparte = LN_contrapartes.contraparte
inner join clientes on LN_contrapartes.cliente = clientes.cliente
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
where LN_demo_fidecheck.id_fidecheck = @p_id
END
IF (@accion = 'up') BEGIN
SELECT @ord = orden, @contraparte = contraparte FROM LN_demo_fidecheck WHERE id_fidecheck = @p_id
if (@ord > 1 and @contraparte is not null) begin
select @id = id_fidecheck
from LN_demo_fidecheck
where contraparte = @contraparte
and seccion = 'R'
and orden = @ord - 1
if (@id is not null) begin
update LN_demo_fidecheck SET
orden = @ord - 1
where id_fidecheck = @p_id
update LN_demo_fidecheck SET
orden = @ord
where id_fidecheck = @id
end
end
END
IF (@accion = 'down') BEGIN
SELECT @ord = orden, @contraparte = contraparte FROM LN_demo_fidecheck WHERE id_fidecheck = @p_id
if (@ord is not null and @contraparte is not null) begin
select @id = id_fidecheck
from LN_demo_fidecheck
where contraparte = @contraparte
and seccion = 'R'
and orden = @ord + 1
if (@id is not null) begin
update LN_demo_fidecheck SET
orden = @ord + 1
where id_fidecheck = @p_id
update LN_demo_fidecheck SET
orden = @ord
where id_fidecheck = @id
end
end
END
IF (@accion = 'INSERT') BEGIN
IF (@p_seccion != 'R')
INSERT INTO LN_demo_fidecheck
(contraparte, nombre, seccion, tax_id, nacionalidad, orden, porcentaje, tipo_relacion, cargo, fidecheck, detalle)
VALUES
(@p_contraparte, @p_nombre, @p_seccion, @p_tax_id, @p_nacionalidad, NULL, @p_porcentaje, @p_tipo_relacion, @p_cargo, @p_fidecheck, @p_detalle)
ELSE BEGIN
SELECT @ord = ISNULL(MAX(orden),0)+1 FROM LN_demo_fidecheck
WHERE contraparte = @p_contraparte AND seccion = 'R'
INSERT INTO LN_demo_fidecheck
(contraparte, nombre, seccion, tax_id, nacionalidad, orden, porcentaje, tipo_relacion, cargo, fidecheck, detalle)
VALUES
(@p_contraparte, @p_nombre, @p_seccion, @p_tax_id, @p_nacionalidad, @ord, @p_porcentaje, @p_tipo_relacion, @p_cargo, @p_fidecheck, @p_detalle)
END
END
IF (@accion = 'UPDATE') BEGIN
UPDATE LN_demo_fidecheck SET
contraparte = @p_contraparte,
nombre = @p_nombre,
seccion = @p_seccion,
tax_id = @p_tax_id,
nacionalidad = @p_nacionalidad,
porcentaje = @p_porcentaje,
tipo_relacion = @p_tipo_relacion,
cargo = @p_cargo,
fidecheck = @p_fidecheck,
detalle = @p_detalle
WHERE id_fidecheck = @p_id
END
IF (@accion = 'DELETE') BEGIN
select @sec = seccion,
@contraparte = contraparte,
@ord = orden
from LN_demo_fidecheck
where id_fidecheck = @p_id
if (@sec is not null AND @contraparte is not null) begin
if (@sec != 'R')
DELETE FROM LN_demo_fidecheck WHERE id_fidecheck = @p_id
else begin
if (@ord is not null) begin
DELETE FROM LN_demo_fidecheck WHERE id_fidecheck = @p_id
UPDATE LN_demo_fidecheck SET
orden = orden - 1
WHERE seccion = 'R'
AND contraparte = @contraparte
AND orden > @ord
end
end
end
END
IF (@accion = 'STATUS') BEGIN
IF (select count(*) from LN_demo_fidecheck
where contraparte = @p_contraparte
and fidecheck = 'P') > 0
SELECT 'P' AS fidecheck
ELSE
IF (select count(*) from LN_demo_fidecheck
where contraparte = @p_contraparte
and fidecheck = 'E') > 0
SELECT 'P' AS fidecheck
ELSE
IF (select count(*) from LN_demo_fidecheck
where contraparte = @p_contraparte
and fidecheck = 'N') > 0
SELECT 'N' AS fidecheck
ELSE
SELECT NULL AS fidecheck
END
END
GO
Depends On
6Used By
No items found