BDC XK01

Hi,
in XK01 TCODE we have table control  in screen no 130 for bank details. In that we don't have ant BNFPO field as in ME51 table control to scroll the items. Here we need to go for page-down. But  it is not suggestable becoz when the screen resolution changes, the number of items that we are seeing now also changes. Then the page-down won't works. So, how to scroll it?
I heard that we have a structure CTU_PARAMS which can help us to set the  screen resolution at default level. How to use that ?
Please let me know..
Thanks in advance.

data: f_option type ctu_params,
f_option-updmode = 'S'.
f_option-defsize = 'X'.
f_option-dismode = 'N'.
call transaction 'XK01' using bdcdata options from f_option messages into bdcerror.
Reward Points if it is helpful
Thanks
Seshu

Similar Messages

  • Bdc in abap

    hi, how to use bdc in abap , and give one example program .

    Hi,
    General Steps are as follows:
    Get ur data to be uploaded in xls file, make proper validations andcreate on flat file
    goto SHDB and record a sample transcation for tcode  u want .
    genrate program form that recording.
    modify that program in order to upload flat file.
    and change recortding parameters in program with itab values.
    if session method run session using SM35 or RSBDCSUB program.
    a sample program is given below:
    "BDC XK01 using Table control:
    REPORT Y730_BDC5 .
    *HANDLING TABLE CONTROL IN BDC
    DATA : BEGIN OF IT_DUMMY OCCURS 0,
           DUMMY(100) TYPE C,
           END OF IT_DUMMY.
    DATA : BEGIN OF IT_XK01 OCCURS 0,
           LIFNR(10) TYPE C,
           BUKRS(4)  TYPE C,
           EKORG(4)  TYPE C,
           KTOKK(4)  TYPE C,
           NAME1(30) TYPE C,
           SORTL(10) TYPE C,
           LAND1(3)  TYPE C,
           SPRAS(2)  TYPE C,
           AKONT(6)  TYPE C,
           FDGRV(2)  TYPE C,
           WAERS(3)  TYPE C,
           END OF IT_XK01,
           BEGIN OF IT_BANK OCCURS 0,
           BANKS(3)  TYPE C,
           BANKL(10) TYPE C,
           BANKN(10) TYPE C,
           KOINH(30) TYPE C,
           LIFNR(10) TYPE C,
           END OF IT_BANK.
    DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
           IT_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
    CALL FUNCTION 'WS_UPLOAD'
    EXPORTING
       FILENAME                      = 'C:VENDOR.TXT'
       FILETYPE                      = 'ASC'
    TABLES
       DATA_TAB                      = IT_DUMMY.
    LOOP AT IT_DUMMY.
      IF IT_DUMMY-DUMMY+0(2) = '11'.
        IT_XK01-LIFNR = IT_DUMMY-DUMMY+2(10).
        IT_XK01-BUKRS = IT_DUMMY-DUMMY+12(4).
        IT_XK01-EKORG = IT_DUMMY-DUMMY+16(4).
        IT_XK01-KTOKK = IT_DUMMY-DUMMY+20(4).
        IT_XK01-NAME1 = IT_DUMMY-DUMMY+24(30).
        IT_XK01-SORTL = IT_DUMMY-DUMMY+54(10).
        IT_XK01-LAND1 = IT_DUMMY-DUMMY+64(3).
        IT_XK01-SPRAS = IT_DUMMY-DUMMY+67(2).
        IT_XK01-AKONT = IT_DUMMY-DUMMY+69(6).
        IT_XK01-FDGRV = IT_DUMMY-DUMMY+75(2).
        IT_XK01-WAERS = IT_DUMMY-DUMMY+77(3).
        APPEND IT_XK01.
      ELSE.
        IT_BANK-BANKS = IT_DUMMY-DUMMY+2(3).
        IT_BANK-BANKL = IT_DUMMY-DUMMY+5(10).
        IT_BANK-BANKN = IT_DUMMY-DUMMY+15(10).
        IT_BANK-KOINH = IT_DUMMY-DUMMY+25(30).
        IT_BANK-LIFNR = IT_DUMMY-DUMMY+55(10).
        APPEND IT_BANK.
      ENDIF.
    ENDLOOP.
    LOOP AT IT_XK01.
    REFRESH IT_BDCDATA.
    perform bdc_dynpro      using 'SAPMF02K' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF02K-REF_LIFNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RF02K-LIFNR'
                                  IT_XK01-LIFNR.
    perform bdc_field       using 'RF02K-BUKRS'
                                  IT_XK01-BUKRS.
    perform bdc_field       using 'RF02K-EKORG'
                                  IT_XK01-EKORG.
    perform bdc_field       using 'RF02K-KTOKK'
                                  IT_XK01-KTOKK.
    perform bdc_dynpro      using 'SAPMF02K' '0110'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-TELX1'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFA1-NAME1'
                                  IT_XK01-NAME1.
    perform bdc_field       using 'LFA1-SORTL'
                                  IT_XK01-SORTL.
    perform bdc_field       using 'LFA1-LAND1'
                                  IT_XK01-LAND1.
    perform bdc_field       using 'LFA1-SPRAS'
                                  IT_XK01-SPRAS.
    perform bdc_dynpro      using 'SAPMF02K' '0120'.
    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(02)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    DATA : FNAM(20) TYPE C,
           IDX      TYPE C.
    LFBK-BANKS(3)
      MOVE 1 TO IDX.
    LOOP AT IT_BANK WHERE LIFNR = IT_XK01-LIFNR.
      CONCATENATE 'LFBK-BANKS(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKS.
      CONCATENATE 'LFBK-BANKL(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKL.
      CONCATENATE 'LFBK-BANKN(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKN.
      CONCATENATE 'LFBK-KOINH(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-KOINH.
      IDX = IDX + 1.
    ENDLOOP.
    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'.
    perform bdc_field       using 'LFB1-AKONT'
                                  IT_XK01-AKONT.
    perform bdc_field       using 'LFB1-FDGRV'
                                  IT_XK01-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'
                                  IT_XK01-WAERS.
    perform bdc_dynpro      using 'SAPMF02K' '0320'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'WYT3-PARVW(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_dynpro      using 'SAPLSPO1' '0300'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=YES'.
    CALL TRANSACTION 'XK01' USING IT_BDCDATA
                            MODE  'A'
                           UPDATE 'S'
                         MESSAGES INTO IT_BDCMSGCOLL.
    ENDLOOP.
    FORM BDC_DYNPRO USING PROG SCR.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-PROGRAM = PROG.
      IT_BDCDATA-DYNPRO  = SCR.
      IT_BDCDATA-DYNBEGIN = 'X'.
      APPEND IT_BDCDATA.
    ENDFORM.
    FORM BDC_FIELD USING FNAM FVAL.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-FNAM = FNAM.
      IT_BDCDATA-FVAL  = FVAL.
      APPEND IT_BDCDATA.
    ENDFORM.
     
    Jogdand M B

  • Please answer to this questions..

    Hi guys,
    Need some clarification on these questions (one of my friend got to know this) I gave him some good ones but need clarifications
    Hoping for good answers..
    satisfactory answers best rewards..
    1. Transaction Code to create a purchase order?
    <b>I think it was ME21N do we have any transaction other than that.</b>
    2. How to handle Table controls in BDC?
    <b>Ans: I think ,Using the counter next to field like vbak-ebeln(i) was that correct, or there is any method to do that.</b>
    3. When we create a BDC for Material Creation we have multiple views in creating for different type of products, when we do recording, we get code for only a particular views for the material will be used for creation that time, then how we will transfer data which has got different kind of views other than for which we don't have recording program?
    4. If we Add a New text element to MEDRUCK in a page window, to trigger that text element we need to change the driver program or not?
    5. Driver programs for MEDRUCK and RVINVOICE01?
    6. How to add a field in a Standard Master table?
    <b>Ans: I think we need an ACCESS KEY to change any data in Master tables</b>

    Hi,
    Po create : ME21N
    2. Table control in BDC e.g.:
    BDC XK01 using Table control:
    REPORT Y730_BDC5 .
    *HANDLING TABLE CONTROL IN BDC
    DATA : BEGIN OF IT_DUMMY OCCURS 0,
           DUMMY(100) TYPE C,
           END OF IT_DUMMY.
    DATA : BEGIN OF IT_XK01 OCCURS 0,
           LIFNR(10) TYPE C,
           BUKRS(4)  TYPE C,
           EKORG(4)  TYPE C,
           KTOKK(4)  TYPE C,
           NAME1(30) TYPE C,
           SORTL(10) TYPE C,
           LAND1(3)  TYPE C,
           SPRAS(2)  TYPE C,
           AKONT(6)  TYPE C,
           FDGRV(2)  TYPE C,
           WAERS(3)  TYPE C,
           END OF IT_XK01,
           BEGIN OF IT_BANK OCCURS 0,
           BANKS(3)  TYPE C,
           BANKL(10) TYPE C,
           BANKN(10) TYPE C,
           KOINH(30) TYPE C,
           LIFNR(10) TYPE C,
           END OF IT_BANK.
    DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
           IT_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
    CALL FUNCTION 'WS_UPLOAD'
    EXPORTING
       FILENAME                      = 'C:VENDOR.TXT'
       FILETYPE                      = 'ASC'
    TABLES
       DATA_TAB                      = IT_DUMMY.
    LOOP AT IT_DUMMY.
      IF IT_DUMMY-DUMMY+0(2) = '11'.
        IT_XK01-LIFNR = IT_DUMMY-DUMMY+2(10).
        IT_XK01-BUKRS = IT_DUMMY-DUMMY+12(4).
        IT_XK01-EKORG = IT_DUMMY-DUMMY+16(4).
        IT_XK01-KTOKK = IT_DUMMY-DUMMY+20(4).
        IT_XK01-NAME1 = IT_DUMMY-DUMMY+24(30).
        IT_XK01-SORTL = IT_DUMMY-DUMMY+54(10).
        IT_XK01-LAND1 = IT_DUMMY-DUMMY+64(3).
        IT_XK01-SPRAS = IT_DUMMY-DUMMY+67(2).
        IT_XK01-AKONT = IT_DUMMY-DUMMY+69(6).
        IT_XK01-FDGRV = IT_DUMMY-DUMMY+75(2).
        IT_XK01-WAERS = IT_DUMMY-DUMMY+77(3).
        APPEND IT_XK01.
      ELSE.
        IT_BANK-BANKS = IT_DUMMY-DUMMY+2(3).
        IT_BANK-BANKL = IT_DUMMY-DUMMY+5(10).
        IT_BANK-BANKN = IT_DUMMY-DUMMY+15(10).
        IT_BANK-KOINH = IT_DUMMY-DUMMY+25(30).
        IT_BANK-LIFNR = IT_DUMMY-DUMMY+55(10).
        APPEND IT_BANK.
      ENDIF.
    ENDLOOP.
    LOOP AT IT_XK01.
    REFRESH IT_BDCDATA.
    perform bdc_dynpro      using 'SAPMF02K' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF02K-REF_LIFNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RF02K-LIFNR'
                                  IT_XK01-LIFNR.
    perform bdc_field       using 'RF02K-BUKRS'
                                  IT_XK01-BUKRS.
    perform bdc_field       using 'RF02K-EKORG'
                                  IT_XK01-EKORG.
    perform bdc_field       using 'RF02K-KTOKK'
                                  IT_XK01-KTOKK.
    perform bdc_dynpro      using 'SAPMF02K' '0110'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-TELX1'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFA1-NAME1'
                                  IT_XK01-NAME1.
    perform bdc_field       using 'LFA1-SORTL'
                                  IT_XK01-SORTL.
    perform bdc_field       using 'LFA1-LAND1'
                                  IT_XK01-LAND1.
    perform bdc_field       using 'LFA1-SPRAS'
                                  IT_XK01-SPRAS.
    perform bdc_dynpro      using 'SAPMF02K' '0120'.
    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(02)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    DATA : FNAM(20) TYPE C,
           IDX      TYPE C.
      MOVE 1 TO IDX.
    LOOP AT IT_BANK WHERE LIFNR = IT_XK01-LIFNR.
      CONCATENATE 'LFBK-BANKS(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKS.
      CONCATENATE 'LFBK-BANKL(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKL.
      CONCATENATE 'LFBK-BANKN(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKN.
      CONCATENATE 'LFBK-KOINH(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-KOINH.
      IDX = IDX + 1.
    ENDLOOP.
    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'.
    perform bdc_field       using 'LFB1-AKONT'
                                  IT_XK01-AKONT.
    perform bdc_field       using 'LFB1-FDGRV'
                                  IT_XK01-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'
                                  IT_XK01-WAERS.
    perform bdc_dynpro      using 'SAPMF02K' '0320'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'WYT3-PARVW(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_dynpro      using 'SAPLSPO1' '0300'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=YES'.
    CALL TRANSACTION 'XK01' USING IT_BDCDATA
                            MODE  'A'
                           UPDATE 'S'
                         MESSAGES INTO IT_BDCMSGCOLL.
    ENDLOOP.
    FORM BDC_DYNPRO USING PROG SCR.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-PROGRAM = PROG.
      IT_BDCDATA-DYNPRO  = SCR.
      IT_BDCDATA-DYNBEGIN = 'X'.
      APPEND IT_BDCDATA.
    ENDFORM.
    FORM BDC_FIELD USING FNAM FVAL.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-FNAM = FNAM.
      IT_BDCDATA-FVAL  = FVAL.
      APPEND IT_BDCDATA.
    ENDFORM.
    3. ---
    4.  that text elemnt must be populated in driver program OR we can defind it in script as /:DEFINE var... command.
    5. yes
    6. using append structue  or include through table exit.
    Jogdand M B

  • 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 of XK01 with holding tax

    Sir,
    I am uploading vendor master ( xk01) with BDC session method.But I have query while uploading
    Withholding tax accounting records. ( there 4 to 5 records in with/ tax information on screen no 0610)
    can any one tell me how to upload muliple records on same sreen.
    Manoj..

    Here is my sample code.
    LOOP AT t_custxl INTO fs_custxl.
        ON CHANGE OF fs_custxl-name1 .
          PERFORM bdc_dynpro      USING 'SAPMF02D' '0100'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'RF02D-BUKRS'
                                         fs_custxl-bukrs .      " '1000'.
          PERFORM bdc_field       USING 'RF02D-KTOKD'
                                        fs_custxl-ktokd . "'CUST'.
          PERFORM bdc_field       USING 'RF02D-REF_KUNNR'
          PERFORM bdc_dynpro      USING 'SAPMF02D' '0110'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'KNA1-ANRED'
                                        fs_custxl-anred .  "'Mr.'.
          PERFORM bdc_field       USING 'KNA1-NAME1'
                                        fs_custxl-name1 .  "'asdf'.
          PERFORM bdc_field       USING 'KNA1-SORTL'
                                        fs_custxl-sortl .  "'ASDF'.
          PERFORM bdc_field       USING 'KNA1-PFACH'
                                        fs_custxl-pfach .       "'500017'.
          PERFORM bdc_field       USING 'KNA1-ORT01'
                                        fs_custxl-ort01 .  "'hyderabad'.
          PERFORM bdc_field       USING 'KNA1-PSTLZ'
                                        fs_custxl-pstlz .       "'500017'.
          PERFORM bdc_field       USING 'KNA1-PSTL2'
                                        fs_custxl-pstl2 .       "'500017'.
          PERFORM bdc_field       USING 'KNA1-LAND1'
                                        fs_custxl-land1.  "'in'.
          PERFORM bdc_field       USING 'KNA1-SPRAS'
                                        fs_custxl-spras.  "'en'.
          PERFORM bdc_dynpro      USING 'SAPMF02D' '0120'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_dynpro      USING 'SAPMF02D' '0125'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_dynpro      USING 'SAPMF02D' '0130'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=ENTR'.
          PERFORM bdc_dynpro      USING 'SAPMF02D' '0340'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=ENTR'.
          PERFORM bdc_dynpro      USING 'SAPMF02D' '0370'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=ENTR'.
          PERFORM bdc_field       USING 'KNA1-CIVVE'
                                        'X'.
        ENDON .
        ADD 1 TO w_var .
        PERFORM bdc_dynpro      USING 'SAPMF02D' '0360'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=ENTR'.
        CLEAR w_word .
        CONCATENATE 'KNVK-NAMEV(' w_var ')' INTO w_word .
        PERFORM bdc_field       USING w_word
                                       fs_custxl-namev .   "'fdsa'.
        CLEAR w_word .
        CONCATENATE 'KNVK-NAME1(' w_var ')' INTO w_word .
        PERFORM bdc_field       USING w_word
                                       fs_custxl-kname1 .   .
        CLEAR w_word .
        CONCATENATE 'KNVK-TELF1(' w_var ')' INTO w_word .
        PERFORM bdc_field       USING w_word
                                     fs_custxl-telf1 .         
        CLEAR w_word .
        CONCATENATE 'KNVK-ABTNR(' w_var ')' INTO w_word .
        PERFORM bdc_field       USING w_word
                                      fs_custxl-abtnr .       
        AT END OF name1 .

  • BDC for XK01

    Hi All,
    iam creating & updating Vendor master details through BDC  Recording  by following syntax
          DATA :lt_bdcmsgcoll1 TYPE STANDARD TABLE OF bdcmsgcoll.
          DATA opt TYPE ctu_params.
          opt-dismode = 'N'.
          opt-updmode = 'X'.
          opt-cattmode ='N'.
          opt-defsize = 'X'.
          opt-racommit ='X'.
          opt-nobinpt = 'X'.
          opt-nobiend = 'X'.
          CALL TRANSACTION 'XK01' USING bdcdata OPTIONS FROM opt
                                                 MESSAGES INTO lt_bdcmsgcoll1 .
    i have given  opt-dismode = 'N' then vendor are NOT getting created.When i give opt-dismode = 'A'  or 'E' then vendors are getting created / updating .
    can any one suggest me how to proceed ?
    regards
    Fareed

    Hi Fareed
    >
    Shaik Mohd  Fareeduddin wrote:
        opt-updmode = 'X'.
    The update mode should be either:
    A, S, L or blank.
    Please see help excerpt below:
    The UPDATE addition determines the processing mode for batch input processing. You can specify a character-type object for upd. Its possible content and its effect are displayed in the following table. Without use of one of the additions UPDATE or OPTIONS FROM, the effect is the same as if upd had the content "A".
    "A"         Asynchronous update. Updates of called programs are executed in the same way as if in the COMMIT WORK statement the AND WAIT addition was not specified.
    "S"         Synchronous processing. Updates of the called programs are executed in the same way as if in the COMMIT WORK statement the AND WAIT addition had been specified.
    "L"          Local update. Updates of the called program are executed in such a way as if the SET UPDATE TASK LOCAL statement had been executed in it.
    Kind regards,
    Robert

  • Bdc with xk01

    In xk01 transaction if the data along with the bank details has to be updates how would be the flat file like, Will there be two different files or entire data put in one file. Show me the structure of it......
    regards
    johny

    Hi
    Check the below link.
    http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
    THis is example to upload the Bank details of the Vendor which has the TC.
    REPORT zprataptable2
           NO STANDARD PAGE HEADING LINE-SIZE 255.
    DATA : BEGIN OF itab OCCURS 0,
            i1 TYPE i,
            lifnr LIKE   rf02k-lifnr,
            bukrs LIKE   rf02k-bukrs,
            ekorg LIKE   rf02k-ekorg,
            ktokk LIKE   rf02k-ktokk,
            anred LIKE lfa1-anred,
            name1 LIKE lfa1-name1,
            sortl LIKE lfa1-sortl,
            land1 LIKE lfa1-land1,
            akont LIKE lfb1-akont,
            fdgrv LIKE lfb1-fdgrv,
             waers LIKE lfm1-waers,
            END OF itab.
    DATA : BEGIN OF jtab OCCURS 0,
            j1 TYPE i,
            banks LIKE lfbk-banks,
            bankl LIKE lfbk-bankl,
            bankn LIKE lfbk-bankn,
             END OF jtab.
    DATA : cnt(4) TYPE n.
    DATA : fdt(20) TYPE c.
    DATA : c TYPE i.
    INCLUDE bdcrecx1.
    START-OF-SELECTION.
      CALL FUNCTION 'WS_UPLOAD'
        EXPORTING
          filename = 'C:\first1.txt'
          filetype = 'DAT'
        TABLES
          data_tab = itab.
      CALL FUNCTION 'WS_UPLOAD'
       EXPORTING
         filename                      = 'C:\second.txt'
         filetype                      = 'DAT'
        TABLES
          data_tab                      = jtab.
      LOOP AT itab.
        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'
                                      itab-lifnr.
        PERFORM bdc_field       USING 'RF02K-BUKRS'
                                      itab-bukrs.
        PERFORM bdc_field       USING 'RF02K-EKORG'
                                       itab-ekorg.
        PERFORM bdc_field       USING 'RF02K-KTOKK'
                                       itab-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-ANRED'
                                      itab-anred.
        PERFORM bdc_field       USING 'LFA1-NAME1'
                                      itab-name1.
        PERFORM bdc_field       USING 'LFA1-SORTL'
                                      itab-sortl.
        PERFORM bdc_field       USING 'LFA1-LAND1'
                                      itab-land1.
        PERFORM bdc_dynpro      USING 'SAPMF02K' '0120'.
        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-BANKN(01)'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=ENTR'.
        cnt = 0.
        LOOP AT jtab WHERE j1 = itab-i1.
          cnt = cnt + 1.
          CONCATENATE 'LFBK-BANKS(' cnt ')' INTO fdt.
          PERFORM bdc_field  USING fdt jtab-banks.
          CONCATENATE 'LFBK-BANKL(' cnt ')' INTO fdt.
          PERFORM bdc_field USING fdt jtab-bankl.
          CONCATENATE 'LFBK-BANKN(' cnt ')' INTO fdt.
          PERFORM bdc_field   USING fdt jtab-bankn.
          IF cnt = 5.
            cnt = 0.
            PERFORM bdc_dynpro      USING 'SAPMF02K' '0130'.
            PERFORM bdc_field       USING 'BDC_CURSOR'
                                          'LFBK-BANKS(01)'.
            PERFORM bdc_field       USING 'BDC_OKCODE'
                                          '=P+'.
            PERFORM bdc_dynpro      USING 'SAPMF02K' '0130'.
            PERFORM bdc_field       USING 'BDC_CURSOR'
                                          'LFBK-BANKN(02)'.
            PERFORM bdc_field       USING 'BDC_OKCODE'
                                          '=ENTR'.
          ENDIF.
        ENDLOOP.
        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'.
        PERFORM bdc_field       USING 'LFB1-AKONT'
                                      itab-akont.
        PERFORM bdc_field       USING 'LFB1-FDGRV'
                                      itab-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'
                                      itab-waers.
        PERFORM bdc_dynpro      USING 'SAPMF02K' '0320'.
        PERFORM bdc_field       USING 'BDC_CURSOR'
                                      'RF02K-LIFNR'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=ENTR'.
        PERFORM bdc_dynpro      USING 'SAPLSPO1' '0300'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=YES'.
        PERFORM bdc_transaction USING 'XK01'.
      ENDLOOP.
      PERFORM close_group.
    Header file:
    1     63190      0001     0001     0001     mr     bal188     b     in     31000     a1     inr
    2     63191      0001     0001     0001     mr     bal189     b     in     31000     a1     inr
    TC file:
    1     in     sb     11000
    1     in     sb     12000
    1     in     sb     13000
    1     in     sb     14000
    1     in     sb     15000
    1     in     sb     16000
    1     in     sb     17000
    1     in     sb     18000
    1     in     sb     19000
    1     in     sb     20000
    1     in     sb     21000
    1     in     sb     22000
    2     in     sb     21000
    2     in     sb     22000
    <b>Reward points for useful Answers</b>
    Regards
    Anji

  • How to access CIN tab in BDC for xk01

    I am developing a program using BDC of xk01,but the CIN tab which holds PAN in this transaction is not being accessed if I run the bdc in N mode.When I am running it in A mode,upon manually clicking the CIN tab the further proceedings are working fine. Please suggest how do I automate the access for CIN tab.

    Dear Pratik Ranadive   ,
    1. Go to XK01.
    2. Go to CIN tab which holds PAN number.
    3. Check F1 details for that particular Field. Note the Program Name & Screen Number (for Batch Input)
    For eg : see the fig,
    4. Now go to your BDC report, locate the recording regarding for above fields.
    PERFORM bdc_dynpro      USING 'SAPMV45A' '4003'.
    PERFORM bdc_field          USING 'BDC_OKCODE'
                                            '=T\05'.
    Here, '=T\05' stands for Tab number 5. Count the tab number in your CIN screen. If it comes at position 6. then Change the above line of code as follows.
    PERFORM bdc_dynpro      USING 'SAPMV45A' '4003'.
    PERFORM bdc_field          USING 'BDC_OKCODE'
                                            '=T\06'.
    Regards,
    NG

  • BAPI Replacement for the BDC calling XK01, XK02 tcodes

    Hi,
    I am in an Upgrade project. I need to replace a BDC which is calling the transaction codes XK01 and XK02 with BAPI.
    I found two BAPIs 'BAPI_VENDOR_CREATE' and 'BAPI_VENDOR_EDIT' but they are used to create and change Vendor master online.
    Please let me know if you know any BAPI which I can use to replace my BDC.
    Thanks & Regards,
    Siva.

    Hi,
    The function modules VENDOR_INSERT/ VENDOR_UPDATE are not robust; there is direct table update with no locking mechanism. Please let me know if there is any other solution for this.
    Thanks & Regards,
    Siva.

  • Need of Technical specs BDC of transaction xk01

    Hi Experts,
    This is Geet, I need the technical specs for BDC of transaction XK01. Please reply me as soon as possible.
    Thanks a lot

    Hello Mr.MVPhani Diwakar,
    Are really mentoring people over here!!! What a sarcastic reply. If you are not CAPABLE of something you better quit. You don't know what is teaching, mentoring or atleast helping other who is in need of. You better sit at home, this is NOT your kind of job.
    Thank you.

  • Hi regarding material master and vendor master (mm01,xk01) upload using BDC

    hi can any one tell me how to upload material maste and vendor master using BDC.
    will the views capture by shdb when i use recording.

    Hey i suggest you to go to LSMW direct input program method. That's the best option.
    Material Master:
    Object               0020   Material master
    Method               0000
    Program Name         RMDATIND
    Program Type         D   Direct Input
    Vendor Master:
    Object               0040   Vendor master
    Method               0001   Standard
    Program Name         RFBIKR00
    Program Type         B   Batch Input

  • XK01 Update using BDC

    Hi,
    I am updating xk01 . I have one problem .My Vendor is having 3 bank accounts in three different states .when I am up dating it is taking only one row of the flat file and when it comes to second row vendor number will be same but bank details will be different .How can i do this .
    Thanks in advance

    Hi,
    you must keep in mind, that's a table control-
    try:
      CONCATENATE 'KNBK-BANKS(' zei ')' INTO hfnam. "cursor
      PERFORM bdc_field       USING 'BDC_CURSOR' hfnam.
      PERFORM bdc_field_loop USING zei 'KNBK-BANKS' kbkwa-country_cd.
      PERFORM bdc_field_loop USING zei 'KNBK-BANKL' kbkwa-bank_routing_cd.
      PERFORM bdc_field_loop USING zei 'KNBK-BANKN' kbkwa-bank_account_no.
      PERFORM bdc_field_loop USING zei 'KNBK-KOINH' kbkwa-account_holder.
    Message was edited by: Andreas Mann

  • Bdc Screen data not passing to XK01 transaction screen for the second PO

    Hi Friends,
                    I have an requirement to extend an existing vendor to multiple company code and for multiple purchase organisation.I have created one report that will list the company code and the purchase organisation to be extended for the vendor. I am calling the standard program as below.
              LOOP AT li_porg.
              If user has ALSO selected p. organizations to extend...
                IF NOT li_company[] IS INITIAL.
                  LOOP AT li_company.
                    SUBMIT zricef666 WITH ld_par = ld_param
                                     WITH ls_vend = ls_vendor_ampl
                                     WITH ld_bukrs = li_company-bukrs
                                     WITH ld_ekorg = li_porg-ekorg
                             AND RETURN.
                  ENDLOOP.
              ENDLOOP.
    Within the program zricef666 , i am calling the below program to extend vendor.
    SUBMIT RFBIKR00 WITH ds_name = FICH
                   WITH xlog = ld_mark
                    AND RETURN.
    Now the problem i am facing is that the first vendor got extended sucessfully for the first PO.But for the second PO , the screen fields are blank and it stuckes in that screen. But in the session i am able to clearly see the data are there but these data are not passing to the screen of XK01.
        Need help to solve this problem from you all.Thanks in advance.
    With Regards,
    Ajit Prasad.

    Hello Ajit, try with the following code and reward if useful. the following code uses the transaction XK01.
    REPORT zbdcxk01 .
    DATA: BEGIN OF itab OCCURS 0,
            lifnr LIKE rf02k-lifnr,
            bukrs LIKE rf02k-bukrs,
            ktokk LIKE rf02k-ktokk,
            name1 LIKE lfa1-name1,
            sortl LIKE lfa1-sortl,
            land1 LIKE lfa1-land1,
            brsch LIKE lfa1-brsch,
            akont LIKE lfb1-akont,
            zterm LIKE lfb1-zterm,
            reprf LIKE lfb1-reprf,
            zwels LIKE lfb1-zwels,
          END OF itab.
    DATA: rc TYPE i,
          flag TYPE i VALUE 1,
          it_files TYPE filetable,
          bdc_data TYPE STANDARD TABLE OF bdcdata WITH HEADER LINE.
    DATA:   messtab LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE.
    SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-002.
    PARAMETERS: p_file(1024) TYPE c OBLIGATORY.
    PARAMETERS:dismode DEFAULT 'A',
               updmode DEFAULT 'S'.
    SELECTION-SCREEN : END OF BLOCK b1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
      CALL METHOD cl_gui_frontend_services=>file_open_dialog
      CHANGING
         file_table              = it_files
         rc                      = rc.
    *Read the Filename into P_FILE
      READ TABLE it_files INDEX 1 INTO p_file.
    START-OF-SELECTION.
      PERFORM getdata.
      PERFORM create_session.
      LOOP AT itab.
        PERFORM fill_bdc_table.
      ENDLOOP.
      PERFORM close_session.
    END-OF-SELECTION.
      PERFORM submit.
    *&      Form  getdata
    *       text
    FORM getdata.
      DATA: file TYPE string.
      file = p_file.
      CALL FUNCTION 'GUI_UPLOAD'
           EXPORTING
                filename                = file
                has_field_separator     = 'X'
           TABLES
                data_tab                = itab
           EXCEPTIONS
                file_open_error         = 1
                file_read_error         = 2
                no_batch                = 3
                gui_refuse_filetransfer = 4
                invalid_type            = 5
                no_authority            = 6
                unknown_error           = 7
                bad_data_format         = 8
                header_not_allowed      = 9
                separator_not_allowed   = 10
                header_too_long         = 11
                unknown_dp_error        = 12
                access_denied           = 13
                dp_out_of_memory        = 14
                disk_full               = 15
                dp_timeout              = 16
                OTHERS                  = 17.
    *IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    *ENDIF.
    ENDFORM.                    " getdata
    *&      Form  CREATE_SESSION
    *       text
    FORM create_session.
      CALL FUNCTION 'BDC_OPEN_GROUP'
       EXPORTING
         client                    = sy-mandt
    *   DEST                      = FILLER8
         group                     = 'MYGROUP'
    *   HOLDDATE                  = FILLER8
         keep                      = 'X'
         user                      = sy-uname
    *   RECORD                    = FILLER1
    * IMPORTING
    *   QID                       =
       EXCEPTIONS
         client_invalid            = 1
         destination_invalid       = 2
         group_invalid             = 3
         group_is_locked           = 4
         holddate_invalid          = 5
         internal_error            = 6
         queue_error               = 7
         running                   = 8
         system_lock_error         = 9
         user_invalid              = 10
         OTHERS                    = 11
      IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    " CREATE_SESSION
    *&      Form  CLOSE_SESSION
    FORM close_session.
      CALL FUNCTION 'BDC_CLOSE_GROUP'
           EXCEPTIONS
                not_open    = 1
                queue_error = 2
                OTHERS      = 3.
      IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    " CLOSE_SESSION
    *&      Form  FILL_BDC_TABLE
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM fill_bdc_table.
      REFRESH bdc_data.
      PERFORM operation.
      CALL FUNCTION 'BDC_INSERT'
       EXPORTING
         tcode                  = 'XK01'
    *   POST_LOCAL             = NOVBLOCAL
    *   PRINTING               = NOPRINT
        TABLES
          dynprotab              = bdc_data
    * EXCEPTIONS
    *   INTERNAL_ERROR         = 1
    *   NOT_OPEN               = 2
    *   QUEUE_ERROR            = 3
    *   TCODE_INVALID          = 4
    *   PRINTING_INVALID       = 5
    *   POSTING_INVALID        = 6
    *   OTHERS                 = 7
      IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      PERFORM bdc_transaction USING 'XK01'.
    ENDFORM.                    " FILL_BDC_TABLE
    *&      Form  BDC_DYNPRO
    *       texT
    *  -->  p1        text
    *  <--  p2        text
    FORM bdc_dynpro USING program dynpro.
      CLEAR bdc_data.
      bdc_data-program = program.
      bdc_data-dynpro = dynpro.
      bdc_data-dynbegin = 'X'.
      APPEND bdc_data.
    ENDFORM.                    " BDC_DYNPRO
    *&      Form  BDC_FIELD
    *       text
    FORM bdc_field USING fnam fval.
      CLEAR bdc_data.
      bdc_data-fnam = fnam.
      bdc_data-fval = fval.
      APPEND bdc_data.
    ENDFORM.                    " BDC_FIELD
    *&      Form  BDC_TRANSACTION
    FORM bdc_transaction USING tcode.
      CALL TRANSACTION tcode USING bdc_data
                             MODE   dismode
                             UPDATE updmode
                             MESSAGES INTO messtab.
    ENDFORM.                    " BDC_TRANSACTION
    *&      Form  SUBMIT
    *       text
    FORM submit.
      SUBMIT rsbdcsub EXPORTING LIST TO MEMORY AND RETURN
    *                  user sy-uname
                        WITH mappe = 'MYGROUP'
                        WITH von   = sy-datum
                        WITH bis   = sy-datum
                        WITH z_verarb = 'X'.
    ENDFORM.                    " SUBMIT
    *&      Form  OPERATION
    *       text
    FORM operation.
      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'
                                    itab-lifnr.
      PERFORM bdc_field       USING 'RF02K-BUKRS'
                                    itab-bukrs.
      PERFORM bdc_field       USING 'RF02K-KTOKK'
                                    itab-ktokk.
      PERFORM bdc_dynpro      USING 'SAPMF02K' '0110'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'LFA1-SORTL'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '/00'.
      PERFORM bdc_field       USING 'LFA1-NAME1'
                                    itab-name1.
      PERFORM bdc_field       USING 'LFA1-SORTL'
                                    itab-sortl.
      PERFORM bdc_field       USING 'LFA1-LAND1'
                                    itab-land1.
      PERFORM bdc_dynpro      USING 'SAPMF02K' '0120'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'LFA1-BRSCH'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '/00'.
      PERFORM bdc_field       USING 'LFA1-BRSCH'
                                    itab-brsch.
      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-AKONT'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '/00'.
      PERFORM bdc_field       USING 'LFB1-AKONT'
                                    itab-akont.
      PERFORM bdc_dynpro      USING 'SAPMF02K' '0215'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'LFB1-REPRF'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '=UPDA'.
      PERFORM bdc_field       USING 'LFB1-ZTERM'
                                    itab-zterm.
      PERFORM bdc_field       USING 'LFB1-REPRF'
                                    itab-reprf.
      PERFORM bdc_field       USING 'LFB1-ZWELS'
                                    itab-zwels.
      PERFORM bdc_transaction USING 'XK01'.
    ENDFORM.                    " OPERATION

  • IBAN field is put automatically for XK01 and XK02 BDC

    Hi,
    BDCDATA table is created with below records to update the bank details of vendor
    but the BDC updates the IBAN automatically even though its not a part of BDC
    how can this be prevented ?
    I even tried std funciton module DELETE_IBAN to delete the automatically generated IBAN but it doesnt work.
    BDC recording with IBAN field populated :
    SAPMF02K     130     X          
         0          LFBK-BANKS(01)     FR
         0          LFBK-BANKL(01)     1005701700
         0          LFBK-BANKN(01)     39584739195
         0          LFBK-BVTYP(01)     
         0          LFBK-BKREF(01)     
         0          LFBK-XEZER(01)     
                                                           BDC_CURSOR     IBAN(01)
                                                           BDC_OKCODE     IBAN
    SAPLIBMA     100     X                                                                               
    BDC_CURSOR     IBAN01
                                                           BDC_OKCODE     =SWITCH
    SAPLIBMA     100     X                                                                               
    BDC_CURSOR     IBAN00
                                                           BDC_OKCODE     =ENTR
                                                           IBAN00     DE65100400630023334535
                                                           TIBAN-VALID_FROM     04.01.2012
    BDC recording without IBAN field populated :
    SAPMF02K     130     X          
         0          LFBK-BANKS(02)     FR
         0          LFBK-BANKL(02)     1005701700
         0          LFBK-BANKN(02)     39584739195
         0          LFBK-BVTYP(02)     
         0          LFBK-BKREF(02)     
         0          LFBK-XEZER(02)     
         0          BDC_CURSOR     LFBK-BANKS(1)
    SAPMF02K     130     X          
    Even with the 2nd BDC table, system automatically clicks on IBAN button and generated IBAN
    it is seen in foreground mode while running SM35 session and also in backgroun and Errors Only mode IBAN field is populated automatically
    has anybody faced such problem ?
    kindly provide any inputs
    thanks
    B

    its bcoz it was present in tiban

  • Problem with a view in XK01 transaction

    Hi All,
    I am working on upload conversion for Vendor Master. While doing conversion, i am getting a problem with a Contact person view in XK01 transaction. In contact person view the telephone field column sometimes allowing to add data ,sometimes it's not allowing data which results an error in conversion program saying that the telephone field in not an input field. I don't know why the view is showing the telephone field like that.
    Can any one suggest the solution for this problem. I know this is configuration problem with a view but i posted in ABAP forums.
    Thanks

    Hi Ben,
    I assume that you are writing a BDC program to upload contact person information. If so, you are trying to populate a table control here. Please check to see if you are calculating the index to assign values to the correct rows.
    if you are calculating index in your program then i think it should be configuration problem as you said.
    Thanks,
    Ganesh.

