Instead of BAPI why BDC

why should we use BDC,instead of BAPI?

In case of bdc data transfer takes place from flat file into sap system ie the file existing in sap system to sap sytem
where is bapi's r remotly enabled function modules which are assigned to some business objects n used to transfer the data between different business partners who are using different systems other than sap.
when you plan to upgrade your system version then bdc willnot support those upgradations where as bapi's will support.
Please refer to this link
/thread/400145 [original link is broken]
BAPI is used only when it is available for the particular transaction like Delivery Sales order. but BDC can be used for any transaction which have screen and fields.
BAPI is directly updated the database instead BDC run through the screen flow.
So BAPI can't handle all the flow logic checking and enhancement put by programmer to faciliate the user requirement.
BAPI is a higher end usage for tranfering the data from SAP to non-SAP and vice-versa. for ex: if we are using VB application,where in that we want to connect to SAP and retireve the data,and then change and update the data in SAP for that purpose we can use that.
Apart from that, we can also use it for Uploading/Downloading the data from SAP to Non-SAP like BDC, provided we have an existing BAPI for that.
BAPI function modules will also do all the checks required for data integrity like Transactions for BDC.
There is one more advantage using BAPI instead of BDC. When we go for upgradation, there might be pozzibility to change the screen elements for transactions depending on the requirement. In that case,our BDC pgm may or may not work (depending on the screen changes they have made). Unless and until we prepare new BDC we cant use the old BDC pgm. But in BAPI, SAP promises that they are going to keep the old BAPI and for new functionality they will provide an upgraded BAPI. Until we write a new BAPI pgm, we can use the exisitng BAPI pgm.

