dbo.amx_reporte_cheques

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO

CREATE OR ALTER PROCEDURE dbo.amx_reporte_cheques  
AS
BEGIN
  SET NOCOUNT ON;
  declare @empresa varchar(200), 
          @cuit    varchar(20), 
          @familia varchar(50)
  declare @cheques table (nombre_persona_firmante varchar(200),
                         cuit_firmante  varchar(20),  
                         nombre_persona_relacionado  varchar(200),
                         Cuit_relacionado varchar(20), 
                          nro_cheque int,
                         idp int,
                         idppr int,
                         fecha_rechazo varchar(10), 
                         fecha_levantamiento varchar(10), 
                         fecha_pago varchar(10), 
                          importe money, 
                          cantidad int,
                          causa varchar(20), 
                          tipo varchar(20),
                          total_cheques int)                  
  declare @respuesta table (familia varchar(200),
                         cuit  varchar(20),  
                         empresa varchar(200),
                          leyenda varchar(100), 
                         nro_cheque varchar(20),  
                          importe varchar(20),  
                         fecha_rechazo varchar(10), 
                         fecha_levantamiento varchar(10), 
                         fecha_pago varchar(10), 
                          causa varchar(20))

  DECLARE C_amx CURSOR FOR
  select distinct empresa, cuit, familia
    from mant_led_amx  --(solo las empresas de Argentina)
   order by familia, cuit

 OPEN C_amx
 FETCH NEXT FROM C_amx INTO @empresa, @cuit, @familia
 WHILE @@fetch_status = 0
 BEGIN 
        insert into @cheques
        exec obtener_cheques @cuit
        if ((select count(*) from @cheques where tipo = 'propio' or tipo = 'a_nombre_de_empresa') > 0)
        BEGIN
        insert into @respuesta
        select @familia, @cuit, @empresa, 'CHEQUE RECHAZADO',  
               nro_cheque, importe, fecha_rechazo, fecha_levantamiento, fecha_pago, causa 
          from @cheques 
         where tipo = 'propio' or tipo = 'a_nombre_de_empresa'
     
        END  
        ELSE
        BEGIN
        insert into @respuesta values (@familia, @cuit, @empresa, 'NO REGISTRA CHEQUES RECHAZADOS',null,null,null,null,null,null)
        END   
        delete from @cheques
        FETCH NEXT FROM C_amx INTO @empresa, @cuit, @familia    
 END  
 CLOSE C_amx
 DEALLOCATE C_amx
 select familia as 'Familia',
        cuit    as 'CUIT',                 
        empresa as 'Nombre',
         leyenda as 'Leyenda',
         isnull(nro_cheque,'')          as 'Numero de Cheque',
         isnull(importe,'')             as 'Importe',
         isnull(fecha_rechazo,'')       as 'Fecha Rechazo',
         isnull(fecha_levantamiento,'') as 'Fecha Pago', 
         isnull(fecha_pago,'')          as 'Fecha Pago Multa',
         isnull(causa,'')               as 'Causa'
   from @respuesta 
   order by familia, cuit, 
            SUBSTRING(fecha_rechazo,7,4) desc, --anio rechazo
            SUBSTRING(fecha_rechazo,3,2) desc, --mes   
            SUBSTRING(fecha_rechazo,1,2) desc  --dia
END
GO

Used By

No items found