Salesforce

MSMQ - Methods (Magic xpi 4.13)

« Go Back

Information

 
Created BySalesforce Service User
Approval Process StatusPublished
Objective
Description

MSMQ - Methods

The following methods are used to configure the MSMQ component using Direct Access Methods:

The following table lists the methods and parameters that can be used. Parameters in bold are mandatory.

Name

Parameters

Description

Quick Send opens the queue, sends a message using the MSMQ protocol and then closes the queue.

Queue Name

Enter a string that indicates the name of the messaging queue to open.

You can enter Queue GUID for Public access or the Queue number for Private access.

Data

Enter the message data in the format selected in the Data Type parameter. You can also create expressions to build the BLOB during execution.

To enter a valid expression, click the to the right of the column to open the Expression Editor.

Data Type

Select one of the following data types from the drop-down menu:

  • Alpha

  • Numeric

  • Date

  • Logical

  • BLOB

Picture

Enter the number of places before and after the decimal point required. You need this parameter only if the Data Type is Numeric.

Transaction Mode

Select one of the following from the drop-down list to indicate the transaction mode for this message.

  • None: This message is not a transaction and is not sent through a transactional queue.

  • Single-message transaction: This message is sent by itself using a transactional queue. The single message is wrapped as a transaction. A single-message transaction can be used to request guaranteed exactly-once delivery (EOD) of a single message sent to a transactional queue.

  • Within a defined transaction: This message is sent as part of a defined transaction using a transactional queue.

Transaction Handle

The number returned by the Begin Transaction method.

Correlation ID

This attribute is an identifier that enables the MSMQ component to send a specific message that is based on a specific Correlation ID. This tells the receiving application which messages to read.

Click to enter the Correlation ID that the receiving application can use to read and sort incoming messages.

Message ID

This is an identifier that defines the Message ID attribute of a message.

Click to select the required Message ID.

Error Code

Click to open the Variables List. Select a variable where the error code is returned, and then click Select.

Quick Get opens the queue, receives a message using the MSMQ protocol, and then closes the queue.

Queue Name

Enter a string that indicates the name of the messaging queue to open.

You can enter Queue GUID for Public access or the Queue number for Private access.

Time Out

Enter the amount of time (in miliseconds) that the component will wait to receive a message before moving to the next step in the flow. If you enter -1, the component will wait indefinitely until a message is received before moving to the next step in the flow.

Picture

Enter the number of places before and after the decimal point required. You need this parameter only if the Data Type is Numeric.

Message Identifier

Enter a number to identify the message. When a message is sent in the queue, the system will scan all messages to find the message with the correct AppSpecific property.

Lookup Id

This parameter is useful for reading certain messages only.

Transaction Mode

Select one of the following from the drop-down list to indicate the transaction mode for this message.

  • None: This message is not a transaction and is not received through a transactional queue.

  • Single-message transaction: This message is received by itself using a transactional queue. The single message is wrapped as a transaction. A single-message transaction can be used to request guaranteed exactly-once delivery (EOD) of a single message received by a transactional queue.

  • Within a defined transaction: This message is received as part of a defined transaction using a transactional queue.

Transaction Handle

The number returned by the Begin Transaction method.

Correlation ID

This attribute is an identifier that enables the MSMQ component to receive a specific message. If the Correlation ID is set as In, a message is read from a message queue only if its Correlation ID matches the Correlation ID that is assigned here.

Click to select the Correlation ID that the receiving application should use to read and sort incoming messages.

Message ID

This is an identifier that retrieves the Message ID attribute of the message.

Click to select the required Message ID.

Data

Enter the location where to return the message data in the format selected in the Data Type parameter.

Data Type

Select a variable that will accept the data type for the received message.

Click to open the Variables List.

Error Code

Click to open the Variables List. Select a variable where the error code is returned, and then click Select.

Open method opens a queue to send or receive a message on an MSMQ server.

Queue Name

Enter a string that indicates the name of the messaging queue to open.

You can enter Queue GUID for Public access or the Queue number for Private access.

Access

Select the type of access available for messages in the queue from the drop-down menu:

  • Read: Allows users to view only properties and the security descriptor for queues.

  • Write: Allows users to send messages to the queue.

Share

Select one of the following from the drop-down list:

Available: Indicates that other users can access the messages in the queue according to the type of access indicated in the Access parameter.

Exclusive: Indicates that only the current user can access messages in the queue.

Queue Handle

Returns a numeric value the represents the queue handle.

Error Code

Click to open the Variables List. Select a variable where the error code is returned, and then click Select.

