ABAP BDC & BAPI

hi,
why BAPI is required instead of BDC and what secenario we will use BAPI and BDC?
Thanks in advance.

Hi Baskar,
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.
<b>Reward points if this helps.
Manish</b>

Similar Messages

  • BDC , BAPI n LSMW

    hi friends,
    Tel me a snenorio wher u should go for BDC , BAPI and LSMW....pls dont give technical defintions....pls suggest me the snerios.....
    Thanks in advance...
    Regards...
    Balaji

    Hi,
    <u><b>BAPI:</b></u>
    SAP created the Business Framework to allow the technical integration and exchange of business data among SAP components and between SAP and non-SAP components. Important components of the Business Framework are the Business Application Programming Interfaces (BAPIs), which represent visible interfaces at the component boundaries and whose properties serve to integrate these components. 
    The integration can include both components within a local network and components that are connected with one another through the Internet.
    BAPIs allow integration at the business level, not the technical level. This provides for greater stability in the link, and independence from the underlying communication technology.
    You can get all the standard SAP BAPI functions with the transactions code 'BAPI'.
    <u><b>BDC:</b></u>
    Batch Data Communication or BDC is a batch interfacing technique that SAP developed.  It is mainly used for uploading data into the SAP R/3 system.   BDC works by simulating the user input from transactional screen via an ABAP program.
    The data input data file will come in the form of a flat file which the user save as file type txt file or prn file from the Microsoft Excel program.  An Abaper will create a program to read the text file and upload into the SAP system.
    Normally, the tcode SHDB will be used to record the transaction code the user used.  After, the simulation, the Abaper can generate a sample program and modify from there.  It makes the programming easier and faster. 
    <u><b>LSMW:</b></u>
    No ABAP effort are required for the SAP data migration.  However, effort are required to map the data into the structure according to the pre-determined format as specified by the pre-written ABAP upload program of the LSMW.
    The Legacy System Migration Workbench (LSMW) is a tool recommended by SAP that you can use to transfer data once only or periodically from legacy systems into an R/3 System.
    More and more medium-sized firms are implementing SAP solutions, and many of them have their legacy data in desktop programs. In this case, the data is exported in a format that can be read by PC spreadsheet systems. As a result, the data transfer is mere child's play: Simply enter the field names in the first line of the table, and the LSM Workbench's import routine automatically generates the input file for your conversion program.
    The LSM Workbench lets you check the data for migration against the current settings of your customizing. The check is performed after the data migration, but before the update in your database.
    So although it was designed for uploading of legacy data it is not restricted to this use.
    We use it for mass changes, i.e. uploading new/replacement data and it is great, but there are limits on its functionality, depending on the complexity of the transaction you are trying to replicate.
    The SAP transaction code is  'LSMW' for SAP version 4.6x.
    For those with the older SAP version (4.7 and below), the data migration programs might not have been pre-loaded.
    You can download the LSMW at no cost from SAPNet under Services, SAP Methodology and Tools, category Tools.
    If you are an existing SAP customer with an OSS ID, you can access the SAP Service Marketplace to download the  LSWM for your Basis teams to install to your SAP system: http://service.sap.com/lsmw
    The LSM Workbench carries out the following tasks:
    Reads the transfer data from one or more files (for example, spreadsheets, sequential files etc.)
    Converts the data from the source format into the target format
    Note that with background processing, the input file must not be located in the presentation server. Access to presentation server files is only possible when you are working online.
    Regards,
    Bhaskar

  • ABAP Function(BAPI) to create XI component.

    Hi.
    I need a documentation or code example about creation of XI components(BPM, Mapping) with ABAP functions(BAPI), please.
    regards.

    Moorthy
    Sorry, but my requierement was not really so clear. I need to discover for example, when I create a BMP in the Integration Builder, this is object is recorded in the R/3 environment.So that this possible, because some objects(OO) or functions(BAPI)they are executed. I need a documentation or code example where this is applied, please.
    regards
    Alexandre

  • ABAP-BDC & ALV

    HI
    I WANTED TO KNOW ABOUT A GOOD BOOK ON ABAP-BDC & ALV WHICH IS AVAILABLE IN INDIA.ALSO WOULD LIKE TO KNOW WHERE IN INDIA WILL I GET THE BOOK PLEASE.

    Hi Vipul,
           Some of the books that gives a well explanation from the basic concepts are the following :
      1) Sams Teach Yourself ABAP/4 in 21 Days  by Ken Greenwood
      2) The ABAP Quick Reference  by H. Keller
    You can also catch on the Code samples and Forum threads on SDN which will cater you a more advanced programming knowledge.
    Thanks and Regards,
    Siva

  • INTERVIEW RELATED  BDC, BAPI

    hI !!!!
      If interviewer asks
      1) What is the most difficult situation you faced in BDC, BAPI, Reports, Smartforms or                                            give me any good scenario how i handled it.
       2) What wer the appreciations you got . on this what shoul i say
        3) in Enhancement project how will we get Specs which software and what will be
            Project duration ?
    Thansk for answering my queried .

    hi !!
    Suppose i have a badi using it i modify salesorder no suppose ..
                 i have an definition to implement it and using its parametes i'll write the code.
    Now how shall i find the sales order field or any relevant field what has the value  to be modified.
      How would we find this relevant field no tonly in sales order any transaction
    thanks

  • HR-ABAP Any BAPI or Function module to update infotypes 167 & 170

    Hi,
        Can anyone let me know is there any BAPI or Function module to update infotypes 167(Health Plans) & 170(Flexible Spending Accounts).
    Thanks,
    Sandeep

    Hi,
       U can use HR_BEN_CREATE_PLANS internally it calls HR infotype operation as specified by suresh.
    Suresh  : If there are approximately 3000 records to be updated on regular basis do u think is it better to use BAPI's or BDC
    regards
    Vick

  • ABAP with BAPI'S ?

    Hello Friends,
    I am basically a J2ee developer and very new to ABAP Programming language, and need to do some BAPI call through ABAP. I am having a following problem, and I am very thankful to some one who can help me out !
    The problem is:
    For example
    DATA : MY_NUMBER        LIKE         BAPIRET2- NUMBER,
           MY_TEXTFORMAT    LIKE         BAPITGA-TEXTFORMAT,
    correct me if I am wronge, BAPIRET2- is an internal-table or structure and - NUMBER, is its attribute, ? if its true then,
    1)  Do we alwayas need for each BAPI to define its parameter and initilize with LIKE to the attribute of the internal database table ? 
    2) how do I come to know that, for which bapi which internal database table I have to use from SAP SYSTEM ?
    I have already looked in many articals of BAPI, but did not help me much,
    Thanks in advance
    Haider Syed.

    Hi Syed,
    Do you want to call these BAPIs from ABAP or from JAVA?
    From ABAP  - it is pretty simple. You just can do something like that:
    REPORT  z_mi_test .
    DATA: l_debtorid                TYPE bapi1007-customer.
    DATA: ls_debitor_general_detail TYPE bapi1007_4.
    l_debtorid = '0000000001'.
    CALL FUNCTION 'BAPI_DEBTOR_GETDETAIL'
      EXPORTING
        debtorid                     = l_debtorid
      COMPANYCODE                  =
      IMPORTING
       debitor_general_detail        = ls_debitor_general_detail
      DEBITOR_COMPANY_DETAIL       =
      RETURN                       =
    TABLES
      DEBITOR_BANK_DETAIL          =
    This function module 'BAPI_DEBTOR_GETDETAIL' corresponds to the method 'GetDetail' of Buisness Object 'Debtor'.
    The types of IMPORT/EXPORT/TABLES parameters of the function module you can just see in SE37. Just start this transaction enter the name of the Function Module, like 'BAPI_DEBTOR_GETDETAIL’. Or you just can navigate to this transaction when making double click on the Function Module name in BAPI explorer.
    Anyway, you can find the types of the parameters on the corresponded tab strips – “Import”, “Export” and “Tables”.

  • ABAP - BDC transaction not saving changes to records

    I am trying to write my first ABAP code using BDC recording.  Essentially I would like to flag the "Final Delivery" field (EKPO-EGLKZ) for a range of documents by recording transaction MASS.
    The code runs without errors - but the changes are not saved.  I have run the code in "Processing Mode: A" (Display all screens) and the program successfully loops through each record & saves the updated fields.  When I look at the documents in ME23N the changes have not been saved.   Running the MASS transaction manually results in the changes being successfully saved so I can rule out any data validation issues.
    Does anyone know why the changes refuse to save when running the code below?
    I have considered trying to use BAPI_PO_CHANGE instead of BDC, but I am new to ABAP and I thought the BDC code would be less complex.
    report Z_MASS_REMOVE_FDI_DCI
           no standard page heading line-size 255.
    include bdcrecx1.
    TYPES: BEGIN OF ty_tab,
    MASSOBJTYP(7),
    MASSVARNAM(7),
    DOCNO(9),
    ITEM(1),
    END OF ty_tab.
    DATA : it_tab TYPE STANDARD TABLE OF ty_tab.
    DATA : wa_tab TYPE ty_tab.
    START-OF-SELECTION.
    CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
    filename = 'X:\STO.TXT'
    * FILETYPE = 'ASC
    has_field_separator = 'X'
    TABLES
    data_tab = it_tab
    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.
    END-OF-SELECTION.
    LOOP AT it_tab INTO wa_tab.
    WRITE:/ wa_tab-MASSOBJTYP,
    wa_tab-MASSVARNAM,
    wa_tab-DOCNO,
    wa_tab-ITEM.
    PERFORM open_group.
    perform bdc_dynpro      using 'SAPMMSDL' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MASSSCREEN-OBJECT'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'MASSSCREEN-OBJECT'
                                  wa_tab-MASSOBJTYP.
    perform bdc_field       using 'MASSSCREEN-VARNAME'
                                  wa_tab-MASSVARNAM.
    perform bdc_dynpro      using 'SAPMMSDL' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MASSSCREEN-OBJECT'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=NEXT'.
    perform bdc_dynpro      using 'SAPLMASS_SEL_DIALOG' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MASSFREESEL-LOW(01)'.
    perform bdc_field       using 'MASSFREESEL-LOW(01)'
                                  wa_tab-DOCNO.
    perform bdc_dynpro      using 'SAPLMASS_SEL_DIALOG' '0100'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MASSFREESEL-LOW(02)'.
    perform bdc_field       using 'MASSFREESEL-LOW(02)'
                                  wa_tab-ITEM.
    perform bdc_dynpro      using 'SAPLMASS_SEL_DIALOG' '0100'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=CRET'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MASSFREESEL-LOW(01)'.
    perform bdc_dynpro      using 'SAPLMASSINTERFACE' '0200'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=FDAE'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'NR_ITEMS'.
    perform bdc_dynpro      using 'SAPLMASSINTERFACE' '0200'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=SAVE'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'NR_ITEMS'.
    perform bdc_dynpro      using 'SAPLMASSMSGLIST' '0300'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'REOML-MSGTXT(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=EXIT'.
    perform bdc_transaction using 'MASS'.
    ENDLOOP.
    PERFORM close_group.

    Where is BDC_INSERT.
    If u use OPEN and CLOSE_group u need to use INSERT_GROUP also to update in database.
    A session will be created and u nedd to run the Session in Sm35 in order to update the database.
    Edited by: Ranjith Kumar on Sep 18, 2008 6:41 AM

  • BDC / Bapi For  Post Incoming Payment (F-28)

    Hi
    Im creating BDC for F-28. But it got error coming out.
    >> It says DB05B-PSZAH(02) is not an input field.
    What I do is: First, I search for Line Item then Document Number. Then It return to basic list. Then I loop again for the second Line Item Number and Document Number.
    I can activate the first amount but cannot for the next amount and so on.
    Anybody could help me on this??
    Is there any BAPI for Post Incoming Payment (F-28)?
    Thank you.
    Regards.

    i dont think there is a BAPI for this Transaction...
    i have done a BDC on F-28 myself....pasting the code....hope it helps you....
    *******NOTE********
    the parameter in the subroutine is to see if there is a single document or multiple documents being posted.
    FORM fill_bdc_data_f-28_9005 USING p_i_mult_doc TYPE c.
    **BDC from screen 9005
      DATA : l_amt_bdc(13), l_amt_bdc_remain(13), l_amt_bdc_mult(13),
             l_amt_bdc_mult_remain(13), l_assignment(14), l_period(2),
             l_amount(13).
      CLEAR t_bdcdata.
      REFRESH t_bdcdata.
      PERFORM bdc_dynpro USING 'SAPMF05A' '0103'.
      PERFORM bdc_field USING 'BDC_OKCODE' '=AB'.   "OK CODE - doc overview
    **get user default date format and pass date in that format
      PERFORM convert_date_to_user_format USING bkpf-bldat.
      PERFORM bdc_field USING 'BKPF-BLDAT' w_date.  "cheque date
      CLEAR w_date.
      PERFORM bdc_field USING 'BKPF-BLART' i_blart.  "doc type
      PERFORM bdc_field USING 'BKPF-BUKRS' i_bukrs.  "comp code
    **get user default date format and pass date in that format
      PERFORM convert_date_to_user_format USING bkpf-budat.
      PERFORM bdc_field USING 'BKPF-BUDAT' w_date.  "posting date
      CLEAR w_date.
      l_period = sy-datum+4(2).
      PERFORM bdc_field USING 'BKPF-MONAT' l_period. "period
      PERFORM bdc_field USING 'BKPF-WAERS' 'INR'.    "currency
      PERFORM bdc_field USING 'BKPF-BKTXT' i_bankl.  "doc. hdr. text
      PERFORM bdc_field USING 'BKPF-XBLNR' i_xblnr.  "Ref. Document No.
      PERFORM bdc_field USING 'BSEG-ZUONR' i_zuonr.  "Assignment(Depot Code)
      PERFORM bdc_field USING 'RF05A-KONTO' i_bank_gl. "Bank GL acc
      PERFORM bdc_field USING 'BSEG-GSBER' i_gsber.  "Business Area
      l_amount = bseg-wrbtr.
      PERFORM bdc_field USING 'BSEG-WRBTR' l_amount. "Amount
      PERFORM bdc_field USING 'BSEG-PRCTR' ''.  "Profit Center
    **open items data
      PERFORM bdc_field USING 'RF05A-AGKOA' 'D'.     "Acc type (D=customers)
      PERFORM bdc_field USING 'RF05A-XNOPS' 'X'.     "Std OIs check box
    **end of first screen
    **document overview screen
      PERFORM bdc_dynpro USING 'SAPMF05A' '0700'.    "Overview Screen
      PERFORM bdc_field USING 'BDC_CURSOR' 'RF05A-AZEI1(01)'.     "cursor
      PERFORM bdc_field USING 'BDC_OKCODE' '/00'.     "OK CODE
      PERFORM bdc_field USING 'RF05A-NEWBS' '19'.    "posting key
      PERFORM bdc_field USING 'RF05A-NEWKO' i_kunnr. "customer
      PERFORM bdc_field USING 'RF05A-NEWUM' 'B'.     "Spl GL Indicator
    **for single document selected
      CLEAR l_amt_bdc.
      IF p_i_mult_doc = ''.
    ***new screen - next line item
        PERFORM bdc_dynpro USING 'SAPMF05A' '0303'.
        PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.    "OK CODE
    **for single document, use the bouncing amount calculated earlier
        l_amt_bdc = w_amt_ant_bouncing.
        PERFORM bdc_field USING 'BSEG-WRBTR' l_amt_bdc. "amount
    **due date - same as posting date on screen
    **get user default date format and pass date in that format
        PERFORM convert_date_to_user_format USING bkpf-budat.
        PERFORM bdc_field USING 'BSEG-ZFBDT' w_date.  "due date
        CLEAR w_date.
    **assignment
        CLEAR l_assignment.
        CONCATENATE t_seldoc_ant_bouncing-belnr
                    t_seldoc_ant_bouncing-gjahr INTO l_assignment.
        PERFORM bdc_field USING 'BSEG-ZUONR' l_assignment. "assignment
        PERFORM bdc_field USING 'BSEG-GSBER' i_gsber.
    **if there is some remaining amount, then go for another line item
        IF w_rem_amt_ant_bouncing > 0.
          PERFORM bdc_field USING 'RF05A-NEWBS' '15'.    "posting key
          PERFORM bdc_field USING 'RF05A-NEWKO' i_kunnr. "customer
    **new screen
          PERFORM bdc_dynpro USING 'SAPMF05A' '0301'.
          PERFORM bdc_field USING 'BDC_CURSOR' 'BSEG-ZTERM'. "CURSOR
          PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.    "OK CODE-ENTER
          l_amt_bdc_remain = w_rem_amt_ant_bouncing.
          PERFORM bdc_field USING 'BSEG-WRBTR' l_amt_bdc_remain.
          PERFORM bdc_field USING 'BSEG-ZTERM' '0001'.
    **AGAIN
          PERFORM bdc_dynpro USING 'SAPMF05A' '0301'.
          PERFORM bdc_field USING 'BDC_CURSOR' 'BSEG-WRBTR'. "CURSOR
          PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.    "OK CODE-SAVE
          PERFORM bdc_field USING 'BSEG-WRBTR' l_amt_bdc_remain.
          PERFORM bdc_field USING 'BSEG-ZTERM' '0001'. "pmt term -hardcoded
          PERFORM bdc_field USING 'BSEG-SKFBT' l_amt_bdc_remain.
        ENDIF.
    **multiple documents
      ELSE.
    **initialize remaining amount to amt entered on screen
        l_amt_bdc_mult_remain = bseg-wrbtr.
        LOOP AT t_seldoc_ant_bouncing.
          IF l_amt_bdc_mult_remain > 0.
            IF bseg-wrbtr > t_seldoc_ant_bouncing-rem_amt.
              l_amt_bdc_mult = t_seldoc_ant_bouncing-rem_amt.
            ELSE.
              l_amt_bdc_mult = bseg-wrbtr.
            ENDIF.
    **remaining amt = screen amt - amt calculated above.
            l_amt_bdc_mult_remain = l_amt_bdc_mult_remain - l_amt_bdc_mult.
            PERFORM bdc_dynpro USING 'SAPMF05A' '0303'.
            PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.    "OK CODE
            PERFORM bdc_field USING 'BSEG-WRBTR' l_amt_bdc_mult. "amount
            PERFORM bdc_field USING 'BSEG-GSBER' i_gsber.  "Business Area
    **due date - same as posting date on screen
    **get user default date format and pass date in that format
            PERFORM convert_date_to_user_format USING bkpf-budat.
            PERFORM bdc_field USING 'BSEG-ZFBDT' w_date.  "due date
            CLEAR w_date.
    **assignment
            CLEAR l_assignment.
            CONCATENATE t_seldoc_ant_bouncing-belnr
                        t_seldoc_ant_bouncing-gjahr INTO l_assignment.
            PERFORM bdc_field USING 'BSEG-ZUONR' l_assignment. "assignment
    **posting key 19 for all but last document
            PERFORM bdc_field USING 'RF05A-NEWBS' '19'.    "posting key
            PERFORM bdc_field USING 'RF05A-NEWKO' i_kunnr. "customer
            PERFORM bdc_field USING 'RF05A-NEWUM' 'B'.     "Spl GL
          ENDIF.
        ENDLOOP.
      ENDIF.
    **post remaining amount
      IF p_i_mult_doc = 'X'.
    **new screen if there is some amount left
        IF l_amt_bdc_mult_remain > 0.
    **posting key 15 with remaining amount
          PERFORM bdc_field USING 'RF05A-NEWBS' '15'.    "posting key
          PERFORM bdc_field USING 'RF05A-NEWKO' i_kunnr. "customer
          PERFORM bdc_field USING 'RF05A-NEWUM' ''.     "Spl GL
    **new screen
          PERFORM bdc_dynpro USING 'SAPMF05A' '0301'.
          PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.    "OK CODE
          PERFORM bdc_field USING 'BSEG-WRBTR' l_amt_bdc_mult_remain.
          PERFORM bdc_field USING 'BSEG-ZTERM' '0001'. "pmt term - hardcoded
        ELSE.
    **if no amount is left, no need for a further line item
          PERFORM bdc_field USING 'RF05A-NEWBS' ''.    "posting key
          PERFORM bdc_field USING 'RF05A-NEWKO' ''. "customer
          PERFORM bdc_field USING 'RF05A-NEWUM' ''.     "Spl GL
        ENDIF.
      ENDIF.
    **clear variables
      CLEAR : l_amount, l_assignment, l_amt_bdc,
              l_amt_bdc_remain,l_amt_bdc_mult, l_amt_bdc_mult_remain.
    ENDFORM.                    " fill_bdc_data_F-28_9005

  • BDC-BAPI to change payment proposal - FBZ0?

    Hi all,
    How could i change the payment proposal in TCODE: FBZO using bath input? In case the run date has several payment proposal lines, I cannot use BDC because FBZ0 display payment proposals on ALV, wich is a enjoy SAP control (BDC won't support enjoy SAP Controls). There are another BAPI or FM to do that?
    Thanks,
    Hung.

    Solution is : set user parameter F110O_NO_ALV = 'X'. (in code or Su3)
    Thanks.

  • Where does ABAP programs , BAPI's etc., get saved?

    Hi friends
    We have an ERP server (ECC) and have created lots of database tables, functions, Abap programs etc.,
    For some reason our ERP software is corrupted. However, the SQL database looks ok.
    So here is what we want to do.
    Since the SQL database is good, So we would like to backup the SQL database first.
    We have a ghost image of the server that was done some 2 months back. So we would like to install the ghost image of the server from 2 months back. This will bring the server back to working condition but without data.
    Then recover the SQL database which we backed up before installing the ghost.
    By doing this, will we be able to get back all the tables, data elements, BAPIs, functions, ABAP programs etc.,
    Please let us know.
    I will really appreciate it.
    Thanks
    Ram

    (subfolders COFILE and DATA of DIR_TRANS contain the transport requests once they are released, and they must exist in your system, check via AL11 to get the actual name on server, e.g. /usr/sap/trans/cofiles.)
    Program sources are stored in a cluster like (comrpessed) table (tables REPOSRC and REPOTEXT and for older versions tables D010S, D010SINF, D010T, D010TINF) and so not easily downloadable.
    You can create a report that read thru the abap program header table (TRDIR or via TADIR ) and execute the [READ REPORT|http://help.sap.com/abapdocu_70/en/ABAPREAD_REPORT.htm] statement to load source into an internal table, then you can download it
    Check sample at wiki like [Download given set of programs into a folder on presentation server|http://wiki.sdn.sap.com/wiki/display/Snippets/Downloadgivensetofprogramsintoafolderonpresentationserver]
    Regards,
    Raymond

  • Is  it possible to DELETE the Sub Asset either from BDC/BAPI etc?

    Hi Experts,
    I am guessing, the following idea may work for my problem, but, pls, let me give some info, abt the same.......
    1 - At the sales order creation time, each LINE ITEM creates the SubAsset, say,
    Line_ Item_1 -
    > creates SubAsset_1,
    Line_ Item_2 -
    > creates SubAsset_2, so on
    2 - if some reasons, if the user deletes Line_ Item_1, I need to delete that particlar SubAsset_1,
    so, pls. let me know that,
    1- If the user, deletes the item_1, then I wanna, to delete the created SubAsset_1, so then, I guess, SubAsset_2 shuld be modified as SubAsset_1
    2- Is it works out? makes sense?
    3- If so, Wht is the best method to delete a SubAsset from Asset Master? Is it AS02 BDC or Is there any BAPI or any other?
    thanq.
    Message was edited by:
            Srinivas

    as i did not hear any thing, so, am closing.

  • FM ABAP - XI - BAPI

    Hi.
    Have a function mudule in ABAP that's calling a standard bapi.
    Depending on configuration we get back it calls the bapi localy or by calling XI to get information from an other system.
    Calling localy = no problem.
    But how do i setup the configuration in in XI when I perform the following in the functin module?
    CALL FUNCTION 'BAPI_****' DESTINATION dest
    dest = XI
    What do i need to do in XI to get this to work?
    BR
    Kalle

    hi,
    you need to create a whole flow in XI
    BAPI.request - XI - BAPI.response
    if you need to make it synchronous
    you need to develop all objects in ID and IR
    there is no other way
    Regards,
    Michal Krawczyk
    http://mypigenie.com XI/PI FAQ

  • BDC/BAPI Assign characteristics to material using CL24n

    Hi Gurus
    My requirement is :
    We have already assigned characteristics to the material class, Now we need to assign characteristics values to materials.
    Assign characteristics to material using cl24n(Class name & Classtype) > only new assignments > material.
    What should I go for ? BDC or BAPI.
    Please suggest me how to proceed with BAPI as I personally feel BAPI is better than BDC.
    Thanks in Advance
    Dinesh

    BAPI/BDC for assigning characteristic to material

  • BDC/BAPI for MI04

    Hi,
    I have a requirement where I need to develop a upload program (from flat file) for MI01 and MI04 t-code. I have created a BDC for MI01 t-code which is running successfully. But I cant able to create the same for MI04 t-code. And also I didnt find any such kind or MI04. instead I found a lot of posts suggesting for BAPI (instead of BDC).
    After all this I decided to go for BAPI which I haven't developed till now. With this situation I searched it (BAPI for MI04) in the forum. But I could not find a complete code. In almost all the posts, only part of the code i.e FM's are listed. As I am new to the BAPI, I was searching for a complete code (BAPI for MI04).
    Can anyone post the BAPI code for MI04 transaction.
    Regards,
    Praveen

    use ''BAPI_MATPHYSINV_COUNT' bapi...
    u have to fill all the structures or ITAB which are mandatory. Then pass them to this BAPI. after that use BAPI_TRANSACTION_COMMIT to update the database
    and how to create .txt file to upload data to this transaction.
    the text file should contain all the fields which are necessary to pass to bapai structures /ITABs
    better , u can run the corresponding trn.. to know all mandt fields
    U can use GUI_upload to upload the flat file.
    Reward if useful

Maybe you are looking for

  • Windows 8.1 on U400- All App carsh

    I recently upgraded my Lenovo U400 to Windows 8.1 and all metro/Windows8 app keep crashing (Store, Mail, Calender..).  All the drivers are upto date as available on lenovo site for Windows 8. I have tried all the suggested solutions on almost all for

  • Equations in InDesign

    I have a document which needs to have (non-simple) engineering equations inserted. This is the third booklet in a series, the first 2 docs were created in InDesign but did not have much technical jargon.  I would rather not put this document into Wor

  • Increasing Download Speeds On 10.4.11 (Tiger)

    Hi I Have An Ibook G4 Running With 10.4.11 I Just Wanted To Know Is There A Way I Could Increase My Download Speeds Help Appreciated Hunt The Mac

  • Impossible to reboot my Pre 2 smartphone

    Hello , i am a french user of hp palm pre 2  I have a big problem with my Pre 2, he started to run weird  yesterday with hot temperature , I manually restarted last night, but he has not turned back, and can not turn it on. I have try to run a webos

  • I want to try this, but thought I check-in here to confirm

    Hi guys, For CDC (CT Mappings), Oracle DB Modules allow us to specify CDC Tables to start capturing changes. The DB Modules do not allow us to specify Views. Can we assume that if we specify the underlying tables as CDC Tables, the changes will be ca