on 12-12-2007 9:59 AM
Hi all,
I will explain this 'X file' problem.
We have an scenary between an R/3 --> XI --> R/3
The communication it's between an interface with .txt file; No conversion to XML, XI only does 2 steps at Interface Determination:
1º Writes in an FTP destination with Communication Channel Filereceiver
2º Executes an RFC who charges that file in a table at destination.
The interface sends between 100 and 200 files by day. At least 2 / 4 by day stays in status 'Holding'. These files are similar to another Succesfull messages.
At Integration Server, and SXMB_MONI, all logs are OK. But in Adapter Engine from RWB i see this log (For File CC and RFC CC):
2007-12-11 15:53:41 Success Message successfully received by messaging system. Profile: XI URL: http://xixsap:59000/MessagingSystem/receive/AFW/XI Credential (User): XIISUSER
2007-12-11 15:53:41 Success Using connection File_http://sap.com/xi/XI/System. Trying to put the message into the receive queue.
2007-12-11 15:53:41 Success Message successfully put into the queue.
2007-12-11 15:53:41 Success The message was successfully retrieved from the receive queue.
2007-12-11 15:53:41 Success The message status set to HOLD.
If we make a "Resend", the message tries to be delivered again and sets to Hold.
If i resend the same file from original /out directory, it's processed fine.
Thanks in advance for your help
Message was edited by:
Federico Martin
Message was edited by:
Federico Martin
Hi Federico,
Holding is the state of an EOIO message that cannot be delivered until its predecessors have been delivered.
When the quality of service of the messages is exactly once in order (EOIO) and messages are delivered in the same sequence that they were sent from the sender system. For that reason a sequential number is assigned to the message.
When a message runs on an error during the processing, all other messages in the same queue will not be processed until the error is fixed or the erroneous message is cancelled from processing.
To solve the problem it is necessary to
1.find the message which blocks the queue.
2.If there are a huge number of messages in your system you search for the lowest sequential number in the queue.
3. If you know the name of the queue that is stuck, you can add the queue name as additional filter criteria. Click on Show Additional Criteria.
4. Enter the queue name to the field Conversation ID and set the parameter Quality of Service to Exactly Once in Order.
5. To be able to see the sequential numbers in the message monitor, you configure the table columns.
6. Add Conversation Id (that is the queue name) and Sequential Number to the table columns.
7. Scroll the window right to see the new columns. Sort the sequential number ascending (the upper triangle).
8Now the erroneous message is the first message in the display. You can look at the error reason, try to fix the problem and resend or cancel the message to release the queue.
9. After you have resent or cancelled the message all other message will be processed immediately.
You have of course to make sure, that the next message in sequence does not run on error too.
**Pls: Reward with Points if helpful **
Regards,
Jyoti
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
THANKS ALL FOR YOUR HELP!
I cancelled all messages in Holding after detect "System Error" originally message.
Regards and thanks again
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Check Message in AF, there is a possibilty there some or any of the message is in Systems Error state. and due to this some message get stuck in AF. and comes in status called Holding/Waiting state.
Cancel or Resend the message that are is Systems Error state and then send the rest of the message.
Thanks
Farooq.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
HOLDING is a status which occurs normally for EOIO (Exactly Once In Order), so your message is set to Holding means some earlier message has not gone through. So until those messages are through this message will be in HOLDING state. Have a look at this link which explains how to handle such scenarios.
http://help.sap.com/saphelp_nw04/helpdata/en/49/e3fb40ef74f823e10000000a155106/content.htm
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Federico,
First check if there any inbound queues (smq2) and outbound queues (SMQ1) are blocked................If there is any such queues are blocked then go and right click on them to delate that queue....................This way u can delete the queues which are in error so that the messages which are behind them wil get processed sucessfully...................
Reward with points if helpful
Regards
Sai Ganesh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Check your inbound and outbpund queue by using tcode SMQ1 & SMQ2. Check if any message is stuck in queue. Clear all the queues and then again run your scenario.
Regards,
Sarvesh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi
use search filter to check the last message in waiting. then cancle that message and restart all holding messge.
Also check this link
/people/stefan.grube/blog/2006/04/27/how-to-deal-with-stuck-eoio-messages-in-the-xi-30-adapter-framework
Hope this will help you.
Regards
Aashish Sinha
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
86 | |
10 | |
10 | |
9 | |
6 | |
6 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.