¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Solución de error en tiempo de ejecución al presionar ayuda F4 en SAP ABAP

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 74 Vistas
0
Cargando...

Estimados colegas,

Estamos utilizando el FM mencionado anteriormente para la ayuda F4. Sin embargo, obtenemos un error en tiempo de ejecución cuando presionamos la ayuda F4 para el campo de pantalla en el que se ha utilizado el FM. He visto los 3 hilos anteriores sobre este FM, pero solo sugieren usar el parámetro de importación CALLBACK_FORM del FM. Después de usar el Formulario, pude abrir el cuadro de diálogo pero no contenía el campo de restricción de diálogo. A continuación, encontrarán el código escrito por mí:

FORM F4CALLBACK TABLES RECORD_TAB STRUCTURE SEAHLPRES

CHANGING SHLP TYPE SHLP_DESCR

CALLCONTROL LIKE DDSHF4CTRL.

SHLP-INTDESCR-DIALOGTYPE = 'C'. "Tipo de diálogo (Diálogo con restricción de valor)

CALLCONTROL-step = 'PRESEL'. "Antes de que aparezca el cuadro de diálogo de restricción

CALLCONTROL-MAXRECORDS = '500'. "Para obtener el número máximo de hits

ENDFORM. "f_get_fullname

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'

EXPORTING

retfield = lc_fname

value_org = lc_s

dynpprog = sy-repid

dynpnr = sy-dynnr

CALLBACK_PROGRAM = SY-REPID

CALLBACK_FORM = 'F4CALLBACK'

TABLES

value_tab = lt_sc

return_tab = lt_ret

field_tab = lt_dfies

EXCEPTIONS

parameter_error = 1

no_values_found = 2

OTHERS = 3.

Por favor, ayúdenme a escribir el código adecuado para mostrar el cuadro de diálogo.

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

2 Respuestas

0
Cargando...

Amigos,

Usé el siguiente código para resolver este problema.

FORM F4CALLBACK TABLES RECORD_TAB STRUCTURE SEAHLPRES

CHANGING SHLP TYPE SHLP_DESCR

CALLCONTROL LIKE DDSHF4CTRL.

SHLP-INTDESCR-DIALOGTYPE = 'C'. " Tipo de diálogo (Diálogo con restricción de valor)

SHLP-INTDESCR-TITLE = 'CARRITO DE COMPRAS'.

CALLCONTROL-step = 'PRESEL'. " Antes de que aparezca el cuadro de diálogo de restricción

CALLCONTROL-MAXRECORDS = '500'. " Para obtener el máximo número de resultados

CALLCONTROL-NO_MAXDISP = ' '.

ENDFORM.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'

EXPORTING

retfield = lc_fname

value_org = lc_s

dynpprog = sy-repid

dynpnr = sy-dynnr

CALLBACK_PROGRAM = SY-REPID

CALLBACK_FORM = 'F4CALLBACK'

TABLES

value_tab = lt_sc

return_tab = lt_ret

field_tab = lt_dfies

EXCEPTIONS

parameter_error = 1

no_values_found = 2

OTHERS = 3.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola,

Consulta la documentación de FM y haz clic en el enlace CALLBACK_FORM. Puede ayudarte.

Ejemplo 2:

La tabla VALUE_TAB o la búsqueda de ayuda encontrada tiene más campos de los que deberían mostrarse en la lista de resultados. El siguiente código hace que el campo con el nombre IGNORE no se muestre ni en la lista de resultados ni en el popup de selección.

FORM F4CALLBACK

TABLES RECORD_TAB STRUCTURE SEAHLPRES

CHANGING SHLP TYPE SHLP_DESCR

CALLCONTROL LIKE DDSHF4CTRL.

DATA: FIELDPROP LIKE LINE OF SHLP-FIELDPROP.

FIELDPROP-SHLPLISPOS = 0. "Suprimir en la lista de resultados

FIELDPROP-SHLPSELPOS = 0. "Suprimir en el popup de selección

MODIFY SHLP-FIELDPROP FROM FIELDPROP

TRANSPORTING SHLPSELPOS SHLPLISPOS

WHERE FIELDNAME = 'IGNORE'.

ENDFORM.

Ejemplo 3:

La visualización de ActiveX debe ser suprimida aunque una visualización de ActiveX sea posible desde la configuración del usuario y los parámetros del módulo de funciones. Además, el usuario siempre debería obtener el popup de selección antes de seleccionar los datos para poder restringir la selección aún más.

FORM F4CALLBACK

TABLES RECORD_TAB STRUCTURE SEAHLPRES

CHANGING SHLP TYPE SHLP_DESCR

CALLCONTROL LIKE DDSHF4CTRL.

CALLCONTROL-OCX_OFF = 'X'.

SHLP-INTDESCR-DIALOGTYPE = 'C'.

ENDFORM.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?