cancel
Showing results for 
Search instead for 
Did you mean: 

Problems with ABAP PROXY

Former Member
0 Kudos

Hi

I am trying to do with that a program abap sends data for SAP XI. I got to create the proxy of the type OUTBOUND and SYNCH in my R/3. I am using the program below as template. When I execute the report abap, error message doesn't appear and nor of success, appears only an empty screen.

During the debuging of the program, we found that exit XML is not well formatted. The program always stop is this part:

CATCH cx_ai_system_fault .

DATA fault TYPE REF TO cx_ai_system_fault .

CREATE OBJECT fault.

WRITE 😕 fault->errortext.

Does some exist configuration more than I should accomplish?

The program abap that I am using proceeds

REPORT zco_teste_xi_abap_proxy_out.

DATA prxy TYPE REF TO zco_mi_teste_xi_proxy_out.

*

CREATE OBJECT prxy.

DATA it TYPE zzmt_teste_xi_proxy.

TRY.

it-z_mt_teste_xi_abap_proxy-empname = 'Sravya'.

it-z_mt_teste_xi_abap_proxy-empno = '80101'.

it-z_mt_teste_xi_abap_proxy-departmentname = 'NetWeaver'.

CALL METHOD prxy->execute_synchronous

EXPORTING

output = it.

commit work.

CATCH cx_ai_system_fault .

DATA fault TYPE REF TO cx_ai_system_fault .

CREATE OBJECT fault.

WRITE 😕 fault->errortext.

ENDTRY.

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Thanks.. Info was very useful

Former Member
0 Kudos

Hi,

Use the following method to get the error text.

CATCH cx_ai_system_fault INTO lo_sys_exception .

CALL METHOD lo_sys_exception->if_message~get_text

RECEIVING

result = str.

WRITE:/ str.

Regards

Anand

Former Member
0 Kudos

Hi Anand,

I used the code that you passed me and now appears the message of "Application Integration system error." Did you already see that mistake? I think this mistake is being caused by the method "PROCESS_CALL_XMS (CL_PROXY_OUTBOUND), because the field "l_url" appears with the content in white. How I do to fill out this field. I am looking at the documentation in help.sap and the same presents in the syntax of creation of the proxy following "CREATE OBJECT lo_clientProxy ('LOGICAL_PORT_NAME'). Which would this door be to connect to the XI?

Do you have some model of program abap that sends data for SAP XI?

Regards

Former Member
0 Kudos

Hi Sergio,

I have'nt come across this error before.

Also I did'nt provide "LOGICAL_PORT_NAME" while creating an instance.

Is your proxy Synchronous or Asynchronous ?

Since the ABAP code you had pasted shows execute_synchronous, but I do not see response message (IMPORTING parameter)

***********************

CALL METHOD prxy->execute_synchronous

EXPORTING

output = it.

commit work.

************************

I have a ABAP code which is synchronously sends the message and waits for the response.

****************************************

*Create Proxy Object

TRY.

CREATE OBJECT proxy.

CATCH cx_ai_system_fault .

CALL METHOD lo_sys_exception->if_message~get_text

RECEIVING

result = str.

MESSAGE i001 WITH str.

ENDTRY.

*Populate the data

it_request-mt_pay-row[] = row[].

TRY.

  • Call Proxy Synchronously and Wait for Response

CALL METHOD proxy->execute_synchronous

EXPORTING

output = it_request

IMPORTING

input = it_response.

CATCH cx_ai_system_fault INTO lo_sys_exception .

CALL METHOD lo_sys_exception->if_message~get_text

RECEIVING

result = str.

CATCH cx_ai_application_fault .

MESSAGE i001 WITH 'Application Fault'.

ENDTRY.

*****************

Hope this helps..

Regards

Anand

Former Member
0 Kudos

Hi Anand,

Is it necessary to be creating a RFC destination to ABAP PROXY sends data for the XI?

Which the steps that you used to do for ABAP PROXY to work?

Regards

Former Member
0 Kudos

Hi Sergio,

1. You need to have HTTP destination on SAP system (on which proxy is developed) pointing to XI system.

2. Also you need to configure your SAP system (proxy system) to act as integration engine using SXMB_ADM transaction.

Regards

Anand

Former Member
0 Kudos

Hi, Anand

I verified through the transaction se24 that my proxy is not instantiated.

How do I do for instantiated my proxy?

Regards

Former Member
0 Kudos

sorry for wrong inputs... message is edited...

Message was edited by: siva maranani

Former Member
0 Kudos

Hi Sergio,

In SE24 you can create an instance of your proxy class by clicking on 'Instance' Button and then execute your method by entering the input parameters.

with in the ABAP code you can use

CREATE OBJECT prxy.

Regards

Anand

Former Member
0 Kudos

Hi Anand,

What package did you use?

Did you use "SAI_TOOLS" package?

Regards

Former Member
0 Kudos

Hi Sergio,

For creating your proxy objects You can either create a custom package or use $TMP.

If you want to transport your proxy objects the better go for your own custom ('Z') package.

Regards

Anand