Maybe you are looking for

  • Error in connecting SAP r\3 6.4 to BW 7.0

    hello. try to create source system to R/3 system. after window log in as administration appear window with RFC connection when I try to test authorization it show error. logon is failed. but this user in BW created and Password is correct what have I

  • Trouble starting itunes

    When i try to start itunes i get a, "QuickTime version 7.0d0 is installed, Itunes requires QuickTime version 7.1.3 or later. Please reinstall itunes." I have reinstalled itunes 3 times with quicktime, and i have installed just quicktime, but keep get

  • Shortfall of X days against remaining shelf life

    Hi Gurus, User is not able to post MIGo for a particular material and Erro what he is getting is ' short fall of 218 days against remaining shelf life in cuurent item'. Material detail:(current data in system) Total shelf life: 730 days Min rem shelf

  • SQL Server Licensing Behavior

    We are aqcuiring SQL Server 2012 using CAL-based licensing model. We are planning the aqcquisition of more CALs than we need actually, but we have the following doubt: Will SQL Server block users if we pass the number of CALs aqcquired? Thanks in adv

  • CJS-30152  Java process dispatcher of instance RP8/DVEBMGS01 [ABAP: ACTIVE

    We are installing an SAP system with HA option. System Info :- OS : RHEL5 Database : Oracle SID : RP8 physical host: cipocvm virtual host : ciRP8 While installing CI ,ABAP+JAVA ABAP Started but JAVA Instance stopped starting in phase "Prepare to inst