Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
14| Name | Data Type | Length | Description |
|---|---|---|---|
| @p_accion | varchar | 100 | |
| @p_cliente | int | 4 | |
| @p_cli_codigo | int | 4 | |
| @p_prod_codigo | int | 4 | |
| @p_tipo_paquete | char | 1 | |
| @p_estado_producto | bit | 1 | |
| @p_limites_consumos | int | 4 | |
| @p_fecha_desde | date | 3 | |
| @p_fecha_hasta | date | 3 | |
| @p_bloquea | bit | 1 | |
| @p_usuario | int | 4 | |
| @p_modalidad_pago | char | 2 | |
| @p_impe_control | bit | 1 | |
| @p_impe_acceso | bit | 1 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
CREATE OR ALTER PROCEDURE dbo.backend_abm_clientes_productos
@p_accion varchar(100),
@p_cliente int,
@p_cli_codigo int,
@p_prod_codigo int,
@p_tipo_paquete char(1),
@p_estado_producto bit,
@p_limites_consumos int,
@p_fecha_desde date,
@p_fecha_hasta date,
@p_bloquea bit,
@p_usuario int,
@p_modalidad_pago char(2) = 'CC',
@p_impe_control bit =0,
@p_impe_acceso bit =0
AS
BEGIN
SET NOCOUNT ON;
if (@p_fecha_desde = '') begin set @p_fecha_desde = null end
if (@p_fecha_hasta = '') begin set @p_fecha_hasta = null end
if (@p_limites_consumos = '' or @p_limites_consumos is null) begin set @p_limites_consumos = 0 end
if (@p_accion = 'A')
begin
insert into clientes_productos (cliente, cli_codigo, id_producto, activo, limite_consumo, fecha_desde, fecha_hasta, tipo_paquete, bloquear_consumo, created, created_by,modalidad_pago)
values (@p_cliente, @p_cli_codigo, @p_prod_codigo, @p_estado_producto, @p_limites_consumos, @p_fecha_desde, @p_fecha_hasta, @p_tipo_paquete, @p_bloquea, GETDATE(), @p_usuario,@p_modalidad_pago)
select '0' as error, 'Alta OK' as mensaje
end
if (@p_accion = 'AGREGAR')
begin
insert into clientes_productos (cliente, cli_codigo, id_producto, activo, limite_consumo, fecha_desde, fecha_hasta, tipo_paquete, bloquear_consumo, created, created_by,modalidad_pago)
values (@p_cliente, @p_cli_codigo, @p_prod_codigo, @p_estado_producto, @p_limites_consumos, @p_fecha_desde, @p_fecha_hasta, @p_tipo_paquete, @p_bloquea, GETDATE(), @p_usuario,@p_modalidad_pago)
update clientes set ACCESO_LED=@p_impe_control,ACCESO_ci=@p_impe_acceso where cliente = @p_cliente
select '0' as error, 'Alta OK' as mensaje
end
if (@p_accion = 'M')
begin
update clientes_productos
set activo = @p_estado_producto,
limite_consumo = @p_limites_consumos,
fecha_desde = @p_fecha_desde,
fecha_hasta = @p_fecha_hasta,
bloquear_consumo = @p_bloquea,
tipo_paquete = @p_tipo_paquete,
modified = GETDATE(),
modified_by = @p_usuario
where (cliente = @p_cliente or cli_codigo = @p_cli_codigo)
and id_producto = @p_prod_codigo
-- Si puso inactivo un producto para el cliente, lo inactiva para todos sus logines.
if (@p_estado_producto = 0)
begin
update usuarios_productos
set activo = 0
where cliente = @p_cliente
and id_producto = @p_prod_codigo
end
select '0' as error, 'Modificación OK' as mensaje
end
if (@p_accion = 'MODIFICAR')
begin
update clientes_productos
set activo = @p_estado_producto,
limite_consumo = @p_limites_consumos,
fecha_desde = @p_fecha_desde,
fecha_hasta = @p_fecha_hasta,
bloquear_consumo = @p_bloquea,
tipo_paquete = @p_tipo_paquete,
modified = GETDATE(),
modified_by = @p_usuario,
modalidad_pago = @p_modalidad_pago
where (cliente = @p_cliente or cli_codigo = @p_cli_codigo)
and id_producto = @p_prod_codigo
-- Si puso inactivo un producto para el cliente, lo inactiva para todos sus logines.
if (@p_estado_producto = 0)
begin
update usuarios_productos
set activo = 0
where cliente = @p_cliente
and id_producto = @p_prod_codigo
end
update clientes set ACCESO_LED=@p_impe_control,ACCESO_ci=@p_impe_acceso where cliente = @p_cliente
/*
select * from clientes where ACCESO_LED=1 or ACCESO_ci=1
select * from clientes_productos where cliente =7855254
*/
select '0' as error, 'Modificación OK' as mensaje
end
END
GO
GO
CREATE OR ALTER PROCEDURE dbo.backend_abm_clientes_productos
@p_accion varchar(100),
@p_cliente int,
@p_cli_codigo int,
@p_prod_codigo int,
@p_tipo_paquete char(1),
@p_estado_producto bit,
@p_limites_consumos int,
@p_fecha_desde date,
@p_fecha_hasta date,
@p_bloquea bit,
@p_usuario int,
@p_modalidad_pago char(2) = 'CC',
@p_impe_control bit =0,
@p_impe_acceso bit =0
AS
BEGIN
SET NOCOUNT ON;
if (@p_fecha_desde = '') begin set @p_fecha_desde = null end
if (@p_fecha_hasta = '') begin set @p_fecha_hasta = null end
if (@p_limites_consumos = '' or @p_limites_consumos is null) begin set @p_limites_consumos = 0 end
if (@p_accion = 'A')
begin
insert into clientes_productos (cliente, cli_codigo, id_producto, activo, limite_consumo, fecha_desde, fecha_hasta, tipo_paquete, bloquear_consumo, created, created_by,modalidad_pago)
values (@p_cliente, @p_cli_codigo, @p_prod_codigo, @p_estado_producto, @p_limites_consumos, @p_fecha_desde, @p_fecha_hasta, @p_tipo_paquete, @p_bloquea, GETDATE(), @p_usuario,@p_modalidad_pago)
select '0' as error, 'Alta OK' as mensaje
end
if (@p_accion = 'AGREGAR')
begin
insert into clientes_productos (cliente, cli_codigo, id_producto, activo, limite_consumo, fecha_desde, fecha_hasta, tipo_paquete, bloquear_consumo, created, created_by,modalidad_pago)
values (@p_cliente, @p_cli_codigo, @p_prod_codigo, @p_estado_producto, @p_limites_consumos, @p_fecha_desde, @p_fecha_hasta, @p_tipo_paquete, @p_bloquea, GETDATE(), @p_usuario,@p_modalidad_pago)
update clientes set ACCESO_LED=@p_impe_control,ACCESO_ci=@p_impe_acceso where cliente = @p_cliente
select '0' as error, 'Alta OK' as mensaje
end
if (@p_accion = 'M')
begin
update clientes_productos
set activo = @p_estado_producto,
limite_consumo = @p_limites_consumos,
fecha_desde = @p_fecha_desde,
fecha_hasta = @p_fecha_hasta,
bloquear_consumo = @p_bloquea,
tipo_paquete = @p_tipo_paquete,
modified = GETDATE(),
modified_by = @p_usuario
where (cliente = @p_cliente or cli_codigo = @p_cli_codigo)
and id_producto = @p_prod_codigo
-- Si puso inactivo un producto para el cliente, lo inactiva para todos sus logines.
if (@p_estado_producto = 0)
begin
update usuarios_productos
set activo = 0
where cliente = @p_cliente
and id_producto = @p_prod_codigo
end
select '0' as error, 'Modificación OK' as mensaje
end
if (@p_accion = 'MODIFICAR')
begin
update clientes_productos
set activo = @p_estado_producto,
limite_consumo = @p_limites_consumos,
fecha_desde = @p_fecha_desde,
fecha_hasta = @p_fecha_hasta,
bloquear_consumo = @p_bloquea,
tipo_paquete = @p_tipo_paquete,
modified = GETDATE(),
modified_by = @p_usuario,
modalidad_pago = @p_modalidad_pago
where (cliente = @p_cliente or cli_codigo = @p_cli_codigo)
and id_producto = @p_prod_codigo
-- Si puso inactivo un producto para el cliente, lo inactiva para todos sus logines.
if (@p_estado_producto = 0)
begin
update usuarios_productos
set activo = 0
where cliente = @p_cliente
and id_producto = @p_prod_codigo
end
update clientes set ACCESO_LED=@p_impe_control,ACCESO_ci=@p_impe_acceso where cliente = @p_cliente
/*
select * from clientes where ACCESO_LED=1 or ACCESO_ci=1
select * from clientes_productos where cliente =7855254
*/
select '0' as error, 'Modificación OK' as mensaje
end
END
GO
Depends On
1Used By
No items found