Ver la Versión Completa : matchcode visible o invisible
romario2
17/12/08, 11:36:18
Hola,
necesito que un campo de una dynpro ( que incorpora matchcode).
sea invisible o no segun un requerimiento.
gracias
andyoscky
17/12/08, 12:02:41
Una podria ser
que definas dos bloques y que uno este relacionado con un tipo de datos con matchbox de diccionario y otro no
asi cuando los recorres segun el parametro activas el que queres
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF P_CLAD = 'X'.
IF SCREEN-GROUP1 = 'PEPE'.
SCREEN-ACTIVE = 1.
MODIFY SCREEN.
ENDIF.
ELSE.
IF SCREEN-GROUP1 = 'PEPIN'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
El código anterior es correcto si lo que quieres es que desaparezca un campo en el SELECTION-SCREEN (por eso se usa el evento AT SELECTION-SCREEN OUTPUT).
Si por el contrario lo que buscas es que desaparezca el campo en una dynpro creada por ti, este mismo código deberás introducirlo en un módulo PBO de la dynpro...
Ésta sería tu dynpro 100 (por ejemplo).
PROCESS BEFORE OUTPUT.
MODULE oculta_campos_0100.
Éste sería tu módulo.
MODULE oculta_campos_0100.
LOOP AT screen.
IF screen-group1 EQ 'A' AND <tu condición se cumple>.
screen-active = 0.
ELSE.
screen-active = 1.
ENDIF.
MODIFY screen.
ENDLOOP.
ENDMODULE.
Ten en cuenta que en la dynpro también debes asignar grupos a los campos que quieres ocultar.
Para ello están los campos 'Grupos' en cada campo dentro de tu dynpro y deberás poner el valor 'A' en el primer grupo de los campos que quieras ocultar. Éste simboliza el campo 'screen-group1'.
Ojalá te sirvan las indicaciones.
Saludos
romario2
18/12/08, 08:02:02
Hola, muchas gracias por vuestra ayuda.
Ya tengo resuelto el tema.
Feliz navidad
www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web