Pregunta acerca de BADI WBS_USER_FIELDS_F4

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • angel1001
    Junior Member
    • may
    • 1

    #1

    Pregunta acerca de BADI WBS_USER_FIELDS_F4

    Hola, tengo un requerimiento para agregar un matchcode o search help a tres campos de la transacción CJ20N del modulo de PS. Los campos son PRPS-USR00 , PRPS-USR01 y PRPS-USR02.

    Encontre una BADI WBS_USER_FIELDS_F4, que sirve para este proposito , pero he buscado información, y no encuentro como aplicarla,

    tambien encontre la función 'F4IF_INT_TABLE_VALUE_REQUEST'.

    Alguien podría explicarme como usarlas

    Es un requerimiento urgente

    Gracias, ya busque bastante en el SDN de SAP y nada de información

    Muchas Gracias.
  • vickxo
    Senior Member
    • nov
    • 118

    #2
    Nota 699400

    Nota 699400
    el tema esta en hacer la pregunta correcta...

    Comentario

    • vickxo
      Senior Member
      • nov
      • 118

      #3
      Ayuda de bsuqueda para parametros PRSP-USR00

      Se requiere imprementar el metodo AT_F4 de la BADI WBS_USER_FIELDS_F4.
      Para hacerlo deberas de entrar en la transaccion SE19 y crear la implementacion ZWBS_USER_FIELDS_F4.
      Una vez que que la hayas creado deberas de implementar el metodo AT_F4. Aqui dejo el ejemplo de codigo que encontre navegando en la red


      types returntab type table of ddshretval initial size 0.

      data : tabname type dfies-tabname,

      fieldname type dfies-fieldname,

      searchhelp type shlpname.

      data: return_tab type returntab.
      data : valuestab type ddshretval.

      case i_user_field.
      when 'PRPS-USR00'.
      tabname = 'ZIM_ORGANISMOS'.
      fieldname = 'ZIDORG'.
      searchhelp = 'ZIM_ORGANISMOS'.
      * WHEN 'PRPS-USR01'.
      * tabname = 'ZAMC_SUBGROUPS'.
      * fieldname = 'ZSGROUP'.
      * searchhelp = 'ZAMC_SUBGROUPS '.
      endcase.

      if not tabname is initial.
      call function 'F4_FIELD_ON_VALUE_REQUEST'

      exporting

      tabname = tabname

      fieldname = fieldname

      searchhelp = searchhelp
      * SHLPPARAM = ' '
      * DYNPPROG = ' '
      * DYNPNR = ' '
      * DYNPROFIELD = ' '
      * STEPL = 0
      * VALUE = ' '
      * MULTIPLE_CHOICE = ' '
      * DISPLAY = ' '
      * SUPPRESS_RECORDLIST = ' '
      * CALLBACK_PROGRAM = ' '
      * CALLBACK_FORM = ' '
      * SELECTION_SCREEN = ' '
      * CALLBACK_SELOPT

      tables

      return_tab = return_tab
      * EXCEPTIONS
      * FIELD_NOT_FOUND = 1
      * NO_HELP_FOR_FIELD = 2
      * INCONSISTENT_HELP = 3
      * NO_VALUES_FOUND = 4
      * OTHERS = 5

      .
      if sy-subrc <> 0.
      * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
      * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      endif.
      loop at return_tab into valuestab.
      e_value = valuestab-fieldval.
      endloop.
      else.
      message i398(00) with 'No search help is availabe for this field'.
      endif.
      el tema esta en hacer la pregunta correcta...

      Comentario

      Trabajando...