Saturday, June 6, 2015

Download Internal table data into excel sheet


**Download File which is received 

  lwa_dwnld-unit_code    = 'Unit'.
  lwa_dwnld-scheme_code  = 'Scheme Code'.
  lwa_dwnld-div_code     = 'Division Code'.
  lwa_dwnld-gl_code      = 'GL Code'.
  lwa_dwnld-dr_amt       = 'Debit Amount'.
  lwa_dwnld-cr_amt       = 'Credit Amount'.
  lwa_dwnld-jv_no        = 'JV Number'.
  lwa_dwnld-ch_jv_type   = 'JV Type'.
  APPEND lwa_dwnld TO lt_dwnld.
  LOOP AT lt_olimms INTO lwa_olimms.

    MOVE-CORRESPONDING lwa_olimms TO lwa_dwnld.
    APPEND lwa_dwnld TO lt_dwnld.

  ENDLOOP.

**First Download
  IF sy-mandt+0(1) = '2'.
    CONCATENATE 'C:\OLIMMS\DEV\LEGACYDATA' sy-mandt sy-datum '.XLS' INTO lv_path.
  ELSEIF sy-mandt+0(1) = '3'.
    CONCATENATE 'C:\OLIMMS\QTY\LEGACYDATA' sy-mandt sy-datum '.XLS' INTO lv_path.
  ELSEIF sy-mandt+0(1) = '4'.
    CONCATENATE 'C:\OLIMMS\PRD\LEGACYDATA' sy-mandt sy-datum '.XLS' INTO lv_path.
  ENDIF.
*  lv_path = 'E:\OLIMMS.XLS'.
  CALL METHOD cl_gui_frontend_services=>gui_download
    EXPORTING
      filename                = lv_path
      filetype                = 'ASC'
      write_field_separator   = 'X'
    CHANGING
      data_tab                = lt_dwnld
    EXCEPTIONS
      file_write_error        = 1
      no_batch                = 2
      gui_refuse_filetransfer = 3
      invalid_type            = 4
      no_authority            = 5
      unknown_error           = 6
      header_not_allowed      = 7
      separator_not_allowed   = 8
      filesize_not_allowed    = 9
      header_too_long         = 10
      dp_error_create         = 11
      dp_error_send           = 12
      dp_error_write          = 13
      unknown_dp_error        = 14
      access_denied           = 15
      dp_out_of_memory        = 16
      disk_full               = 17
      dp_timeout              = 18
      file_not_found          = 19
      dataprovider_exception  = 20
      control_flush_error     = 21
      not_supported_by_gui    = 22
      error_no_gui            = 23
      OTHERS                  = 24.
  IF sy-subrc <> 0.
* Implement suitable error handling here
  ENDIF.

No comments:

Post a Comment