Saturday, 5 November 2011

Log Creation code

DATA: lt_txt TYPE TABLE OF t_txt,
                ls_txt TYPE t_txt.
        counter = counter + 1.
        IF counter = 1.
          ls_txt  = 'Segment Number       Error'.
          APPEND ls_txt TO lt_txt.
        endif.
          LOOP AT ret INTO wa_ret.
            CONCATENATE wa_data-segnum wa_ret-message INTO ls_txt SEPARATED BY space.
          ENDLOOP.
          APPEND ls_txt TO lt_txt.
        AT LAST.
          CALL METHOD cl_gui_frontend_services=>get_desktop_directory
            CHANGING
              desktop_directory    = lv_path
            EXCEPTIONS
              cntl_error           = 1
*    error_no_gui         = 2
*    not_supported_by_gui = 3
*    others               = 4
                  .
          IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
          ENDIF.

          CALL METHOD cl_gui_cfw=>update_view.
          CONCATENATE lv_path '\error_log.txt' INTO lv_path IN CHARACTER MODE.
*    CONCATENATE 'C:\Documents and Settings\XPMUser\Desktop' '_LOG.txt' INTO lv_path IN CHARACTER MODE.
          CALL FUNCTION 'GUI_DOWNLOAD'
            EXPORTING
              filename                = lv_path
            TABLES
              data_tab                = lt_txt
            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
              OTHERS                  = 22.
          IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
          ENDIF.

No comments:

Post a Comment