ArcFM Engine Developer Guide
Message Processors

Version: 10.2.1c and 10.2.1c SP3

Resource Center Home

A Process Framework extension (e.g., Session Manager, Workflow Manager) can receive messaging from an external application such as a work management system (WMS) or customer information system (CIS). You may create a custom message processor that handles the message in a particular way. This section discusses how to create and configure a custom message processor. It also discusses how to call a message processor from an external application.

The image below depicts the flow of messaging between an external application and the Process Framework extension. For example, a message may originate in the external application, travel to the message processor through a message bus (e.g., MSMQ, web-based XML), and finally to the Process Framework where it is processed by the Message Processor. This section focuses on the Message Processor and its implementation (the yellow cloud).


Interfaces:
    IMMPxMessageProcessor
    IMMPxMessaging

Component Category:
    M&M Process Framework Message Processors


Create a Message Processor

Implement the IMMPxMessageProcessor interface to create a custom message processor. This interface carries a write-only PxApplication property that requires a reference to the Process Framework application. This gives the message processor access to your Process Framework extension. The ProcessMessage method holds the code that actually processes the incoming message.

All custom Message Processors must be registered in the M&M Process Framework Message Processors component category. Implement the IMMRegInCat interface and set the CategoriesToReg method to the appropriate category.

 

Call the Message Processing Framework

Your external application (e.g., WMS) must call the message processing framework using IMMPxMessaging. This allows Process Framework to receive and process messages from the external application.

The IMMPxMessaging::ProcessMessage method carries the type, verb, noun and version values from the external application. When it finds a match in the MM_PX_MESSAGING table, it uses the corresponding message processor (designated during configuration, below). The argument values on the incoming message must match the ProcessMessage method argument values for a Message Processor in order for the message to be processed.

 

Configure Custom Message Processor

Use the Process Framework Administration tool to configure your custom message processor. With the Process Framework Administration tool open, select the Processors tab. Click the Add button to add your custom processor.

The values in the first four fields (type, verb, noun, version) are used by the external application to determine which processor (the fifth field) must be used to process the incoming message. The values in these fields must match the values for which the external application is looking. If they are not found (or don't match) the message will be returned as "unable to process." The values entered on the Processors tab are stored in the MM_PX_MESSAGING table.

Once you have created a new row for the processor, be sure to assign roles. The appropriate role must be assigned to the login user in order for the user to process incoming messages.

Use the Delete button to remove unwanted processors. Select the message processor to be removed and click Delete.

 

 


Send Comment to ArcFMdocumentation@schneider-electric.com