Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

regarding data transfers

Former Member
0 Kudos

hi,

can anybody tell me when we use SESSION METHOD,CALL TRANSACTION and LSMW.

urgent plz,

some say that for small amout of data we use CALL TRANSATION and for large volume of data we use SESSION METHOD .but i don't understand how many records is small and how many records is large. and for what type we use LSMW.

full points will be rewarded.

regards,

kiran

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi Kiran,

All the 3 methods are used to migrate data. Selection of these methods depends on the scenario, amount of data need to transfer. LSMW is a ready tool provided by SAP and you have to follow some 17 steps to migrate master data. While in BDCs Session method is the better choice because of some advantages over call transaction. But call transaction is also very useful to do immediate updation of small amout of data. (In call transaction developer has to handle errors).

SO Bottom line is make choice of these methods based of real time requirements.

These methods are chosen completely based on situation you are in. Direct input method is not available for all scenario, else, they are the simplest ones. In batch input method ,you need to do recording for the transaction concerned. Similarly, IDoc, and BAPI are there, and use of these need to be decided based on the requirement.

Try to go through the some material on these four methods, and implement them. You will then have a fair idea about when to use which.

As said earlier if serialization is the requirement like if you want to update something only if the previous one is uploaded then go for call transaction as it returns sy-subrc.

If large no. of records are there and system performance is an issue then go for session as we can devide the no of records into sessions and process them individually.

LSMW is done mailnly by functional consultants to upload master data.

Reward points if useful,

Aleem.

7 REPLIES 7

Former Member
0 Kudos

hi,

Use of methods depending upon amount;

if you have run time validation while updating the data into SAP R/3 Transaction,then use BDC Call Transaction.

example : when you load the data into Sales order then you need to load the into Header text of sales order.

for this ,you have to use Update Mode 'S'.

it is online update and if you small amount of data ,then prefer this one

2. If you have huge amount of data and then prefer Session Method.

we have one more advantage in session method...

suppose file has 1,00,000 records and the if you use all the records at time,then you will get short dump like system time exceed .

then you can split the each 10,000 records into one session and will process.

Former Member
0 Kudos

Hi Kiran,

What is your requirement, based on that we can suggest you the better option.

Regards,

Atish

0 Kudos

hi Atish,

iam on trials now. recently in one interview they asked me this. i don't the answer .plz help me so that it wil be useful for me at some other time

thanks,

kiran

0 Kudos

Hi Kiran,

We need to consider lot many factors here.

The major are volume of data, nature of program run(background, foreground) etc.

For very high volume (lakhs of entires) we go for LSMW.

For medium kind of entries we go for Session method also when we want the error record can be procesed at later time we use this. For background also.

For small number of data and mostly for direct execution we use CALL TRANSACTION.

Hope it helps.

Regards,

Atish

0 Kudos

Hi,

1. One of the main criteria is

2. If error handling facility is required, then batch session is the best,

otherwise if we use call transaction, then error handling code,

has to be written in the program itself.

3. Batch session provides lot of facilities to the user.

<b>Reward points</b>

Regards

Former Member
0 Kudos

Hi Kiran,

All the 3 methods are used to migrate data. Selection of these methods depends on the scenario, amount of data need to transfer. LSMW is a ready tool provided by SAP and you have to follow some 17 steps to migrate master data. While in BDCs Session method is the better choice because of some advantages over call transaction. But call transaction is also very useful to do immediate updation of small amout of data. (In call transaction developer has to handle errors).

SO Bottom line is make choice of these methods based of real time requirements.

These methods are chosen completely based on situation you are in. Direct input method is not available for all scenario, else, they are the simplest ones. In batch input method ,you need to do recording for the transaction concerned. Similarly, IDoc, and BAPI are there, and use of these need to be decided based on the requirement.

Try to go through the some material on these four methods, and implement them. You will then have a fair idea about when to use which.

As said earlier if serialization is the requirement like if you want to update something only if the previous one is uploaded then go for call transaction as it returns sy-subrc.

If large no. of records are there and system performance is an issue then go for session as we can devide the no of records into sessions and process them individually.

LSMW is done mailnly by functional consultants to upload master data.

Reward points if useful,

Aleem.

Former Member
0 Kudos

<b>BDC</b>

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

ABAP Tips by : Nagaraj Muniyappa

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. 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.

Batch Input (BI) programs still use the classical BDC approach but doesn’t require an ABAP program to be written to format the BDCDATA. The user has to format the data using predefined structures and store it in a flat file. The BI program then reads this and invokes the transaction mentioned in the header record of the file.

Direct Input (DI) programs work exactly similar to BI programs. But the only difference is, instead of processing screens they validate fields and directly load the data into tables using standard function modules. For this reason, DI programs are much faster (RMDATIND - Material Master DI program works at least 5 times faster) than the BDC counterpart and so ideally suited for loading large volume data. DI programs are not available for all application areas.

Differences between bdc session method and call transaction method.

The most important aspects of the batch session interface are: - Asynchronous processing - Transfers data for multiple transactions - Synchronous database update During processing, no transaction is started until the previous transaction has been written to the database. - A batch input processing log is generated for each session - Sessions cannot be generated in parallel

The most important aspects of the CALL TRANSACTION USING interface are: - Synchronous processing - Transfers data for a single transaction - Synchronous and asynchronous database updating both possible The program specifies which kind of updating is desired. - Separate LUW for the transaction The system performs a database commit immediately before and after the CALL TRANSACTION USING statement. - No batch input processing log is generated.

Explain in detail with example what is batch input session?

Batch Input Session:

- It is a sequence of transactions, which is generated when user run a particular program.

- It contains the accounting documents that are to be created. The SAP system stores these transactions until you decide to process them online.

- It does not update transaction figures until the session has been processed. Using this technique, you can transfer large amounts of data to the SAP system in a short time.

Three processing modes of executing Batch Input Session :-

(1) Run Visibly : You can correct faulty transactions online & work step-by-step through th<b></b>e transactions not yet executed.

(2) Display Errors only : You can correct faulty transactions online. Transactions not yet executed, but without error, run in the background.

(3) Run in Background : Recommended by SAP.

also refer

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

<b>LSMW</b>

SAP Data Migration with LSMW

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

srinivas

*reward for useful answers*