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

RFC function module - to have it as time dependent

Former Member
0 Likes
1,141

Hi,

I have a RFC call to CRM system from R/3 side. This call is made to get email address of users in CRM system - during the triggering of order confirmation output.

Some times the RFC queue is full and these calls also get in to the queue blocking the queue. This call for me it is an optional and it should not get struck in the queue meaning the order output process should not wait for longer time.

Is there a way that I can say if the call is taking longer time say over 60 seconds no need to wait for the CRM data. Is there any option in the function module to do so (something similar to "starting new task", "performing <a routine> on end of task").

Thanks in advance...

Krish

1 ACCEPTED SOLUTION
Read only

mvoros
Active Contributor
0 Likes
1,030

Hi,

you need to call your FM asynchronously. Check ABAP [documentation for Asynchronous RFC calls|http://help.sap.com/saphelp_nw04/helpdata/en/22/0425ac488911d189490000e829fbbd/frameset.htm].

Regards

Hi,

I have a RFC call to CRM system from R/3 side. This call is made to get email address of users in CRM system - during the triggering of order confirmation output.

Some times the RFC queue is full and these calls also get in to the queue blocking the queue. This call for me it is an optional and it should not get struck in the queue meaning the order output process should not wait for longer time.

Is there a way that I can say if the call is taking longer time say over 60 seconds no need to wait for the CRM data. Is there any option in the function module to do so (something similar to "starting new task", "performing <a routine> on end of task").

Thanks in advance...

Krish

7 REPLIES 7
Read only

mvoros
Active Contributor
0 Likes
1,031

Hi,

you need to call your FM asynchronously. Check ABAP [documentation for Asynchronous RFC calls|http://help.sap.com/saphelp_nw04/helpdata/en/22/0425ac488911d189490000e829fbbd/frameset.htm].

Regards

Read only

Former Member
0 Likes
1,030

in SM59 RFC destination definition, set timeout = 60 secs

Read only

0 Likes
1,030

Thanks for your responses.

May I know where I can set the timeout in SM59? If it is a common setting for all RFC connections, then I cannot touch since the regular calls to CRM/ other systems shouldn't get affected. If it is specific to the RFC connection then I can create a new one and use it over here with time out setting.

Asynchronous RFC I can try but this call to CRM system is made from the output routine - so I am not sure how we can use it over here. The output routine checks if any valid email address found in CRM system for the customer. If so then it sets sy-subrc = 0. Since this routine is called during the order creation the wait causes delay in order getting saved. This happens occasionally when the CRM queue is fully occupied.

Thanks,

Krishnan V

Read only

0 Likes
1,030

It is specific to each RFC destination. Go to SM59, select your destination, and then select the tab - Specoial Options to see the time out setting

Read only

0 Likes
1,030

In SM59 of the source system --> select the RFC connection and go to "special options" tab you can find "keep-alive timeout" tab , there you can set the timeout time.

Read only

0 Likes
1,030

Thanks guys, but I don't see an option of time out for R/3 connections. I could see for HTTP??? By the way we are in ECC5.0

Thanks,

Krish

Read only

0 Likes
1,030

This option available from ECC6 onwards for abap connections.

In that case you need control the timing thru programatically