F4_FILENAME para ruta en servidor.

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

    #1

    F4_FILENAME para ruta en servidor.

    Saludos, tengo un parameter con matchcode que ejecuta la función F4_FILENAME para seleccionar un archivo, esto ya lo tengo funcionando, pero la espec cambio y ahora el archivo va a estar ubicado dentro de una ruta del servidor PRD y quiero direccionar el F4_FILENAME para que solo abra la ruta que yo le especifiqué y seleccione el archivo de esa carpeta. y que a la vez el usuario no se pierda buscando la carpeta dentro de todos los directorios del servidor. Espero puedan echarme una mano, ya le intente con esto pero no me funciono.

    REPORT ZFILE.

    * Constantes locales
    CONSTANTS:lc_p TYPE c VALUE 'P',
    lc_a TYPE dxfields-location VALUE 'A'.

    * Variables locales
    DATA: li_host TYPE STANDARD TABLE OF msxxlist,
    lw_host TYPE msxxlist,
    lv_path TYPE dxfields-longpath,
    lv_ubicacion(1) TYPE c,
    lv_abend TYPE c.

    *En P_FILE va a quedar guardada la ruta del archivo del servidor
    PARAMETERS: P_FILE LIKE RLGRAP-FILENAME OBLIGATORY DEFAULT '/p_nomina/'.

    *- Machcode busqueda de archivo del servidor
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.

    *-Nombre del servidor
    CALL FUNCTION 'RFC_GET_LOCAL_SERVERS'
    TABLES
    hosts = li_host
    EXCEPTIONS
    not_available = 1
    OTHERS = 2.

    IF sy-subrc IS INITIAL.

    *-Nombre del servidor a la estructura
    CLEAR lw_host.
    READ TABLE li_host
    INTO lw_host
    INDEX 1.

    *-Obtengo el path
    CALL FUNCTION 'F4_DXFILENAME_TOPRECURSION'
    EXPORTING
    i_location_flag = lc_a
    i_server = lw_host-name
    IMPORTING
    o_location_flag = lv_ubicacion
    o_path = lv_path
    abend_flag = lv_abend
    EXCEPTIONS
    rfc_error = 1
    error_with_gui = 2
    OTHERS = 3.

    *-Si se obtiene un path
    IF sy-subrc IS INITIAL AND
    NOT lv_path IS INITIAL AND
    lv_abend IS INITIAL.

    *-Devuelvo ruta al parametro de selección
    p_file = lv_path.

    ENDIF.

    ENDIF.
Trabajando...