You now can configure individual profiles for subscribers to enhance your control over when messages are sent. For example, you can specify which events must occur before a message is published to a subscriber. The message will be sent only when the event types you select were the original trigger for the raw message.

You can define a sending option, and filter based on data within the profile message, and substitute values for tokens in the profile message. You can also define which operations—Add, Modify, and so on—the subscriber requires.

You configure subscriber profiles using the Subscriber Profile Configuration Parameters screen. To display this screen, click the name of the profile under the subscriber to which the profile is registered.

Subscriber Profile Configuration Parameters

Sending Option

Choose a sending option to use when sending messages.

Use Subscriber Default. Send the document to the subscriber using the delivery schedule that is defined for the subscriber.

Send Immediately. Send the document to the subscriber immediately. If there are no delivery schedules defined, this is the default.

Use Delivery Schedule. This option is available only if delivery schedules have been defined. Selecting this option displays a dropdown of the defined schedules.

Filter

Enter a valid Progress query to use with the subscriber profile. The subscriber will only deliver the profile message if the filter defined on the subscriber is true for the data in the top-level table in the profile. On saving the subscriber profile, the system validates the query and returns an error message if the query expression is not valid.

Note: If a subscriber profile is modified, every subscriber that registers that profile must validate the filter. If the filter results in an invalid query, a warning is displayed.

Operations

By default, all operations are selected except Unmodified. At least one option must be selected; otherwise the system displays an error.

When the message publisher determines the operation of the top-level buffer, the system will not create a subscriber message if the operation is invalid for the subscriber. If the Detect Operations check box is not selected on the profile, the message publisher determines the operation based on the existence of the previous and current message. Before creating the subscriber message record, the filter query must be satisfied. If the filter query produces a Progress error, the system issues an alert. The operation is based only on the top-level table.

Event Types

Displays the event types associated with the subscriber profile; these are the active event types for all the data objects in the related business object. The Listen check box must be selected to activate an event type. By default all event types are selected.

The message publisher will create a subscriber message if the original event that created the raw message is selected.

The Event Types table reflects any changes made to the event types included in a data object for a business object.

Field Substitution

To edit a token, select the check box to the left of the token name and click Edit. Then enter a fixed value and/or calculated program as required.

The Field Substitution table displays a list of tokens and the values to substitute into those tokens when generating a profile message for the current subscriber. The tokens, which come from the profile, are signified by an “at” symbol (@) on either side of the variable, and are placed in the fixed value fields. The message publisher determines if any tokens need replacing in a profile message and creates a different profile message for each subscriber. For example, each subscriber may require a different fixed value “Site,” and the remainder of the profile data to remain the same.

Token. Specify any required tokens to set values on the profile based on the subscriber that is receiving them.

Fixed Value. Optionally, specify a fixed value to use in the QDoc for this field or specify a value using the format =$<node>$, in which case the field will be populated with the value in the specified node.

You can double-click in the Fixed Value field and view or enter data in a pop-up window.

The fixed value you provide must be consistent with the data type specified for the field. If there is a mismatch, the system displays an error message when you try to save the subscriber profile configuration parameters.

Calculated Program. Optionally, enter the name of a Progress program (.p) to run. The program can be either in the QXOServer PROPATH or on the AppServer. The local version will be run if it exists; otherwise, it runs on the AppServer.

Make sure the calculated value will be consistent with the data type specified for the field. If there is a mismatch, the system does not prevent you from saving the subscriber profile configuration parameters, but will run into errors during data publishing.

Detailed Response

Specify whether to set the suppressResponseDetail attribute of QDoc requests to true or false for a subscriber profile.

Specify whether to exlude the top-level dataset node from the generated QDoc for a profile. This option is available only when the subscriber’s XML Syntax is set to Other. Use this option when the recipient of a message does not want the dataset level node in the message.

File Name Pattern

Enter the file name pattern you want to use.

Add File Unique Reference

Specify whether to append the mpt_publ_msg_obj reference to the file name to make it unique. This unique reference is an 18-digit number.

The two options, File Name Pattern and Add File Unique Reference, provide you with the ability to define the QDoc file names. They are available only when the subscriber’s Communication Method is set to File Directory Service.

By default, File Name Pattern is <profile_name>- and Add File Unique Reference is Yes. The QDoc file name will be:

<profile_name>-<mpt_publ_msg_obj>.<file_extension>.

You can include field values of profile messages in file names. For example, for an ItemMaster message, if you use ItemMaster-$ptPart$- as the name pattern, $ptPart$ will be replaced with item number in the file name. Only the fields in top-level data objects can be referred to. When there are multiple top-level data objects, you can specify the DO name as prefix of the field name, for example, $tBusinessRelation.BusinessRelationCode$. And the field to be referred to can be a calculated field or a custom field, which provides flexibility.