Hola a todos
Debo hacer un TN que restringa el ingreso de las condiciones de pago al crear y modificar un socio de negocio, solo 3 usuarios pueden ingresar socios nuevos, su restricción es que solo pueden imputar 3 condiciones de pago el TN funciona bien solo en la actualización, pero al ingreso de un nuevo SN el SP no me funciona, espero que puedan darme una ayudita
Probe usando dos variables @Pago_SN1 que almacene la condición que viene por defecto (desde los parametros generales) y @Pago_OV1, la condición que estoy ingresando al momento de crear el SN
If @Object_Type = ‘2’ AND @transaction_type IN (‘A’,’U’)
Begin
DECLARE
@CardCode1 varchar(12),
@Pago_SN1 SMALLINT,
@UserId1 SMALLINT,
@Pago_OV1 SMALLINT
SET @CardCode1 =(SELECT CardCode from OCRD where CardCode = @list_of_cols_val_tab_del)
SET @Pago_SN1 = (SELECT GroupNum FROM OCRD WHERE CardCode = @CardCode1)
SET @UserId1 = (SELECT UserSign2 FROM OCRD WHERE CardCode=@CardCode1)
SET @Pago_OV1 = (SELECT GroupNum FROM OCRD WHERE CardCode=@list_of_cols_val_tab_del)
IF (@Pago_OV1 IN ( ‘1’,’2′,’3′) AND @UserId1 IN (‘1′,’4′,’8’))
BEGIN
SELECT @error = -600, @error_message= ‘No puede usar esta Condicion de Pago’
END
End
gracias
Marianet
To report this post you need to login first.
2 Comments
You must be Logged on to comment or reply to a post.
Marianet, buenos dias no te funciona en la creacion porque cuando creas el usuario que lo esta haciendo se almacena en UserSign y cuando actualizas en UserSign2, podria quedar asi:
If @Object_Type = ‘2’ AND @transaction_type IN (‘A’,’U’)
Begin
DECLARE
@CardCode1 varchar(12),
@Pago_SN1 SMALLINT,
@UserId1 SMALLINT,
@UserId2 SMALLINT,
@Pago_OV1 SMALLINT
SET @CardCode1 =(SELECT CardCode from OCRD where CardCode = @list_of_cols_val_tab_del)
SET @Pago_SN1 = (SELECT GroupNum FROM OCRD WHERE CardCode = @CardCode1)
SET @UserId1 = (SELECT UserSign2 FROM OCRD WHERE CardCode=@CardCode1)
SET @UserId2 = (SELECT UserSign FROM OCRD WHERE CardCode=@CardCode1)
SET @Pago_OV1 = (SELECT GroupNum FROM OCRD WHERE CardCode=@list_of_cols_val_tab_del)
IF (@Pago_OV1 IN ( ‘1’,’2′,’3′) AND @UserId2 IN (‘1′,’4′,’8′) and @transaction_type=’A’)
BEGIN
SELECT @error = -600, @error_message= ‘No puede usar esta Condicion de Pago’
END
IF (@Pago_OV1 IN ( ‘1’,’2′,’3′) AND @UserId1 IN (‘1′,’4′,’8′) and @transaction_type=’U’)
BEGIN
SELECT @error = -600, @error_message= ‘No puede usar esta Condicion de Pago’
END
End
Muchas gracias, Gustavo, probare y te cuento