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

about BDC

Former Member
0 Likes
330

hi experts

I just encountered a question recently about BDC. In the past, I gonna to check subrc after calling transcation to see if the transcation calling is successful or not, and even if subrc =0, I also have to loop the message internal table to check if there are Error Message, for example, when the lenght of post code is illegal , there will be a E type message in the message table, but the subrc is still 0, right?

but today,I found in my program that I just have to check subrc to see if all the datas are correct, do not need to looop the message table , when transcation calling is successful but some datas are illegal, the subrc will also be returned not as 0....

I do not know why....

Is that because of the Version? I use 4.6C in the past ,now I transfered to ECC6.0....

many thanks

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
303

After a CALL TRANSACTION statement, sy-subrc will be 0 if the batch input processing of the called transaction was successful; sy-subrc will be lowest than 1000 if there is an error in the called transaction. If within the transaction a message was sent, you can receive it using the addition MESSAGES; and finally, sy-subrc will be 1001 if there is an Error in batch input processing.

This can be read in the online help

Best Regards

hi experts

I just encountered a question recently about BDC. In the past, I gonna to check subrc after calling transcation to see if the transcation calling is successful or not, and even if subrc =0, I also have to loop the message internal table to check if there are Error Message, for example, when the lenght of post code is illegal , there will be a E type message in the message table, but the subrc is still 0, right?

but today,I found in my program that I just have to check subrc to see if all the datas are correct, do not need to looop the message table , when transcation calling is successful but some datas are illegal, the subrc will also be returned not as 0....

I do not know why....

Is that because of the Version? I use 4.6C in the past ,now I transfered to ECC6.0....

many thanks

1 REPLY 1
Read only

Former Member
0 Likes
304

After a CALL TRANSACTION statement, sy-subrc will be 0 if the batch input processing of the called transaction was successful; sy-subrc will be lowest than 1000 if there is an error in the called transaction. If within the transaction a message was sent, you can receive it using the addition MESSAGES; and finally, sy-subrc will be 1001 if there is an Error in batch input processing.

This can be read in the online help

Best Regards