dbo.proceso_control_consumos_lista_cuit_

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
/*
exec [proceso_control_consumos_lista_cuit_] 

select * from proceso_control_consumos_lista_cuit

select * from usuarios_consumos where id_transaccion = 33801622
select * from usuarios_productos where user_id = 87455253



*/


create OR ALTER PROCEDURE dbo.proceso_control_consumos_lista_cuit_
AS
BEGIN
 SET NOCOUNT ON;

 -- Genera 
  declare @desde datetime, 
    @hasta datetime
  set @desde = (select fecha from control_consumos_lista_cuit_fecha)
  if (@desde is null) 
  begin
   set @desde = getdate() - 800
   insert into control_consumos_lista_cuit_fecha values (@desde)
  end
  set @hasta = getdate()
  update control_consumos_lista_cuit_fecha set fecha = @hasta

  declare @created datetime = getdate()
 
  insert into proceso_control_consumos_lista_cuit (cuit,
               fecha_consulta,
               id_producto,
               user_id,
               cliente,
               id_transaccion,
               informado,
               created)
    select distinct cuit_consultado,
        usuarios_consumos.created, 
        usuarios_consumos.id_producto,
        usuarios_consumos.user_id,
        clientes.cliente,  
        usuarios_consumos.id_transaccion, 
        0,
        @created
      from  usuarios_consumos 
      left join padrones     on padrones.identificacion = cuit_consultado and padrones.habilitado = '1'
      left join productos     on productos.producto = usuarios_consumos.id_producto
      left join users      on users.user_id = usuarios_consumos.user_id
      left join usuarios_productos on usuarios_productos.user_id = usuarios_consumos.user_id /*and 
                                         usuarios_productos.id_producto = usuarios_consumos.id_producto*/

      left join clientes     on clientes.cliente = usuarios_productos.cliente  
     where usuarios_consumos.created between @desde and @hasta 
       and cuit_consultado in (select cuit from control_consumos_lista_cuit where visible = 1) 

  
 
 -- Lista
  select  distinct cc.cuit, p.nombre_persona, 
    --convert(varchar,cc.fecha_consulta,120) as fecha_consulta, 
    cc.fecha_consulta,
    cc.id_producto, prod.nombre_producto,
    cc.user_id, users.username, isnull(users.first_name,'') + ' ' + isnull(users.last_name,'') as usuario, 
    cc.cliente, clientes.nombre_cliente, clientes.cuit as cuit_cliente,
    cc.id_transaccion, 
    l.email_reportar
    from proceso_control_consumos_lista_cuit cc
   left join padrones p on p.identificacion = cc.cuit and p.habilitado = 1 and identificador in (select identificador from identificadores where country_code = 'AR')
   left join productos prod on prod.producto = cc.id_producto 
   left join clientes on clientes.cliente = cc.cliente
   left join users on users.user_id = cc.user_id
   left join control_consumos_lista_cuit l on l.cuit = cc.cuit
  where cc.created = @created and cc.informado = 0
  order by l.email_reportar, cc.fecha_consulta desc 


 -- Pasa a informados
  update proceso_control_consumos_lista_cuit set informado = 1 where informado = 0 and created = @created
 
END
/*
delete from control_consumos_lista_cuit_fecha
delete from proceso_control_consumos_lista_cuit
select * from control_consumos_lista_cuit
*/


GO

Used By

No items found