Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

SMQ2 stuck but successfuly processed via SPROXY

Former Member
0 Kudos

Hello Friends,

SMQ2 queue is stuck but when i download and process same XML via SPROXY, Purchase order is successfuly posted.

SMQ2 error message text seems to be custom but error is not enconter while processing XML via SPROXY.

Regards & Thanks,

Sagar

14 REPLIES 14

PeterJonker
Active Contributor
0 Kudos

I am not sure, but I think SMQ2 is an entrance to the system while when you are using SPROXY you are already in the system. so you have bypassed SMQ2

Ryan-Crosby
Active Contributor
0 Kudos

Hi Sagar,

It's possible it's something related to the a GUI session in the foreground vs. background processing then.  You might have to run a trace on the service call using some of the runtime tools if it can be repeated consistently.

Regards,

Ryan Crosby

0 Kudos

Thanks Ryan.

Request you to elaborate more. Where can I check GUI Session and for trace what exactly I should ask basis team to provide.

0 Kudos

Hi Sagar,

What I mean is foreground vs. background.  Running SPROXY means you have an SAP GUI session open and the proxy can handle pop-ups for instance but if you are running via SMQ2 as a proxy that runs in the background and displaying screen elements would cause a short dump.  It's hard to say without seeing any errors so as Peter mentioned the first thing to do would be to try and identify what made it quit processing when the message got stuck in the queue.

Regards,

Ryan Crosby

0 Kudos

For all XML messages for this interface we are getting same error.

While processing via SPROXY there was no POP up messages encountered.

0 Kudos

Hi Sagar,

My guess would be you have some conversion exit issue which causes a query to fail in the background but is handled automatically by the test frame setup in the SPROXY transaction.

Regards,

Ryan Crosby

Former Member
0 Kudos

Thanks Peter for your quick response.

That's true. But SMQ2 will automatically process inbound queue. So while processing queue, error is encountered.

0 Kudos

Can you tell us a bit more on the error, what kind of error is it ? Technical or functional ?

0 Kudos

Error is "Obsolete PH".

There is custom logic of PH written in method.

PH is validate in Exit. If PH is not found in custom table than it should give this error. But PH is maintained in custom table.

0 Kudos

Ok I understand, it is a functional error. Where did you get the xml from which you used as test in SPROXY ? Did you get it from SXMB_MONI transaction (or SXI_MONITOR) ? If not try to use the xml that is in there to see if the value for PH is in the same format as in the xml that you were using for testing in SPROXY.

0 Kudos

Hi Sagar,

What is the code that is present in that exit where that check is done?  If it throws an error message then it can certainly make the processing of the proxy quit and go into error status.

Regards,

Ryan Crosby

0 Kudos

Peter I have used same XML from SXI_MONITOR.

0 Kudos

But that same error message should come while processing from SPROXY.

0 Kudos

Hi Sagar,

See my other post regarding conversion exits for example - not always is possible.  Here would be an example query that would fail if I didn't run a proper conversion exit before I do some check - I will use KNA1 just for simplicity.

With conversion exit -


DATA: lv_kunnr TYPE kunnr.

lv_kunnr = '12345'.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = lv_kunnr

IMPORTING

outpout = lv_kunnr.

SELECT SINGLE *

FROM kna1

WHERE kunnr = lv_kunnr.

IF sy-subrc = 0.

ENDIF.

Without -


DATA: lv_kunnr TYPE kunnr.

lv_kunnr = '12345'.

SELECT SINGLE *

FROM kna1

WHERE kunnr = lv_kunnr.

IF sy-subrc = 0.

ENDIF.

Now imagine in comparison that KNA1 has an entry with customer '0000012345' - in the case of not using the conversion exit the query will fail.

Regards,

Ryan Crosby