Program does BDC for transaction F-52 or f-53

Hi GuruI am functional person and working with a developer in a program . The program does BDC for transaction F-52 or f-53 . I am uploading a file ,so that the program picks it and o either F-52 or F-53 based on condition. When i try to upload the program with mulitple record ,i am getting the message difference is too large to clear . If i execute the same program without doing any changes again i can see few more records getting posted . when i do next time remaining records are posted . Insted of getting posted in one ,I have to execute the program more than once .can any one help me out why this is happening

i think you should ask  your programmer to use transaction SM35 to process the BDC in foreground mode (first changing the mode to A). I would think you will see what's going wrong then. There are a few transactions that look different in foreground mode than in background and you will see where the difference is if you use this method to process

Similar Messages

  • Problem in doing BDC for XK01

    Hi all,
    i am doing BDC for XK01 with Line Item for Bank Details(Table Control..)
    With 3 Internal table
    IT_dummy to get the flat file
    IT_vend  for Header details
    IT_bank  for Item Details
    in this there is a Nested loop
    Loop at it_vend.
    perform bdc
    loop at it_bank.
    concatenate................
    endloop.
    endloop.
    because of the above nested loops..it's bit slow..
    & i am trying to do with a single internal table..
    The problem is..
    with the header data it's not picking all the item data(it's picking only one..)..help me in resolving the problem..
    Below the code..
    REPORT  ZMM_BDCTC1 NO STANDARD PAGE HEADING LINE-SIZE 255.
    PARAMETER:P_FILE TYPE RLGRAP-FILENAME.
    DATA BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
    DATA: BEGIN OF IT_DUMMY OCCURS 0,
          TYP,
          DES(255) TYPE C,
          END OF IT_DUMMY.
    DATA:DELIMITER VALUE ',',
         cnt(4) TYPE N,
         L_FNAM(30) TYPE C,
         FILENAME TYPE STRING.
    TYPES:BEGIN OF TY_FINAL,
          N(4) TYPE C,
          LIFNR TYPE RF02K-LIFNR,
          BUKRS TYPE RF02K-BUKRS,
          EKORG TYPE RF02K-EKORG,
          KTOKK TYPE RF02K-KTOKK,
          NAME1 TYPE LFA1-NAME1,
          SORTL TYPE LFA1-SORTL,
          LAND1 TYPE LFA1-LAND1,
          AKONT TYPE LFB1-AKONT,
          FDGRV TYPE LFB1-FDGRV,
          WAERS LIKE LFM1-WAERS,
          M(4) TYPE C,
          BANKS TYPE LFBK-BANKS,
          BANKL TYPE LFBK-BANKL,
          BANKN TYPE LFBK-BANKN,
          KOINH TYPE LFBK-KOINH,
          END OF TY_FINAL.
    DATA: IT_FINAL TYPE TABLE OF TY_FINAL,
          WA_FINAL TYPE TY_FINAL.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
    CALL FUNCTION 'F4_FILENAME'
    EXPORTING
       PROGRAM_NAME        = SYST-CPROG
       DYNPRO_NUMBER       = SYST-DYNNR
    IMPORTING
       FILE_NAME           = P_FILE.
         FILENAME = P_FILE.
         CALL FUNCTION 'GUI_UPLOAD'
           EXPORTING
             filename                      = FILENAME
            FILETYPE                      = 'ASC'
           tables
             data_tab                      = IT_DUMMY.
    START-OF-SELECTION.
    LOOP AT it_dummy.
        IF it_dummy-typ = 'H'.
          SPLIT  it_dummy-des AT delimiter INTO WA_FINAL-lifnr "Populating Header Table
                                                WA_FINAL-bukrs
                                                WA_FINAL-ekorg
                                                WA_FINAL-ktokk
                                                WA_FINAL-name1
                                                WA_FINAL-sortl
                                                WA_FINAL-land1
                                                WA_FINAL-akont
                                                WA_FINAL-fdgrv
                                                WA_FINAL-waers.
          WA_FINAL-N = WA_FINAL-N + 1.
          WA_FINAL-M = WA_FINAL-M + 1.
        ELSEIF it_dummy-typ = 'I'.
          SPLIT it_dummy-des AT delimiter INTO WA_FINAL-BANKS
                                               WA_FINAL-BANKL
                                               WA_FINAL-BANKN
                                               WA_FINAL-KOINH.
          APPEND WA_FINAL TO IT_FINAL.
        ENDIF.
      ENDLOOP.
    LOOP AT IT_FINAL INTO WA_FINAL.
    WRITE:/ WA_FINAL-N,
            WA_FINAL-LIFNR,
            WA_FINAL-BUKRS,
            WA_FINAL-EKORG,
            WA_FINAL-KTOKK,
            WA_FINAL-NAME1,
            WA_FINAL-SORTL,
            WA_FINAL-LAND1,
            WA_FINAL-AKONT,
            WA_FINAL-FDGRV,
            WA_FINAL-WAERS,
            WA_FINAL-M,
            WA_FINAL-BANKS,
            WA_FINAL-BANKL,
            WA_FINAL-BANKN,
            WA_FINAL-KOINH.
    ENDLOOP.
    data: WA_FINAL1 like line of IT_FINAL.
    clear WA_FINAL1.
    ******************BDC STARTS***********************
    CALL FUNCTION 'BDC_OPEN_GROUP'
    EXPORTING
    CLIENT      = SY-MANDT
    GROUP       = 'ZMM_BDCTAB'
    KEEP        = 'X'
    USER        = SY-UNAME.
    Clear wa_final.
    LOOP AT IT_FINAL INTO WA_FINAL.
    WA_FINAL1 = WA_FINAL.
    CLEAR BDCDATA[].
    AT NEW N.
    cnt = 1.
    perform bdc_dynpro      using 'SAPMF02K' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF02K-KTOKK'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RF02K-LIFNR'
                                  WA_FINAL1-LIFNR.
    perform bdc_field       using 'RF02K-BUKRS'
                                  WA_FINAL1-BUKRS.
    perform bdc_field       using 'RF02K-EKORG'
                                  WA_FINAL1-EKORG.
    perform bdc_field       using 'RF02K-KTOKK'
                                  WA_FINAL1-KTOKK.
    perform bdc_dynpro      using 'SAPMF02K' '0110'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-LAND1'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFA1-NAME1'
                                  WA_FINAL1-NAME1.
    perform bdc_field       using 'LFA1-SORTL'
                                  WA_FINAL1-SORTL.
    perform bdc_field       using 'LFA1-LAND1'
                                  WA_FINAL1-LAND1.
    perform bdc_dynpro      using 'SAPMF02K' '0120'. "ERROR CLEARED
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-KUNNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0130'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFBK-KOINH(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    ENDAT.
    *ENDON.
    IF WA_FINAL1-N = WA_FINAL1-M.
    CONCATENATE  'LFBK-BANKS(' cnt ')'  INTO L_FNAM.
    perform bdc_field       using L_FNAM
                                  WA_FINAL1-BANKS.
    CONCATENATE  'LFBK-BANKL(' cnt ')'  INTO L_FNAM.
    perform bdc_field       using L_FNAM
                                  WA_FINAL1-BANKL.
    CONCATENATE  'LFBK-BANKN(' cnt ')'  INTO L_FNAM.
    perform bdc_field       using L_FNAM
                                  WA_FINAL1-BANKN.
    CONCATENATE  'LFBK-KOINH(' cnt ')'  INTO L_FNAM.
    perform bdc_field       using L_FNAM
                                  WA_FINAL1-KOINH.
    *ENDDO.
    cnt = cnt + 1.
    ENDIF.
    perform bdc_dynpro      using 'SAPMF02K' '0130'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFBK-BANKS(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_dynpro      using 'SAPMF02K' '0210'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB1-FDGRV'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    *AT NEW LIFNR.
    perform bdc_field       using 'LFB1-AKONT'
                                  WA_FINAL1-AKONT.
    perform bdc_field       using 'LFB1-FDGRV'
                                  WA_FINAL1-FDGRV.
    perform bdc_dynpro      using 'SAPMF02K' '0215'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB1-ZTERM'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0220'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB5-MAHNA'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0310'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFM1-WAERS'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFM1-WAERS'
                                  WA_FINAL1-WAERS.
    perform bdc_dynpro      using 'SAPMF02K' '0320'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF02K-LIFNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    AT END OF M.
    CALL FUNCTION 'BDC_INSERT'
    EXPORTING
    TCODE     = 'XK01'
    TABLES
    DYNPROTAB = BDCDATA.
    ENDAT.
    CLEAR WA_FINAL1.
    CLEAR WA_FINAL.
    ENDLOOP.
    CALL FUNCTION 'BDC_CLOSE_GROUP'.
    *********************BDC ENDS***********************
           Start new screen                                              *
    FORM BDC_DYNPRO USING PROGRAM DYNPRO.
      CLEAR BDCDATA.
      BDCDATA-PROGRAM  = PROGRAM.
      BDCDATA-DYNPRO   = DYNPRO.
      BDCDATA-DYNBEGIN = 'X'.
      APPEND BDCDATA.
    ENDFORM.
           Insert field                                                  *
    FORM BDC_FIELD USING FNAM FVAL.
    IF FVAL <> NODATA.
        CLEAR BDCDATA.
        BDCDATA-FNAM = FNAM.
        BDCDATA-FVAL = FVAL.
        APPEND BDCDATA.
    ENDIF.
    ENDFORM.
    Flat File is..
    HAAA45,1000,1000,0002,NAME45,N,IN,31000,A1,USD
    IIN,1000,1021,Name45
    IIN,1000,1022,Name45
    HAAA50,1000,1000,0002,NAME50,N,IN,31000,A1,USD
    IIN,1000,1023,Name50
    IIN,1000,1024,Name50

    Regarding avoiding the loop I have a suggestion, though I have not tried this .
    SAP help says " Using the internal table bdc_tab, you can provide any number of screens of the called transaction with input and user actions. " .
    Above implies you can load all records in the itab bdc_tab when doing call transaction. Say, your bdc_tabl has 30 records for 1 pass of the transaction. You need to update 10 vendor records. You simply load up all 300 records into bdc_tab. After every 30 record loads, you simulate a 'SAVE' press in your program but do not leave the transaction. Rather you simulate the keystroke that takes you to the first screen of XK01 after the save if not aready there, and start loading up the next transaction.

  • BDC for transaction J1IFQ

    Hi Experts,
    I am trying to develop BDC for transaction J1IFQ .
    When I do recording at the end I press SAVE it give me message that record is reconcilie and then I press logout.
    But when I use same recording in my program it dosn't save data. I am not able to find out what is the problem, please guide me.
    Thanking you.

    Hi Narayani
    It seems you need to inspect the new flow of the transaction and your BDC program more carefully. You might have skiped somethings to change.
    *--Serdar <a href="https://www.sdn.sap.com:443http://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.sdn.businesscard.sdnbusinesscard?u=qbk%2bsag%2bjiw%3d">[ BC ]</a>

  • Problem while doing bdc for fv60

    Hi frends,
       I got problem while doing BDC for fv60 tcode.i have given
    header items:
    vendor number
    invoice date
    posting date
    amount
    item data:
    g/l acc no: 100000
    amount 1000 whatever
    these are all given in recording
    in recording after all giving this data if we click on park it is telling "parking not possibe duiring batch input".
    can any body tell me the process for recording shdb and after that in bdc how can we give multiple line items for fv60
    thanks,
    naveen.

    I don't think you can use FV60 in batch input. Your options are to use transaction FBV1 or bapi BAPI_INCOMINGINVOICE_PARK.
    Rob

  • Creating bdc for transaction f-02 ?

    Hi People,
    I am going a bdc for transaction f-02 ..... my template involves 7 posting keys ( 40 50 31 01 29 09 70 ) ... depending up
    on the posting key the next screen will change .......... can you people tel me how to do this and what are all the logic
    involved in this program ?
    thanks u all in advance.
    Siva

    Hi,
    Please use the following format for your upload file template
    DocDate1    ComCd1    Currency1    pstky1
    DocDate1    ComCd1    Currency1    pstky2
    DocDate1    ComCd1    Currency1    pstky3
    DocDate2    ComCd2    Currency2    pstky1
    DocDate2    ComCd2    Currency2    pstky2
    Then use the following logic.
    At New Currency1
    add the header data
    DocDate1    ComCd1    Currency1
    Thus this code will run only once for every new Header
    and remain in the screen till posting key are entered.
    Regards,
    Lokesh
    Edited by: Lokesh Tibbani on Sep 5, 2008 12:17 PM

  • Hi All, I developed a BDC for transaction IE02

    Hi All, I developed a BDC for transaction IE02, when i am uploading data into this bdc 'validity period' is automatically taking the present system date, as in program i have not given any validations for this validity from Can anyone guide me on this as so why the data in validity from is taking present system date and how do i avoid it.
    Thanks..!!!
    Regards,
    Swarna

    Hi Swarna,
    AS you mention  IE02  Validity From is not editable.
    If you capturing this field in BDC then you can put hard-code date value sy-datum in this field , no need to chnage in excel or manual update every time.
    and If you are not capturing  this field in BDC  then please try to use BAPI for uploading data.
    like.
    BAPI_EQUI_CHANGE or
    BAPI_EQMT_MODIFY.
    Regards,
    Prasenjit

  • BDC for Transaction F-02

    Hi,
    Any idea how to write BDC for transaction F-02?
    The problem is how do we upload one item after another within the same loop?
    Regards,
    Naba

    You may solve easily your problem writing the data in the LOOP like
    LOOP AT IT_BSEG
      " if first line, fill BDCDATA for header and the first line call
      " if not first line, fill BDCDATA for the bottom of the previous line
      " fill ok code for next line
      " fill BDCDATA for the current line
    ENDLOOP.
    " fill ok code for save and call transaction
    But it should be easier to use FM like [POSTING_INTERFACE_START|https://www.sdn.sap.com/irj/scn/advancedsearch?query=posting_interface_start&cat=sdn_all]; [POSTING_INTERFACE_DOCUMENT|https://www.sdn.sap.com/irj/scn/advancedsearch?cat=sdn_all&query=posting_interface_document&adv=false&sortby=cm_rnd_rankvalue] and [POSTING_INTERFACE_END|https://www.sdn.sap.com/irj/scn/advancedsearch?cat=sdn_all&query=posting_interface_end&adv=false&sortby=cm_rnd_rankvalue], those function modules will build the BDC flow.
    Another, and better solution is to use [BAPI_ACC_DOCUMENT_POST|https://www.sdn.sap.com/irj/scn/advancedsearch?cat=sdn_all&query=bapi_acc_document_post&adv=false&sortby=cm_rnd_rankvalue].
    Regards

  • BDC for Transaction WB02

    Hi,
       I am trying to write BDC for transaction WB02 , wherein each site(Plant) in our company is to be made a customer of each other, so as to fecilitate inter-site  movement of goods. the transaction works fine normally, but at the time of recording it comes to screen '315' and gets stuck and dont move ahead or either go back, it just gets stuck there, and has to be terminated.. i tried to replicate the transaction thru' BDC but it is getting stuck at the same screen.. can anybody tell me why this is happening and the possible solution for it..
    thanks.
    sharon

    Hi,
    What u can do is Read your Messages table with message types E(Error) and A(Abort). IF NOT sy-subrc IS INITIAlL means your transaction is successfull. So u can give your custom message saying IDOC sent successfully.
    READ TABLE IT_BDCMSGCOLL WITh KEY TYPE = 'E'.
    IF NOT sy-subrc IS INITIAL.
      READ TABLE IT_BDCMSGCOLL WITH KEY TYPE = 'A'
      IF NOT sy-subrc IS INITIAL.
      MESSAGE i000 WITH 'IDOC sent successfully'.
      ELSE.
      MESSAGE i000 WITH 'Problem in sending IDOC'.
      ENDIF.
    ELSE.
      MESSAGE i000 WITH 'Problem in sending IDOC'.
    ENDIF.
    Thanks,
    Vinod.

  • BDC for transaction FAGLSKF

    Hi,
    I need to develop BDC for transaction FAGLSKF. I tried recording the transaction and found that the line items are not getting recorded since the transaction uses an editable ALV and not a table control. I have seen some post regarding this but everyone is saying to use some FM's but all these FM's are not yet released by SAP & even if i use it I still have to seperately take care of validations. Please let me know if anyone has faced this issue and found an alternative.
    Thanks,
    Antony

    Hi ,
    Check this BAPI Function module BAPI_ACC_STAT_KEY_FIG_POST.
    Regards,
    Ashok.

  • Bdc for transaction va01

    hi friends.
            how to create a bdc for va01... i need step by step procedure. please help me...

    Hi
    BDC (Batch Data Communication) works based on the data in the Internal table of structure "BDCDATA", and some of the very important lines with information (in sequence) Dynpro, Cursor-field and Data Fields, then call Transaction / Session Creation Logic.
    In Call Transaction method of BDC, the Message is handled manually using the structure "BDCMSGCOLL" and by refering to messages in "T100" Table. [Refer the standard Include BECRECX1 for more information.
    BDC can be created by Recording tool or my scracth creating a new program. Use transaction code 'SHDB'.
    A sample code by using the Recording method (Here both Call transaction and Session Method of BDC will be created by standard Recording tool [this you can find in include BDCRECX1])
    Code Only the Program, withoug Include BDCRECX1 (This std, inclu you can find)
    ***INCLUDE BDCRECX1.
    * for programs doing a data transfer by creating a batch-input session
    * and
    * for programs doing a data transfer by CALL TRANSACTION USING
    selection-screen begin of line.
    parameters session radiobutton group ctu. "create session
    selection-screen comment 3(20) text-s07 for field session.
    selection-screen position 45.
    parameters ctu radiobutton group ctu. "call transaction
    selection-screen comment 48(20) text-s08 for field ctu.
    selection-screen end of line.
    selection-screen begin of line.
    selection-screen comment 3(20) text-s01 for field group.
    selection-screen position 25.
    parameters group(12). "group name of session
    selection-screen comment 48(20) text-s05 for field ctumode.
    selection-screen position 70.
    parameters ctumode like ctu_params-dismode default 'N'.
    "A: show all dynpros
    "E: show dynpro on error only
    "N: do not display dynpro
    selection-screen end of line.
    selection-screen begin of line.
    selection-screen comment 3(20) text-s02 for field user.
    selection-screen position 25.
    parameters: user(12) default sy-uname. "user for session in batch
    selection-screen comment 48(20) text-s06 for field cupdate.
    selection-screen position 70.
    parameters cupdate like ctu_params-updmode default 'L'.
    "S: synchronously
    "A: asynchronously
    "L: local
    selection-screen end of line.
    selection-screen begin of line.
    selection-screen comment 3(20) text-s03 for field keep.
    selection-screen position 25.
    parameters: keep as checkbox. "' ' = delete session if finished
    "'X' = keep session if finished
    selection-screen comment 48(20) text-s09 for field e_group.
    selection-screen position 70.
    parameters e_group(12). "group name of error-session
    selection-screen end of line.
    selection-screen begin of line.
    selection-screen comment 3(20) text-s04 for field holddate.
    selection-screen position 25.
    parameters: holddate like sy-datum.
    selection-screen comment 51(17) text-s02 for field e_user.
    selection-screen position 70.
    parameters: e_user(12) default sy-uname. "user for error-session
    selection-screen end of line.
    selection-screen begin of line.
    selection-screen comment 51(17) text-s03 for field e_keep.
    selection-screen position 70.
    parameters: e_keep as checkbox. "' ' = delete session if finished
    "'X' = keep session if finished
    selection-screen end of line.
    selection-screen begin of line.
    selection-screen comment 51(17) text-s04 for field e_hdate.
    selection-screen position 70.
    parameters: e_hdate like sy-datum.
    selection-screen end of line.
    selection-screen skip.
    selection-screen begin of line.
    selection-screen comment 1(33) text-s10 for field nodata.
    parameters: nodata default '/' lower case. "nodata
    selection-screen end of line.
    selection-screen begin of line.
    selection-screen comment 1(33) text-s11 for field smalllog.
    parameters: smalllog as checkbox. "' ' = log all transactions
    "'X' = no transaction logging
    selection-screen end of line.
    * data definition
    * Batchinputdata of single transaction
    data: bdcdata like bdcdata occurs 0 with header line.
    * messages of call transaction
    data: messtab like bdcmsgcoll occurs 0 with header line.
    * error session opened (' ' or 'X')
    data: e_group_opened.
    * message texts
    tables: t100.
    * at selection screen *
    at selection-screen.
    * group and user must be filled for create session
    if session = 'X' and
    group = space or user = space.
    message e613(ms).
    endif.
    * open dataset *
    form open_dataset using p_dataset.
    open dataset p_dataset
    for input in text mode
    encoding default.
    if sy-subrc <> 0.
    write: / text-e00, sy-subrc.
    stop.
    endif.
    endform.
    * close dataset *
    form close_dataset using p_dataset.
    close dataset p_dataset.
    endform.
    * create batchinput session *
    * (not for call transaction using...) *
    form open_group.
    if session = 'X'.
    skip.
    write: /(20) 'Create group'(i01), group.
    skip.
    * open batchinput group
    call function 'BDC_OPEN_GROUP'
    exporting client = sy-mandt
    group = group
    user = user
    keep = keep
    holddate = holddate.
    write: /(30) 'BDC_OPEN_GROUP'(i02),
    (12) 'returncode:'(i05),
    sy-subrc.
    endif.
    endform.
    * end batchinput session *
    * (call transaction using...: error session) *
    form close_group.
    if session = 'X'.
    * close batchinput group
    call function 'BDC_CLOSE_GROUP'.
    write: /(30) 'BDC_CLOSE_GROUP'(i04),
    (12) 'returncode:'(i05),
    sy-subrc.
    else.
    if e_group_opened = 'X'.
    call function 'BDC_CLOSE_GROUP'.
    write: /.
    write: /(30) 'Fehlermappe wurde erzeugt'(i06).
    e_group_opened = ' '.
    endif.
    endif.
    endform.
    * Start new transaction according to parameters *
    form bdc_transaction using tcode.
    data: l_mstring(480).
    data: l_subrc like sy-subrc.
    * batch input session
    if session = 'X'.
    call function 'BDC_INSERT'
    exporting tcode = tcode
    tables dynprotab = bdcdata.
    if smalllog <> 'X'.
    write: / 'BDC_INSERT'(i03),
    tcode,
    'returncode:'(i05),
    sy-subrc,
    'RECORD:',
    sy-index.
    endif.
    * call transaction using
    else.
    refresh messtab.
    call transaction tcode using bdcdata
    mode ctumode
    update cupdate
    messages into messtab.
    l_subrc = sy-subrc.
    if smalllog <> 'X'.
    write: / 'CALL_TRANSACTION',
    tcode,
    'returncode:'(i05),
    l_subrc,
    'RECORD:',
    sy-index.
    loop at messtab.
    select single * from t100 where sprsl = messtab-msgspra
    and arbgb = messtab-msgid
    and msgnr = messtab-msgnr.
    if sy-subrc = 0.
    l_mstring = t100-text.
    if l_mstring cs '&1'.
    replace '&1' with messtab-msgv1 into l_mstring.
    replace '&2' with messtab-msgv2 into l_mstring.
    replace '&3' with messtab-msgv3 into l_mstring.
    replace '&4' with messtab-msgv4 into l_mstring.
    else.
    replace '&' with messtab-msgv1 into l_mstring.
    replace '&' with messtab-msgv2 into l_mstring.
    replace '&' with messtab-msgv3 into l_mstring.
    replace '&' with messtab-msgv4 into l_mstring.
    endif.
    condense l_mstring.
    write: / messtab-msgtyp, l_mstring(250).
    else.
    write: / messtab.
    endif.
    endloop.
    skip.
    endif.
    ** Erzeugen fehlermappe ************************************************
    if l_subrc <> 0 and e_group <> space.
    if e_group_opened = ' '.
    call function 'BDC_OPEN_GROUP'
    exporting client = sy-mandt
    group = e_group
    user = e_user
    keep = e_keep
    holddate = e_hdate.
    e_group_opened = 'X'.
    endif.
    call function 'BDC_INSERT'
    exporting tcode = tcode
    tables dynprotab = bdcdata.
    endif.
    endif.
    refresh bdcdata.
    endform.
    * Start new screen *
    form bdc_dynpro using program dynpro.
    clear bdcdata.
    bdcdata-program = program.
    bdcdata-dynpro = dynpro.
    bdcdata-dynbegin = 'X'.
    append bdcdata.
    endform.
    * Insert field *
    form bdc_field using fnam fval.
    if fval <> nodata.
    clear bdcdata.
    bdcdata-fnam = fnam.
    bdcdata-fval = fval.
    append bdcdata.
    endif.
    endform.
    Refer this link as an example:
    <b>http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm</b>
    Alternatively, Press the Item To Top Button(The 4th from left)Under the Item Table control, every time you want to enter item details,
    This would bring the item to the top of the table control every time.
    Record the transaction this way, and code for your BDC.
    Another alternative is to use a bapi:
    <b>BAPI_SALESORDER_CREATEFROMDAT2</b>
    Regards,
    Rk
    Message was edited by:
            Rk Pasupuleti

  • Problem in creation of BDC for transaction phap_create

    Hello Friends,
    I am trying to create BDC for PHAP_CREATE.
    When you run a transaction a pop up window appears to select the template id.
    And in BDC it is selected by cursor position. So once selected, the value of template id cannot be changed.
    I want this as a parameter.So that each time I run a BDC I will be able to create different types of Appraisal documents i.e with different template ids.
    How to go about it???
    Regards,
    Bhushan

    Hi,
    For selecting the id, while doing recording,
    record with
    CTRL + F ( Where u can give ur id) and proceed further.

  • How to add long text in bdc for transaction fb01 ?

    IN the existing program of bdc fb01
    i have to add a long text field
    but it gets stuck while i process in sm35
    is there a fm to add the field directly
    thanks in a advance

    Hi
    You can upload the Long texts separately into the transaction using the CREATE_TEXT fun module
    Need to pass the correct parameters like OBJECT,ID, OBJECTNAME and LANGuage with the proper declarations.
    see the sample code and do accordingly
    REPORT zmm_longtext_sm
           NO STANDARD PAGE HEADING
           LINE-SIZE 255.
    Description :   This Program is used to Upload the Service Master
                 :   Long Texts using the Fun Module CREATE_TEXT
    Internal Table for Upload of Long Texts Data
    DATA: BEGIN OF itab OCCURS 0,
            asnum like asmd-asnum,    " Service No
            text  LIKE tline-tdline,  " Long Text
          END OF itab.
    To create Long Text lines for CREATE_TEXT function module
    DATA:BEGIN OF dt_lines OCCURS 0.
            INCLUDE STRUCTURE tline.   " Long Text
    DATA:END OF dt_lines.
    Variable declarations for CREATE_TEXT function module
    DATA : dl_name TYPE thead-tdname,   " Object Name
           dl_lan TYPE thead-tdspras.   " Language
    Constants
    CONSTANTS:
    Object ID for Long Text of Service Master
      c_best     TYPE thead-tdid VALUE 'LTXT',
      c_material TYPE thead-tdobject VALUE 'ASMD'. " Object
    Parameters
    PARAMETERS p_file LIKE rlgrap-filename.
    At selection-screen on Value Request for file Name
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
    Get the F4 Values for the File
      CALL FUNCTION 'F4_FILENAME'
        EXPORTING
          program_name  = syst-cprog
          dynpro_number = syst-dynnr
        IMPORTING
          file_name     = p_file.
    Start Of Selection
    START-OF-SELECTION.
    *To Upload Flat file
      CALL FUNCTION 'UPLOAD'
        EXPORTING
          filename                = p_file
          filetype                = 'DAT'
        TABLES
          data_tab                = itab
        EXCEPTIONS
          conversion_error        = 1
          invalid_table_width     = 2
          invalid_type            = 3
          no_batch                = 4
          unknown_error           = 5
          gui_refuse_filetransfer = 6
          OTHERS                  = 7.
    Upload the Texts
      SORT itab BY asnum.
      LOOP AT itab.
        dt_lines-tdformat = 'ST'.
        dt_lines-tdline = itab-text.
        APPEND dt_lines.
        dl_lan = sy-langu.
        concatenate '00000000000' itab-asnum into dl_name.
    Call the Function Module to Create Text
        CALL FUNCTION 'CREATE_TEXT'
          EXPORTING
            fid         = c_best
            flanguage   = dl_lan
            fname       = dl_name
            fobject     = c_material
            save_direct = 'X'
            fformat     = '*'
          TABLES
            flines      = dt_lines
          EXCEPTIONS
            no_init     = 1
            no_save     = 2
            OTHERS      = 3.
        IF sy-subrc <> 0.
          WRITE:/ 'Long Text Creation failed for Service No'(001),
                 itab-asnum.
        ELSE.
          WRITE:/ 'Long Text Created Successfully for Service No'(002),
                 itab-asnum.
        ENDIF.
        AT END OF asnum.
          REFRESH dt_lines.
        ENDAT.
      ENDLOOP.
    <b>Reward points for useful Answers</b>
    Regards
    Anji

  • Problem in BDC for Transaction F-02

    Hi Friends,
    I am struck up in BDC for TransactionF-02.i am unable to load the data of my test data.when i am loading its loading the second record not the first record.
    Below is the test data
    H,RAWATEB,1
    M,11072006,ZE,1000,11072006,20,SAR,,,,,RAWATIB,,SALARIES,1000
    D,50,482000,3648.61,Z1,,,1000,1111,,,,,,
    D,40,113001,3648.61,Z1,,,1000,,,,,,,
    D,17,001011,3000000.00,Z1,,,1000,,,,,,,
    D,40,113001,3000000.00,Z1,,,1000,,,,,,,
    M,17082004,ZE,1000,11072006,20,SAR,,,,,RAWATIB,,SALARIES,1000
    D,50,482000,3202.82,Z1,,,1000,1112,,,,,,
    D,40,113001,3202.82,Z1,,,1000,,,,,,,
    D,50,482000,2600000.00,Z1,,,1000,1111,,,,,,
    D,40,001011,2600000.00,Z1,,,1000,,,,,,,
    T,0000000002
    <b></b>
    the report is below
    REPORT ZFGLDR0030 line-count 60
                      line-size 160
                      message-id 00.
    ====================================================================
    ****************************TABLES**********************************
    ====================================================================
    tables: bkpf.
    ====================================================================
    **************************RECORD LAYOUTS****************************
    ====================================================================
    Data: begin of bdc_tab occurs 200.
            include structure bdcdata.
    data: end   of bdc_tab.
    Data: Begin of tmp_tab occurs 200,
           fld1(255)   type   c,
          end of tmp_tab.
    DATA: BEGIN OF upload_tab OCCURS 200,
            fld1(1)    type   c,
            fld2(10)   type   c,
            fld3(10)   type   c,
            fld4(16)   type   c,
            fld5(10)   type   c,
            fld6(2)    type   c,
            fld7(4)    type   c,
            fld8(10)   type   c,
            fld9(10)   type   c,
            fld10(10)  type   c,
            fld11(10)  type   c,
            fld12(12)  type   c,
            fld13(25)  type   c,
            fld14(50)  type   c,
            fld15(4)   type   c,
            fld16(1)   type   c,
          END OF upload_tab.
    data : tmp_rec like upload_tab.
    DATA: BEGIN OF upload1_tab OCCURS 200,
            fld1(1)    type   c,
            fld2(10)   type   c,
            fld3(10)   type   c,
            fld4(16)   type   c,
            fld5(10)   type   c,
            fld6(2)    type   c,
            fld7(4)    type   c,
            fld8(10)   type   c,
            fld9(10)   type   c,
            fld10(10)  type   c,
            fld11(10)  type   c,
            fld12(12)  type   c,
            fld13(25)  type   c,
            fld14(50)  type   c,
            fld15(4)   type   c,
            fld16(1)   type   c,
          END OF upload1_tab.
    Data: upload2_tab like tmp_rec occurs 200 with header line.
    Data: Del_tab like tmp_rec occurs 200 with header line.
    DATA: V_SYTABIX TYPE I,
          v_kunnr     like knb1-kunnr,
          v_brsch     like kna1-brsch,
          v_datum     like sy-datum,
          v_tmp(1)    type c,
          v_flag      type i,
          v_ccode(10) type c,
          v_glcd(10)  type c,
          v_len       type n,
          v_rem(50)   type c,
          v_docno(12) type c,
          v_dtype(3)  type c,
          v_sno(8)    type n,
          v_upd_flag  type i,
          v_idx       like sy-tabix,
          v_budat     like bkpf-budat,
          v_fld5(10)  type c,
          v_date(10)  type c.
    ====================================================================
    *********************SELECTION-SCREEN******************************
    ====================================================================
    selection-screen: begin of block b1 with frame .
    parameters:p_fl_mct  like  rlgrap-filename
                         default 'C:\test' obligatory,
               p_sesid   like apqi-groupid default 'RAWATIB',
               p_user    like apqi-userid default sy-uname.
    selection-screen: end of block b1.
    selection-screen: begin of block b2 with frame .
    parameters:p_opt1    radiobutton group grp1 default 'X',
               p_opt2    radiobutton group grp1,
               p_budat   like bkpf-budat.
    selection-screen: end of block b2.
    ====================================================================
    Validate SELECTION-SCREEN **************************
    ====================================================================
    At Selection-screen.
      translate p_fl_mct to upper  case.
      if p_opt2 = 'X' and p_budat = '00000000'.
        message e398(00) with 'Please enter date to use as Posting date'.
      endif.
    at selection-screen on value-request for p_fl_mct.
      data : v_mask(120)          type c.
      v_mask = ',IT2 files (.),.'.
      CALL FUNCTION 'WS_FILENAME_GET'
           EXPORTING
                DEF_FILENAME     = ' '
                DEF_PATH         = ' '
                MASK             = v_mask
                TITLE            = 'File Selection for Upload'
           IMPORTING
                FILENAME         = p_fl_mct
               RC               =
           EXCEPTIONS
                INV_WINSYS       = 1
                NO_BATCH         = 2
                SELECTION_CANCEL = 3
                SELECTION_ERROR  = 4
                OTHERS           = 5.
    end-of-selection.
    ====================================================================
    *****************************CONSTANTS******************************
    ====================================================================
    ====================================================================
    *****************************VARIABLES******************************
    ====================================================================
    ====================================================================
    TOP OF PAGE*******************************
    ====================================================================
    top-of-page.
    start-of-selection.
      v_upd_flag = 0.
      perform initialise_process.
      perform bdc_open.
      perform process_upload_tab.
      perform terminate_process.
    end-of-selection.
    ====================================================================
    Form : Initialise_Process                                          *
    ====================================================================
    FORM initialise_process.
       Initialises variables                                           *
      move : sy-repid to sy-tvar0,
             sy-uname to sy-tvar1,
             p_sesid  to sy-tvar2,
             sy-pagno to sy-tvar3.
      write: sy-datum to sy-tvar4,
             sy-uzeit to sy-tvar5.
    Selecting the GL codes to be updated**********************
      call function 'WS_UPLOAD'
        EXPORTING
          FILENAME         = p_fl_mct
          FILETYPE         = 'ASC'
        TABLES
          data_tab         = Tmp_tab
        EXCEPTIONS
          CONVERSION_ERROR = 1
          FILE_OPEN_ERROR  = 2
          OTHERS           = 10.
      if sy-subrc <> 0.
        message e398(00) with 'Unable to upload data'.
      endif.
    Validation for Upload file **********************
      read table tmp_tab index 1.
      split tmp_tab-fld1 at ',' into tmp_rec-fld1
                                     tmp_rec-fld2
                                     tmp_rec-fld3
                                     tmp_rec-fld4
                                     tmp_rec-fld5
                                     tmp_rec-fld6
                                     tmp_rec-fld7
                                     tmp_rec-fld8
                                     tmp_rec-fld9
                                     tmp_rec-fld10
                                     tmp_rec-fld11
                                     tmp_rec-fld12
                                     tmp_rec-fld13
                                     tmp_rec-fld14
                                     tmp_rec-fld15
                                     v_tmp.
      if tmp_rec-fld2 <> 'RAWATEB'.
        message e398(00) with 'Invliad file format, cannot upload'.
      endif.
      loop at tmp_tab.
        clear upload_tab.
        v_tmp = tmp_tab-fld1+0(1).
        if v_tmp = 'M' or v_tmp = 'D'.
          split tmp_tab-fld1 at ',' into upload_tab-fld1
                                         upload_tab-fld2
                                         upload_tab-fld3
                                         upload_tab-fld4
                                         upload_tab-fld5
                                         upload_tab-fld6
                                         upload_tab-fld7
                                         upload_tab-fld8
                                         upload_tab-fld9
                                         upload_tab-fld10
                                         upload_tab-fld11
                                         upload_tab-fld12
                                         upload_tab-fld13
                                         upload_tab-fld14
                                         upload_tab-fld15
                                         v_tmp.
          if upload_tab-fld1 = 'M'.
            clear tmp_rec.
            move upload_tab to tmp_rec.
          else.
            clear upload1_tab.
            move upload_tab to upload1_tab.
            upload1_tab-fld10  = tmp_rec-fld2.
            upload1_tab-fld12 = tmp_rec-fld12.
            upload1_tab-fld15 = tmp_rec-fld15.
            append upload1_tab.
          endif.
          append upload_tab.
        endif.
      endloop.
    Mark the already uploaded Transaction to skip ***********
      Loop at upload_tab.
        if upload_tab-fld1 = 'M'.
          v_idx = sy-tabix.
          move upload_tab-fld24(4) to v_budat0(4).
          move upload_tab-fld22(2) to v_budat4(2).
          move upload_tab-fld20(2) to v_budat6(2).
          Select single * from bkpf where BLART = upload_tab-fld3 and
                                          BUKRS = upload_tab-fld4 and
                                          XBLNR = upload_tab-fld12 and
                                          budat = v_budat.
          if sy-subrc = 0.
            do 1000 times.
              clear del_tab.
              move upload_tab to del_tab.
              append del_tab.
              upload_tab-fld16 = '*'.
              modify upload_tab index v_idx.
              v_idx = v_idx + 1.
              Read table upload_tab index v_idx.
              if upload_tab-fld1 = 'M' or sy-subrc <> 0.
                exit.
              endif.
            enddo.
          endif.
        endif.
      endloop.
    ENDFORM.                    "initialise_process
    ====================================================================
    Form : Process_Ord_itab                                            *
    ====================================================================
    FORM process_upload_tab .
      v_flag = 0.
      loop at upload_tab where fld16 <> '*' .
    Performing the Save at the end of Transaction *************
        if upload_tab-fld1 = 'M' and v_flag = 1.
          perform load_save.
          perform bdc_insert.
        endif.
    Putting the Header information of the document ************
        if upload_tab-fld1 = 'M'.
          perform load_header.
          v_date = v_fld5.
          v_rem  = upload_tab-fld14.
          v_flag = 0.
        endif.
    Putting the Detail information of the document ************
        if upload_tab-fld1 = 'D'.
          if upload_tab-fld2 = '40' or upload_tab-fld2 = '50'  .
            perform Load_next.
            v_tmp = v_glcd.
            v_len = strlen( upload_tab-fld3 ).
            If ( v_tmp = '2' or v_tmp = '4' or v_tmp = '0' )  .
              Perform load_ccenter.
            elseif v_flag = 1.
              perform upload_blank.
            endif.
            perform load_Detail.
            v_flag = 1.
            v_glcd = upload_tab-fld3.
            v_ccode = upload_tab-fld9.
          else.
            perform Load_next.
            v_tmp = v_glcd.
            v_len = strlen( upload_tab-fld3 ).
            perform upload_blank.
            perform load_Detail_301.
            v_flag = 0.
            v_glcd = '1'.
          endif.
        endif.
      endloop.
      if v_flag = 1.
        perform load_save.
      endif.
      perform bdc_insert.
      v_upd_flag = 1.
    ENDFORM.                    "process_upload_tab
    ====================================================================
    Form : BDC_OPEN                                                   *
    ====================================================================
    FORM bdc_open.
      call function 'BDC_OPEN_GROUP'
        EXPORTING
          client = sy-mandt
          group  = p_sesid
          user   = p_user
          keep   = 'X'.
    ENDFORM.                    "bdc_open
    ====================================================================
    Form : Fill_BDC_Tab                                                *
    ====================================================================
    FORM fill_bdc_tab using dynbegin
                            name
                            value.
      if dynbegin = 'X'.
        clear bdc_tab.
        move:  name  to bdc_tab-program,
               value to bdc_tab-dynpro,
               'X'   to bdc_tab-dynbegin.
        append bdc_tab.
      else.
        clear bdc_tab.
        move:  name  to bdc_tab-fnam,
               value to bdc_tab-fval.
        append bdc_tab.
      endif.
    ENDFORM.                    "fill_bdc_tab
    ====================================================================
    Form : BDC_INSERT                                                 *
    ====================================================================
    FORM bdc_insert .
      call function 'BDC_INSERT'
        EXPORTING
          tcode     = 'F-02'
        TABLES
          dynprotab = bdc_tab.
      refresh bdc_tab.
      clear bdc_tab.
    ENDFORM.                    "bdc_insert
    ====================================================================
    Form : BDC_CLOSE                                                  *
    ====================================================================
    FORM bdc_close.
      call function 'BDC_CLOSE_GROUP'.
    ENDFORM.                    "bdc_close
    ====================================================================
    Form : Terminate_Process                                          *
    ====================================================================
    FORM terminate_process.
      perform bdc_close.
    ENDFORM.                    "terminate_process
    *&      Form  load_Header
    FORM load_Header.
      If upload_tab-fld1 = 'M'.
        v_fld5 = upload_tab-fld5.
        if p_opt2 = 'X'.
          move p_budat6(2) to v_fld50(2).
          move p_budat4(2) to v_fld52(2).
          move p_budat0(4) to v_fld54(4).
        endif.
        perform fill_bdc_tab using:
         'X' 'SAPMF05A'     '0100',
         ' ' 'BDC_CURSOR'   'RF05A-NEWKO',
         ' ' 'BKPF-BLDAT'    upload_tab-fld2,
         ' ' 'BKPF-BLART'    upload_tab-fld3,
         ' ' 'BKPF-BUKRS'    upload_tab-fld4,
         ' ' 'BKPF-BUDAT'    v_fld5,
         ' ' 'BKPF-WAERS'    upload_tab-fld7,
         ' ' 'BKPF-XBLNR'    upload_tab-fld12,
         ' ' 'BKPF-BKTXT'    upload_tab-fld13.
      Endif.
    ENDFORM.                    "load_Header
    *&      Form  load_Detail
    FORM load_Detail.
      perform fill_bdc_tab using:
       'X' 'SAPMF05A'     '0300',
       ' ' 'BDC_CURSOR'   'BSEG-WRBTR',
       ' ' 'BSEG-WRBTR'    upload_tab-fld4,
      ' ' 'BSEG-VALUT'    v_date,
       ' ' 'BSEG-SGTXT'    v_rem.
    ENDFORM.                    " LOAD_DATA
    *&      Form  load_Detail
    FORM load_Detail_301.
      perform fill_bdc_tab using:
       'X' 'SAPMF05A'     '0301',
       ' ' 'BDC_CURSOR'   'RF05A-NEWUM',
       ' ' 'BSEG-WRBTR'    upload_tab-fld4,
      ' ' 'BSEG-VALUT'    v_date,
       ' ' 'BSEG-SGTXT'    v_rem.
    ENDFORM.                    " LOAD_DATA
    *&      Form  load_Next
    FORM Load_next.
      perform fill_bdc_tab using:
       ' ' 'RF05A-NEWBS'    upload_tab-fld2,
       ' ' 'RF05A-NEWKO'    upload_tab-fld3,
       ' ' 'BDC_OKCODE'   '/00'.
    ENDFORM.                    "Load_next
    *&      Form  load_Save
    FORM Load_save.
      perform fill_bdc_tab using:
      'X' 'SAPMF05A'     '0300',
       ' ' 'BDC_OKCODE'   '=BU'.
      v_tmp = v_glcd.
      v_len = strlen( upload_tab-fld3 ).
      If ( v_tmp = '2' or v_tmp = '4' or v_tmp = '0' )  .
        Perform load_ccenter.
      elseif v_flag = 1.
        perform upload_blank.
      endif.
      perform fill_bdc_tab using:
       'X' 'SAPMF05A'     '0700',
       ' ' 'BDC_OKCODE'   '=BU'.
    ENDFORM.                    "Load_save
    *&      Form  load_CCenter
    FORM Load_Ccenter.
      perform fill_bdc_tab using:
       'X' 'SAPLKACB'     '0002',
       ' ' 'BDC_CURSOR'   'COBL-KOSTL',
      ' ' 'COBL-KOSTL'   '4200-0451',
       ' ' 'COBL-KOSTL'    v_ccode,
      ' ' 'COBL-KOSTL'   '4200-0295',
       ' ' 'BDC_OKCODE'   '/EENTE'.
    ENDFORM.                    "Load_Ccenter
    *&      Form  load_blank
    FORM UpLoad_blank.
      perform fill_bdc_tab using:
       'X' 'SAPLKACB'     '0002',
       ' ' 'BDC_OKCODE'   '/EENTE'.
    ENDFORM.                    "UpLoad_blank

    ur  code  looking  ok..
    just change  it..
    call function <b>'WS_UPLOAD'</b>--->to  <b>gui_upload</b>
    EXPORTING
    FILENAME = p_fl_mct
    FILETYPE = 'ASC'
    TABLES
    data_tab = Tmp_tab
    EXCEPTIONS
    CONVERSION_ERROR = 1
    FILE_OPEN_ERROR = 2
    OTHERS = 10.
    if sy-subrc <> 0.
    message e398(00) with 'Unable to upload data'.
    endif.

  • BDC For Transaction MB1C

    Hi all
    i want bdc program and flat file structure for transaction MB1C to upload stock.
    If anyone have then please send me at [email protected]
    Its urgent.
    Thanks

    Hi
    use the BAPI
    BAPI_GOODSMVT_CREATE
    see the code:
    REPORT ZRICH_0001 .
    Structures for BAPI
    DATA: GM_HEADER  TYPE BAPI2017_GM_HEAD_01.
    DATA: GM_CODE    TYPE BAPI2017_GM_CODE.
    DATA: GM_HEADRET TYPE BAPI2017_GM_HEAD_RET.
    DATA: GM_ITEM    TYPE TABLE OF
                     BAPI2017_GM_ITEM_CREATE WITH HEADER LINE.
    DATA: GM_RETURN  TYPE BAPIRET2 OCCURS 0 WITH HEADER LINE.
    DATA: GM_RETMTD  TYPE BAPI2017_GM_HEAD_RET-MAT_DOC.
    CLEAR: GM_RETURN, GM_RETMTD. REFRESH GM_RETURN.
    Setup BAPI header data.
    GM_HEADER-PSTNG_DATE = SY-DATUM.
    GM_HEADER-DOC_DATE   = SY-DATUM.
    GM_CODE-GM_CODE      = '04'.                                " MB1A
    Write 971 movement to table
    CLEAR GM_ITEM.
    MOVE '412'                 TO GM_ITEM-MOVE_TYPE     .
    MOVE 'Q'                 TO GM_ITEM-SPEC_STOCK.
    MOVE '3800533484'  TO GM_ITEM-MATERIAL.
    MOVE '1'     TO GM_ITEM-ENTRY_QNT.
    *MOVE 'PC'    TO GM_ITEM-ENTRY_UOM.
    MOVE '1060'  TO GM_ITEM-PLANT.
    MOVE '0007'  TO GM_ITEM-STGE_LOC.
    *MOVE '0901'   TO GM_ITEM-MOVE_REAS.
    MOVE 'P203601001' TO GM_ITEM-WBS_ELEM.
    MOVE 'P203601001' TO GM_ITEM-VAL_WBS_ELEM.
    APPEND GM_ITEM.
    Call goods movement BAPI
    CALL FUNCTION 'BAPI_GOODSMVT_CREATE'
         EXPORTING
              GOODSMVT_HEADER  = GM_HEADER
              GOODSMVT_CODE    = GM_CODE
         IMPORTING
              GOODSMVT_HEADRET = GM_HEADRET
              MATERIALDOCUMENT = GM_RETMTD
         TABLES
              GOODSMVT_ITEM    = GM_ITEM
              RETURN           = GM_RETURN.
    IF NOT GM_RETMTD IS INITIAL.
      COMMIT WORK AND WAIT.
      CALL FUNCTION 'DEQUEUE_ALL'.
    ELSE.
      COMMIT WORK AND WAIT.
      CALL FUNCTION 'DEQUEUE_ALL'.
    ENDIF.
    WRITE:/ GM_RETMTD.
    LOOP AT GM_RETURN.
      WRITE:/ GM_RETURN.
    ENDLOOP.
    Reward points if useful
    Regards
    Anji

  • How we can upload the data through BDC for transaction J1ID

    Hi guru
    How w can upload the data for Transaction J1ID.In this we want to upload the data for Customer Excise details. I want to upload the data on behalf of Customer (KUNNR) becasue customer is a primary KEY. Table name: J_1IMOCUST
    Fields. 11 Fields.plz provide some code logic.
    KUNNR     J_1IEXCD     J_1IEXRN     J_1IEXRG     J_1IEXDI     J_1IEXCO     J_1ICSTNO     J_1ILSTNO     J_1IPANNO     J_1IEXCICU     J_1ISERN

    Hi,
    I dont see any difficulties in doing BDC upload for J1ID, You have to record by giving the New Entries button and then enter all the details of customers using table control technique.
    SEARCH SCN for Table Control in BDC
    Regards
    Karthik D

Maybe you are looking for

  • My i pad is not responding to touch

    My ipad is not responding to touch.  It is very slow and most of the time does not work at all.  THis problem occured a few days after I updated to the newest version.  It is an ipad1

  • HT204409 i have problem whilst connecting to wifi on i phone 4s how do i go about it

    i am trying to connect to wifi on an i4s it doesnt seem to connect i was using it previously now it doesnt connect taking too long to connect please help

  • Add column to custom inventory report

    Please add a column that show the date a device was first collected into the inventory report.

  • Need Help on Setting up OBIEE server setup

    Hi All, I am new to OBIEE. we are setting up a server which can be utilized for Informatica and OBIEE. for that can anybody suggest which windows server is compatable to install the both softwares.

  • How to Install XI Patch?

    Hi, I had installed XI 3.0 and did not install any further path for XI. Could any one please let me know where i can find information on "How to install XI patch". This much i know that this is available on SAP site but have not been able to find or