Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Deshabilitar campos en transacción CS03

dante-baru4
Member
0 Kudos
401

Buenos Días expertos.

Se me pidió crear unos custom fields para las transacciones CS01/CS02/CS03 los cuales estuvieran conectados a una tabla, para que recibieran datos y mostraran los que ya están en la tabla... Se creo todo en un proyecto de ampliacion PCSD0003, y el exit de pantalla esta en la 1100. El exit function va a las salidas 004 y 005 las cuales funcionan correctamente.

El detalle es que estos campos se quedan habilitados para entrada inclusive en la transacción CS03 (Solo se muestran habilitados pero no permite modificaciones)...

Busque en muchos lados informacion de problemas similares pero no me funciona nada... En el PBO tampoco entra al LOOP AT SCREEN. Tengo este codigo en el PBO.

MODULE status_1100 OUTPUT.
* SET PF-STATUS 'xxxxxxxx'.
* SET TITLEBAR 'xxx'.
PROCESS BEFORE OUTPUT.
IF sy-tcode EQ 'CS03'.
LOOP AT SCREEN.
if SCREEN-GROUP1 = 'S1'.
SCREEN-INPUT = 0.
MODIFY SCREEN.
endif.
ENDLOOP.
ENDIF.
ENDMODULE.

1 REPLY 1

andrewfloriano
Product and Topic Expert
Product and Topic Expert
197

Hola David,

Puede ir a la salida de pantalla correspondiente dentro de su proyecto de mejora (donde activa las salidas) y agregar un código similar a:

LOOP AT SCREEN INTO DATA(ls_screen).
  IF ls_screen-name = 'YOURFIELD'.
    IF sy-tcode = 'CS01' OR sy-tcode = 'CS02'.
      ls_screen-input = '1'.
    ELSE.
      ls_screen-input = '0'.
    ENDIF.
    INSERT SCREEN FROM ls_screen.
  ENDIF.
ENDLOOP.

Por favor, eche un vistazo a los siguientes tutoriales para obtener más información:

Gracias!