cancel
Showing results for 
Search instead for 
Did you mean: 

Proxy (outbound) EOIO

Former Member
0 Kudos

Hello all.

I have a scenario where I need to send a proxy from an ECC 6 system to my PI system.

the proxy must have QoS=EOIO.

When I searched in SAP documentation and in here I found this example:

  • create proxy client

CREATE OBJECT lo_clientProxy.

  • specify queue id

lo_async_messaging ?=

lo_clientProxy->get_protocol( if_wsprotocol=>async_messaging ).

lo_async_messaging->set_serialization_context('PLM0000007_ORDER').

  • do asynchronous client proxy call

CALL METHOD lo_clientProxy->execute_asynchronous

EXPORTING output = ls_request.

COMMIT WORK.

CATCH cx_ai_system_fault INTO lo_sys_exception.

  • Error handling

ENDTRY.

the problem is that in the new ECC versions the proxy class generated doesn't contain the method execute_asynchronous anymore but the method: if_proxy_client~execute, and in it I need to use the method of the service interface.

Can anyone please point me to documentation explaining how to ensure Qos=EOIO for the "new proxy" ?

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

see this forum thread: [;.

Regards.

Mickael

Former Member
0 Kudos

Sorry, I already read it...

It's refering to the "old" proxy with the execute_asynchronous function.

I need documentation for the execute function.

Former Member
0 Kudos

Imanuel,

have you read the blog: [http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/25177] [original link is broken] [original link is broken]; at the end ?

Mickael

P.S: to be honest: not yet tested with PI7.11

Former Member
0 Kudos

emmm.... I might be missing something, but I read the blog from start to the end,

and it talks about Flexible Serialization - a program that goes over the error queues and removes messages.

I need to find a way to make my scenario serialized.

I can't see how this blog solves my problem. can you please point me directly?

Former Member
0 Kudos

OK, made some progress.

there is an interface called: IF_PROXY_BASIS_INTERNAL

after a little "drill down" in it I got to interface: IF_XMS_MESSAGE_XMB

that contains 2 methods:

SET_QUALITY_OF_SERVICE

SET_QUEUE_ID

So I guess I need to use them in order to change the QoS to EOIO, and set a queue name for the interface.

I still didn't find any documentation on the subject.

any one can please help? somebody that used the IF_XMS_MESSAGE_XMB and have any tip?

Thanks,

Imanuel Rahamim.

Former Member
0 Kudos

I did not find them in my ECC 6.0 (release 701-SP07)... Anyway according to [sap help|http://help.sap.com/saphelp_nwpi711/helpdata/en/48/50b10eb82971b9e10000000a421937/frameset.htm] previous blog should be perhaps the answer!

Sorry today I have to finish an interface. So I cannot do more search or dev by myself, whereas I would like to do as for this topic, I want to knwo THE (exact) solution.

Cheers

Mickael

Former Member
0 Kudos

Solved.

forget what I wrote above.

Setting the queue is the same as the old version, the only thing changed is the way to call the execute method.

So now it should look something like this:

  • create proxy client

CREATE OBJECT lo_clientProxy.

  • specify queue id

lo_async_messaging ?= lo_clientProxy->get_protocol( if_wsprotocol=>async_messaging ).

lo_async_messaging->set_serialization_context('YourQueue').

TRY.

CALL METHOD lo_clientproxy->YourMethod

EXPORTING

output = YourOutput.

COMMIT WORK.

CATCH cx_ai_system_fault INTO lo_sys_exception.

  • Error handling

ENDTRY.

where YourMethod is the one generated with the proxy generation and contains:

if_proxy_client~execute.

(:

Former Member
0 Kudos

Hi Imanuel,

Thanks you to have sharing this info.

Mickael