dbo.buscar_en_clientes_ifx

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

3
Name Data Type Length Description
@p_cli_codigo varchar 40
@p_cli_cuit varchar 40
@p_cli_nombre varchar 100

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO

/*

exec [buscar_en_clientes_ifx] '','','"BANCO" NEAR "NACION"'

*/


CREATE OR ALTER PROCEDURE dbo.buscar_en_clientes_ifx
@p_cli_codigo varchar(40),
@p_cli_cuit varchar(40),
@p_cli_nombre varchar(100)
AS
BEGIN 
IF (@p_cli_codigo IS NOT NULL) AND (LEN(@p_cli_codigo) > 0)
 SELECT top 20 ltrim(rtrim(cuit)) as cli_cuit, cli_codigo, nombre_cliente as cli_nombre,cliente, country_code, estado_cliente from clientes
 WHERE convert(varchar(40), cli_codigo)  = @p_cli_codigo
 order by estado_cliente, nombre_cliente

ELSE IF (@p_cli_nombre IS NOT NULL) AND (LEN(@p_cli_nombre) > 0)
 SELECT top 20 ltrim(rtrim(cuit)) as cli_cuit, cli_codigo, nombre_cliente as cli_nombre,cliente, country_code, estado_cliente from clientes
 WHERE CONTAINS(nombre_cliente,@p_cli_nombre) and cli_codigo is not null and cli_codigo != 0 --AND estado_cliente = 'A'
 order by estado_cliente, nombre_cliente
 
 /*
  CAMBIADO 24/06/2020 PARA FILTRAR SOLO ACTIVOS CON PRODUCTOS Y USUARIOS ACTIVOS
 
  select top 20 clientes.cuit as cli_cuit, clientes.cli_codigo, clientes.nombre_cliente as cli_nombre, clientes.cliente
  from clientes
  inner join clientes_productos on clientes.cliente = clientes_productos.cliente
  inner join usuarios_productos on (clientes_productos.cliente = usuarios_productos.cliente
  and clientes_productos.id_producto = usuarios_productos.id_producto)
  inner join users on usuarios_productos.user_id = users.user_id
 
  where clientes.estado_cliente = 'A'
  and ISNULL(clientes.cli_codigo, 0) > 0
  and clientes_productos.activo = 1
  and clientes_productos.fecha_desde <= GETDATE()
  and clientes_productos.fecha_hasta >= GETDATE()
  and usuarios_productos.activo = 1
  and users.active_user = 'Y'
  and CONTAINS(clientes.nombre_cliente, @p_cli_nombre)
  group by clientes.cuit, clientes.cli_codigo, clientes.nombre_cliente, clientes.cliente
  order by clientes.nombre_cliente */



ELSE IF (@p_cli_cuit IS NOT NULL) AND (LEN(@p_cli_cuit) > 0)
 SELECT top 20 ltrim(rtrim(cuit)) as cli_cuit, cli_codigo, nombre_cliente as cli_nombre,cliente, country_code, estado_cliente from clientes
 WHERE CONTAINS(cuit,@p_cli_cuit) and cli_codigo is not null and cli_codigo != 0
 order by estado_cliente, nombre_cliente

END

GO

Depends On

1

Used By

No items found