Error con archivo

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • jsalinas
    Member
    • oct
    • 52

    #1

    Error con archivo

    Como puedo capturar la excepcion cuando se hace un upload con la gui_upload de un archivo y el mismo no se encuentra en la ruta especificada.
    Por favor pasar un ejemplo, probe haciendo esto pero no funciono

    CATCH SYSTEM-EXCEPTIONS

    CX_SY_DYN_CALL_ILLEGAL_TYPE.
    ENDCATCH

    Sabiendo que la excepcion que da el dump es CX_SY_DYN_CALL_ILLEGAL_TYPE.

    Gracias !!!!
  • frankmerlos
    Member
    • oct
    • 51

    #2
    DATA: RUTA TYPE STRING.
    Este programa te carga un archivo txt y te lo guarda en la TI, ITAB_INIC, Adicionalemente al hacer click en el macthcode te abre una ventana de dialogo "Abrir"

    DATA: BEGIN OF ITAB_INIC OCCURS 0,
    LINEA(500), "linea completa del archivo fuente.
    END OF ITAB_INIC.

    SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE PAR.
    PARAMETERS:
    P_RUTA like RLGRAP-FILENAME obligatory. "Ruta del archivo
    SELECTION-SCREEN END OF BLOCK B2.

    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_RUTA.
    * Función para obtener el nombre del archivo mediante el browser de Windows
    CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
    CHANGING
    FILE_NAME = P_RUTA.




    REFRESH ITAB_INIC.
    CLEAR ITAB_INIC.
    RUTA = P_RUTA.
    CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
    FILENAME = RUTA
    FILETYPE = 'ASC'
    HAS_FIELD_SEPARATOR = ' '
    * HEADER_LENGTH = 0
    * READ_BY_LINE = 'X'
    * DAT_MODE = ' '
    * CODEPAGE = ' '
    * IGNORE_CERR = ABAP_TRUE
    * REPLACEMENT = '#'
    * CHECK_BOM = ' '
    * VIRUS_SCAN_PROFILE =
    * IMPORTING
    * FILELENGTH =
    * HEADER =
    TABLES
    DATA_TAB = ITAB_INIC
    EXCEPTIONS
    FILE_OPEN_ERROR = 1
    FILE_READ_ERROR = 2
    NO_BATCH = 3
    GUI_REFUSE_FILETRANSFER = 4
    INVALID_TYPE = 5
    NO_AUTHORITY = 6
    UNKNOWN_ERROR = 7
    BAD_DATA_FORMAT = 8
    HEADER_NOT_ALLOWED = 9
    SEPARATOR_NOT_ALLOWED = 10
    HEADER_TOO_LONG = 11
    UNKNOWN_DP_ERROR = 12
    ACCESS_DENIED = 13
    DP_OUT_OF_MEMORY = 14
    DISK_FULL = 15
    DP_TIMEOUT = 16
    OTHERS = 17
    .
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.

    Comentario

    Trabajando...