jueves, 26 de septiembre de 2013

User para bloquear campo del detalle en el pedido.

Me piden bloquear la introducción del material en el pedido: que la columna no esté habilitada para la entrada de datos (VA01, VA02, VA03). Por lo que veo el campo en el dynpro es el RV45A-MABNR. Si uso userexit_field_modification de la MV45AFZZ conforme a los ejemplos de este estilo

 CASE SCREEN-NAME.
   WHEN 'RV45A-MABNR'.
     SCREEN-ACTIVE = 0.
ENDCASE.

Sólo me bloquea el material para el registro una vez he metido los datos, pero no es lo que necesitamos. Al final con la ayuda de Laura, Jesús y gentes con parecidos problemas he puesto este código:

FORM userexit_field_modification.

    DATAWA_COLS LIKE LINE OF TCTRL_U_ERF_AUFTRAG-COLS.
    LOOP AT TCTRL_U_ERF_AUFTRAG-cols INTO wa_cols.
      CHECK  WA_COLS-SCREEN-NAME 'RV45A-MABNR'.

      WA_COLS-SCREEN-input 0.

      MODIFY TCTRL_U_ERF_AUFTRAG-COLS FROM WA_COLS.

    ENDLOOP.

ENDFORM.  
Y funciona sin necesidad de Enhacements en otros sitios.

Epílogo: para saber que este campo y este Field Table hay que ir haciendo F1 y datos técnicos. Y si es vuestra primera user-exit del pedido.

No hay comentarios:

Publicar un comentario