cancel
Showing results for 
Search instead for 
Did you mean: 

Incorrect Response From RFC

Former Member
0 Kudos

Hi All,

This is HTTP---RFC Sync Scenario

iam Sending the request as Material Number & Plant and i need to get the response back

Response is to be the How much Stock is avalable for that material.

I checked the FM(BAPI_MATERIAL_STOCK_REQ_LIST) in Se37 and working fine. Expected Response is coming .

When i send the Request from HTTP Test Tool, iam getting the response as

Result:

http-Status: 200 OK

Payload:

<?xml version="1.0" encoding="UTF-8"?>

<ns1:MT_stockcheck_res xmlns:ns1="http://sapretail-pos.com/stockcheck_sync"><Stockcheck_response><article_num></article_num><quantity>0</quantity></Stockcheck_response></ns1:MT_stockcheck_res>

But the Response shld be <artcle_num>97137</artcle_num>><quantity>2376</quantity>

Where could be the problem, and to sort out this

Regards

Accepted Solutions (0)

Answers (5)

Answers (5)

Former Member
0 Kudos

HI ,

Please check the response structure of ur DT is similar to rfc response or not.

Regards,

Nutan

Former Member
0 Kudos

Hi.

Can you pass the same values to BAPI and test it again on SAP system.

Former Member
0 Kudos

Hi,

Can you check the response message before mapping whethere you r getting any values. (i.e in Inbound message node-> payload).

Regards,

Sreeni

Former Member
0 Kudos

Hi

Check u r response mapping in the test tab.

Check the Data Type is that same as u r response from ther RFC.

rgds

srini

prateek
Active Contributor
0 Kudos

Have u checked the response mapping in sxmb_moni. Could you see the payload properly there?

Regards,

Prateek

Former Member
0 Kudos

Hi,

In MONI Response also the same message is comming like

<?xml version="1.0" encoding="UTF-8" ?>

- <ns1:MT_stockcheck_res xmlns:ns1="http://sub-sapretail-pos.com/stockcheck_sync">

- <Stockcheck_response>

<article_num />

<quantity>0</quantity>

</Stockcheck_response>

</ns1:MT_stockcheck_res>

Regards

prateek
Active Contributor
0 Kudos

Check the RFC response payload Before mapping. If it contains data, then problem is with you mapping. Then test the response payload from sxmb_moni in Message mapping in IR

Regards,

Prateek

Former Member
0 Kudos

Check if you response structure is same as tht of ur bapi.......

Former Member
0 Kudos

Hi,

I checked in the Response Message --Inbound Message ( CENTRAL ) ---Payloads --MainDocument ( application/xml )

Here also there is no Expected data ,Material no is having blank and the quantity is 0 as it i sent in my previously reply xml file

Regards

Former Member
0 Kudos

Ok. Here I meant the structure of your data type........the DT structure shud be same as ur response RFC.....I had similar problem some time back......

prateek
Active Contributor
0 Kudos

If the RFC response structure does not have data in sxmb_moni, then there is some problem with RFC. Either the RFC is not executing properly or the request data is not proper to generate the response.

Regards,

Prateek

Former Member
0 Kudos

Hi,

I have Executed the RFC in R/3 Se37 with the same Request Values (i.e Material no 97137 & plant C001only)

There i got the expected values properly and in the case of HTTP Call through XI, it it not giving the data.

I checked in Mapping test & that also success in IR. First of all Why we r unable to get the data in the Response Payload in MONI.

What could be the problem, do we need any Commit kind of things or any thing else..

REgards

Former Member
0 Kudos

Hi

Hope u r using the Message structure -- Response structure of the imported RFC.

Kindly check that.As u said Response mapping is working it should work

Best put a -- External Break point in the RFC and check if u r getting reponse structure with the desired output values

if so it all problem with the usuage of Message Interface used in the response mapping

rgds

srini

Former Member
0 Kudos

Hi,

>>Hope u r using the Message structure -- Response structure of the imported RFC.

Yes iam using the correct Response Structure of RFC only

>>Best put a -- External Break point in the RFC and check if u r getting reponse structure with the desired output values

How to do this Process and wat is the use if we do this at the end of the process

Regards

Former Member
0 Kudos

Hi Prateek,

As iam getting the Response back properly in the SE37, there will not be any problem in BAPI call.

Then why the response is not coming back properly back to XI call??

But iam unable to find out the root cause

Please help me in this

REgards

Former Member
0 Kudos

Hi,

In Trace, i have found this info

</SAP:OutboundBinding>

- <SAP:Trace xmlns:SAP="http://sap.com/xi/XI/Message/30">

- <Trace level="1" type="B" name="CL_HTTP_PLAIN_INBOUND">

<Trace level="1" type="T">server-protocol HTTP/1.1</Trace>

<Trace level="1" type="T">user-agent Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)</Trace>

<Trace level="1" type="T">host sxddev:8000</Trace>

<Trace level="1" type="T">content-length 284</Trace>

<Trace level="1" type="T">remote-addr 172.16.1.103</Trace>

</Trace>

<Trace level="1" type="T">*COMMIT is expected by application !</Trace>*

<Trace level="1" type="B" name="CL_XMS_MAIN-ENTER_XMS" />

- <!-- ************************************

-->

<Trace level="1" type="B" name="CL_XMS_MAIN-SET_START_PIPELINE" />

- <!-- ************************************

-->

<Trace level="3" type="T">XMB was called with external pipeline PID = ENTRY</Trace>

<Trace level="3" type="T">Getting type of XMB...</Trace>

<Trace level="1" type="B" name="SXMBCONF-SXMB_GET_XMB_USE" />

<Trace level="2" type="T">XMB kind = CENTRAL</Trace>

<Trace level="3" type="T">Start pipeline found</Trace>

<Trace level="2" type="T">Switch to external start pipeline PID = CENTRAL</Trace>

- <Trace level="1" type="B" name="CL_XMS_TROUBLESHOOT-ENTER_PLSRV">

<Trace level="3" type="T">No triggers found. OK.</Trace>

</Trace>

What is the meaning of Bolded letters in the above

Regards

prateek
Active Contributor
0 Kudos

This statement is a generic one and in ur case Commit won't be required. I would suggest to reimport the RFC in XI and run the scenario again. Also check the payload and audit log for RFC adapter in RWB -> Message Monitoring. Also just check the QOS from sender side is BE.

Regards,

Prateek

Former Member
0 Kudos

Looks like u r using firefox (from tht trace...), try it out in IE......

Former Member
0 Kudos

Hi suman,

I am getting same error as yours, a field of my rfc.response is coming empty from SAP and if i execute this from there, this field does contain any value!

Could you please tell me how did you solve your problem??

Best regards,

david