MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Problemas con selection-screen (foro/showthread.php?t=14962)

misa 15/07/08 16:15:03

Problemas con selection-screen
 
Hola,

estoy creando un report con varios botones en la pantalla de seleccion, dependiendo del boton que se pulse y pulsando 'ejecutar' se deben rellenar unos campos de la pantalla u otros a partir de un select, pero no soy capaz, porque en el AT SELECTION SCREEN OUTPUT no me modifica los campos porque sy-ucomm es initial y no guarda el valor de 'ejecutar'.

Alguien me podria ayudar?????


Gracias

frankmerlos 15/07/08 17:09:41

HOLA.

CUANDO UTILIZAS BOTONES DEBES DE UTILIZAR SSCRFIELDS-UCOMM HE INCLUIR ESA TABLA.

ESTE EJEMPLO ES UNA PEQUEÑA CALCULADORA QUE EMPEZE A HACER EN ABAP.

*&---------------------------------------------------------------------*
*& Report PLANTILLA
*&
*&---------------------------------------------------------------------*

REPORT ZSVFRANK MESSAGE-ID BA.

TABLES SSCRFIELDS.

DATA: OPERANDO1 TYPE P DECIMALS 2,
OPERANDO2 TYPE P DECIMALS 2,
OPERACION TYPE C,
RESULTADO TYPE P DECIMALS 2.

SELECTION-SCREEN
BEGIN OF BLOCK LIMIT WITH FRAME TITLE TEXT1.

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 1(10) TEXT2 FOR FIELD P1.
PARAMETERS: P1(25).

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN: PUSHBUTTON /1(5) NUM1
USER-COMMAND NUM_1.

SELECTION-SCREEN: PUSHBUTTON 7(5) NUM2
USER-COMMAND NUM_2.

SELECTION-SCREEN: PUSHBUTTON 13(5) NUM3
USER-COMMAND NUM_3.

SELECTION-SCREEN: PUSHBUTTON /1(5) NUM4
USER-COMMAND NUM_4.

SELECTION-SCREEN: PUSHBUTTON 7(5) NUM5
USER-COMMAND NUM_5.

SELECTION-SCREEN: PUSHBUTTON 13(5) NUM6
USER-COMMAND NUM_6.

SELECTION-SCREEN: PUSHBUTTON /1(5) NUM7
USER-COMMAND NUM_7.

SELECTION-SCREEN: PUSHBUTTON 7(5) NUM8
USER-COMMAND NUM_8.

SELECTION-SCREEN: PUSHBUTTON 13(5) NUM9
USER-COMMAND NUM_9.

SELECTION-SCREEN: PUSHBUTTON /7(5) NUM0
USER-COMMAND NUM_0.

SELECTION-SCREEN END OF BLOCK LIMIT.

INITIALIZATION.
MOVE 'CALCULADORA' TO TEXT1.
MOVE 'VALORES' TO TEXT2.
MOVE '1' TO NUM1.
MOVE '2' TO NUM2.
MOVE '3' TO NUM3.
MOVE '4' TO NUM4.
MOVE '5' TO NUM5.
MOVE '6' TO NUM6.
MOVE '7' TO NUM7.
MOVE '8' TO NUM8.
MOVE '9' TO NUM9.
MOVE '0' TO NUM0.

AT SELECTION-SCREEN.
PERFORM OPERAR.

*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*
*& CUERPO DEL PROGRAMA
*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*

START-OF-SELECTION.

IF OPERACION = 'E'.
WRITE : 'NO ES POSIBLE REALIZAR LA DIVISION ENTRE 0'.
ELSE.
PERFORM OPERAR.
WRITE: 'RESULTADO DE LA OPERACION : ', RESULTADO.
ENDIF.

END-OF-SELECTION.

*&---------------------------------------------------------------------*
*& Form OPERAR
*&---------------------------------------------------------------------*

FORM OPERAR .
CASE SSCRFIELDS-UCOMM.
WHEN 'NUM_1'.
CONCATENATE P1 '1' INTO P1.
RESULTADO = '1'.
WHEN 'NUM_2'.
CONCATENATE P1 '2' INTO P1.
RESULTADO = '2'.
WHEN 'NUM_3'.
CONCATENATE P1 '3' INTO P1.
RESULTADO = '3'.
WHEN 'NUM_4'.
CONCATENATE P1 '4' INTO P1.
RESULTADO = '4'.
WHEN 'NUM_5'.
CONCATENATE P1 '5' INTO P1.
RESULTADO = '5'.
WHEN 'NUM_6'.
CONCATENATE P1 '6' INTO P1.
RESULTADO = '6'.
WHEN 'NUM_7'.
CONCATENATE P1 '7' INTO P1.
RESULTADO = '7'.
WHEN 'NUM_8'.
CONCATENATE P1 '8' INTO P1.
RESULTADO = '8'.
WHEN 'NUM_9'.
CONCATENATE P1 '9' INTO P1.
RESULTADO = '9'.
WHEN 'NUM_0'.
CONCATENATE P1 '0' INTO P1.
RESULTADO = '0'.
ENDCASE.
ENDFORM. " OPERAR

SALUDOS, ESPERO TE SIRVA

misa 16/07/08 14:43:39

Muchas gracias, es lo que estaba buscando.
Voy a adaptarlo y a ver si consigo que funcione


Husos Horarios son GMT. La hora en este momento es 02:23:43.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web