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

problem in bdc

Former Member
0 Likes
436

Dear Abap ers,

       

update records from flat file to db table . i use call transaction methods for it.

statement: call transaction 'XD02' using bdcdata mode 'A' update 'S' messages into it_msg.

when execute the program, an error occured in 3rd line. but processing is not stop or no message has been arrised.

but when i had done the same thing in session mehod ,

You are exiting the transact. in batch input

Do you still want to keep the batch input data?

this message will arrise...

here, in case of call transaction update is synchronous mode and session by default synchronous update. then why the same message will not arrise in case of call transaction???

thanks and regads

sabyasachi Karforma

2 REPLIES 2
Read only

Former Member
0 Likes
380

Hi Sabyasachi,

     In call transaction the processing is synchronous where as the update can be syncronous or asynchronous. When we do a call transaction it do not create batch session hence it can not be viewed by sm35.

     Where as in session the processing is always asynchronous and update always synchronous.

So when we do a session method it processes all data/records of flat file to its bdctab first then goes for execution all at one go. Where as incase of call transaction you take one row at a time.

Reason for this message is my conclusion that possibly the difference in recording and playing. When we do a recording there is a check box not batch input . Check and uncheck to this field will result to different result.

I hope it helped.

HAPPY ABAPing

Read only

0 Likes
380

hi vishal,

        call transaction is synchronous processing means one by one. if i execute call transaction then one record goes to bdcdata from internal table and then goes for update db table. in case of session, all records from internal table insert into batch input session  which is available in session queue (sm35) through bdc_insert fm. all records store in batch input session. for that reason, session is asynchronous processing. if my concept is wrong then please correct it. i am till confused for my above question. here calltransaction and session boh are synchronously update. but in case of session, when error occured in 3rd record system automatically create a message 'Do you still want to keep the batch input data? yes or no'. here system gives a option to exit from batch input session.. but in call transaction system does not generate this kind of message.. why??? one more question, if  3rd record is wrong then in both cases without error record all the recods from flat file will updated successfully. i think theoritically its not correct. plz explain. what is the correct answer???

thanks and regads

sabyasachi