Archivo

Posts Tagged ‘POPUP_TO_DECIDE_LIST’

POPUP_TO_DECIDE_LIST

Caso: se desea crear un popup para que el usuario seleccione una opción entre varias.

Solución: Usando la función POPUP_TO_DECIDE_LIST puedo hacerlo.

DATA: li_spopli TYPE STANDARD TABLE OF spopli,
wa_spopli TYPE spopli,
lv_result TYPE char1.

START-OF-SELECTION.
CLEAR: wa_spopli.
wa_spopli-varoption = ‘Opción 1’.
APPEND wa_spopli TO li_spopli.

CLEAR: wa_spopli.
wa_spopli-varoption = ‘Opción 2’.
APPEND wa_spopli TO li_spopli.

CLEAR: wa_spopli.
wa_spopli-varoption = ‘Opción 3’.
APPEND wa_spopli TO li_spopli.

CALL FUNCTION ‘POPUP_TO_DECIDE_LIST’
EXPORTING
titel = ‘POPUP – Radio Buttons’
textline1 = ‘Seleccione una opción’
IMPORTING
answer = lv_result
TABLES
t_spopli = li_spopli
EXCEPTIONS
not_enough_answers = 1
too_much_answers = 2
too_much_marks = 3
OTHERS = 4.

IF sy-subrc EQ 0.
IF lv_result NE ‘A’.
READ TABLE li_spopli INTO wa_spopli INDEX lv_result.
WRITE:/ ‘Se seleccionó: ‘, wa_spopli-varoption.
ELSE.
WRITE:/ ‘No ha realizado ninguna selección’.
ENDIF.
ENDIF.

Anuncio publicitario
Categorías: ABAP/4 Etiquetas: , ,

Tipos de Popup en SAP – Parte 3

Caso: Se busca mostrar los distintos tipos de POPUP para poder elegir el correcto cada vez que necesitemos uno.

1. MD_POPUP_SHOW_INTERNAL_TABLE

DATA: BEGIN OF gt_vbap OCCURS 0,
vbeln LIKE vbap-vbeln,
posnr LIKE vbap-posnr,
charg LIKE vbap-charg,
box, " seleccion del alv
END OF gt_vbap.

DATA: lk_zuonr LIKE vbak-zuonr,
lk_tabix LIKE sy-tabix,
lt_cols LIKE help_value OCCURS 0 WITH HEADER LINE.

gt_vbap-vbeln = ‘111’.
gt_vbap-posnr = ‘0010’.
gt_vbap-charg = ‘123456789’.
APPEND gt_vbap.

gt_vbap-vbeln = ‘112’.
gt_vbap-posnr = ‘0020’.
gt_vbap-charg = ‘125456789’.
APPEND gt_vbap.

CLEAR lk_tabix.

APPEND lt_cols.
lt_cols-tabname = ‘VBAP’.
lt_cols-fieldname = ‘VBELN’.
lt_cols-selectflag = ‘X’.
APPEND lt_cols.
lt_cols-tabname = ‘VBAP’.
lt_cols-fieldname = ‘POSNR’.
APPEND lt_cols.
lt_cols-tabname = ‘VBAP’.
lt_cols-fieldname = ‘CHARG’.
APPEND lt_cols.

CALL FUNCTION ‘MD_POPUP_SHOW_INTERNAL_TABLE’
EXPORTING
title = ‘Titulo (máx 80 caracteres)’
IMPORTING
index = lk_tabix " Línea seleccionada
TABLES
values = gt_vbap
columns = lt_cols
EXCEPTIONS
leave = 1
OTHERS = 2.

Uso: similar al REUSE_ALV_POPUP_TO_SELECT, pero la selección queda en el index, siendo el registro seleccionado mediante el doble click

Ventajas: fácil uso para mostrar datos en un ALV fácil.

Desventajas: no recomendado para selección de datos, es poco claro al usuario.

2. TH_POPUP

CALL FUNCTION ‘TH_POPUP’
EXPORTING
client = sy-mandt
user = sy-uname
message = ‘Prueba POPUP’
* MESSAGE_LEN = 0
* CUT_BLANKS = ‘ ‘
EXCEPTIONS
USER_NOT_FOUND = 1
OTHERS = 2.

Uso: Envía un popup tipo Windows al usuario indicado en la llamada.

Ventajas: útil para avisar de un evento a los usuarios.

Desventajas: quizá sea mejor enviar desde SAP los avisos a los usuarios.

Otros POPUP para revisar:

1. POPUP_TO_GET_ONE_VALUE Sale un POPUP en el que puedes meter un texto e insertarlo

2. POPUP_DISPLAY_MESSAGE POPUP para mensajes de ERROR

3. TERM_CONTROL_EDIT Super > POPUP que te permite escribir un texto largo

4. POPUP_TO_DECIDE_LIST Dentro del popup tiene radiobutons para elegir opciones.

5. HELP_DOCULINES_SHOW Mega POPUP para escribir textos muy largos del tipo Información

En el siguiente link aparecen otros ejemplos:

Link: http://wiki.scn.sap.com/wiki/display/ABAP/Different+Pop_Ups+in+ABAP

1. POPUP_WITH_TABLE_DISPLAY

2. POPUP_TO_CONFIRM_STEP

3. POPUP_TO_DECIDE_WITH_MESSAGE

4. POPUP_TO_DECIDE

5. POPUP_TO_SELECT_MONTH

6. POPUP_TO_CONFIRM_WITH_VALUE

7. POPUP_TO_CONFIRM_WITH_MESSAGE

8. POPUP_TO_DISPLAY_TEXT

9. POPUP_TO_CONFIRM

10. POPUP_TO_CONTINUE_YES_NO

11. POPUP_TO_CONFIRM_DATA_LOSS