Similar Messages

  • Why BDC when we can do the same with Bapi's

    Hiii
    Plz tell me why BDC when we can do the same with Bapi...
    plz list out the differences clearly
    Thanks & Regards
    krishna

    If the same functionality can be achieved by BAPI then we generally go for BAPI instead of BDC. The main reason is that the screen no can change in the next version and in that case the BDC code will not work. But if no BAPI is available then we go for BDC.
    Sometimes we need to handle a large amount of data in BDC/BAPI in which it is not preferable to use 'CALL TRANSACTION' command. If the corresponding BAPI internally use 'CALL TRANSACTION'  command. Then instead of that BAPI we create a BDC with SESSION METHOD.
    Ex: IDOC_INPUT_ORDERS internally use CALL TRANSACTION. So if we need to use a large amount of data we create a BDC with session method instead of using IDOC_INPUT_ORDERS.

  • What is BAPI?How to create a BAPI? Difference b/w BAPI and BDC

    Hi all,
    Can some one help me regarding...
    What is an BAPI?where it is used?
    How to create a BAPI?
    What is the difference between BAPI and BDC Program?
    Iam in Initial stage regarding BAPI concept.
    Please respond me soon.
    Thanks,
    Lee

    HI,
    Here it is:
    BAPI Programming Guide
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFABAPIREF/CABFABAPIPG.pdf
    BAPI User Guide
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDAPII/CABFAAPIINTRO.pdf
    http://techrepublic.com.com/5100-6329-1051160.html#
    http://www.sap-img.com/bapi.htm
    http://www.sap-img.com/abap/bapi-conventions.htm
    http://www.sappoint.com/abap/bapiintro.pdf
    http://ifr.sap.com/catalog/query.asp
    STEP BY STEP for BAPI
    http://sap-img.com/abap/bapi-step-by-step-guidance.htm
    <b>DIFFERENCE between BAPI and BDC</b>
    BDC is traditional way of coding the transactions for uploading the legacy data, Sap is changing all transactions to Object oriented programming. Since BAPI is Object based and supports all the new transactions it is preffered over BDC. More over BAPI's process data faster than BDC.
    BAPI is a SAP-supplied function module with a defined interface, which allows you to interact with various business objects. SAP guarantees the integrity of your database for anything updated using a BAPI. BDC is a method of driving screens programatically, for updating SAP data. BAPIs are generally faster than BDCs.
    A BAPI is faster because it is updating the DB "directly". Whereas BDC with call
    transaction goes through the whole screen sequence like any user would do, simply put, fills screens.
    However - there is not always a BAPI for a particular transaction and not all functions that are performed by a transaction can be done by a BAPI. BDCs produce error sessions which can be processed by the user, while BAPIs don't.
    First choose the BAPI ,if there is no BAPI go for BDC.
    why BAPI first not BDC.
    SAP comes up with Change in Version, so each and every time they will change the screens/number etc.
    so you have to change your BDC programs accordingly.
    and also Most of the Latest versions transactions are Enjoy Transaction. they will not support BDC's in Background.
    But Using BAPI's No such disadvantages.
    A BAPI is faster because it is updating the DB "directly" through ABAP code.
    A BDC with call transaction goes through the whole screen sequence like any user would do, simply put, it is filling screens.
    Actually it depends on your requirement but BAPI is more effective as it is standard function module to update SAP databases rather than BDC.
    using bdc over bapi has advantages and also disadvantages
    advantages:
    1. using bdc we can upload data into database tables using 2 ways
    1. foreground -
    means that user interaction is there for each and every record.
    2. back ground -
    no user interaction and tasks are done automatically.
    using these two options is one of the greatest advantage over bapi.
    2. in bdc call transaction method we can control the display of screen resolution which is not possible with bapi's
    3. bdc is generally used for transferring of large amount of data than bapi's
    4.session method of bdc allows us to place data directly in application server and then finally transfered into sap database tables
    disadvantages:
    1.bdc is only used for sap to sap system data transferring
    2. bapis's generally works more faster than bdc's
    3. using bapis we can connect to remote systems and also to non sap systems.
    if useful reward some points.
    A BAPI is a method of a SAP Business Object. BAPI enables SAP and third party applications to interact and integrate
    with each other at the Business Object / Process level.
    Check this link to know more about BAPI.
    http://www.sapgenie.com/abap/bapi/example.htm
    http://sappoint.com/abap/
    Batch Data Communication (BDC) is the oldest batch interfacing technique that SAP provided since the early versions of R/3. BDC is not a
    typical integration tool, in the sense that, it can be only be used for uploading data into R/3 and so it is not bi-directional.
    BDC works on the principle of simulating user input for transactional screen, via an ABAP program. Typically the input comes in the form
    of a flat file. The ABAP program reads this file and formats the input data screen by screen into an internal table (BDCDATA). The
    transaction is then started using this internal table as the input and executed in the background.
    In ‘Call Transaction’, the transactions are triggered at the time of processing itself and so the ABAP program must do the error handling.
    It can also be used for real-time interfaces and custom error handling & logging features. .
    To know more about BDC,
    check the link.
    http://sappoint.com/abap/
    Main differences are...
    In case of bdc data transfer takes place from flat file into sap system ie the file existing in sap system to sap sytem
    where is bapi's r remotly enabled function modules which are assigned to some business objects n used to transfer the data between different business partners who are using different systems other than sap.
    not only that...
    when you plan to upgrade your system version then bdc willnot support those upgradations where as bapi's will support.
    <b><REMOVED BY MODERATOR></b>
    Manish
    Message was edited by:
            Alvaro Tejada Galindo

  • BAPI or BDC Program For pricing VK11

    Hi All,
       Is there any standard program for pricing VK11 using batch input or send me some coding on Bapi or BDC.
    Thanks in Advance.
    Arun.
    Edited by: Arun Kumaran on Dec 24, 2009 11:40 AM

    Hi,
    You can go for BAPI "BAPI_PRICES_CONDITIONS " instead of a BDC.. you could have search in forums first for these type of questions any ways
    See the link below..
    BDC (VK11)
    regards,
    NZR

  • BAPI vs BDCs

    What is the difference between BAPIs and BDCs...why BAPIs are preferred...? i know you might have gone through this question a zillion times....but the thing that bugs me the most is the fact that...if BAPIs are a better choise to transfer data as compared to BDCs...then where on earth are the field validations done  in BAPIs.? ...how is data integrity maintained if data is transferred through BAPIs? ( since data is not passed through screens...no validations are done)

    Hi,
    Difference between BDC and BAPI
    BDC is traditional way of coding the transactions for uploading the legacy data, Sap is changing all transactions to Object oriented programming. Since BAPI is Object based and supports all the new transactions it is preffered over BDC. More over BAPI's process data faster than BDC.
    BAPI is a SAP-supplied function module with a defined interface, which allows you to interact with various business objects. SAP guarantees the integrity of your database for anything updated using a BAPI. BDC is a method of driving screens programatically, for updating SAP data. BAPIs are generally faster than BDCs.
    A BAPI is faster because it is updating the DB "directly". Whereas BDC with call
    transaction goes through the whole screen sequence like any user would do, simply put, fills screens.
    However - there is not always a BAPI for a particular transaction and not all functions that are performed by a transaction can be done by a BAPI. BDCs produce error sessions which can be processed by the user, while BAPIs don't.
    First choose the BAPI ,if there is no BAPI go for BDC.
    why BAPI first not BDC.
    SAP comes up with Change in Version, so each and every time they will change the screens/number etc.
    so you have to change your BDC programs accordingly.
    and also Most of the Latest versions transactions are Enjoy Transaction. they will not support BDC's in Background.
    But Using BAPI's No such disadvantages.
    A BAPI is faster because it is updating the DB "directly" through ABAP code.
    A BDC with call transaction goes through the whole screen sequence like any user would do, simply put, it is filling screens.
    Actually it depends on your requirement but BAPI is more effective as it is standard function module to update SAP databases rather than BDC.
    using bdc over bapi has advantages and also disadvantages
    advantages:
    1. using bdc we can upload data into database tables using 2 ways
    1. foreground
    means that user interaction is there for each and every record.
    2. back ground -
    no user interaction and tasks are done automatically.
    using these two options is one of the greatest advantage over bapi.
    2. in bdc call transaction method we can control the display of screen resolution which is not possible with bapi's
    3. bdc is generally used for transferring of large amount of data than bapi's
    4.session method of bdc allows us to place data directly in application server and then finally transfered into sap database tables
    disadvantages:
    1.bdc is only used for sap to sap system data transferring
    2. bapis's generally works more faster than bdc's
    3. using bapis we can connect to remote systems and also to non sap systems.
    if useful reward some points.
    A BAPI is a method of a SAP Business Object. BAPI enables SAP and third party applications to interact and integrate
    with each other at the Business Object / Process level.
    Check this link to know more about BAPI.
    http://www.sapgenie.com/abap/bapi/example.htm
    http://sappoint.com/abap/
    Batch Data Communication (BDC) is the oldest batch interfacing technique that SAP provided since the early versions of R/3. BDC is not a
    typical integration tool, in the sense that, it can be only be used for uploading data into R/3 and so it is not bi-directional.
    BDC works on the principle of simulating user input for transactional screen, via an ABAP program. Typically the input comes in the form
    of a flat file. The ABAP program reads this file and formats the input data screen by screen into an internal table (BDCDATA). The
    transaction is then started using this internal table as the input and executed in the background.
    In ‘Call Transaction’, the transactions are triggered at the time of processing itself and so the ABAP program must do the error handling.
    It can also be used for real-time interfaces and custom error handling & logging features. .
    To know more about BDC,
    check the link.
    http://sappoint.com/abap/
    Main differences are...
    In case of bdc data transfer takes place from flat file into sap system ie the file existing in sap system to sap sytem
    where is bapi's r remotly enabled function modules which are assigned to some business objects n used to transfer the data between different business partners who are using different systems other than sap.
    not only that...
    when you plan to upgrade your system version then bdc willnot support those upgradations where as bapi's will support.
    Reward Points if found helpfull..
    Cheers,
    Chandra Sekhar.

  • EITHER BAPI OR BDC IS BEST FOR F-02

    Hello Friends,
    Iam doing bdc for f-02 even bapi to but iam stuck in middle. i want to upload data for F-02 using posting keys
    40 and 50.
    iam sending sample code for it can any one rectify and tell me whats wrong with this....
    Iam sending both bapi and bdc code...
    Regards
    Bohra.
    REPORT  ZBDC_TEST no standard page heading line-size 255.
    INCLUDE BDCRECX1.
    PARAMETERS: filename LIKE rlgrap-filename.
    TYPES : BEGIN OF IT_TAB,
            bldat(2),                  " DOC DATE
            blart(2),                  " DOC TYPE
            bukrs(4),                  " COMPANY CODE
            budat(8),                  " POSTING DATE
            waers(5),                  " CURRENCY
            xblnr(16),                 " HEADER REF
            bktxt(50),                 " HEADER TXT
          newbs(2),                  " POSTING KEY
            accnt(16),                 " ACCOUNT
            umskz(1),                  " SPL GENREAL LEDGER
            wrbtr(13),                 " AMOUNT IN FOR CURRENCY
            dmbtr(13),                 " AMOUNT FOR COMPANY CODE INR
            zterm(4),                  " PAYEMENT TERM
            zfbdt(8),                  " BASELINE DATE
            wt_wit(2),                 " WITH TAX CODE
            wt_qs(15),                 " WITH TAX BASE
            wt_qb(15),                 " WITH TAX AMOUNT
            mwskz(2),                  " TAX CODE
            bupla(4),                  " BUSINESS PLACE
          bukrs(4),
            kostl(10),                 " COST CENTER
            acgl_it(12),               " INTERNAL ORDER
            acgl_i(10),                " PROFIT CENTER
          acgl_it(8),               " PERSONAL NO
            zuonr(18),                 " ASSIGNMENT
            xblnr1(16),                                         " REF1
            xblnr2(16),                                         " REF2
            xblnr3(16),                                         " REF3
            sgtxt(50),                 " LINE TEXT
          END OF IT_TAB.
    DATA: IT_TAB1 TYPE TABLE OF IT_TAB.
    DATA: WA_HEAD LIKE LINE OF IT_TAB1.
    data: it_bdcdata like bdcdata occurs 0 with header line.
    data: it_bdcmsgcoll like bdcmsgcoll occurs 0 with header line.
    data: i_error like itab occurs 0 with header line.
    data: i_sucess like itab occurs 0 with header line.
    data: v_flag.
    data: v_msg(200).
    DATA :  w_file1 TYPE string.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR filename.
      CALL FUNCTION 'F4_FILENAME'
        IMPORTING
          file_name = filename.
    START-OF-SELECTION.
      w_file1 = filename.
      CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
          filename            = w_file1
          filetype            = 'ASC'
          has_field_separator = 'X'
        TABLES
          data_tab            = it_tab1.
    CALL FUNCTION 'BDC_OPEN_GROUP'
    EXPORTING
      CLIENT                    = SY-MANDT
       GROUP                     = 'F-02'
       KEEP                      = 'X'
       USER                      = SY-UNAME.
       CALL FUNCTION 'BDC_INSERT'
        EXPORTING
          TCODE                  = 'F-02'
         TABLES
           DYNPROTAB              = IT_TAB1.
           CALL FUNCTION 'BDC_CLOSE_GROUP'.
    RECORDING PROGRAM FOR F-02
      loop at it_tab1 into wa_head.
        perform bdc_dynpro using 'SAPMF05A' '0100'.
        perform bdc_field using 'BDC_CURSOR'
                                'RF05A-NEWKO'.
        perform bdc_field using 'BDC_OKCODE'
                                '/00'.
        perform bdc_field using 'BKPF-BLDAT'
                                 WA_HEAD-BLDAT.
        perform bdc_field using 'BKPF-BLART'
                                'SA'.
        perform bdc_field using 'BKPF-BUKRS'
                                 WA_HEAD-BUKRS.
        perform bdc_field using 'BKPF-BUDAT'
                                 WA_HEAD-BUDAT.
        perform bdc_field using 'BKPF-MONAT'
                                '3'.
        perform bdc_field using 'BKPF-WAERS'
                                 WA_HEAD-WAERS.
        perform bdc_field using 'BKPF-XBLNR'
                                 WA_HEAD-XBLNR.
        perform bdc_field using 'BKPF-BKTXT'
                                 WA_HEAD-BKTXT.
        perform bdc_field using 'FS006-DOCID'
        perform bdc_field using 'RF05A-NEWBS'
                                 WA_HEAD-NEWBS.
        perform bdc_field using 'RF05A-NEWKO'
                                '100100'.
        perform bdc_dynpro using 'SAPMF05A' '0300'.
        perform bdc_field using 'BDC_CURSOR'
                                'RF05A-NEWKO'.
        perform bdc_field using 'BDC_OKCODE'
                                '/00'.
        perform bdc_field using 'BSEG-WRBTR'
                                 WA_HEAD-WRBTR.
        perform bdc_field using 'BSEG-VALUT'
                                '03/27/2006'.
        perform bdc_field using 'BSEG-ZUONR'
                                 WA_HEAD-ZUONR.
        perform bdc_field using 'BSEG-SGTXT'
                                 WA_HEAD-SGTXT.
        perform bdc_field using 'RF05A-NEWBS'
                                 WA_HEAD-NEWBS.
        perform bdc_field using 'RF05A-NEWKO'
                                '574130'.
        perform bdc_field using 'DKACB-FMORE'
                                'X'.
        perform bdc_dynpro using 'SAPLKACB' '0002'.
        perform bdc_field using 'BDC_CURSOR'
                                'COBL-GSBER'.
        perform bdc_field using 'BDC_OKCODE'
                                '=ENTE'.
        perform bdc_field using 'COBL-GSBER'
                                '101'.
        perform bdc_dynpro using 'SAPMF05A' '0300'.
        perform bdc_field using 'BDC_CURSOR'
                                'BSEG-SGTXT'.
        perform bdc_field using 'BDC_OKCODE'
                                '=BP'.
        perform bdc_field using 'BSEG-WRBTR'
                                 WA_HEAD-WRBTR.
        perform bdc_field using 'BSEG-VALUT'
                                '03/27/2006'.
        perform bdc_field using 'BSEG-ZUONR'
                                 WA_HEAD-ZUONR.
        perform bdc_field using 'BSEG-SGTXT'
                                 WA_HEAD-SGTXT.
        perform bdc_dynpro using 'SAPLKACB' '0002'.
        perform bdc_field using 'BDC_CURSOR'
                                'COBL-KOSTL'.
        perform bdc_field using 'BDC_OKCODE'
                                 '=ENTE'.
        perform bdc_field using 'COBL-GSBER'
                                '101'.
        perform bdc_field using 'COBL-KOSTL'
                                 WA_HEAD-KOSTL.
      ENDLOOP.
    BAPI PROGRAM----
    *& Report  ZBAPI_TEST
    REPORT  ZBAPI_TEST.
    DATA: BEGIN OF i_data OCCURS 0,
            text(255),
          END OF i_data.
    DATA: i_fico TYPE BAPIACHE09.
    *DATA: I_FICO1 TYPE BAPIACCR08.
    DATA: I_FICO1 TYPE BAPIACGL09.
    DATA: I_FICO3 TYPE BAPIACCR09.
    DATA: I_FICO2 TYPE BAPIACTX09.
    DATA: P_KEY TYPE BBSEG.
    *DATA: it_TAB LIKE TABLE OF i_fico INITIAL SIZE 0  WITH HEADER LINE.
    HEADER DETAILS FROM BAPI STRUCUTE BAPIACHE09
    DATA: BEGIN OF it_TAB1 OCCURS 0,   " BAPIACHE09
          bldat(8),                    " DOC DATE
          blart(2),                    " DOC TYPE
          bukrs(4),                    " COMPANY CODE
          BUDAT(8),                    " POSTING DATE
          XBLNR(16),                   " HEADER REF
          BKTXT(50),                   " HEADER TXT
          END OF IT_TAB1.
    DATA: it_TAB LIKE TABLE OF BAPIACHE09 INITIAL SIZE 0 WITH HEADER LINE .
    ITEM DETAILS FROM STRUCTURE OF BAPI G/L ACCOUNT ITEM BAPIACGL09.
    DATA: BEGIN OF IT_ITAB3 OCCURS 0,  " BAPIACGL09.
          HKONT(10),                   " General Ledger Account
          SGTXT(50),                   " ITEM TXT
          BUKRS(4),                    " Company Code
          KOSTL(10),                   " COST CENTER
          PRCTR(10),                   " PROFIT CENTER
          END OF IT_ITAB3.
    DETIALS OF CURRENCY ITEMS FROM STRUCTURE OF BAPI BAPIACCR09
    DATA: BEGIN OF IT_iTAB4 OCCURS 0,   " BAPIACCR09
          WAERS(5),                     " CURRENCY
          BAPIWRBTR(23),                " Amount in document currency
          BAPIFWBAS(23),                " Tax Base Amount in Document Currency
          END OF IT_ITAB4.
    TAX ITEM DETAILS FROM BAPI STRUCUTE BAPIACTX09.
    DATA: BEGIN OF IT_ITAB5 OCCURS 0,   " BAPIACTX09.
          MWSKZ(2),                     " Sales Tax Code
          TXJCD(15),                    " Tax Jurisdiction
          ACPI_TXJCD_DEEP(15),          " Tax jurisdiction code - jurisdiction for lowest level tax
          END OF IT_ITAB5.
    THIS IS FROM STRUCTURE BBSEG.
    DATA: BEGIN OF IT_TAB6 OCCURS 0,
          NEWBS(2),                     " Posting Key for the Next Line Item
          NEWUM(1),                     " Special G/L Indicator for the Next Line Item
          DMBTR(16),                    " Amount in local currency (batch input field)
          AUFNR(12),                    " Order Number
          DZUONR(18),                   " Assignment number
          ZTERM(4),                     " Terms of payment key
          ZFBDT(8),                     " Baseline Date.
          END OF IT_TAB6.
    DATA: v_index TYPE i.
    DATA: return TYPE TABLE OF bapiret2 INITIAL SIZE 0 WITH HEADER LINE.
    START-OF-SELECTION.
      CALL FUNCTION 'UPLOAD'
    EXPORTING
      CODEPAGE                      = ' '
      FILENAME                      = ' '
      FILETYPE                      = ' '
      ITEM                          = ' '
      FILEMASK_MASK                 = ' '
      FILEMASK_TEXT                 = ' '
      FILETYPE_NO_CHANGE            = ' '
      FILEMASK_ALL                  = ' '
      FILETYPE_NO_SHOW              = ' '
      LINE_EXIT                     = ' '
      USER_FORM                     = ' '
      USER_PROG                     = ' '
      SILENT                        = 'S'
    IMPORTING
      FILESIZE                      =
      CANCEL                        =
      ACT_FILENAME                  =
      ACT_FILETYPE                  =
        TABLES
          data_tab                      = i_data
    EXCEPTIONS
      CONVERSION_ERROR              = 1
      INVALID_TABLE_WIDTH           = 2
      INVALID_TYPE                  = 3
      NO_BATCH                      = 4
      UNKNOWN_ERROR                 = 5
      GUI_REFUSE_FILETRANSFER       = 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.
    CALL FUNCTION 'BAPI_ACC_GL_POSTING_CHECK'
    EXPORTING
      DOCUMENTHEADER       =
       TABLES
         ACCOUNTGL            = it_tab1
      CURRENCYAMOUNT       =
         RETURN               = return.
      CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
        EXPORTING
          DOCUMENTHEADER         =  it_tab
        TABLES
         ACCOUNTGL               = it_Itab3
         ACCOUNTRECEIVABLE       = it_Itab4
      ACCOUNTPAYABLE         =
         ACCOUNTTAX              = it_Itab5
       CURRENCYAMOUNT        =
      CRITERIA               =
      VALUEFIELD             =
      EXTENSION1             =
          RETURN                 =  return.
      loop at return.
        write:/ return-message,return-type.
      endloop.

    Try BAPI_ACC_GL_POSTING_POST.
    CALL FUNCTION 'BAPI_ACC_GL_POSTING_POST'
      EXPORTING
        DOCUMENTHEADER       =
        IMPORTING
              OBJ_TYPE             =
              OBJ_KEY              =
              OBJ_SYS              =
      TABLES 
             ACCOUNTGL            =   
            CURRENCYAMOUNT       =   
           RETURN               =
             EXTENSION1           =

  • Bapi or BDC for me12

    hi,
    Is there any Bapi or BDC for me12.

    i think There is no BAPI but you can use ME_DIRECT_INPUT_INFORECORD. otherwise wait for another replies...
    Alternatively you can use these FM's
    codeME_DB_UPDATE_INFORECORDS Updating info records in database
    ME_UPDATE_INFORECORD Update program for purchasing info record
    ME_UPDATE_INFORECORD_COND Update price in info record during maintenance from condition transac
    ME_UPDATE_INFORECORD_PD Update info records from purchasing documents
    Hope this ll be helpful
    Thanks & Regards
    vinsee

  • PROGRAM WITH BAPI and BDC's

    Hi All,
    I am using a 2 BAPI's and 3 BDC's in a program. I need all these BAPI and BDC's update the tanscations in a single bundled task? that is if any of BAPI or BDC failed the sucessful BAPI/BDC should be rolled back. How can I make it happen? Any sample code will be helpful
    All Suggestion will be rewarded.

    BAPI-step by step procedure
    http://www.sapgenie.com/abap/bapi/example.htm
    list of all BAPI's
    http://www.planetsap.com/LIST_ALL_BAPIs.htm

  • BAPI,BADI ,BDC,ALE ,IDOC,USER EXIT,VALIDATION AND SMART FORMS.

    Dear Experts,
    I am pretty new in BAPI,BADI ,BDC,ALE ,IDOC,USER EXIT,VALIDATION AND SMART FORMS.
    Pls let me know for these topics shall i put the question in this community or should i put in any other form. Pl suggest me .
    Regards
    Shivas

    Plz SEARCH in SCN before posting ,you will get lot of posts .
    Don't use all caps in the subject line

  • BAPI vs BDC

    hi all,
    we can upload data using BAPI as well as BDC?
    so when we should use which?
    what is the difference between them?
    what r advantages of using BAPI over BDC?
    Thanks
    sanjeev

    Hi,
    BDC (Batch Data Communication) is a technology used for data transfer. it is meant for transferring data thru SAP transactions itself. when u use BDC for data transfer, the sequence of steps is the same as when u use standard sap transaction screens for data upload. the only difference is that u can use different options for foreground/background processing.
    BDC:
    Batch Data Communication (BDC) is the process of transferring data from one SAP System to another SAP system or from a non-SAP system to SAP System.
    Features :
    BDC is an automatic procedure.
    This method is used to transfer large amount of data that is available in electronic medium.
    BDC can be used primarily when installing the SAP system and when transferring data from a legacy system (external system).
    BDC uses normal transaction codes to transfer data.
    Types of BDC :
    CLASSICAL BATCH INPUT (Session Method)
    CALL TRANSACTION
    BATCH INPUT METHOD:
    This method is also called as ‘CLASSICAL METHOD’.
    Features:
    Asynchronous processing.
    Synchronous Processing in database update.
    Transfer data for more than one transaction.
    Batch input processing log will be generated.
    During processing, no transaction is started until the previous transaction has been written to the database.
    CALL TRANSACTION METHOD :
    This is another method to transfer data from the legacy system.
    Features:
    Synchronous processing. The system performs a database commit immediately before and after the CALL TRANSACTION USING statement.
    Updating the database can be either synchronous or asynchronous. The program specifies the update type.
    Transfer data for a single transaction.
    Transfers data for a sequence of dialog screens.
    No batch input processing log is generated.
    For BDC:
    http://myweb.dal.ca/hchinni/sap/bdc_home.htm
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/bdc&
    http://www.sap-img.com/abap/learning-bdc-programming.htm
    http://www.sapdevelopment.co.uk/bdc/bdchome.htm
    http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/69/c250684ba111d189750000e8322d00/frameset.htm
    http://www.sapbrain.com/TUTORIALS/TECHNICAL/BDC_tutorial.html
    BAPI
    BAPI stands for Business API(Application Program Interface).
    A BAPI is remotely enabled function module
    ie it can be invoked from remote programs like standalone JAVA programs, web interface etc..
    You can make your function module remotely enabled in attributes of Function module but
    A BAPI are standard SAP function modules provided by SAP for remote access.
    Also they are part of Businees Objest Repository(BOR).
    BAPI are RFC enabled function modules. the difference between RFc and BAPI are business objects.
    You create business objects and those are then registered in your BOR (Business Object Repository)
    which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA.
    In this case u only specify the business object and its method from external system
    in BAPI there is no direct system call. while RFC are direct system call.
    Some BAPIs provide basic functions and can be used for most SAP business object types.
    These BAPIs should be implemented the same for all business object types.
    Standardized BAPIs are easier to use and prevent users having to deal with a number of different BAPIs.
    Whenever possible, a standardized BAPI must be used in preference to an individual BAPI.
    check these links
    http://searchsap.techtarget.com/ateQuestionNResponse/0,289625,sid21_cid558752_tax293481,00.html
    http://www.sap-img.com/abap/interview-question-on-bapi-rfc-abap-objects-tables.htm
    http://www.sap-img.com/fu033.htm
    http://www.sap-img.com/abap/ale-bapi.htm
    Regards,
    Kishore.

  • How better bapi over bdc?

    hi experts?
    please give me the your valuble information.
    how better bapi over bdc?
    reward points apply for the best answer.
    thanks.
    naresh

    Hi,
    A BAPI is a method of a SAP Business Object. BAPI enables SAP and third party applications to interact and integrate
    with each other at the Business Object / Process level.
    Check this link to know more about BAPI.
    http://www.sapgenie.com/abap/bapi/example.htm
    http://sappoint.com/abap/
    Batch Data Communication (BDC) is the oldest batch interfacing technique that SAP provided since the early versions of R/3. BDC is not a
    typical integration tool, in the sense that, it can be only be used for uploading data into R/3 and so it is not bi-directional.
    BDC works on the principle of simulating user input for transactional screen, via an ABAP program. Typically the input comes in the form
    of a flat file. The ABAP program reads this file and formats the input data screen by screen into an internal table (BDCDATA). The
    transaction is then started using this internal table as the input and executed in the background.
    In ?Call Transaction?, the transactions are triggered at the time of processing itself and so the ABAP program must do the error handling.
    It can also be used for real-time interfaces and custom error handling & logging features. .
    To know more about BDC,
    check the link.
    http://sappoint.com/abap/
    Main differences are...
    In case of bdc data transfer takes place from flat file into sap system ie the file existing in sap system to sap sytem
    where is bapi's r remotly enabled function modules which are assigned to some business objects n used to transfer the data between different business partners who are using different systems other than sap.
    not only that...
    when you plan to upgrade your system version then bdc willnot support those upgradations where as bapi's will support.
    Regards,
    Shiva Kumar

  • FM or BAPI or BDC for clearing open items...

    Hello Gurus,
    I have to write a code to clear/ close 12 million open G/L items in SAP. Is there a standard SAP FM or BAPI to do this ? Or do I have to write a BDC for this. If I have to write BDC, do I write BDC on T-Code F.13, FB05 or other T-Code.
    Regards,
    Jainam.
    Edited by: Jainam Shah on Sep 23, 2010 5:13 PM

    If you have configured the correct clearing criteria in the IMG, then you can just run program SAPF124.  Why did you need a shell program with a BDC - are you trying to clear by document within your clearing criteria?

  • BAPI or BDC

    Hello,
    i want to upload huge number sales order data  having line items as well. Also it shud capture error message if any.
    Since the scope of data is large i was told not  to use BAPI instead use BDC,since messages get capture will be more. Is it right? or shu i use BAPI only.
    which one will be better for huge data

    BDC has a simpler approach to message handling if you use sessions and SM35.
    BDC can be run in the background using SM35 after building a session, and the amount of time it takes to run becomes less of an issue, since the screens do not actually display.
    BAPIs can be faster, but you have to handle the returned messages in your program, whereas with session BDC and SM35, this is automatically handled by the system, with a nice interface and the ability to rerun failed entries if corrections are made.
    For instance, if an item failed because a material id did not exist, these will be marked as errors in SM35.   You could update the material master after the data run, and then rerun the session using SM35 and it will reprocess failed entries.   If you use the BAPI approach, you have to manage all of this yourself.
    On the other hand, if you have used BAPIs before, you may have already developed a framework of your own for handling messages.
    I've done it both ways.
    Good luck
    Brian

  • BAPI or BDC For TRANSACTION F-28 incoming payment posting (Urjunt)

    Hi Gurus,
    Pls give me some code (BDC Or BAPI) for Transaction F-28.
    Thanks in Advance,
    Mahesh.

    Hi
    Need F-28 Bdc
    BAPI for F-28
    try using  BAPI_ACC_DOCUMENT_POST
    How to use BAPI_ACC_DOCUMENT_POST?
    Regards
    Pavan

  • Problem in creating and updating of  material by the use of bapi and bdc

    Hello All,
    I am using bapi (BAPI_MATERIAL_SAVEDATA ) and than bdc to create and update classification data of material.
    I am facing a problem.
    1) firstly I am creating material by the use of bapi and than after creation i want to update classification data for taht perticular material .
    2) To update classification data i am using bdc . while at the time of updating material through bdc system showing me error that material is currently locked by user (my login name ).
    Please suggest what to do.
    Tkank you
    With Regards
    Shantanu Modi

    When u update/create data it takes sometime to commit. So after using BAPI
    give 10 minutes wait in ur program before updating classification data.
    you can write like
    wait up to 20 seconds.
    and update the classification.

Maybe you are looking for

  • How to Map one key to multiple values

    Hello Everyone Let's say I have a System. to access this system, one needs a username and a password. Now i have a Hashtable that maps passwords to their usernames. Now what if i want to store the Firstname and lastname of the person, in case he/she

  • Loading in a new runtime-me​nu

    Hello, I was wandering if anyone can help. I am looking for a bit of code or a way in which I can be running a program then on a particualar button press, load in a new run time menu to the program so that all the options are now changed. I am assumi

  • Video Still Glitches in iPhoto 6.0.1 under 10.4.5

    In iPhoto editing mode, selecting a portion of the picture like you are going to crop it often results in the video briefly glitching the whole picture. The easiest way to reproduce this is by grabbing somewhere near the upper left of your picture an

  • No of line items information

    Hi Gurus, I need a information on the below. 1. What is the Maximum number of line items that we can we can enter in a Sales order ? 2. What is the Maximum number of line item a Accounting document can have? Regards, Anand.

  • Drill Up/Down in Webi Report

    Hi All, We have a requirement to drill down and drill up  in webi report. The hierarchy set is Country>Region>State-->City.The fact table structure is Location             Population (in Cr) India             20000 East India             5000 West In