<?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 Re: bdc problem in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-problem/m-p/3211486#M765665</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For large no of data such as 1000 records for one transaction you have to use transaction method.For uploading several transaction at a time you have to use session method.&lt;/P&gt;&lt;P&gt;The procedure is as follows : &lt;/P&gt;&lt;P&gt;1.Use transaction code SHDB for recording purpose and make it sure that you will do as much correct as possible while recording because it will generate the coding based on reecording.&lt;/P&gt;&lt;P&gt;2.After generating the code edit the code by inserting the loop at internal table before the perform bdxrex. statement.&lt;/P&gt;&lt;P&gt;3.Get the values from flat file to internal table and loop the internal table before the bdcrexc.&lt;/P&gt;&lt;P&gt;4.Just get clear overview about the bdc recording and start doing recording after that edit the coding after reviewing two more times.&lt;/P&gt;&lt;P&gt;5. I will give the code below use that and have a clear idea about the session method.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The code is below just copy and paste it you will get a clear idea bdc recording.&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; Report  Y0007_BDC&lt;/P&gt;&lt;P&gt;*&amp;amp;&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;STRONG&gt;&amp;amp;&lt;/STRONG&gt;*********************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Program Name : Y0007_BDC                    Create Date: 01/12/2007 *&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; Author's Name: Sakthi Saravanan.C           Last Update:&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; DRF Number   :&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;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Program Title: UPDATING IT 0007 for overtime Z fields.              *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Description  :&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               Updating the infotype 0007 using BDC recording for    *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; updating the overtime Z fields.                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Change History                                                      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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; Mod. #  |  Date    |    Developer       |  Description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;  1.     |01.12.2007|Sakthi Saravanan.C  |BDC recording for updating&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                          overtime Z fields in IT 0007&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;  2      |&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;/P&gt;&lt;P&gt;*&amp;amp;&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;report Y0007_BDC NO STANDARD PAGE HEADING MESSAGE-ID RP LINE-SIZE 180." LINE-COUNT 28.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      no standard page heading line-size 255.&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;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              DATA DECLARATION                                     *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF TY_0007,&lt;/P&gt;&lt;P&gt;          PERNR      TYPE PERNR,      " PERNR&lt;/P&gt;&lt;P&gt;          SCHKZ      TYPE SCHKN,      " Work Schudule&lt;/P&gt;&lt;P&gt;          ZTERF      TYPE PT_ZTERF,   " Time Magmt Status&lt;/P&gt;&lt;P&gt;          R1         TYPE C,&lt;/P&gt;&lt;P&gt;          R2         TYPE C,&lt;/P&gt;&lt;P&gt;          R3         TYPE C,&lt;/P&gt;&lt;P&gt;        END OF TY_0007.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA  : INT_0007  TYPE STANDARD TABLE OF TY_0007 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;        WA_0007   TYPE TY_0007.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: P_FNAME TYPE IBIPPARMS-PATH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : begin of int_out occurs 0,&lt;/P&gt;&lt;P&gt;  pernr type persno,&lt;/P&gt;&lt;P&gt;  mesg(300),&lt;/P&gt;&lt;P&gt;  end of int_out.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF int_err occurs 0,&lt;/P&gt;&lt;P&gt;  pernr type persno,&lt;/P&gt;&lt;P&gt;  mesg(300),&lt;/P&gt;&lt;P&gt;  end of int_err.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;include bdcrecx1.&lt;/P&gt;&lt;P&gt;&lt;/P&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;          SELECTION SCREEN                                         *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK A WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B WITH FRAME.&lt;/P&gt;&lt;P&gt;PARAMETERS : P_PATH TYPE string.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK A.&lt;/P&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;      CALL FUNCTION FOR INPUT FILE NAME                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_path.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'F4_FILENAME'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      PROGRAM_NAME  = SYST-CPROG&lt;/P&gt;&lt;P&gt;      DYNPRO_NUMBER = SYST-DYNNR&lt;/P&gt;&lt;P&gt;      FIELD_NAME    = ' '&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      FILE_NAME     = P_FNAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  p_path = p_fname.&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;start-of-selection.&lt;/P&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;              GUI_UPLOAD FUNCTION MODULE                           *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      FILENAME                = P_PATH&lt;/P&gt;&lt;P&gt;      FILETYPE                = 'ASC'&lt;/P&gt;&lt;P&gt;      HAS_FIELD_SEPARATOR     = 'X'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      DATA_TAB                = INT_0007&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      FILE_OPEN_ERROR         = 1&lt;/P&gt;&lt;P&gt;      FILE_READ_ERROR         = 2&lt;/P&gt;&lt;P&gt;      NO_BATCH                = 3&lt;/P&gt;&lt;P&gt;      GUI_REFUSE_FILETRANSFER = 4&lt;/P&gt;&lt;P&gt;      INVALID_TYPE            = 5&lt;/P&gt;&lt;P&gt;      NO_AUTHORITY            = 6&lt;/P&gt;&lt;P&gt;      UNKNOWN_ERROR           = 7&lt;/P&gt;&lt;P&gt;      BAD_DATA_FORMAT         = 8&lt;/P&gt;&lt;P&gt;      HEADER_NOT_ALLOWED      = 9&lt;/P&gt;&lt;P&gt;      SEPARATOR_NOT_ALLOWED   = 10&lt;/P&gt;&lt;P&gt;      HEADER_TOO_LONG         = 11&lt;/P&gt;&lt;P&gt;      UNKNOWN_DP_ERROR        = 12&lt;/P&gt;&lt;P&gt;      ACCESS_DENIED           = 13&lt;/P&gt;&lt;P&gt;      DP_OUT_OF_MEMORY        = 14&lt;/P&gt;&lt;P&gt;      DISK_FULL               = 15&lt;/P&gt;&lt;P&gt;      DP_TIMEOUT              = 16&lt;/P&gt;&lt;P&gt;      OTHERS                  = 17.&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;  perform open_group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Looping pernr values&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT INT_0007 INTO WA_0007.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMP50A' '1000'.&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;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;INSERTING THE PERNR VALUE&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-PERNR'&lt;/P&gt;&lt;P&gt;                                  WA_0007-PERNR.            "'00001011'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-TIMR6'&lt;/P&gt;&lt;P&gt;                                  'X'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'RP50G-CHOIC'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-CHOIC'&lt;/P&gt;&lt;P&gt;                                  '0007'.&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMP50A' '1000'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'RP50G-PERNR'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=INS'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-PERNR'&lt;/P&gt;&lt;P&gt;                                  WA_0007-PERNR.            "'1011'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-TIMR6'&lt;/P&gt;&lt;P&gt;                                  'X'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-CHOIC'&lt;/P&gt;&lt;P&gt;                                  'Planned Working Time - 0007'.&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'MP000700' '2000'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=UPD'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'P0007-BEGDA'&lt;/P&gt;&lt;P&gt;                                  '12/01/2007'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'P0007-ENDDA'&lt;/P&gt;&lt;P&gt;                                  '12/31/9999'.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;INSERTING THE WORK SCHEDULE&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'P0007-SCHKZ'&lt;/P&gt;&lt;P&gt;                                  WA_0007-SCHKZ.            "'N12'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'P0007-ZTERF'&lt;/P&gt;&lt;P&gt;                                  WA_0007-ZTERF.            "'1'.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;INSERTING THE OVERTIME CLASS&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;    IF WA_0007-R1 = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'ZHQ0007-OVT_ELGBLE'&lt;/P&gt;&lt;P&gt;                                    'X'.&lt;/P&gt;&lt;P&gt;    ELSEIF WA_0007-R2 = 'X'.&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'ZHQ0007-OVT_NOTELG'&lt;/P&gt;&lt;P&gt;                                          'X'.&lt;/P&gt;&lt;P&gt;    ELSEIF WA_0007-R3 = 'X'.&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'ZHQ0007-OVT_TMPELG'&lt;/P&gt;&lt;P&gt;                                        'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;BDC output for transaction code&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform f_bdc_output using 'pa30'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM BDC_TRANSACTION USING 'PA30'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  top-of-page.&lt;/P&gt;&lt;P&gt;  INCLUDE ZWUHDG20 .          "Global Data , Start-of-Sel. and Code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE ZWUHDG30 .          "Top-of-page and Call function&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Writing the output&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; PERFORM f_write_output.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform close_group.&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  f_write_output&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;      text&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&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 f_write_output .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;For Successfull  Records&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if int_OUT[] IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;    WRITE : /50 TEXT-004 color 4.&lt;/P&gt;&lt;P&gt;    write : / sy-uline.&lt;/P&gt;&lt;P&gt;    LOOP AT INT_OUT.&lt;/P&gt;&lt;P&gt;      WRITE : /40 int_out-pernr,50 '--&amp;gt;',54 int_out-mesg.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  write / sy-uline.&lt;/P&gt;&lt;P&gt;  SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;For Error records&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if int_err[] IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;    WRITE /53 text-005 color 6.&lt;/P&gt;&lt;P&gt;    write / sy-uline.&lt;/P&gt;&lt;P&gt;    LOOP AT int_err.&lt;/P&gt;&lt;P&gt;      write :/40 int_err-pernr,50 '--&amp;gt;',54 int_err-mesg.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;  write / sy-uline.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " f_write_output&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  f_bdc_output&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;      text&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0369   text&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 f_bdc_output  USING    VALUE(P_0369).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: L_MSTRING(480).&lt;/P&gt;&lt;P&gt;  DATA: L_SUBRC LIKE SY-SUBRC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH MESSTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Capturing the output message&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL TRANSACTION 'PA30' USING BDCDATA&lt;/P&gt;&lt;P&gt;                   MODE   CTUMODE&lt;/P&gt;&lt;P&gt;                   UPDATE CUPDATE&lt;/P&gt;&lt;P&gt;                   MESSAGES INTO MESSTAB.&lt;/P&gt;&lt;P&gt;  L_SUBRC = SY-SUBRC.&lt;/P&gt;&lt;P&gt;  IF SMALLLOG &amp;lt;&amp;gt; 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT MESSTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Selection for capturing the text for records&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE * FROM T100 WHERE SPRSL = MESSTAB-MSGSPRA&lt;/P&gt;&lt;P&gt;                                AND   ARBGB = MESSTAB-MSGID&lt;/P&gt;&lt;P&gt;                                AND   MSGNR = MESSTAB-MSGNR.&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Moving the text from T100 to local variable&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        L_MSTRING = T100-TEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF ( MESSTAB-MSGTYP = 'W' or&lt;/P&gt;&lt;P&gt;            MESSTAB-MSGTYP = 'S' OR&lt;/P&gt;&lt;P&gt;            MESSTAB-MSGTYP = 'E' ).&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Moving the success records pernr and text to internal table&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          IF MESSTAB-MSGTYP = 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            INT_OUT-PERNR = WA_0007-PERNR.&lt;/P&gt;&lt;P&gt;            INT_OUT-MESG  = L_MSTRING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            APPEND INT_OUT.&lt;/P&gt;&lt;P&gt;            CLEAR INT_OUT.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Moving the success records pernr and text to internal table&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          ELSEIF MESSTAB-MSGTYP = 'E'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;For getting the error text exactly&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            IF L_MSTRING CS '&amp;amp;1'.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;1' WITH MESSTAB-MSGV1 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;2' WITH MESSTAB-MSGV2 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;3' WITH MESSTAB-MSGV3 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;4' WITH MESSTAB-MSGV4 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;            ELSE.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;' WITH MESSTAB-MSGV1 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;' WITH MESSTAB-MSGV2 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;' WITH MESSTAB-MSGV3 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;' WITH MESSTAB-MSGV4 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;            ENDIF.&lt;/P&gt;&lt;P&gt;            CONDENSE L_MSTRING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            INT_ERR-PERNR = WA_0007-PERNR.&lt;/P&gt;&lt;P&gt;            INT_ERR-MESG  = L_MSTRING.&lt;/P&gt;&lt;P&gt;            APPEND INT_ERR.&lt;/P&gt;&lt;P&gt;            CLEAR  INT_ERR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    SKIP.&lt;/P&gt;&lt;P&gt;  ENDIF.&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;     CALL FUNCTION 'BDC_OPEN_GROUP'&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;  IF L_SUBRC &amp;lt;&amp;gt; 0 AND E_GROUP &amp;lt;&amp;gt; SPACE.&lt;/P&gt;&lt;P&gt;    IF E_GROUP_OPENED = ' '.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          CLIENT   = SY-MANDT&lt;/P&gt;&lt;P&gt;          GROUP    = E_GROUP&lt;/P&gt;&lt;P&gt;          USER     = E_USER&lt;/P&gt;&lt;P&gt;          KEEP     = E_KEEP&lt;/P&gt;&lt;P&gt;          HOLDDATE = E_HDATE.&lt;/P&gt;&lt;P&gt;      E_GROUP_OPENED = 'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&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;     CALL FUNCTION 'BDC_INSERT'&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;    CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        TCODE     = 'PA30'&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        DYNPROTAB = BDCDATA.&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;     CALL FUNCTION 'BDC_CLOSE_GROUP'&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;    CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        NOT_OPEN    = 1&lt;/P&gt;&lt;P&gt;        QUEUE_ERROR = 2&lt;/P&gt;&lt;P&gt;        OTHERS      = 3.&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;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH BDCDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " f_bdc_output&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Sakthi C&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Rewards if usefull&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 29 Dec 2007 08:39:40 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-12-29T08:39:40Z</dc:date>
    <item>
      <title>bdc problem</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-problem/m-p/3211485#M765664</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;if we have thousand records then which method from LMSW ,call transaction and session method for uploading the data into the sap system.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 29 Dec 2007 08:16:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-problem/m-p/3211485#M765664</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-29T08:16:59Z</dc:date>
    </item>
    <item>
      <title>Re: bdc problem</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-problem/m-p/3211486#M765665</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For large no of data such as 1000 records for one transaction you have to use transaction method.For uploading several transaction at a time you have to use session method.&lt;/P&gt;&lt;P&gt;The procedure is as follows : &lt;/P&gt;&lt;P&gt;1.Use transaction code SHDB for recording purpose and make it sure that you will do as much correct as possible while recording because it will generate the coding based on reecording.&lt;/P&gt;&lt;P&gt;2.After generating the code edit the code by inserting the loop at internal table before the perform bdxrex. statement.&lt;/P&gt;&lt;P&gt;3.Get the values from flat file to internal table and loop the internal table before the bdcrexc.&lt;/P&gt;&lt;P&gt;4.Just get clear overview about the bdc recording and start doing recording after that edit the coding after reviewing two more times.&lt;/P&gt;&lt;P&gt;5. I will give the code below use that and have a clear idea about the session method.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The code is below just copy and paste it you will get a clear idea bdc recording.&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; Report  Y0007_BDC&lt;/P&gt;&lt;P&gt;*&amp;amp;&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;STRONG&gt;&amp;amp;&lt;/STRONG&gt;*********************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Program Name : Y0007_BDC                    Create Date: 01/12/2007 *&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; Author's Name: Sakthi Saravanan.C           Last Update:&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; DRF Number   :&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;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Program Title: UPDATING IT 0007 for overtime Z fields.              *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Description  :&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               Updating the infotype 0007 using BDC recording for    *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; updating the overtime Z fields.                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Change History                                                      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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; Mod. #  |  Date    |    Developer       |  Description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;  1.     |01.12.2007|Sakthi Saravanan.C  |BDC recording for updating&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                          overtime Z fields in IT 0007&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;  2      |&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;/P&gt;&lt;P&gt;*&amp;amp;&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;report Y0007_BDC NO STANDARD PAGE HEADING MESSAGE-ID RP LINE-SIZE 180." LINE-COUNT 28.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      no standard page heading line-size 255.&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;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              DATA DECLARATION                                     *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF TY_0007,&lt;/P&gt;&lt;P&gt;          PERNR      TYPE PERNR,      " PERNR&lt;/P&gt;&lt;P&gt;          SCHKZ      TYPE SCHKN,      " Work Schudule&lt;/P&gt;&lt;P&gt;          ZTERF      TYPE PT_ZTERF,   " Time Magmt Status&lt;/P&gt;&lt;P&gt;          R1         TYPE C,&lt;/P&gt;&lt;P&gt;          R2         TYPE C,&lt;/P&gt;&lt;P&gt;          R3         TYPE C,&lt;/P&gt;&lt;P&gt;        END OF TY_0007.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA  : INT_0007  TYPE STANDARD TABLE OF TY_0007 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;        WA_0007   TYPE TY_0007.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: P_FNAME TYPE IBIPPARMS-PATH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : begin of int_out occurs 0,&lt;/P&gt;&lt;P&gt;  pernr type persno,&lt;/P&gt;&lt;P&gt;  mesg(300),&lt;/P&gt;&lt;P&gt;  end of int_out.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF int_err occurs 0,&lt;/P&gt;&lt;P&gt;  pernr type persno,&lt;/P&gt;&lt;P&gt;  mesg(300),&lt;/P&gt;&lt;P&gt;  end of int_err.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;include bdcrecx1.&lt;/P&gt;&lt;P&gt;&lt;/P&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;          SELECTION SCREEN                                         *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK A WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B WITH FRAME.&lt;/P&gt;&lt;P&gt;PARAMETERS : P_PATH TYPE string.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK A.&lt;/P&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;      CALL FUNCTION FOR INPUT FILE NAME                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_path.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'F4_FILENAME'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      PROGRAM_NAME  = SYST-CPROG&lt;/P&gt;&lt;P&gt;      DYNPRO_NUMBER = SYST-DYNNR&lt;/P&gt;&lt;P&gt;      FIELD_NAME    = ' '&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      FILE_NAME     = P_FNAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  p_path = p_fname.&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;start-of-selection.&lt;/P&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;              GUI_UPLOAD FUNCTION MODULE                           *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      FILENAME                = P_PATH&lt;/P&gt;&lt;P&gt;      FILETYPE                = 'ASC'&lt;/P&gt;&lt;P&gt;      HAS_FIELD_SEPARATOR     = 'X'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      DATA_TAB                = INT_0007&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      FILE_OPEN_ERROR         = 1&lt;/P&gt;&lt;P&gt;      FILE_READ_ERROR         = 2&lt;/P&gt;&lt;P&gt;      NO_BATCH                = 3&lt;/P&gt;&lt;P&gt;      GUI_REFUSE_FILETRANSFER = 4&lt;/P&gt;&lt;P&gt;      INVALID_TYPE            = 5&lt;/P&gt;&lt;P&gt;      NO_AUTHORITY            = 6&lt;/P&gt;&lt;P&gt;      UNKNOWN_ERROR           = 7&lt;/P&gt;&lt;P&gt;      BAD_DATA_FORMAT         = 8&lt;/P&gt;&lt;P&gt;      HEADER_NOT_ALLOWED      = 9&lt;/P&gt;&lt;P&gt;      SEPARATOR_NOT_ALLOWED   = 10&lt;/P&gt;&lt;P&gt;      HEADER_TOO_LONG         = 11&lt;/P&gt;&lt;P&gt;      UNKNOWN_DP_ERROR        = 12&lt;/P&gt;&lt;P&gt;      ACCESS_DENIED           = 13&lt;/P&gt;&lt;P&gt;      DP_OUT_OF_MEMORY        = 14&lt;/P&gt;&lt;P&gt;      DISK_FULL               = 15&lt;/P&gt;&lt;P&gt;      DP_TIMEOUT              = 16&lt;/P&gt;&lt;P&gt;      OTHERS                  = 17.&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;  perform open_group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Looping pernr values&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT INT_0007 INTO WA_0007.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMP50A' '1000'.&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;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;INSERTING THE PERNR VALUE&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-PERNR'&lt;/P&gt;&lt;P&gt;                                  WA_0007-PERNR.            "'00001011'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-TIMR6'&lt;/P&gt;&lt;P&gt;                                  'X'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'RP50G-CHOIC'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-CHOIC'&lt;/P&gt;&lt;P&gt;                                  '0007'.&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMP50A' '1000'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'RP50G-PERNR'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=INS'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-PERNR'&lt;/P&gt;&lt;P&gt;                                  WA_0007-PERNR.            "'1011'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-TIMR6'&lt;/P&gt;&lt;P&gt;                                  'X'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RP50G-CHOIC'&lt;/P&gt;&lt;P&gt;                                  'Planned Working Time - 0007'.&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'MP000700' '2000'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=UPD'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'P0007-BEGDA'&lt;/P&gt;&lt;P&gt;                                  '12/01/2007'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'P0007-ENDDA'&lt;/P&gt;&lt;P&gt;                                  '12/31/9999'.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;INSERTING THE WORK SCHEDULE&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'P0007-SCHKZ'&lt;/P&gt;&lt;P&gt;                                  WA_0007-SCHKZ.            "'N12'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'P0007-ZTERF'&lt;/P&gt;&lt;P&gt;                                  WA_0007-ZTERF.            "'1'.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;INSERTING THE OVERTIME CLASS&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;    IF WA_0007-R1 = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'ZHQ0007-OVT_ELGBLE'&lt;/P&gt;&lt;P&gt;                                    'X'.&lt;/P&gt;&lt;P&gt;    ELSEIF WA_0007-R2 = 'X'.&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'ZHQ0007-OVT_NOTELG'&lt;/P&gt;&lt;P&gt;                                          'X'.&lt;/P&gt;&lt;P&gt;    ELSEIF WA_0007-R3 = 'X'.&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'ZHQ0007-OVT_TMPELG'&lt;/P&gt;&lt;P&gt;                                        'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;BDC output for transaction code&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform f_bdc_output using 'pa30'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM BDC_TRANSACTION USING 'PA30'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  top-of-page.&lt;/P&gt;&lt;P&gt;  INCLUDE ZWUHDG20 .          "Global Data , Start-of-Sel. and Code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE ZWUHDG30 .          "Top-of-page and Call function&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Writing the output&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; PERFORM f_write_output.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform close_group.&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  f_write_output&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;      text&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&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 f_write_output .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;For Successfull  Records&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if int_OUT[] IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;    WRITE : /50 TEXT-004 color 4.&lt;/P&gt;&lt;P&gt;    write : / sy-uline.&lt;/P&gt;&lt;P&gt;    LOOP AT INT_OUT.&lt;/P&gt;&lt;P&gt;      WRITE : /40 int_out-pernr,50 '--&amp;gt;',54 int_out-mesg.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  write / sy-uline.&lt;/P&gt;&lt;P&gt;  SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;For Error records&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if int_err[] IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;    WRITE /53 text-005 color 6.&lt;/P&gt;&lt;P&gt;    write / sy-uline.&lt;/P&gt;&lt;P&gt;    LOOP AT int_err.&lt;/P&gt;&lt;P&gt;      write :/40 int_err-pernr,50 '--&amp;gt;',54 int_err-mesg.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;  write / sy-uline.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " f_write_output&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  f_bdc_output&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;      text&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0369   text&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 f_bdc_output  USING    VALUE(P_0369).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: L_MSTRING(480).&lt;/P&gt;&lt;P&gt;  DATA: L_SUBRC LIKE SY-SUBRC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH MESSTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Capturing the output message&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL TRANSACTION 'PA30' USING BDCDATA&lt;/P&gt;&lt;P&gt;                   MODE   CTUMODE&lt;/P&gt;&lt;P&gt;                   UPDATE CUPDATE&lt;/P&gt;&lt;P&gt;                   MESSAGES INTO MESSTAB.&lt;/P&gt;&lt;P&gt;  L_SUBRC = SY-SUBRC.&lt;/P&gt;&lt;P&gt;  IF SMALLLOG &amp;lt;&amp;gt; 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT MESSTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Selection for capturing the text for records&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE * FROM T100 WHERE SPRSL = MESSTAB-MSGSPRA&lt;/P&gt;&lt;P&gt;                                AND   ARBGB = MESSTAB-MSGID&lt;/P&gt;&lt;P&gt;                                AND   MSGNR = MESSTAB-MSGNR.&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Moving the text from T100 to local variable&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        L_MSTRING = T100-TEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF ( MESSTAB-MSGTYP = 'W' or&lt;/P&gt;&lt;P&gt;            MESSTAB-MSGTYP = 'S' OR&lt;/P&gt;&lt;P&gt;            MESSTAB-MSGTYP = 'E' ).&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Moving the success records pernr and text to internal table&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          IF MESSTAB-MSGTYP = 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            INT_OUT-PERNR = WA_0007-PERNR.&lt;/P&gt;&lt;P&gt;            INT_OUT-MESG  = L_MSTRING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            APPEND INT_OUT.&lt;/P&gt;&lt;P&gt;            CLEAR INT_OUT.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Moving the success records pernr and text to internal table&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          ELSEIF MESSTAB-MSGTYP = 'E'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;For getting the error text exactly&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            IF L_MSTRING CS '&amp;amp;1'.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;1' WITH MESSTAB-MSGV1 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;2' WITH MESSTAB-MSGV2 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;3' WITH MESSTAB-MSGV3 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;4' WITH MESSTAB-MSGV4 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;            ELSE.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;' WITH MESSTAB-MSGV1 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;' WITH MESSTAB-MSGV2 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;' WITH MESSTAB-MSGV3 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;              REPLACE '&amp;amp;' WITH MESSTAB-MSGV4 INTO L_MSTRING.&lt;/P&gt;&lt;P&gt;            ENDIF.&lt;/P&gt;&lt;P&gt;            CONDENSE L_MSTRING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            INT_ERR-PERNR = WA_0007-PERNR.&lt;/P&gt;&lt;P&gt;            INT_ERR-MESG  = L_MSTRING.&lt;/P&gt;&lt;P&gt;            APPEND INT_ERR.&lt;/P&gt;&lt;P&gt;            CLEAR  INT_ERR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    SKIP.&lt;/P&gt;&lt;P&gt;  ENDIF.&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;     CALL FUNCTION 'BDC_OPEN_GROUP'&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;  IF L_SUBRC &amp;lt;&amp;gt; 0 AND E_GROUP &amp;lt;&amp;gt; SPACE.&lt;/P&gt;&lt;P&gt;    IF E_GROUP_OPENED = ' '.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          CLIENT   = SY-MANDT&lt;/P&gt;&lt;P&gt;          GROUP    = E_GROUP&lt;/P&gt;&lt;P&gt;          USER     = E_USER&lt;/P&gt;&lt;P&gt;          KEEP     = E_KEEP&lt;/P&gt;&lt;P&gt;          HOLDDATE = E_HDATE.&lt;/P&gt;&lt;P&gt;      E_GROUP_OPENED = 'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&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;     CALL FUNCTION 'BDC_INSERT'&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;    CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        TCODE     = 'PA30'&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        DYNPROTAB = BDCDATA.&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;     CALL FUNCTION 'BDC_CLOSE_GROUP'&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;    CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        NOT_OPEN    = 1&lt;/P&gt;&lt;P&gt;        QUEUE_ERROR = 2&lt;/P&gt;&lt;P&gt;        OTHERS      = 3.&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;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH BDCDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " f_bdc_output&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Sakthi C&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Rewards if usefull&lt;/STRONG&gt;&lt;/DEL&gt;*&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 29 Dec 2007 08:39:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-problem/m-p/3211486#M765665</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-29T08:39:40Z</dc:date>
    </item>
  </channel>
</rss>

