cancel
Showing results for 
Search instead for 
Did you mean: 

how does ABAP client proxy determine the sender business system

AnnieMao
Advisor
Advisor
0 Kudos

When we use ABAP client proxy to send a message in XI-SOAP format to the integration engine, how does the client proxy determine what is the sender business system, i.e. how does it know what value it should insert in the sender service field in the SOAP envelop.

For example, at first, the business system X8A_105 corresponds to the technical system X8A_105, so when the client proxy sends out a message, the sender service is X8A_105. Then I delete the business system X8A_105 in the SLD, and create a new business system that is associated with the technical system X8A_105.when the client proxy sends out a message, the sender_service is still X8A_105, why?

Accepted Solutions (1)

Accepted Solutions (1)

AnnieMao
Advisor
Advisor
0 Kudos

Sumit,

I have tested the function module LCR_GET_OWN_BUSINESS_SYSTEM,

If I did not set the import parameter 'BYPASSING_CACHE', it did return the old business system name. If I set the import parameter 'BYPASSING_VALUE' to 'Y', it throws out the exception 'No_BUSINESS_SYSTEM'. So it confirms that the issue is related to cache. But logging off and logging in again did not solve the problem. Do u know how to update the cache manually?

Message was edited by:

Annie Mao

bhavesh_kantilal
Active Contributor
0 Kudos

XI homepage--> Adminstration --> Cache Overview, refresh Cache of IR, ID and the runtime.

Also do check my previous reply.

Regards

Bhavesh

Former Member
0 Kudos

Hi Annie,

When you executed the FM . theres a import parameter ByPassing Cache mark that as X and execute it again.

Did you refresh xi cache using the following link..

http://<xiserver>:<j2eeport>/CPACache/refresh?mode=full

replace the above with your server details.

Regards,

Sumit

Former Member
0 Kudos

Answers (3)

Answers (3)

AnnieMao
Advisor
Advisor
0 Kudos

The problem is solved. Run the function module 'LCR_CLEAR_CACHE' to clear the SLD cache used by the business system.

Thank u all so much.

bhavesh_kantilal
Active Contributor
0 Kudos

Run this FM on XI or R3?

Regards

Bhavesh

AnnieMao
Advisor
Advisor
0 Kudos

Run it on the R3 business system, not on XI

Regards

Annie

AnnieMao
Advisor
Advisor
0 Kudos

Bhavesh&#65292;

I delete the business system X8A_105 from the integration directory now according to your suggestion. Then another strange thing happened. When my ABAP program called the client proxy the first time, an error was trigger 'GET_BUSINESS_SYSTEM_ERROR An error occurre when determing the business system (NO_BUSINESS_SYSTEM)'; I think this is correct. But when I executed the ABAP program again, the error could not be triggered again any more and the program is executed successfully and I could find the sender service is still 'X8A_105' through SXI_MONITOR. After I cleared the SLD cache in Integration Directory, this was still the case.

bhavesh_kantilal
Active Contributor
0 Kudos

Annie,

1. Check in the SLD all over again. See which Business System has the Logical System name of your R3 associated with it. Is the the correct one?

2. Go to the ID, and import this business system and activate it. Check the Adapter Specific Identifiers of this Business System, does it have the correct logical system name?

I have a feeling that somewhere the Logical System Name of your R3 is pointing to the Old business System and hence this issue.

regards

Bhavesh

Former Member
0 Kudos

Hi Annie,

Execute the following function module in your business system and see what name it returns..

LCR_GET_OWN_BUSINESS_SYSTEM.

You can always debug the code inside the above FM to find out how it gets the business system name...

I think the issue should be related to cache. I would also suggest you to logoff from your business system and then login again.

Regards,

Sumit

Message was edited by:

Sumit Khetawat

bhavesh_kantilal
Active Contributor
0 Kudos

Annie,

Answering your question at a high level, the Sender SAP System searches for the Business System Associated with it using the Logical System Name provided to the Business System,

Regarding your problem, after deleting the Business System from the SLD, did you delete it from the Integration Directory and did you import your new Business System in the Integration Directory?

Regards

Bhavesh