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

Difference between 'CALL TRANSACTION' statements

Former Member
0 Likes
1,160

Hi experts,

Is there any difference between the below statments?

CALL TRANSACTION <transaction number> USING t_bdcdata

MODE 'N'

UPDATE 'S'

MESSAGES INTO t_messtab.

and

CALL TRANSACTION <transaction number> USING t_bdcdata

MODE 'N'

MESSAGES INTO t_messtab.

Even though I don't use the update statement in the second ABAP statement, the update seems to be working fine.

Please clarify.

Thanks.

1 ACCEPTED SOLUTION
Read only

ferry_lianto
Active Contributor
0 Likes
1,126

Hi,

CALL TRANSACTION <transaction number> USING t_bdcdata

MODE 'N'

UPDATE 'S'

MESSAGES INTO t_messtab.

Above code is doing synchronous update.

CALL TRANSACTION <transaction number> USING t_bdcdata

MODE 'N'

MESSAGES INTO t_messtab.

If you don't specify the update mode, then the update is always synchronous (by default).

Asynchronous Update – The program does not wait for the work process to finish the update. Commit Work.

Synchronous Update – The program wait for the work process to finish the update. Commit Work and Wait

Regards,

Ferry Lianto

9 REPLIES 9
Read only

Former Member
0 Likes
1,126

Hi,

No need to use the UPDATE in the Call transaction statmen, the Syncrounos is the default one, so if you ignore this statment also it will take it as 'S'

Regards

Sudheer

Read only

Former Member
0 Likes
1,126

Here is some info about the UPDATE option for CALL TRANSACTION from the SAP help:

... UPDATE upd

Effect

The UPDATE addition determines the processing mode for batch input processing. You can specify a character-type object for upd. Its possible content and its effect are displayed in the following table. Without use of one of the additions UPDATE or OPTIONS FROM, the effect is the same as if upd had the content "A".

upd Effect

"A" Asynchronous update. Updates of called programs are executed in the same way as if in the COMMIT WORK statement the AND WAIT addition was not specified.

"S" Synchronous processing. Updates of the called programs are executed in the same way as if in the COMMIT WORK statement the AND WAIT addition had been specified.

"L" Local update. Updates of the called program are executed in such a way as if the SET UPDATE TASK LOCAL statement had been executed in it.

Other As for "A".

Note

This option is not available for execution of actual batch input sessions. There the update is always synchronous.

I hope this helps.

- April King

Read only

0 Likes
1,126

I do not understand that so many respondents in this thread say that 'S' is default, when the SAP doc clearly says that 'A' is the default.

Read only

Former Member
0 Likes
1,126

CALL TRANSACTION <transaction number> USING t_bdcdata

MODE 'N'

UPDATE 'S'

MESSAGES INTO t_messtab.

S means synchoronus update...

if u use S or dont use S also, the call transaction automatically takes S as default.

Read only

sreeramkumar_madisetty
Active Contributor
0 Likes
1,126

Hi

In session method while processing in back ground you can find the diffrence.

No need to use the UPDATE in the Call transaction statmen, the Syncrounos is the default one. Here it will pickup 'S' for Update by default.

Regards,

Sreeram

Read only

ferry_lianto
Active Contributor
0 Likes
1,127

Hi,

CALL TRANSACTION <transaction number> USING t_bdcdata

MODE 'N'

UPDATE 'S'

MESSAGES INTO t_messtab.

Above code is doing synchronous update.

CALL TRANSACTION <transaction number> USING t_bdcdata

MODE 'N'

MESSAGES INTO t_messtab.

If you don't specify the update mode, then the update is always synchronous (by default).

Asynchronous Update – The program does not wait for the work process to finish the update. Commit Work.

Synchronous Update – The program wait for the work process to finish the update. Commit Work and Wait

Regards,

Ferry Lianto

Read only

Former Member
0 Likes
1,126

Hi,

There is no difference. In UPDATION, Synchronous is default.

Regards,

Bhaskar

Read only

Former Member
0 Likes
1,126

assume program control at line 10

...

10 call transaction ...in update 'S' (synchronous)

This would mean that the program control will not move to next line 11 until the call transaction has executed and completed

Again

assume program control at line 10

...

10 call transaction ...in non synchronous

This would mean that the program control will not move to next line 11 immediately even when the call transaction is executing and will not wait for success or failure of the call transaction statement

Read only

Former Member
0 Likes
1,126

hi krishen,

in call transaction method updates data database table in a synchronous way by default. if u wanna update through asynchronous way then u should explicity giv update 'A'.

if helpful reward some points.

with regards,

suresh babu aluri.