Bloqueo de Encabezado de documento

Buenos dias a todos tengo el siguiente inconveniente, y es que necesito realizar el bloqueo del encabezado de una tabla de usuario mas no el detalle y este bloqueo es por usuario, he estado intentando realizar el bloqueo por medio del TN pero no logro hacer que funcione. o logro que me bloqueo todo o no bloquea nada.

Adjunto el código que estoy utilizando y este lo que hace es que me bloquea toda la pantalla, encabezado y detalle y solo necesito que me bloquee el Encabezado cuando un usuario quiere modificar el documento:

If (@Object_Type = 'Prueba2' and @Transaction_Type in ('A','U'))
Begin
	IF EXISTS (SELECT 'a' FROM [dbo].[@IMGT2] WHERE Code <> @list_of_cols_val_tab_del)
	begin
		set @error = 1
		set @error_message = 'Atención!! Usted no tiene permiso para realizar modificaciones en el Encabezado del documento'
		goto fin
	end
End

La tabla @IMGT2 es solo encabezado, como verán no toco la tabla de detalle pero este código me bloquea hasta el detalle no entiendo porque.

Agradecería su ayuda.

Saludos

Hola Estimado buena tarde.
Yo te aconsejaria, bloquear uno por uno los campos del encabezado de tu tabla. Yo he bloqueado campos del encabezado y si me ha funcionado desde el TN.
Aunque esto será mas trabajoso para tu persona, pero es mas seguro que te funcione.

¿Has probado hacerlo de esa manera?

Espero que esto te ayude.
Saludos.

1 me gusta

Hola @saufondez gracias por tu sugerencia realizare una prueba ya que no lo he hecho de esa forma.

Estare informando como me fue.

Saludos.

Otra opcion, es que a esa tabla de usuario, la transformes en un objeto de SAP. Ya como objeto de SAP, podes configurarle permisos y luego asignarle o bloquearle permisos a los usuarios como prefieras. Seria otra opcion, espero te sirva. Nos comentas.

Saludos.

1 me gusta

Hola @saufondez gracias por las sugerencias pero no funciono ninguna, en tu segunda opción me indicar crearlo con un objeto en SAP de hecho este es un objeto modificado en SAP Business Studio, y CSharp.

La única opción que se me ocurre es poner las parametrizaciones de seguridad en la CSharp para no darle mas vuelta al tema.

Agradezco la ayuda y tu tiempo

Saludos