Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
2| Name | Data Type | Length | Description |
|---|---|---|---|
| @p_Cuit | varchar | 20 | |
| @p_contraparte | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
/*
exec obtener_cuadro_cheques2 '30670250225'
*/
CREATE OR ALTER PROCEDURE dbo.obtener_cuadro_cheques2
@p_Cuit varchar(20),
@p_contraparte int = null
AS
BEGIN
DECLARE @tipo varchar(1)
DECLARE @p_5anios smalldatetime = getdate() - 1825
DECLARE @p_2anios smalldatetime = getdate() - 730
DECLARE @p_1anio smalldatetime = getdate() - 365
declare @hoy date = convert(date,getdate())
/* Busca que cantidad de dias tiene configurado el cliente */
DECLARE @p_dias int = 1825
DECLARE @p_cliente int = null
if (@p_contraparte is not null)
begin
select @p_cliente = cliente from ln_contrapartes where contraparte = @p_contraparte
if (@p_cliente is not null)
select @p_dias = max(dias) from ln_dias_alertas where tabla = 'cheques' and cliente = @p_cliente
end
SELECT tipo = iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'),
'CHEQUES' as cheques_o_levantados, Cheques_causales.codigo as causal,
count(*) as cantidad,
convert(decimal(16,2),sum(importe)) as monto
FROM chequesBCRA
left join Cheques_causales
on Cheques_causales.id_causa = ChequesBCRA.id_causa
WHERE cuit_firmante = @p_Cuit
AND visible = 1
AND ChequesBCRA.fecha_rechazo >= (GETDATE()-@p_dias)
AND id_cheque = (select max(id_cheque) from chequesBCRA b
where b.cuit_firmante = chequesBCRA.cuit_firmante
and b.nro_cheque = chequesBCRA.nro_cheque
and b.visible = 1)
AND
(
(
(
(
(fecha_levantamiento IS NULL ) AND (fecha_rechazo >= @p_5anios)
) OR
((
(fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) <= 15))
AND
(((fecha_pago IS NOT NULL ) AND (fecha_levantamiento >= (GETDATE() - 2)))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= (GETDATE() - 2))) AND (fecha_rechazo >= @p_5anios))
))
)
OR
(
(
(fecha_levantamiento >= @p_5anios) AND (((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) >= 16 ) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) <= 90))
)
AND
(
((fecha_pago IS NOT NULL) AND (fecha_levantamiento >= @p_1anio))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= @p_1anio) ) AND (fecha_rechazo >= @p_5anios))
)
)
)
OR
(
(((fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) > 90)) AND (fecha_levantamiento >= @p_2anios))
AND (fecha_rechazo >= @p_5anios)
)
)
group by iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'), chequesBCRA.id_causa, codigo
union all
-- ultimo semestre
SELECT tipo = iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'),
'LEVANTADOS' as cheques_o_levantados, Cheques_causales.codigo as causal,
count(*) as cantidad,
convert(decimal(16,2),sum(importe)) as monto
FROM chequesBCRA
left join Cheques_causales
on Cheques_causales.id_causa = ChequesBCRA.id_causa
WHERE cuit_firmante = @p_Cuit
AND ChequesBCRA.fecha_levantamiento is not null
AND visible = 1
AND ChequesBCRA.fecha_rechazo >= (GETDATE()-@p_dias)
AND id_cheque = (select max(id_cheque) from chequesBCRA b
where b.cuit_firmante = chequesBCRA.cuit_firmante
and b.nro_cheque = chequesBCRA.nro_cheque
and b.visible = 1)
AND
(
(
(
(
(fecha_levantamiento IS NULL ) AND (fecha_rechazo >= @p_5anios)
) OR
((
(fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) <= 15))
AND
(((fecha_pago IS NOT NULL ) AND (fecha_levantamiento >= (GETDATE() - 2)))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= (GETDATE() - 2))) AND (fecha_rechazo >= @p_5anios))
))
)
OR
(
(
(fecha_levantamiento >= @p_5anios) AND (((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) >= 16 ) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) <= 90))
)
AND
(
((fecha_pago IS NOT NULL) AND (fecha_levantamiento >= @p_1anio))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= @p_1anio) ) AND (fecha_rechazo >= @p_5anios))
)
)
)
OR
(
(((fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) > 90)) AND (fecha_levantamiento >= @p_2anios))
AND (fecha_rechazo >= @p_5anios)
)
)
group by iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'), chequesBCRA.id_causa, codigo
union all
-- ultimo semestre
SELECT tipo = iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'),
'SIN LEVANTAR' as cheques_o_levantados, Cheques_causales.codigo as causal,
count(*) as cantidad,
convert(decimal(16,2),sum(importe)) as monto
FROM chequesBCRA
left join Cheques_causales
on Cheques_causales.id_causa = ChequesBCRA.id_causa
WHERE cuit_firmante = @p_Cuit
AND ChequesBCRA.fecha_levantamiento is null
AND visible = 1
AND ChequesBCRA.fecha_rechazo >= (GETDATE()-@p_dias)
AND id_cheque = (select max(id_cheque) from chequesBCRA b
where b.cuit_firmante = chequesBCRA.cuit_firmante
and b.nro_cheque = chequesBCRA.nro_cheque
and b.visible = 1)
AND
(
(
(
(
(fecha_levantamiento IS NULL ) AND (fecha_rechazo >= @p_5anios)
) OR
((
(fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) <= 15))
AND
(((fecha_pago IS NOT NULL ) AND (fecha_levantamiento >= (GETDATE() - 2)))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= (GETDATE() - 2))) AND (fecha_rechazo >= @p_5anios))
))
)
OR
(
(
(fecha_levantamiento >= @p_5anios) AND (((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) >= 16 ) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) <= 90))
)
AND
(
((fecha_pago IS NOT NULL) AND (fecha_levantamiento >= @p_1anio))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= @p_1anio) ) AND (fecha_rechazo >= @p_5anios))
)
)
)
OR
(
(((fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) > 90)) AND (fecha_levantamiento >= @p_2anios))
AND (fecha_rechazo >= @p_5anios)
)
)
group by iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'), chequesBCRA.id_causa, codigo
end
GO
GO
/*
exec obtener_cuadro_cheques2 '30670250225'
*/
CREATE OR ALTER PROCEDURE dbo.obtener_cuadro_cheques2
@p_Cuit varchar(20),
@p_contraparte int = null
AS
BEGIN
DECLARE @tipo varchar(1)
DECLARE @p_5anios smalldatetime = getdate() - 1825
DECLARE @p_2anios smalldatetime = getdate() - 730
DECLARE @p_1anio smalldatetime = getdate() - 365
declare @hoy date = convert(date,getdate())
/* Busca que cantidad de dias tiene configurado el cliente */
DECLARE @p_dias int = 1825
DECLARE @p_cliente int = null
if (@p_contraparte is not null)
begin
select @p_cliente = cliente from ln_contrapartes where contraparte = @p_contraparte
if (@p_cliente is not null)
select @p_dias = max(dias) from ln_dias_alertas where tabla = 'cheques' and cliente = @p_cliente
end
SELECT tipo = iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'),
'CHEQUES' as cheques_o_levantados, Cheques_causales.codigo as causal,
count(*) as cantidad,
convert(decimal(16,2),sum(importe)) as monto
FROM chequesBCRA
left join Cheques_causales
on Cheques_causales.id_causa = ChequesBCRA.id_causa
WHERE cuit_firmante = @p_Cuit
AND visible = 1
AND ChequesBCRA.fecha_rechazo >= (GETDATE()-@p_dias)
AND id_cheque = (select max(id_cheque) from chequesBCRA b
where b.cuit_firmante = chequesBCRA.cuit_firmante
and b.nro_cheque = chequesBCRA.nro_cheque
and b.visible = 1)
AND
(
(
(
(
(fecha_levantamiento IS NULL ) AND (fecha_rechazo >= @p_5anios)
) OR
((
(fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) <= 15))
AND
(((fecha_pago IS NOT NULL ) AND (fecha_levantamiento >= (GETDATE() - 2)))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= (GETDATE() - 2))) AND (fecha_rechazo >= @p_5anios))
))
)
OR
(
(
(fecha_levantamiento >= @p_5anios) AND (((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) >= 16 ) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) <= 90))
)
AND
(
((fecha_pago IS NOT NULL) AND (fecha_levantamiento >= @p_1anio))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= @p_1anio) ) AND (fecha_rechazo >= @p_5anios))
)
)
)
OR
(
(((fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) > 90)) AND (fecha_levantamiento >= @p_2anios))
AND (fecha_rechazo >= @p_5anios)
)
)
group by iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'), chequesBCRA.id_causa, codigo
union all
-- ultimo semestre
SELECT tipo = iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'),
'LEVANTADOS' as cheques_o_levantados, Cheques_causales.codigo as causal,
count(*) as cantidad,
convert(decimal(16,2),sum(importe)) as monto
FROM chequesBCRA
left join Cheques_causales
on Cheques_causales.id_causa = ChequesBCRA.id_causa
WHERE cuit_firmante = @p_Cuit
AND ChequesBCRA.fecha_levantamiento is not null
AND visible = 1
AND ChequesBCRA.fecha_rechazo >= (GETDATE()-@p_dias)
AND id_cheque = (select max(id_cheque) from chequesBCRA b
where b.cuit_firmante = chequesBCRA.cuit_firmante
and b.nro_cheque = chequesBCRA.nro_cheque
and b.visible = 1)
AND
(
(
(
(
(fecha_levantamiento IS NULL ) AND (fecha_rechazo >= @p_5anios)
) OR
((
(fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) <= 15))
AND
(((fecha_pago IS NOT NULL ) AND (fecha_levantamiento >= (GETDATE() - 2)))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= (GETDATE() - 2))) AND (fecha_rechazo >= @p_5anios))
))
)
OR
(
(
(fecha_levantamiento >= @p_5anios) AND (((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) >= 16 ) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) <= 90))
)
AND
(
((fecha_pago IS NOT NULL) AND (fecha_levantamiento >= @p_1anio))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= @p_1anio) ) AND (fecha_rechazo >= @p_5anios))
)
)
)
OR
(
(((fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) > 90)) AND (fecha_levantamiento >= @p_2anios))
AND (fecha_rechazo >= @p_5anios)
)
)
group by iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'), chequesBCRA.id_causa, codigo
union all
-- ultimo semestre
SELECT tipo = iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'),
'SIN LEVANTAR' as cheques_o_levantados, Cheques_causales.codigo as causal,
count(*) as cantidad,
convert(decimal(16,2),sum(importe)) as monto
FROM chequesBCRA
left join Cheques_causales
on Cheques_causales.id_causa = ChequesBCRA.id_causa
WHERE cuit_firmante = @p_Cuit
AND ChequesBCRA.fecha_levantamiento is null
AND visible = 1
AND ChequesBCRA.fecha_rechazo >= (GETDATE()-@p_dias)
AND id_cheque = (select max(id_cheque) from chequesBCRA b
where b.cuit_firmante = chequesBCRA.cuit_firmante
and b.nro_cheque = chequesBCRA.nro_cheque
and b.visible = 1)
AND
(
(
(
(
(fecha_levantamiento IS NULL ) AND (fecha_rechazo >= @p_5anios)
) OR
((
(fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) <= 15))
AND
(((fecha_pago IS NOT NULL ) AND (fecha_levantamiento >= (GETDATE() - 2)))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= (GETDATE() - 2))) AND (fecha_rechazo >= @p_5anios))
))
)
OR
(
(
(fecha_levantamiento >= @p_5anios) AND (((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) >= 16 ) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento) ) <= 90))
)
AND
(
((fecha_pago IS NOT NULL) AND (fecha_levantamiento >= @p_1anio))
OR
(((fecha_pago IS NULL) AND (fecha_levantamiento >= @p_1anio) ) AND (fecha_rechazo >= @p_5anios))
)
)
)
OR
(
(((fecha_levantamiento >= @p_5anios) AND ((DATEDIFF(day,fecha_rechazo,fecha_levantamiento)) > 90)) AND (fecha_levantamiento >= @p_2anios))
AND (fecha_rechazo >= @p_5anios)
)
)
group by iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', '1propio','2empresa'), chequesBCRA.id_causa, codigo
end
GO
Used By
No items found