Monday, November 15, 2010

Escribir en el servidor

FORM write_server .
  DATA: ls_root        TYPE char100,
        ls_dir         TYPE char100,
        ls_num_file(8) TYPE n,
        ls_rango       TYPE inri-nrrangenr VALUE '01',
        ls_mensaje     TYPE char50.
  field-symbols:  TYPE gty_archivo.
  "ls_dir = '/interface/400/pos/salida'.
  ls_dir = '/interface/'.
* Obtner numero correlativo de archivo
  CALL FUNCTION 'NUMBER_GET_NEXT'
    EXPORTING
      nr_range_nr = ls_rango
      object      = 'ZTABDM'
    IMPORTING
      number      = ls_num_file.
  CONCATENATE ls_dir 'ZTABDM' ls_num_file '.txt' INTO ls_root.

  OPEN DATASET ls_root FOR OUTPUT IN TEXT MODE ENCODING UTF-8.
  IF sy-subrc EQ 0.
    CATCH SYSTEM-EXCEPTIONS dataset_read_error = 11
    OTHERS = 12.
      LOOP AT gtd_archivo ASSIGNING .
        TRANSFER -linea TO ls_root.
      ENDLOOP.
      ls_mensaje = 'Archivo creado'.
      CLOSE DATASET ls_root.
    ENDCATCH.
  ELSE.
    ls_mensaje = 'No se pudo crear el archivo'.
  ENDIF.
ENDFORM. 

No comments:

Post a Comment