Application Development and Automation 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: 
Read only

bdc

Former Member
0 Likes
557

helo plz answer this.You are given functional specs for a BDC program

and you need to decide whether to write a method

call transaction or a session. How u will decide?

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
537

How many records do you need to process??

Thanks

Aneesh.

5 REPLIES 5
Read only

Former Member
0 Likes
538

How many records do you need to process??

Thanks

Aneesh.

Read only

Former Member
0 Likes
537

Depends on scenario,

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

3. Direct Input method : we prefer this method only few Transaction ,

this will not applicable to when system has customer fields .

Reward Points if it is useful

Thanks

Seshu

Read only

Former Member
0 Likes
537

1. Batch Input usually are used to transfer large amount of data. For example you are implementing a new SAP project, and of course you will need some data transfer from legacy system to SAP system.

CALL TRANSACTION is used especially for integration actions between two SAP systems or between different modules. Users sometimes wish to do something like that click a button or an item then SAP would inserts or changes data automatically. Here CALL TRANSACTION should be considered.

2. Transfer data for multiple transactions usually the Batch Input method is used.

Read only

Former Member
0 Likes
537

Hi,

Please check this ...

<u>Use the CALL TRANSACTION USING statement:</u>

Summary: With CALL TRANSACTION USING, the system processes the data more quickly than with batch input sessions. Unlike batch input sessions, CALL TRANSACTION USING does not automatically support interactive correction or logging functions.

Your program prepares the data and then calls the corresponding transaction that is then processed immediately.

The most important features of CALL TRANSACTION USING are:

Synchronous processing

Transfer of data from an individual transaction each time the statement CALL TRANSACTION USING is called

You can update the database both synchronously and asynchronously

The program specifies the update type

Separate LUW (logical units of work) for the transaction

The system executes a database commit immediately before and after the CALL TRANSACTION USING statement

No batch input processing log

<u>Create a session on the batch input queue:</u>

Summary: Offers management of sessions, support for playing back and correcting sessions that contain errors, and detailed logging.

Your program prepares the data and stores it in a batch input session. A session is a collection of transaction data for one or more transactions. Batch input sessions are maintained by the system in the batch input queue. You can process batch input sessions in the background processing system.

Your program must open a session in the queue before transferring data to it, and must close it again afterwards. All of these operations are performed by making function module calls from the ABAP program.

The most important aspects of the 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 batch input program must not open a session until it has closed the preceding session.

Regards,

Ferry Lianto

Read only

Former Member
0 Likes
537

Hi,

You need to decide the method based on no.of records.

If the no.of records are more, session method can be used.

If the no.of records are less, Call Transaction Method can be used.In this case

all error records can be moved to session method as well.

Reward, if useful.

Thanks,

USR