dbo.ws_obtener_cuadro_cheques_new2

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

1
Name Data Type Length Description
@p_Cuit varchar 20

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO

CREATE OR ALTER PROCEDURE dbo.ws_obtener_cuadro_cheques_new2
@p_Cuit varchar(20)
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())
-- ultimo semestre 
SELECT '1' as semestre, tipo = iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', 'propio','empresa'),
          id_causa, sum(importe) as monto, count(*) as cantidad
    FROM chequesBCRA
   WHERE cuit_firmante = @p_Cuit
    AND visible = 1
     AND not exists(select * from chequesBCRA b 
                     where b.cuit_firmante = chequesBCRA.cuit_firmante 
           and b.nro_cheque = chequesBCRA.nro_cheque 
        and b.visible = 1 
        and b.created > chequesBCRA.created)
     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) 
     ) 
   )

   and DATEDIFF(day,fecha_rechazo,@hoy) < 180

   group by iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', 'propio','empresa'), id_causa

union all

-- semetre anterior
SELECT '2' as semestre, tipo = iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', 'propio','empresa'),
          id_causa, sum(importe) as monto, count(*) as cantidad
    FROM chequesBCRA
   WHERE cuit_firmante = @p_Cuit
     AND visible = 1
     AND not exists(select * from chequesBCRA b 
                     where b.cuit_firmante = chequesBCRA.cuit_firmante 
           and b.nro_cheque = chequesBCRA.nro_cheque 
        and b.visible = 1 
        and b.created > chequesBCRA.created)
     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) 
     ) 
   )

   and DATEDIFF(day,fecha_rechazo,@hoy) >= 180 and DATEDIFF(day,fecha_rechazo,@hoy) < 365

   group by iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', 'propio','empresa'), id_causa


union all 

-- aƱos anteriores 
SELECT '3' as semestre, tipo = iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', 'propio','empresa'),
          id_causa, sum(importe) as monto, count(*) as cantidad
    FROM chequesBCRA
   WHERE cuit_firmante = @p_Cuit
     AND visible = 1
     AND not exists(select * from chequesBCRA b 
                     where b.cuit_firmante = chequesBCRA.cuit_firmante 
           and b.nro_cheque = chequesBCRA.nro_cheque 
        and b.visible = 1 
        and b.created > chequesBCRA.created)
     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) 
     ) 
   )

   and DATEDIFF(day,fecha_rechazo,@hoy) >= 365 

   group by iif(cuit_relacionado is null or ltrim(rtrim(cuit_relacionado)) = '', 'propio','empresa'), id_causa

END 

GO

Depends On

1

Used By

No items found