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
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
1Used By
No items found