Message Queue Task

  • I'm having some difficulty understanding the intended use of the Message Queue Task in SSIS.  From what I've gathered from my Google searches it is primarily used to send and received messages between packages.   I had intended to use it differently - what I want to do is monitor a message queue, and when messages are received to extract the body of the message, transform it as necesary, and send it to it's SQL Server destination tables.  Is this possible?  Is there a way to extract the message body other than to receive it as a "Data File" message type (which is written to disk)?

    Any advice or comments are appreciated.

    Keith

     


    keith

  • Isn't there four options for Receiving an MSMQ message - "Data File Message", "Variable Message", "String Message" and "String Message to Variable"? I think the option you'd want would be "String To Variable".

  • Hi Keith,

    We need to do something very similar. Did you manage to get this resolved?

    Thanks,

    Sean

  • Sean,

    No, we never did get the Message Queue task to work the way we wanted it to - perhaps it is possible, but we gave up on it and went a different direction which was handling the queueing in a console app, writing to the messages to file, then passing them onto SSIS. Not elegant, but it works.

    Keith


    keith

  • Hi all,

    We managed to send messages to the MSMQ which were picked up and properly processed by Sonic ESB. However, we are also having trouble receiving a message from MSMQ. Does anyone know how to do this?

    Thanks

  • Ref: Receiving messages from a MSMQ queue.

    I don't know if anyone is still interested, but we have this working...finally. The message placed on the queue needs to be a unicode string, with a message label = 'String Message'. We couldn't get anything else to work. The Message Queue Task is configured with MessageType = 'String message to variable', a user variable of type String was defined and used for the Variable property. Control flow leads to an Execute SQL Task that calls a stored procedure taking the string variable as a parameter to parse the message text into fields and finally insert them into a table.

    There's probably more than one way to process the message string into the table, but it's working for me so I'm moving on.

    I hope this might be of some help.

    Ken S

    No good deed goes unpunished.

Viewing 6 posts - 1 through 5 (of 5 total)

You must be logged in to reply to this topic. Login to reply