Close method closes the queue on an MSMQ server.

Queue Handle

Enter the numeric value returned as the queue handle in the Open parameter.

Error Code

Click to open the Variables List. Select a variable where the error code is returned, and then click Select.

Send method sends a message using the MSMQ protocol.

Queue Handle

Enter the numeric value returned as the queue handle in the Open parameter.

Data

Enter the message data in the format selected in the Data Type parameter. You can also create expressions to build the BLOB during execution.

To enter a valid expression, click the to the right of the column to open the Expression Editor.

Data Type

Select one of the following data types from the drop-down menu:

  • Alpha

  • Numeric

  • Date

  • Logical

  • BLOB

Picture

Enter the number of places before and after the decimal point required. You need this parameter only if the Data Type is Numeric.

Transaction Mode

Select one of the following from the drop-down list to indicate the transaction mode for this message.

  • None: This message is not a transaction and is not sent through a transactional queue.

  • Single-message transaction: This message is sent by itself using a transactional queue. The single message is wrapped as a transaction. A single-message transaction can be used to request guaranteed exactly-once delivery (EOD) of a single message sent to a transactional queue.

  • Within a defined transaction: This message is sent as part of a defined transaction using a transactional queue.

Transaction Handle

The number returned by the Begin Transaction method.

Correlation ID

This attribute is an identifier that enables the MSMQ component to send a specific message that is based on a specific Correlation ID. This tells the receiving application which messages to read.

Click to enter the Correlation ID that the receiving application can use to read and sort incoming messages.

Message ID

This is an identifier that defines the Message ID attribute of a message.

Click to select the required Message ID.

Error Code

Click to open the Variables List. Select a variable where the error code is returned, and then click Select.

Get method gets a message using the MSMQ protocol.

Queue Handle

Enter the numeric value returned as the queue handle in the Open parameter.

TimeOut

Enter the amount of time (in milliseconds) that the component will wait to receive a message before moving to the next step in the flow. If you enter -1, the component will wait indefinitely until a message is received before moving to the next step in the flow.

Picture

Enter the number of places before and after the decimal point required. You need this parameter only if the Data Type is Numeric.

Message Identifier

Enter a number to identify the message. When a message is sent in the queue, the system will scan all messages to find the message with the correct AppSpecific property.

Lookup Id

This parameter is useful for reading certain messages only.

Transaction Mode

Select one of the following from the drop-down list to indicate the transaction mode for this message.

  • None: This message is not a transaction and is not received through a transactional queue.

  • Single-message transaction: This message is received by itself using a transactional queue. The single message is wrapped as a transaction. A single-message transaction can be used to request guaranteed exactly-once delivery (EOD) of a single message received by a transactional queue.

  • Within a defined transaction: This message is received as part of a defined transaction using a transactional queue.

Transaction Handle

The number returned by the Begin Transaction method.

Correlation ID

This attribute is an identifier that enables the MSMQ component to receive a specific message. If the Correlation ID is set as In, a message is read from a message queue only if its Correlation ID matches the Correlation ID that is assigned here.

Click to select the Correlation ID that the receiving application should use to read and sort incoming messages.

Data

Enter the location where to return the message data in the format selected in the Data Type parameter.

To enter a location, click the to the right of the column to open the Value column and select a location from the Variables List.

Data Type

Enter a variable with the data type for the received message.

Message ID

This is an identifier that retrieves the Message ID attribute of the message.

Click to select the required Message ID.

Error Code.

Click to open the Variables List. Select a variable where the error code is returned, and then click Select.

Advanced Send sends a message using the MSMQ protocol and prepares the queue setup.

Queue Handle

Enter the numeric value returned as the queue handle in the Open parameter.

Data

Enter the message data in the format selected in the Data Type parameter. You can also create expressions to build the BLOB during execution.

To enter a valid expression, click the to the right of the column to open the Expression Editor.

Data Type

Select one of the following data types from the drop-down menu:

  • Alpha

  • Numeric

  • Date

  • Logical

  • BLOB

Picture

Enter the number of places before and after the decimal point required. You need this parameter only if the Data Type is Numeric.

Acknowledgement

Select one of the following from the drop-down list to indicate the Acknowledgement type used:

  • Full Reach Queue: A positive acknowledgment is sent if the original message reaches the queue, or negative acknowledgment if the time-to-reach-queue timer expires or if the original message cannot be authenticated.

  • Not Acknowledge Reach Queue: A negative acknowledgment is sent when the original message cannot reach the queue. This can happen when the time-to-reach-queue timer expires, or if a message cannot be authenticated.

  • Full Receive: A positive acknowledgment is sent if the original message is received from the queue before its time-to-be-received timer expires, or negative acknowledgment otherwise.

  • Not Acknowledge Receive: A negative acknowledgment is sent when an error occurs that prevents the original message from being received from the queue before its time-to-be-received timer expires.

  • None: No acknowledgement messages are sent.

