cancel
Showing results for 
Search instead for 
Did you mean: 

BLOQUEO PARA NO ACTUALIZAR DOCTOS YA CREADOS

nancy_hernandez2
Participant
0 Kudos

Buen día expertos,

tengo la siguiente inquietud, -¿como puedo bloquear que los usuarios actualicen las ordenes de ventas?. Necesito hacer que ningun usuario pueda actualizarlos despues de crearlos.

agradezco de antemano su apoyo

saludos.

Accepted Solutions (1)

Accepted Solutions (1)

former_member188440
Active Contributor
0 Kudos

Unicamente ingresa codigo en tu TransactionNotification

if @objectType in (17) and @transactionType in ('U')

begin

set @error=1

set @error_message='No se puede actualizar orden de venta creada'

end

nancy_hernandez2
Participant
0 Kudos

Gracias por tu apoyo mauricio, esto resulelve mi problema, solo una pregunta mas esta tambien la puedo hacer dinámica es decir que no sea estricta a todos los usuario sino que sea aplicable apra algunos?

saludos.

former_member188440
Active Contributor
0 Kudos

Si se puede, lo q necesitas es comparar el usuario con un if

por ejemplo

if (select usersign from ordr in (1,2,4))   este numero sacalo de la tabla ousr , por ejemplo el 1 es de manager

begin

set @error...

set @error_message.....

end

nancy_hernandez2
Participant
0 Kudos

Muchas gracia mauricio por tu orientación ya puede modificar el query con tus sugerncias.

saludos.

nancy_hernandez2
Participant
0 Kudos

HOLA  MAURICIO,

He tratado de juntar las dos condiciones pero me marca error

IF (select usersign from ordr in (1,2,4)) and (@transaction_type = 'U') and ( @object_type = '17')
       BEGIN
          SET @error = 1
          SET @error_message = 'No puede actualizar un Pedido ya creado'
         END

me dice que hay error en el in, si le pongo un where campo in me espera un begin, como es que puedo agregar esa opción de usuarios a mi query?

agradezco de antemano tu apoyo.

saludos.

former_member188440
Active Contributor
0 Kudos

yo lo pondría asi

IF (@transaction_type = 'U') and ( @object_type = '17')

BEGIN

if (select usersign from ordr where docentry=@list_of_cols_val_tab_del in (1,2,4))

     begin

          SET @error = 1

          SET @error_message = 'No puede actualizar un Pedido ya creado'

     end

END

Siempre valida primero el tipo de objeto y la transaccion, despues del primer "begin" va tu validacion

nancy_hernandez2
Participant
0 Kudos

Esta ultima opción que me mandas me da el siguiente mensaje de error.

Msg 156, Level 15, State 1, Procedure SBO_SP_TransactionNotification, Line 575

Incorrect syntax near the keyword 'in'.

former_member188440
Active Contributor
0 Kudos

Quita el ultimo parentesis y colocalo antes del IN

Answers (1)

Answers (1)

0 Kudos

Buenas tardes a todos.

También cargue este código y si me bloquea para q no puedan hacer modificaciones, pero no me bloquea al manager, como dices lo busque en la tabla OUSR  y es el “1”, pero lamentablemente hace caso omiso y también bloquea al manager.

Alguna sugerencia de lo que esté pasando?

De ante mano muchas gracias!!!

former_member188440
Active Contributor
0 Kudos

como está tu código? puedes compartirlo?