PDA

Ver la Versión Completa : Ayuda con Selection-screen y ok_code


katanka3
27/10/09, 15:17:30
Hola a todos, necesito ayuda llevo pegandome toda la mañana con la navegacion de ventanas.

Todo habria ido bien si hubiera dibujado yo las pantallas en vez de usar el selection-screen.

Pues bien el problema que tengo es que no se como recuperar el sy-ucomm o el ok-code de una pantalla creada con el selection-screen. ya que cuando

Pego el codigo...

INITIALIZATION.

START-OF-SELECTION.

* Obtenemos los datos filtrados por la pantalla inicial.
IF p_dcnt IS NOT INITIAL.

CALL SELECTION-SCREEN 1002.

ok_code = sy-ucomm.

IF sy-ucomm EQ 'CBAC'.
ok_code = 'BACK'.
CLEAR sy-ucomm.

ELSEIF sy-ucomm EQ 'CEND'.
ok_code = 'UP'.
CLEAR sy-ucomm.

ELSEIF sy-ucomm EQ 'CCAN'.
ok_code = 'EXIT'.
CLEAR sy-ucomm.

ELSE.
ok_code = 'EXE'.

ENDIF.


CASE ok_code .
* Boton de lanzar los pedidos del solicitante
WHEN 'UP'.

CALL SELECTION-SCREEN 1000.
* LEAVE TO SCREEN 1000.

WHEN 'BACK'.
CALL SELECTION-SCREEN 1000.
* LEAVE TO SCREEN 1000.

WHEN 'EXIT'.

LEAVE PROGRAM.

WHEN 'EXE'.

CALL SCREEN 1003.


Y lo que pasa es que sy-ucomm nunca recoge valores y el ok_code se queda vacio.. por o que siempre llama a la 1003 pulse lo que pulse.

Necesito vuestra ayuda compañeros abaperos ya que estoy trabajando y necesitaba estaas pantallas para ayer.. y tal y como esta el mercado no quiero que me hechen del trabajo..

Gracias.:) :D

DavidXD_XD
27/10/09, 16:20:21
Hola, pues tienes q recoger el valor del sy-ucomm, y para el manejo de screens por medio de SELECTION-SCREEN es necesario usar el evento AT SELECTION-SCREEN, dale una ojeada a este programa DEMO, te va a aclarar muchas cosas

DEMO_CALL_SELECTION_SCREEN

Espero te pueda ayudar :D

katanka3
27/10/09, 16:49:54
Con un end-of-selection tengo algo del sy-ucomm pero para cualquier cosa que pulse en la pantalla de seleccion me vale ONLI.

que hacer para controlar los botones de una pantalla de seleccion creada con selection-screen??

gracias

katanka3
28/10/09, 07:42:58
Gracias he revisado el demo_selection_screen pero pasa lo mismo el sy-ucomm me vale ONLI y pulse lo que pulse en la pantalla de seleccion.

Necesito saber el valor para manejar los botones de navegacion de la ventana.

CASE ok_code .
* Boton de lanzar los pedidos del solicitante
WHEN 'UP'.

CALL SELECTION-SCREEN 1000.

WHEN 'BACK'.

CALL SELECTION-SCREEN 1000.

WHEN 'EXIT'.

LEAVE PROGRAM.

WHEN 'EXE'.

CALL SCREEN 1003.

Necesitaria saber el sy-ucomm para manejar esto.

POR FAVOR AYUDA