Ocultar Selection-Screens

Más de una vez (Yo incluído), me ha preguntado como hacer para ocultar o mostrar un Selection-Screen…Tal como hacen algunas transacciones de SAP…La respuesta es más sencilla de lo que parece -;)

**************************************************************
* Programa: ZDUMMY_TEST. *
* Consultor ABAP: Alvaro Tejada Galindo *
**************************************************************
REPORT ZPRUEBA_ATG.

DATA: FLAG TYPE C VALUE ‘X’,
COUNTER TYPE I.

SELECTION-SCREEN BEGIN OF BLOCK B1.
SELECTION-SCREEN PUSHBUTTON 1(10) BUTTON USER-COMMAND GOCFG.
SELECTION-SCREEN END OF BLOCK B1.

SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-T01.
PARAMETERS:
CARRID TYPE SPFLI-CARRID MODIF ID SC1,
CONNID TYPE SPFLI-CONNID MODIF ID SC1,
CITYFROM TYPE SPFLI-CITYFROM MODIF ID SC1.
SELECTION-SCREEN END OF BLOCK B2.

*&———————————————————–&*
*& START-OF-SELECTION &*
*&———————————————————–&*
START-OF-SELECTION.

AT SELECTION-SCREEN OUTPUT.

LOOP AT SCREEN.
IF SCREEN-GROUP1 = ‘SC1′ AND FLAG EQ ‘X’.
COUNTER = COUNTER + 1.
WRITE ‘Ocultar’ TO BUTTON.
SCREEN-ACTIVE = ‘1′.
MODIFY SCREEN.
IF COUNTER EQ 6.
CLEAR COUNTER.
FLAG = SPACE.
ENDIF.
CONTINUE.
ELSEIF SCREEN-GROUP1 = ‘SC1′ AND FLAG EQ SPACE.
COUNTER = COUNTER + 1.
WRITE ‘Mostrar’ TO BUTTON.
SCREEN-ACTIVE = ‘0′.
MODIFY SCREEN.
IF COUNTER EQ 6.
CLEAR COUNTER.
FLAG = ‘X’.
ENDIF.
CONTINUE.
ENDIF.
ENDLOOP.



Saludos,

Blag.

3 comentarios »

  1. memito Said,

    Junio 26, 2007 @ 8:13 am

    excelente iniciativa y felicitaciones de mi part es de muhca ayuda para aquellos que se inician en est facinanat mundo del ABAP …espero que sigan asi .. y puliquen mas ejemplos eso es lo mas important … suerte ……

  2. karim Said,

    Agosto 16, 2007 @ 8:02 am

    gracias , es un ejemplo muy interessente

  3. ASTRO Said,

    Septiembre 20, 2007 @ 1:41 pm

    Muy interesante y excelente ejemplo, gracias por tu aportacion

RSS feed for comments on this post · URI para TrackBack.

Leave a Comment

Cerrar
E-mail It