<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic call transaction error handling in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/call-transaction-error-handling/m-p/4636191#M1091583</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;how to maintain the log i.e sucess/failures like below.&lt;/P&gt;&lt;P&gt;Line No.	Success/ Failure  Document No	Error Details&lt;/P&gt;&lt;P&gt;1	S	Doc 740000001	&lt;/P&gt;&lt;P&gt;2	S	Doc 740000002	&lt;/P&gt;&lt;P&gt;3	F		Co- code does not exist&lt;/P&gt;&lt;P&gt;4	F		GL Account does not exist&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm getting only one last document no: but i need all the documents to be displayed i.e either success/failures.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;below is my code.&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF ty_filedata,&lt;/P&gt;&lt;P&gt;       bukrs TYPE bukrs,           "Company code&lt;/P&gt;&lt;P&gt;       blart TYPE blart,           "Document type&lt;/P&gt;&lt;P&gt;       bldat TYPE char10,          "Document Date&lt;/P&gt;&lt;P&gt;       budat TYPE char10,          "Posting date&lt;/P&gt;&lt;P&gt;       xblnr TYPE xblnr,           "Reference&lt;/P&gt;&lt;P&gt;       bktxt TYPE bktxt,           "Document Header text&lt;/P&gt;&lt;P&gt;       waers TYPE waers,           "Currency&lt;/P&gt;&lt;P&gt;       newbs TYPE bschl,           "Posting Key for the next line item&lt;/P&gt;&lt;P&gt;       wrbtr TYPE char10,          "Amount&lt;/P&gt;&lt;P&gt;       zuonr LIKE bsik-zuonr,      "Assignment&lt;/P&gt;&lt;P&gt;       sgtxt TYPE sgtxt,           "Text&lt;/P&gt;&lt;P&gt;       newko TYPE hkont,           "Account for the next line item&lt;/P&gt;&lt;P&gt;       END OF ty_filedata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF ty_detail_log,&lt;/P&gt;&lt;P&gt;         item_no TYPE i,        " Item line no.&lt;/P&gt;&lt;P&gt;         status(1) TYPE c,      " Status - success/failure&lt;/P&gt;&lt;P&gt;         doc_no TYPE bkpf-belnr," Document No.&lt;/P&gt;&lt;P&gt;         message TYPE string,   " Message&lt;/P&gt;&lt;P&gt;       END OF ty_detail_log.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;             DATA declaration of internal tables&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Internal Table declaration for excel data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:  it_itab TYPE STANDARD TABLE OF alsmex_tabline INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Internal Table declaration for upload data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      it_upload TYPE STANDARD TABLE OF ty_filedata INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Internal Table Declaration for BDCDATA&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      it_bdcdata  TYPE STANDARD TABLE OF bdcdata,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Internal Table Declaration for BDCMSGCOLL&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      it_bdcmsgcoll TYPE STANDARD TABLE OF bdcmsgcoll,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Internal Table Declaration for FILENMAE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      lf_fname TYPE rlgrap-filename.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     t_err_log  TYPE STANDARD TABLE OF ty_err&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                       INITIAL SIZE 0,  " table for validation error log&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     t_DETAIL_LOG TYPE STANDARD TABLE OF TY_DETAIL_LOG.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     C_MSGNO TYPE BDC_MNR VALUE '312',&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;             DATA declaration of work area&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Work Area declaration for Excel Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: w_itab TYPE alsmex_tabline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Work Area declaration for upload data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      w_upload TYPE ty_filedata,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Work Area declaration for upload data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      w_upload_n TYPE ty_filedata,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Work Area declaration for upload data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      w_bdcdata TYPE bdcdata,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Work Area declaration for upload data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      w_bdcmsgcoll TYPE bdcmsgcoll,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      w_detail_log TYPE ty_detail_log.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                     SELECTION-SCREEN&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: BEGIN OF BLOCK bk1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;PARAMETERS:p_file TYPE rlgrap-filename.          " MODIF ID G1.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN:  END OF BLOCK bk1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                             AT SELECTION SCREEN&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'KD_GET_FILENAME_ON_F4'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      dynpro_number = syst-dynnr&lt;/P&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      file_name     = p_file&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      mask_too_long = 1&lt;/P&gt;&lt;P&gt;      OTHERS        = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                     START-OF-SELECTION&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:  lw_itab TYPE alsmex_tabline.&lt;/P&gt;&lt;P&gt;  lf_fname = p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      filename                = lf_fname&lt;/P&gt;&lt;P&gt;      i_begin_col             = '1'&lt;/P&gt;&lt;P&gt;      i_begin_row             = '6'&lt;/P&gt;&lt;P&gt;      i_end_col               = '12'&lt;/P&gt;&lt;P&gt;      i_end_row               = '999'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      intern                  = it_itab[]&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      inconsistent_parameters = 1&lt;/P&gt;&lt;P&gt;      upload_ole              = 2&lt;/P&gt;&lt;P&gt;      OTHERS                  = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*MESSAGE S205(ZF_COMMON_MSGS_FIN1) DISPLAY LIKE C_E.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF it_itab IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT it_itab BY row col.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DELETE it_itab WHERE row LT 6.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT it_itab INTO lw_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      w_itab = lw_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT NEW row.&lt;/P&gt;&lt;P&gt;        CLEAR: w_upload.&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CASE w_itab-col.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN '0001'.&lt;/P&gt;&lt;P&gt;          w_upload-bukrs = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0002'.&lt;/P&gt;&lt;P&gt;          w_upload-blart = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0003'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          w_upload-bldat = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0004'.&lt;/P&gt;&lt;P&gt;          w_upload-budat = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0005'.&lt;/P&gt;&lt;P&gt;          w_upload-xblnr = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0006'.&lt;/P&gt;&lt;P&gt;          w_upload-bktxt = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0007'.&lt;/P&gt;&lt;P&gt;          w_upload-waers = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0008'.&lt;/P&gt;&lt;P&gt;          w_upload-newbs = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0009'.&lt;/P&gt;&lt;P&gt;          w_upload-wrbtr = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0010'..&lt;/P&gt;&lt;P&gt;          w_upload-zuonr = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0011'.&lt;/P&gt;&lt;P&gt;          w_upload-sgtxt = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0012'.&lt;/P&gt;&lt;P&gt;          w_upload-newko = w_itab-value.&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT END OF row.&lt;/P&gt;&lt;P&gt;        APPEND w_upload TO it_upload.&lt;/P&gt;&lt;P&gt;        CLEAR: w_upload.&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;*endif.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: lw_upload TYPE ty_filedata,&lt;/P&gt;&lt;P&gt;        lv_lines TYPE sy-tabix,&lt;/P&gt;&lt;P&gt;        lv_index TYPE sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE it_upload LINES lv_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT it_upload INTO lw_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    lv_index = sy-tabix.&lt;/P&gt;&lt;P&gt;    w_upload = lw_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT w_upload-bukrs IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF lv_index GT 1.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       CALL TRANSACTION 'FB01' USING it_bdcdata&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               MODE 'N' UPDATE 'S' MESSAGES INTO it_bdcmsgcoll.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       PERFORM fr_format_message_text.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        REFRESH: it_bdcdata.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPMF05A' '0100'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'BKPF-XBLNR'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '/00'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-BLDAT'&lt;/P&gt;&lt;P&gt;                                    w_upload-bldat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-BLART'&lt;/P&gt;&lt;P&gt;                                    w_upload-blart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-BUKRS'&lt;/P&gt;&lt;P&gt;                                    w_upload-bukrs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-BUDAT'&lt;/P&gt;&lt;P&gt;                                    w_upload-budat.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-WAERS'&lt;/P&gt;&lt;P&gt;                                    w_upload-waers.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-XBLNR'&lt;/P&gt;&lt;P&gt;                                    w_upload-xblnr.&lt;/P&gt;&lt;P&gt;*perform bdc_field       using 'FS006-DOCID'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             '*'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM bdc_field       USING 'RF05A-NEWBS'&lt;/P&gt;&lt;P&gt;                                    w_upload-newbs.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'RF05A-NEWKO'&lt;/P&gt;&lt;P&gt;                                    w_upload-newko.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF lv_index NE lv_lines.&lt;/P&gt;&lt;P&gt;      lv_index = lv_index + 1.&lt;/P&gt;&lt;P&gt;      READ TABLE it_upload INTO w_upload_n INDEX lv_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPMF05A' '0300'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'BSEG-WRBTR'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '/00'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BSEG-WRBTR'&lt;/P&gt;&lt;P&gt;                                    w_upload-wrbtr.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'RF05A-NEWBS'&lt;/P&gt;&lt;P&gt;                              w_upload_n-newbs.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'RF05A-NEWKO'&lt;/P&gt;&lt;P&gt;                              w_upload_n-newko.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPMF05A' '0300'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'BSEG-WRBTR'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=BU'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BSEG-WRBTR'&lt;/P&gt;&lt;P&gt;                                   w_upload-wrbtr.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_dynpro      USING 'SAPLKACB' '0002'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'COBL-ANLN1'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=ENTE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL TRANSACTION 'FB01' USING it_bdcdata&lt;/P&gt;&lt;P&gt;          MODE 'N' UPDATE 'S' MESSAGES INTO it_bdcmsgcoll.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM fr_format_message_text .&lt;/P&gt;&lt;P&gt;  REFRESH: it_bdcdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  BDC_DYNPRO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_dynpro USING program  dynpro.&lt;/P&gt;&lt;P&gt;  CLEAR w_bdcdata.&lt;/P&gt;&lt;P&gt;  w_bdcdata-program  = program.&lt;/P&gt;&lt;P&gt;  w_bdcdata-dynpro   = dynpro.&lt;/P&gt;&lt;P&gt;  w_bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND w_bdcdata TO it_bdcdata.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "BDC_DYNPRO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Insert field                                                  *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_field USING fnam fval.&lt;/P&gt;&lt;P&gt;  IF fval &amp;lt;&amp;gt; space.&lt;/P&gt;&lt;P&gt;    CLEAR w_bdcdata.&lt;/P&gt;&lt;P&gt;    w_bdcdata-fnam = fnam.&lt;/P&gt;&lt;P&gt;    w_bdcdata-fval = fval.&lt;/P&gt;&lt;P&gt;    APPEND w_bdcdata TO it_bdcdata.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "BDC_FIELD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fr_format_message_text&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fr_format_message_text.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: lf_msg   TYPE string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE:/ sy-uline(125).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORMAT COLOR 1 INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE : /1 sy-vline,&lt;/P&gt;&lt;P&gt;           2  text-041 ,  "'record Number',&lt;/P&gt;&lt;P&gt;           16 sy-vline,&lt;/P&gt;&lt;P&gt;           17 text-042 ,  " 'success/failure',&lt;/P&gt;&lt;P&gt;           35  sy-vline,&lt;/P&gt;&lt;P&gt;           36 text-043,   " 'document no',&lt;/P&gt;&lt;P&gt;           55 sy-vline,&lt;/P&gt;&lt;P&gt;           56 text-044,   "'Error details',&lt;/P&gt;&lt;P&gt;           125 sy-vline.&lt;/P&gt;&lt;P&gt;  WRITE:/ sy-uline(125).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT it_bdcmsgcoll INTO w_bdcmsgcoll.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'FORMAT_MESSAGE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        id        = w_bdcmsgcoll-msgid&lt;/P&gt;&lt;P&gt;        lang      = sy-langu&lt;/P&gt;&lt;P&gt;        no        = w_bdcmsgcoll-msgnr&lt;/P&gt;&lt;P&gt;        v1        = w_bdcmsgcoll-msgv1&lt;/P&gt;&lt;P&gt;        v2        = w_bdcmsgcoll-msgv2&lt;/P&gt;&lt;P&gt;        v3        = w_bdcmsgcoll-msgv3&lt;/P&gt;&lt;P&gt;        v4        = w_bdcmsgcoll-msgv4&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        msg       = lf_msg&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        not_found = 1&lt;/P&gt;&lt;P&gt;        OTHERS    = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE:/01 sy-vline,&lt;/P&gt;&lt;P&gt;              02 sy-tabix,&lt;/P&gt;&lt;P&gt;              16 sy-vline,&lt;/P&gt;&lt;P&gt;              17 w_bdcmsgcoll-msgtyp,&lt;/P&gt;&lt;P&gt;              35 sy-vline,&lt;/P&gt;&lt;P&gt;              36 w_bdcmsgcoll-msgv1,&lt;/P&gt;&lt;P&gt;              55 sy-vline,&lt;/P&gt;&lt;P&gt;              56 lf_msg,&lt;/P&gt;&lt;P&gt;              125 sy-vline.&lt;/P&gt;&lt;P&gt;      WRITE:/ sy-uline(125).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "fr_format_message_text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Oct 2008 14:31:50 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-10-15T14:31:50Z</dc:date>
    <item>
      <title>call transaction error handling</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/call-transaction-error-handling/m-p/4636191#M1091583</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;how to maintain the log i.e sucess/failures like below.&lt;/P&gt;&lt;P&gt;Line No.	Success/ Failure  Document No	Error Details&lt;/P&gt;&lt;P&gt;1	S	Doc 740000001	&lt;/P&gt;&lt;P&gt;2	S	Doc 740000002	&lt;/P&gt;&lt;P&gt;3	F		Co- code does not exist&lt;/P&gt;&lt;P&gt;4	F		GL Account does not exist&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm getting only one last document no: but i need all the documents to be displayed i.e either success/failures.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;below is my code.&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF ty_filedata,&lt;/P&gt;&lt;P&gt;       bukrs TYPE bukrs,           "Company code&lt;/P&gt;&lt;P&gt;       blart TYPE blart,           "Document type&lt;/P&gt;&lt;P&gt;       bldat TYPE char10,          "Document Date&lt;/P&gt;&lt;P&gt;       budat TYPE char10,          "Posting date&lt;/P&gt;&lt;P&gt;       xblnr TYPE xblnr,           "Reference&lt;/P&gt;&lt;P&gt;       bktxt TYPE bktxt,           "Document Header text&lt;/P&gt;&lt;P&gt;       waers TYPE waers,           "Currency&lt;/P&gt;&lt;P&gt;       newbs TYPE bschl,           "Posting Key for the next line item&lt;/P&gt;&lt;P&gt;       wrbtr TYPE char10,          "Amount&lt;/P&gt;&lt;P&gt;       zuonr LIKE bsik-zuonr,      "Assignment&lt;/P&gt;&lt;P&gt;       sgtxt TYPE sgtxt,           "Text&lt;/P&gt;&lt;P&gt;       newko TYPE hkont,           "Account for the next line item&lt;/P&gt;&lt;P&gt;       END OF ty_filedata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF ty_detail_log,&lt;/P&gt;&lt;P&gt;         item_no TYPE i,        " Item line no.&lt;/P&gt;&lt;P&gt;         status(1) TYPE c,      " Status - success/failure&lt;/P&gt;&lt;P&gt;         doc_no TYPE bkpf-belnr," Document No.&lt;/P&gt;&lt;P&gt;         message TYPE string,   " Message&lt;/P&gt;&lt;P&gt;       END OF ty_detail_log.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;             DATA declaration of internal tables&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Internal Table declaration for excel data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:  it_itab TYPE STANDARD TABLE OF alsmex_tabline INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Internal Table declaration for upload data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      it_upload TYPE STANDARD TABLE OF ty_filedata INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Internal Table Declaration for BDCDATA&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      it_bdcdata  TYPE STANDARD TABLE OF bdcdata,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Internal Table Declaration for BDCMSGCOLL&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      it_bdcmsgcoll TYPE STANDARD TABLE OF bdcmsgcoll,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Internal Table Declaration for FILENMAE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      lf_fname TYPE rlgrap-filename.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     t_err_log  TYPE STANDARD TABLE OF ty_err&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                       INITIAL SIZE 0,  " table for validation error log&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     t_DETAIL_LOG TYPE STANDARD TABLE OF TY_DETAIL_LOG.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     C_MSGNO TYPE BDC_MNR VALUE '312',&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;             DATA declaration of work area&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Work Area declaration for Excel Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: w_itab TYPE alsmex_tabline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Work Area declaration for upload data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      w_upload TYPE ty_filedata,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Work Area declaration for upload data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      w_upload_n TYPE ty_filedata,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Work Area declaration for upload data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      w_bdcdata TYPE bdcdata,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Work Area declaration for upload data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      w_bdcmsgcoll TYPE bdcmsgcoll,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      w_detail_log TYPE ty_detail_log.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                     SELECTION-SCREEN&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: BEGIN OF BLOCK bk1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;PARAMETERS:p_file TYPE rlgrap-filename.          " MODIF ID G1.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN:  END OF BLOCK bk1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                             AT SELECTION SCREEN&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'KD_GET_FILENAME_ON_F4'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      dynpro_number = syst-dynnr&lt;/P&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      file_name     = p_file&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      mask_too_long = 1&lt;/P&gt;&lt;P&gt;      OTHERS        = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                     START-OF-SELECTION&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:  lw_itab TYPE alsmex_tabline.&lt;/P&gt;&lt;P&gt;  lf_fname = p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      filename                = lf_fname&lt;/P&gt;&lt;P&gt;      i_begin_col             = '1'&lt;/P&gt;&lt;P&gt;      i_begin_row             = '6'&lt;/P&gt;&lt;P&gt;      i_end_col               = '12'&lt;/P&gt;&lt;P&gt;      i_end_row               = '999'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      intern                  = it_itab[]&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      inconsistent_parameters = 1&lt;/P&gt;&lt;P&gt;      upload_ole              = 2&lt;/P&gt;&lt;P&gt;      OTHERS                  = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*MESSAGE S205(ZF_COMMON_MSGS_FIN1) DISPLAY LIKE C_E.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF it_itab IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT it_itab BY row col.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DELETE it_itab WHERE row LT 6.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT it_itab INTO lw_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      w_itab = lw_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT NEW row.&lt;/P&gt;&lt;P&gt;        CLEAR: w_upload.&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CASE w_itab-col.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN '0001'.&lt;/P&gt;&lt;P&gt;          w_upload-bukrs = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0002'.&lt;/P&gt;&lt;P&gt;          w_upload-blart = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0003'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          w_upload-bldat = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0004'.&lt;/P&gt;&lt;P&gt;          w_upload-budat = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0005'.&lt;/P&gt;&lt;P&gt;          w_upload-xblnr = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0006'.&lt;/P&gt;&lt;P&gt;          w_upload-bktxt = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0007'.&lt;/P&gt;&lt;P&gt;          w_upload-waers = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0008'.&lt;/P&gt;&lt;P&gt;          w_upload-newbs = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0009'.&lt;/P&gt;&lt;P&gt;          w_upload-wrbtr = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0010'..&lt;/P&gt;&lt;P&gt;          w_upload-zuonr = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0011'.&lt;/P&gt;&lt;P&gt;          w_upload-sgtxt = w_itab-value.&lt;/P&gt;&lt;P&gt;        WHEN '0012'.&lt;/P&gt;&lt;P&gt;          w_upload-newko = w_itab-value.&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT END OF row.&lt;/P&gt;&lt;P&gt;        APPEND w_upload TO it_upload.&lt;/P&gt;&lt;P&gt;        CLEAR: w_upload.&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;*endif.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: lw_upload TYPE ty_filedata,&lt;/P&gt;&lt;P&gt;        lv_lines TYPE sy-tabix,&lt;/P&gt;&lt;P&gt;        lv_index TYPE sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE it_upload LINES lv_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT it_upload INTO lw_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    lv_index = sy-tabix.&lt;/P&gt;&lt;P&gt;    w_upload = lw_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT w_upload-bukrs IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF lv_index GT 1.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       CALL TRANSACTION 'FB01' USING it_bdcdata&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               MODE 'N' UPDATE 'S' MESSAGES INTO it_bdcmsgcoll.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       PERFORM fr_format_message_text.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        REFRESH: it_bdcdata.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPMF05A' '0100'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'BKPF-XBLNR'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '/00'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-BLDAT'&lt;/P&gt;&lt;P&gt;                                    w_upload-bldat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-BLART'&lt;/P&gt;&lt;P&gt;                                    w_upload-blart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-BUKRS'&lt;/P&gt;&lt;P&gt;                                    w_upload-bukrs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-BUDAT'&lt;/P&gt;&lt;P&gt;                                    w_upload-budat.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-WAERS'&lt;/P&gt;&lt;P&gt;                                    w_upload-waers.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BKPF-XBLNR'&lt;/P&gt;&lt;P&gt;                                    w_upload-xblnr.&lt;/P&gt;&lt;P&gt;*perform bdc_field       using 'FS006-DOCID'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             '*'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM bdc_field       USING 'RF05A-NEWBS'&lt;/P&gt;&lt;P&gt;                                    w_upload-newbs.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'RF05A-NEWKO'&lt;/P&gt;&lt;P&gt;                                    w_upload-newko.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF lv_index NE lv_lines.&lt;/P&gt;&lt;P&gt;      lv_index = lv_index + 1.&lt;/P&gt;&lt;P&gt;      READ TABLE it_upload INTO w_upload_n INDEX lv_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPMF05A' '0300'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'BSEG-WRBTR'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '/00'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BSEG-WRBTR'&lt;/P&gt;&lt;P&gt;                                    w_upload-wrbtr.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'RF05A-NEWBS'&lt;/P&gt;&lt;P&gt;                              w_upload_n-newbs.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'RF05A-NEWKO'&lt;/P&gt;&lt;P&gt;                              w_upload_n-newko.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPMF05A' '0300'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'BSEG-WRBTR'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=BU'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BSEG-WRBTR'&lt;/P&gt;&lt;P&gt;                                   w_upload-wrbtr.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_dynpro      USING 'SAPLKACB' '0002'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'COBL-ANLN1'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=ENTE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL TRANSACTION 'FB01' USING it_bdcdata&lt;/P&gt;&lt;P&gt;          MODE 'N' UPDATE 'S' MESSAGES INTO it_bdcmsgcoll.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM fr_format_message_text .&lt;/P&gt;&lt;P&gt;  REFRESH: it_bdcdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  BDC_DYNPRO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_dynpro USING program  dynpro.&lt;/P&gt;&lt;P&gt;  CLEAR w_bdcdata.&lt;/P&gt;&lt;P&gt;  w_bdcdata-program  = program.&lt;/P&gt;&lt;P&gt;  w_bdcdata-dynpro   = dynpro.&lt;/P&gt;&lt;P&gt;  w_bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND w_bdcdata TO it_bdcdata.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "BDC_DYNPRO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Insert field                                                  *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_field USING fnam fval.&lt;/P&gt;&lt;P&gt;  IF fval &amp;lt;&amp;gt; space.&lt;/P&gt;&lt;P&gt;    CLEAR w_bdcdata.&lt;/P&gt;&lt;P&gt;    w_bdcdata-fnam = fnam.&lt;/P&gt;&lt;P&gt;    w_bdcdata-fval = fval.&lt;/P&gt;&lt;P&gt;    APPEND w_bdcdata TO it_bdcdata.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "BDC_FIELD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fr_format_message_text&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fr_format_message_text.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: lf_msg   TYPE string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE:/ sy-uline(125).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORMAT COLOR 1 INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE : /1 sy-vline,&lt;/P&gt;&lt;P&gt;           2  text-041 ,  "'record Number',&lt;/P&gt;&lt;P&gt;           16 sy-vline,&lt;/P&gt;&lt;P&gt;           17 text-042 ,  " 'success/failure',&lt;/P&gt;&lt;P&gt;           35  sy-vline,&lt;/P&gt;&lt;P&gt;           36 text-043,   " 'document no',&lt;/P&gt;&lt;P&gt;           55 sy-vline,&lt;/P&gt;&lt;P&gt;           56 text-044,   "'Error details',&lt;/P&gt;&lt;P&gt;           125 sy-vline.&lt;/P&gt;&lt;P&gt;  WRITE:/ sy-uline(125).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT it_bdcmsgcoll INTO w_bdcmsgcoll.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'FORMAT_MESSAGE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        id        = w_bdcmsgcoll-msgid&lt;/P&gt;&lt;P&gt;        lang      = sy-langu&lt;/P&gt;&lt;P&gt;        no        = w_bdcmsgcoll-msgnr&lt;/P&gt;&lt;P&gt;        v1        = w_bdcmsgcoll-msgv1&lt;/P&gt;&lt;P&gt;        v2        = w_bdcmsgcoll-msgv2&lt;/P&gt;&lt;P&gt;        v3        = w_bdcmsgcoll-msgv3&lt;/P&gt;&lt;P&gt;        v4        = w_bdcmsgcoll-msgv4&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        msg       = lf_msg&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        not_found = 1&lt;/P&gt;&lt;P&gt;        OTHERS    = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE:/01 sy-vline,&lt;/P&gt;&lt;P&gt;              02 sy-tabix,&lt;/P&gt;&lt;P&gt;              16 sy-vline,&lt;/P&gt;&lt;P&gt;              17 w_bdcmsgcoll-msgtyp,&lt;/P&gt;&lt;P&gt;              35 sy-vline,&lt;/P&gt;&lt;P&gt;              36 w_bdcmsgcoll-msgv1,&lt;/P&gt;&lt;P&gt;              55 sy-vline,&lt;/P&gt;&lt;P&gt;              56 lf_msg,&lt;/P&gt;&lt;P&gt;              125 sy-vline.&lt;/P&gt;&lt;P&gt;      WRITE:/ sy-uline(125).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "fr_format_message_text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Oct 2008 14:31:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/call-transaction-error-handling/m-p/4636191#M1091583</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-15T14:31:50Z</dc:date>
    </item>
    <item>
      <title>Re: call transaction error handling</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/call-transaction-error-handling/m-p/4636192#M1091584</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Neelima,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Just put the following code within that LOOP...ENDLOOP statement.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
LOOP AT it_upload INTO lw_upload.
  ....
  CALL TRANSACTION 'FB01' USING it_bdcdata
  MODE 'N' UPDATE 'S' MESSAGES INTO it_bdcmsgcoll.
  PERFORM fr_format_message_text .
  REFRESH: it_bdcdata.
ENDLOOP.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;R.Nagarajan.&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------" /&gt;&lt;P&gt; We can -&lt;/P&gt;&lt;HR originaltext="------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Oct 2008 14:39:18 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/call-transaction-error-handling/m-p/4636192#M1091584</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-15T14:39:18Z</dc:date>
    </item>
  </channel>
</rss>