AdminPath

Enter the management queue where acknowledgement messages are sent.

AppSpecific

Enter a number to specify application-generated information, such as single integer values or application-defined message classes. A receiving application can search a queue for all messages with the same application specific information.

Delivery

Enter one of the following to indicate whether the message delivery method.

  • Recoverable: Messages are written to disk during routing and delivery, making delivery slower than the use of express messaging, however the messages can be recovered but ideal when a failures occur or when computers shut down while messages remain in queues (such as for mobile clients on laptop computers).

  • Express: Messages are stored in RAM memory during routing and delivery, providing extremely fast performance but no recoverability if any computer that the message passes through fails. For example, express messages are lost whenever the Message Queuing service is stopped.

Extension

Enter a number that indicates additional application defined information that is associated with the message.

Journal

Select one of the following from the drop-down list to indicate how message copies are stored in the queue:

  • Journal: Positive source journaling is requested. A copy of the message is stored in the computer journal on the computer if the message was successfully delivered to the next computer, but no copy is stored in the applicable dead-letter queue on failure.

  • Dead Letter: Negative source journaling is requested. The message is stored in the applicable dead-letter queue on failure, but no copy is stored in the computer journal on success.

  • Journal/Dead Letter: Positive and negative source journaling are requested. Copies of the message are stored in the computer journal on success and in the applicable dead-letter queue on failure.

  • Journal None: Source queuing is disabled and no messages are stored.

Label

Enter text to label the message. For example, you can give the message the label "Magic xpi."

Max Time to Reach Queue

Enter the maximum amount of time (in seconds) a message can wait before it reaches its designated queue. If the message does not reach the queue in the maximum time stated, it is discarded according to the Journal parameter settings.

Max Time to Receive

Enter the maximum amount of time (in seconds) to wait before a message is received from its designated queue. The time includes the time getting to the queue and the time waiting in the queue.

Priority

Message priority can range from 0, the lowest priority, to 7, the highest priority. The default message priority is 3.

Transaction Mode

Select one of the following from the drop-down list to indicate the transaction mode for this message.

  • None: This message is not a transaction and is not sent through a transactional queue.

  • Single-message transaction: This message is sent by itself using a transactional queue. The single message is wrapped as a transaction. A single-message transaction can be used to request guaranteed exactly-once delivery (EOD) of a single message sent to a transactional queue.

  • Within a defined transaction: This message is sent as part of a defined transaction using a transactional queue.

Transaction Handle

The number returned by the Begin Transaction method.

Correlation ID

This attribute is an identifier that enables the MSMQ component to send a specific message that is based on a specific Correlation ID. This tells the receiving application which messages to read.

Click to enter the Correlation ID that the receiving application can use to read and sort incoming messages.

Message ID

This is an identifier that defines the Message ID attribute of a message.

Click to select the required Message ID.

Error Code

Click to open the Variables List. Select a variable where the error code is returned, and then click Select.

Advanced Quick Send opens the queue, performs the message setup, sends a message using the MSMQ protocol, and then closes the queue.

Queue Name

Enter a string that indicates the name of the messaging queue to open.

You can enter Queue GUID for Public access or the Queue number for Private access.

Data

Enter the message data in the format selected in the Data Type parameter. You can also create expressions to build the BLOB during execution.

To enter a valid expression, click the to the right of the column to open the Expression Editor.

Data Type

Select one of the following data types from the drop-down menu:

  • Alpha

  • Numeric

  • Date

  • Logical

  • BLOB

Picture

Enter the number of places before and after the decimal point required. You need this parameter only if the Data Type is Numeric.

Acknowledgement

Select one of the following from the drop-down list to indicate the Acknowledgement type used:

  • Full Reach Queue: A positive acknowledgment is sent if the original message reaches the queue, or negative acknowledgment if the time-to-reach-queue timer expires or if the original message cannot be authenticated.

  • Not Acknowledge Reach Queue: A negative acknowledgment is sent when the original message cannot reach the queue. This can happen when the time-to-reach-queue timer expires, or if a message cannot be authenticated.

  • Full Receive: A positive acknowledgment is sent if the original message is received from the queue before its time-to-be-received timer expires, or negative acknowledgment otherwise.

  • Not Acknowledge Receive: A negative acknowledgment is sent when an error occurs that prevents the original message from being received from the queue before its time-to-be-received timer expires.

  • None: No acknowledgement messages are sent.

