8 Replies Latest reply: Jun 12, 2008 10:25 PM by suresh selvarajan RSS

what is the difference between call transaction and session method

Currently Being Moderated

what is the difference between call transaction and session method

  • Re: what is the difference between call transaction and session method
    Prasanth Kasturi
    Currently Being Moderated

    hi,

     

    Session method.

    1) synchronous processing.

    2) can tranfer large amount of data.

    3) processing is slower.

    4) error log is created

    5) data is not updated until session is processed.

     

    Call transaction.

    1) asynchronous processing

    2) can transfer small amount of data

    3) processing is faster.

    4) errors need to be handled explicitly

    5) data is updated automatically

     

     

    check this link for more differences

    http://www.****************/Tips/ABAP/DiffSessionCALLTRANSC.htm

     

    regards

    prasanth

  • Re: what is the difference between call transaction and session method
    Vishal Bhave
    Currently Being Moderated

    Hi,

    Hi,

     

    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.

     

    http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm

     

    Among the two methods call transaction is better compared to session bcoz data transfer is faster in it.

     

    Regards,

    Priyanka.

     

     

     

    Arun kumar  

     

    Posts: 632

    Registered: 8/7/06

    Forum Points: 748 

        

       Re: difference between call transaction and session method and which metho  

    Posted: May 4, 2007 5:52 AM    in response to: SHASHIDAR MOTOORI       E-mail this message      Reply 

     

    Hi shashidar,

     

    Differences between call transaction and session.

     

    Session Method:

    1) Data is not updated in the database table until the session is processed.

    2) No sy-subrc is returned.

    3) Error log is created for error records.

    4) Updation is always synchronous.

     

    Call Transaction Method:

     

    1) Immediate updation in the database table.

    2) sy-subrc is returned.

    3)Error need to be handled explicitly.

    4) updation can be synchronous as well as asynchronous.

     

    2) ya u can use using the N mode no screen.

     

    3)u can't handle multiple transaction in call transaction.

     

    4) u can handle multiple transaction in session using the BDC_INSERT fm.

     

    5)When u go to SM35 u can able to see the error records.

     

    Which is best?

     

    That depends on your requirement. Both of them have there advantages.

    According to the situation u can choose any one of these

     

     

     

    Or

     

    difference between batch input and call transaction in BDC Session method.

    1) synchronous processing.

    2) can tranfer large amount of data.

    3) processing is slower.

    4) error log is created

    5) data is not updated until session is processed.

    Call transaction.

    1) asynchronous processing

    2) can transfer small amount of data

    3) processing is faster.

    4) errors need to be handled explicitly

    5) data is updated automatically

     

     

    For session method,these are the function modules to b used.

    BDC_OPEN_GROUP

    BDC_INSERT

    BDC_CLOSE_GROUP

     

    For call transaction,this is the syntax.

    CALL TRANSACTION TCODE USING BDCDATA

    MODE A or E or N

    UPDATE A or S

    MESSAGES INTO MESSTAB.

     

     

     

     

     

    Take a scenario where we need to post documents in FB01 and the input file has say 2000 records (2000 documents, not line items in FB01 but 2000 records)

     

    In the BDC call transaction method

    We call the transaction FB01 2000 times (once for each record posting) and if the processing fails in record no 3 it can be captured and start with reocord 4.

    Eg: Loop at itab.

    call transaction FB01

    capture errors

    endloop.

     

    In the session method.

    We do not explicity call the transaction 2000 times, but all the records are appeneded into a session and this session is stored. The processinf of the session is done wwhenever the user wants it to be done. Hence the errors cannot be captured in the program itself

     

     

     

    Check these link:

    http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm

    http://www.sap-img.com/abap/question-about-bdc-program.htm

    http://www.itcserver.com/blog/2006/06/30/batch-input-vs-call-transaction/

    http://www.planetsap.com/bdc_main_page.htm

     

     

     

    <REMOVED BY MODERATOR>

     

    Edited by: Alvaro Tejada Galindo on Jun 12, 2008 7:25 AM

  • Re: what is the difference between call transaction and session method
    Shruthi R
    Currently Being Moderated

    Hi

     

    call other application programs using CALL TRANSACTION (type M program) or SUBMIT

     

    Shruthi

  • Re: what is the difference between call transaction and session method
    Sankar M
    Currently Being Moderated

    Hi,

     

    Call Transaction method:

     

    In this method, the ABAP/4 program uses the call transaction <T-code > using <bdc_tab> mode <mode> update <update >  method.

     

    In u2018Call Transactionu2019, the transactions are triggered at the time of processing itself and so the ABAP program must do the error handling.

     

    Synchronous Processing

     

    We can update the database both synchronously and asynchronously. We can specify the mode in the program.

     

    No batch input processing log

     

    While execution it starts from the first.

     

    Faster than session method

     

    Classical or session method

     

    n this method, ABAP/4 program read the external data that is to be entered to the SAP system and stores the data in the batch input session.

     

    When the prgm has finished creating the session, we can run the session thro the TC SM35. This method involves FM like BDC_OPEN,BDC_INSERT,BDC_CLOSE

     

    Whereas in Batch Input Sessions, the ABAP

    program creates a session with all the transactional data, and this session can be viewed, scheduled and processed (using

    Transaction SM35) at a later time. The latter technique has a built-in error processing mechanism too.

     

    Asynchronous Processing

     

    Synchronous Database update.

     

    During processing, no transaction is started until the previous transaction has been written to the database.

     

    Detailed Log will be generated for all the sessions

     

    While executing it wont start from the first. It will start from the place where it ends with error.

     

    While executing it wont start from the first. It will start from the place where it ends with error.

     

    Thanks,

     

    Sankar M

  • Re: what is the difference between call transaction and session method
    Laveen Pawar
    Currently Being Moderated

    hi sudheer,

    well let me tell u in layman's language.i.e simple words....wattever my fellow friends have said about the diffrences about the updation differences in database nd all are all correct.

     

    but to put it simply....both are the methods to transfer data between two r/3 systems or non r/3 systems.

     

    in batch input method ....more of coding is required as in u have to use the following function methods.

     

    BDC_ OPEN, BDC_INSERT and BDC_CLOSE

     

    but its not the case in call transaction ,no need to use these methods,

    instead the following is used.

    CALL TRANSACTION <transaction code>

              USING      <bdc table>

              OPTION FROM <opt>

         MESSAGES INTO messtab     

     

    so it is more convenient to use call transactions method .no need fr hard coding ......

    u can use recording fr the refernce.

     

    hope this clarifies the doubt to some extent.

     

    <REMOVED BY MODERATOR>

     

    Edited by: Alvaro Tejada Galindo on Jun 12, 2008 7:25 AM

  • Re: what is the difference between call transaction and session method
    Amit Gujargoud
    Currently Being Moderated

    Sudheer,

     

    i search with term call transaction vs session method i found answer.

     

    you may want to do same rather than throwing thread on this issue.

     

    Amit.

  • Re: what is the difference between call transaction and session method
    sundeep singh
    Currently Being Moderated

    hi there ,

     

    In Session method it needs to use FM's like  BDC_OPEN,BDC_INSERT,BDC_CLOSE  

     

    And Major features of it are

       synchronous processing.

       error log is created no need to handle errors explicitly

     

    In  Call transaction we the the transcation in a loop.

     

      Major features are :

     

    asynchronous processing

    errors need to be handled explicitly

  • Re: what is the difference between call transaction and session method
    suresh selvarajan
    Currently Being Moderated

    Hi sudheer rao,

     

    Diff b/w Call Transaction and Session Methods are...

     

    Call Transation                         

     

    1) Log will not be generated             

     

    2) Error log handled explicity.           

     

    3) Always used for low volume of Data.

     

    4) Both Synchronous/Asynchronous execute always in 

        Background   

     

    5) Processing in Fast                     

     

    6) Data is updated automatically.    

                                                          

    7) Legacy System Data                  

     

    Session Method

     

    1) Log will be generated.

     

    2) Error log created automatically.

     

    3) Large volume of Data.

     

    4) Asynchronous both in Foreground and Background

     

    5) Processing in Slow.

     

    6) Data is not updated until session is proceed.

     

    7) Master Data uploading.

     

    <REMOVED BY MODERATOR>

     

    S.Suresh.

     

    Edited by: Alvaro Tejada Galindo on Jun 12, 2008 4:25 PM

Actions