Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
3| Name | Data Type | Length | Description |
|---|---|---|---|
| @accion | varchar | 100 | |
| @cliente | int | 4 | |
| @servicio | char | 1 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
/*
EXEC LN_contrapartes_queue_cliente 'cliente', 5546348
exec LN_contrapartes_queue_cliente 'pendientes' , 5546348
EXEC LN_contrapartes_queue_'pending',null,null,null,null,null,1
EXEC LN_contrapartes_queue_cliente 'pendientes_servicio', 1226057645, 'C'
*/
CREATE OR ALTER PROCEDURE dbo.LN_contrapartes_queue_cliente
@accion varchar(100),
@cliente int = 0,
@servicio char(1) = null
AS
BEGIN
SET NOCOUNT ON;
declare @servicio_contratado int = null
declare @subcontratista int = 0
if (@accion = 'pendientes')
begin
select count(*) as pendientes
from ln_contrapartes_queue
inner join ln_contrapartes on ln_contrapartes.contraparte = LN_contrapartes_queue.contraparte
where ln_contrapartes.cliente = @cliente
and ln_contrapartes_queue.processed = 0
end
if (@accion = 'pendientes_servicio')
begin
if (@servicio = 'C') set @servicio_contratado = 47
if (@servicio = 'S') begin
set @servicio_contratado = 47 set @subcontratista = 1
end
if (@servicio = 'I') set @servicio_contratado = 73
if (@servicio = 'V') set @servicio_contratado = 10
/*
select count(*) as pendientes
from ln_contrapartes_queue
inner join ln_contrapartes on ln_contrapartes.contraparte = LN_contrapartes_queue.contraparte
where ln_contrapartes.cliente = @cliente
and ln_contrapartes_queue.processed = 0
and ln_contrapartes.servicio_contratado = @servicio_contratado
and LN_contrapartes.activo = 1
and ln_contrapartes.subcontratista = @subcontratista
*/
select count(*) as pendientes
from ln_contrapartes_queue Q
inner join LN_contrapartes C on (C.contraparte = Q.contraparte)
inner join LN_gestiones G on (G.contraparte = Q.contraparte and G.vigente = 1)
inner join ln_contraparte_familias CF on (CF.contraparte = Q.contraparte and isnull(CF.activo,1) = 1)
inner join ln_familias F on (F.familia = CF.familia and isnull(F.visible,1) = 1)
where C.cliente = @cliente
and C.servicio_contratado = @servicio_contratado
and C.activo = 1
and C.subcontratista = @subcontratista
and Q.processed = 0
end
if (@accion = 'todos')
begin
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'C' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and LN_contrapartes.subcontratista = 0
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_gestiones.desde <= GETDATE()
and LN_gestiones.hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 47
union
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'S' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and LN_contrapartes.subcontratista = 1
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_contrapartes.vigencia_desde <= GETDATE()
and LN_contrapartes.vigencia_hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 47
union
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'I' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
--and LN_contrapartes.subcontratista = 0
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_contrapartes.vigencia_desde <= GETDATE()
and LN_contrapartes.vigencia_hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 73
order by cliente
end
if (@accion = 'cliente')
begin
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'C' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and ln_contrapartes.cliente = @cliente
and LN_contrapartes.subcontratista = 0
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_gestiones.desde <= GETDATE()
and LN_gestiones.hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 47
union
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'S' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and ln_contrapartes.cliente = @cliente
and LN_contrapartes.subcontratista = 1
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_contrapartes.vigencia_desde <= GETDATE()
and LN_contrapartes.vigencia_hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 47
--and clientes.cliente not in (110864291)
union
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'I' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and ln_contrapartes.cliente = @cliente
--and LN_contrapartes.subcontratista = 0
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_gestiones.desde <= GETDATE()
and LN_gestiones.hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 73
union
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'V' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and ln_contrapartes.cliente = @cliente
--and LN_contrapartes.subcontratista = 0
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_gestiones.desde <= GETDATE()
and LN_gestiones.hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 10
end
END
GO
GO
/*
EXEC LN_contrapartes_queue_cliente 'cliente', 5546348
exec LN_contrapartes_queue_cliente 'pendientes' , 5546348
EXEC LN_contrapartes_queue_'pending',null,null,null,null,null,1
EXEC LN_contrapartes_queue_cliente 'pendientes_servicio', 1226057645, 'C'
*/
CREATE OR ALTER PROCEDURE dbo.LN_contrapartes_queue_cliente
@accion varchar(100),
@cliente int = 0,
@servicio char(1) = null
AS
BEGIN
SET NOCOUNT ON;
declare @servicio_contratado int = null
declare @subcontratista int = 0
if (@accion = 'pendientes')
begin
select count(*) as pendientes
from ln_contrapartes_queue
inner join ln_contrapartes on ln_contrapartes.contraparte = LN_contrapartes_queue.contraparte
where ln_contrapartes.cliente = @cliente
and ln_contrapartes_queue.processed = 0
end
if (@accion = 'pendientes_servicio')
begin
if (@servicio = 'C') set @servicio_contratado = 47
if (@servicio = 'S') begin
set @servicio_contratado = 47 set @subcontratista = 1
end
if (@servicio = 'I') set @servicio_contratado = 73
if (@servicio = 'V') set @servicio_contratado = 10
/*
select count(*) as pendientes
from ln_contrapartes_queue
inner join ln_contrapartes on ln_contrapartes.contraparte = LN_contrapartes_queue.contraparte
where ln_contrapartes.cliente = @cliente
and ln_contrapartes_queue.processed = 0
and ln_contrapartes.servicio_contratado = @servicio_contratado
and LN_contrapartes.activo = 1
and ln_contrapartes.subcontratista = @subcontratista
*/
select count(*) as pendientes
from ln_contrapartes_queue Q
inner join LN_contrapartes C on (C.contraparte = Q.contraparte)
inner join LN_gestiones G on (G.contraparte = Q.contraparte and G.vigente = 1)
inner join ln_contraparte_familias CF on (CF.contraparte = Q.contraparte and isnull(CF.activo,1) = 1)
inner join ln_familias F on (F.familia = CF.familia and isnull(F.visible,1) = 1)
where C.cliente = @cliente
and C.servicio_contratado = @servicio_contratado
and C.activo = 1
and C.subcontratista = @subcontratista
and Q.processed = 0
end
if (@accion = 'todos')
begin
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'C' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and LN_contrapartes.subcontratista = 0
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_gestiones.desde <= GETDATE()
and LN_gestiones.hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 47
union
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'S' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and LN_contrapartes.subcontratista = 1
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_contrapartes.vigencia_desde <= GETDATE()
and LN_contrapartes.vigencia_hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 47
union
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'I' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
--and LN_contrapartes.subcontratista = 0
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_contrapartes.vigencia_desde <= GETDATE()
and LN_contrapartes.vigencia_hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 73
order by cliente
end
if (@accion = 'cliente')
begin
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'C' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and ln_contrapartes.cliente = @cliente
and LN_contrapartes.subcontratista = 0
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_gestiones.desde <= GETDATE()
and LN_gestiones.hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 47
union
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'S' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and ln_contrapartes.cliente = @cliente
and LN_contrapartes.subcontratista = 1
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_contrapartes.vigencia_desde <= GETDATE()
and LN_contrapartes.vigencia_hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 47
--and clientes.cliente not in (110864291)
union
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'I' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and ln_contrapartes.cliente = @cliente
--and LN_contrapartes.subcontratista = 0
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_gestiones.desde <= GETDATE()
and LN_gestiones.hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 73
union
select distinct ln_contrapartes.cliente as cliente,
clientes.nombre_cliente as nombre_cliente, 'V' as cs
from LN_contrapartes
inner join clientes on clientes.cliente = LN_contrapartes.cliente
inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
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_contrapartes.activo = 1
and ln_contrapartes.cliente = @cliente
--and LN_contrapartes.subcontratista = 0
and LN_contraparte_familias.activo = 1
and LN_familias.visible = 1
and LN_gestiones.desde <= GETDATE()
and LN_gestiones.hasta >= GETDATE()
and ln_contrapartes.servicio_contratado = 10
end
END
GO
Depends On
6Used By
No items found