cancel
Showing results for 
Search instead for 
Did you mean: 

**Proxy creation in sproxy tcode

Former Member
0 Kudos

Hi all,

I am trying to create client(sender)proxy.

1)Created the message interfaces in the scenario,In the sproxy Tcode created the Proxy by right clicking the message interface and after creating the proxy,activated the same.

When I bouble clicked on the class ,I did not see the Excecute Asyncronous method.

The following methods got generated.

IF_PROXY_BASIS_INTERNAL~CREATE_FRAMEWORK

IF_PROXY_BASIS~GET_PROTOCOL

IF_PROXY_BASIS~GET_TRANSPORT_BINDING

IF_PROXY_CLIENT~EXECUTE

CONSTRUCTOR

MI_SAP_TABLE_DATA_OUT(my outbound interface name),in general I use to see Execute_Asyncronous method here in place of this interface.

how to call execute the Execute_Asyncronous method from my zprogram.

Where could be the problem.

Please let me know.

Thanks,

Srinivasa

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

The proxy generation has changed from SP13 (PI 7.0). Now in the new generated class you will see the method as you see MI_SAP_TABLE_DATA_OUT as in your case. If you execute the method MI_SAP_TABLE_DATA_OUT (same as the name of the MI interface name) this will call the interface (sync/ asynch) depending on how you have defined in your message interface. Now if you want to test to make a async defined interface as synch try the code as below

extend the zco* class to a new class from se24.

open the method MI_SAP_TABLE_DATA_OUT

you'll see

ls_parmbind-name = 'OUTPUT'

comment all the four lines in this section.

Try calling the MI_SAP_TABLE_DATA_OUT again, this would execute the interface synchronouly.

You could debug this and find out the reason why this is getting changed.

Regards

Unni

Answers (2)

Answers (2)

bhavesh_kantilal
Active Contributor
0 Kudos

Hello

the reason as to why you don't see the execute asynchronous has been actually mentioned in this thread of yours here posted a few minutes back.

Can you let us know why a duplicate thread?

Regards

Bhavesh

Former Member
0 Kudos

Hi Bavesh,

accedentally the thread got closed with out getting the info ineeded

pedro_baroni3
Active Contributor
0 Kudos

Hi,

See the code:


  DATA : wa_input       TYPE         zdtp_row,
         wa_output      TYPE         zmtp_test
         prxy           TYPE REF TO  zco_itf_o_a_teste.

  wa_output-mtp_test-row-material = wa_input-material.

 CREATE OBJECT prxy.
  TRY.
      CALL METHOD prxy->execute_asynchronous
        EXPORTING
          output = wa_output.
      COMMIT WORK.

    CATCH cx_ai_system_fault .
      "          DATA fault TYPE REF TO cx_ai_system_fault.
      "          CREATE OBJECT fault.
      "          WRITE 😕 fault->errortext.
  ENDTRY.

Former Member
0 Kudos

In this code ,where does it call my proxyinterface.

How does it know to call my interface say test_out with intercace number 001 from the list of Async messages which are developed already.

pedro_baroni3
Active Contributor
0 Kudos

In this code ,where does it call my proxyinterface.

the code

CALL METHOD prxy-execute_asynchronous


How does it know to call my interface say test_out with intercace number 001 from the list of Async messages which are developed already.

When create object prxy, the type is the class of the ABAP Proxy: ZCO_xxx