Admin Path

Enter the management queue where acknowledgement messages are sent.

App Specific

Enter a number to specify application-generated information, such as single integer values or application-defined message classes. A receiving application can search a queue for all messages with the same application specific information.

Delivery

Enter one of the following to indicate whether the message delivery method.

  • Recoverable: Messages are written to disk during routing and delivery, making delivery slower than the use of express messaging, however the messages can be recovered but ideal when a failures occur or when computers shut down while messages remain in queues (such as for mobile clients on laptop computers).

  • Express: Messages are stored in RAM memory during routing and delivery, providing extremely fast performance but no recoverability if any computer that the message passes through fails. For example, express messages are lost whenever the Message Queuing service is stopped.

Extension

Enter a number that indicates additional application defined information that is associated with the message.

Journal

Select one of the following from the drop-down list to indicate how message copies are stored in the queue:

  • Journal: Positive source journaling is requested. A copy of the message is stored in the computer journal on the computer if the message was successfully delivered to the next computer, but no copy is stored in the applicable dead-letter queue on failure.

  • Dead Letter: Negative source journaling is requested. The message is stored in the applicable dead-letter queue on failure, but no copy is stored in the computer journal on success.

  • Journal/Dead Letter: Positive and negative source journaling are requested. Copies of the message are stored in the computer journal on success and in the applicable dead-letter queue on failure.

  • None: Source queuing is disabled and no messages are stored.

Label

Enter text to label the message. For example, you can give the message the label "Magic xpi".

Maximum Time to Reach Queue

Enter the maximum amount of time (in seconds) a message can wait before it reaches its designated queue. If the message does not reach the queue in the maximum time stated, it is discarded according to the Journal parameter settings.

Maximum to Receive

Enter the maximum amount of time (in seconds) to wait before a message is received from its designated queue. The time includes the time getting to the queue and the time waiting in the queue.

Transaction Mode

Select one of the following from the drop-down list to indicate the transaction mode for this message.

  • None: This message is not a transaction and is not sent through a transactional queue.

  • Single-message transaction: This message is sent by itself using a transactional queue. The single message is wrapped as a transaction. A single-message transaction can be used to request guaranteed exactly-once delivery (EOD) of a single message sent to a transactional queue.

  • Within a defined transaction: This message is sent as part of a defined transaction using a transactional queue.

Priority

This parameter is available only when you set the Transactional Mode (above) to None. Enter a number to indicate the message priority. You can enter a number from 0 to 7. The default is 0.

Transaction Handle

The number returned by the Begin Transaction method.

Correlation ID

This attribute is an identifier that enables the MSMQ component to send a specific message that is based on a specific Correlation ID. This tells the receiving application which messages to read.

Click to enter the Correlation ID that the receiving application can use to read and sort incoming messages.

Message ID

This is an identifier that defines the Message ID attribute of a message.

Click to select the required Message ID.

Error Code

Click to open the Variables List. Select a variable where the error code is returned, and then click Select.

Begin Transaction method indicates the beginning of a transaction. The following messages with a transaction mode that indicates that it is part of a transaction and with the same Transaction Handle number assigned to this method are part of the transaction.

Transaction Type

Select the type of transaction from the drop-down list.

  • Internal MSMQ: The message is sent via you default servers using an MSMQ transaction queue.

  • Microsoft Transaction Server: The message is sent using a Microsoft Transactional Server (MTS).

Transaction Handle

The number sent by to the individual message methods, such as Send or Get, when the Begin Transaction method is invoked to indicate the beginning of a transaction.

Error Code

Click to open the Variables List. Select a variable where the error code is returned, and then click Select.

Commit method commits an open transaction. All further transactions must be started again with a new Begin Transaction method.

Transaction Handle

The number returned by the Begin Transaction method.

Error Code

Click to open the Variables List. Select a variable where the error code is returned, and then click Select.

Rollback aborts the message transaction and returns it to the beginning of the transaction when any message in the transaction fails. Any further transactions must begin a new transaction.

Transaction Handle

The number returned by the Begin Transaction method.

Error Code

Click to open the Variables List. Select a variable where the error code is returned, and then click Select.

If the Magic xpi OS service is running under the local system account, you can only write messages to the queue. Messages cannot be read. You can overcome this limitation by replacing the service user account with a domain user account.

Related Topics

How to Use Direct Access Methods

Reference
Attachment 
Attachment