Deleting non-processed messages from queues – MIF (Maximo Integration Framework)


Queues
The IBM Maximo uses these queues for data integration purposes:
Inbound sequential (sqin) - Maximo sequential queue used for importing data
Inbound continuous (cqin) – Maximo continuous queue used for importing data
Outbound sequential (sqout) – Maximo sequential queue used for exporting data
Error continuous (cqinerr) – Maximo continuous queue used for error. The error messages generated in the inbound continuous queue (cqin) can be redirected to this queue, since the cqinerr has been previously set for receiving those messages
Queues are structures based on the FIFO (first in, first out) principle, in which the first elements included in the queue are the first elements to be removed. In a sequential queue, whenever an error occurs, this queue stops processing its elements and remains in the same position until the message is removed or the error is fixed. On the other hand, in a continuous queue, even if there is an error, this queue moves on processing all the other elements.
Clients using sequential queues usually have to delete all the messages of a certain queue during the data integration. We will use an inbound operation with XML as an example to explain this process:
From an MIF environment correctly set, import the XML file. MIF then identifies the JMS inbound queue and writes the message into this queue. If the message contains multiple instances of a document, MIF will write multiple messages into the queue. If at least one of these messages is processed with errors, an exception message is identified and no other message is processed and written into the database.
You can also import several records by using several XML files or records in an XML file, and this action generates several messages in the queue. If, by any chance, a failure occurs while importing the records, you can delete or fix the XML that generated the error in the Message Reprocessing application (see the picture below). With this procedure, the following message in the queue is processed. However, if the entire batch of messages contains errors, you do not need to wait until all the messages are processed, deleted or fixed; you can use IBM Maximo or the application server (Weblogic or Websphere) in order to delete all the elements from the queue. Then, you can perform the required modifications and import news message to an empty queue.


  



To use Maximo for deleting the queues, follow these steps:
Go to Integration > External Systems.
Select the external system used for integration purposes. Then, go to Select Action > Add/Modify Queues.
Select the queue that contains non-processed data and click the Delete Queue Data button.
In case you need to check how many messages there are in the queue, click the View Queue Data button:



  Click OK. If you do not provide any parameters, all the messages will be deleted:






  You will see a message informing how many messages were deleted:
image
  
Using Weblogic for deleting the queues:  follow the steps below:
Go to JMS > JMS Modules > intjmsmodule > sqin > Summary of JMS Messages > sqin
Then, click the Monitoring tab:
image



Select intjmsmodule!sqin and click Show Messages
image
 Select Delete All to delete all the messages:
image
 Check that all the listed messages have been deleted:

image
image
image
image











Using WebSphere for deleting the queues: follow the steps below:
Go to Buses > intjmsbus > destination > sqinbd > Queue points
Select the sqin target and click Runtime. Then, click Messages
image





  Click the Delete All button:

Confirm that all messages must be deleted by clicking OK:

image










imageimageimageimageimageimageimageimageimage


  Check that all non-processed messages have been deleted from the queue:




image
image
image
imageimage

Popular posts from this blog

Jython Script Examples

Skip fields during duplication