QAD QXtend Release Notes > Release Notes for QXO > Release Notes for Version 1.3
Release Notes for Version 1.3
QXO Server Version: 1.3
Date: March 31, 2007
MFG/PRO Compatibility: eB through current release
QAD QXtend Documentation: Technical Reference: QAD QXtend Outbound (78-0664A)
New Features
Improved Support for Business Objects
This new version of QXO supports more business objects than the previous version. With the current release of QXO, the following additional business objects are provided:
Alternate Unit of Measure
Purchasing Price List
Analysis Code
Generalized Codes
Analysis Code Link
Inventory Status
Analysis Code Selection
Master Comment
Supplier Item
Cost Set
Product Line
Work Center
Product Structure Code
Ability to Track Outbound Messages
QXO now includes the QXtend Message Monitor that allows you to track outbound profile messages that are delivered to external subscribers. You also can view the response messages that are returned from subscribers. Using the Message Monitor feature you can thus view the complete lifecycle of profile messages through QAD QXtend—from publication and delivery through to response.
Note: The QXtend Message Monitor runs only in the QAD .NET user interface (UI) and is a plug-in to QAD QXtend. The QAD .NET UI is based on Microsoft .NET technology and provides a common framework for multiple QAD applications.
Using the QAD QXtend Message Monitor you can view:
A summary of the details of profile messages delivered to subscribers
Details of subscriber messages, including delivery status
Details of subscriber responses arising from message processing
Raw XML data for messages, requests, and responses
In order to support the ability to group profile messages by type, you can now associate a profile with a profile type when creating or modifying a profile. A profile type describes the application type of a subscriber. The Message Monitor lists by default the profile type associated with a profile message.
The addition of the Message Monitor has rendered obsolete the Response Directory field on the Configuration Parameters screen for subscribers; this field has consequently been removed.
Ability to Schedule Message Delivery
You can now define a delivery schedule to control the transmission of a single document or multiple documents in a batch to subscribers at a specific time. A delivery schedule can be used as the default schedule.
Various types of schedule can be defined for transmitting documents:
Immediately when published. If no delivery schedules are defined this is the default system behavior. You select this option when defining a subscriber.
At a specified time (or times) during the day. You can choose from several predefined times or specify one or more user-specified times.
On selected days of the week at specified times.
During selected months on specified days at specific times.
The subscriber Configuration Parameters screen now has the following additional schedule-related options:
Use the Allow Superseded check box to indicate whether the subscriber only accepts the latest revision of a document or incremental updates of a document. The Allow Superseded option is typically used when multiple QDocs exist for the same rowid that has been updated multiple times, and only the latest QDoc is required.
Use the Sending Option drop-down list to specify how to send the message. For example, you can either send the message immediately or use one of the defined delivery schedules.
Ability to Archive QAD QXtend Data
You can now use the Archive Settings feature to configure archive settings. You can delete and optionally archive data in the qxodb database that is no longer necessary for the day-to-day running of QXO.
Using the archive feature you can:
Archive raw data from business objects
Archive profile messages, including child data such as responses and exceptions
Archive alerts and logs
Schedule archive runs
Run an archive service
Typically your business requirements will dictate the types of data—alerts and logs, published messages, event messages—you need to archive and how often you should archive.
You also can run the archive feature by using a cron job. Using a cron job lets you schedule archiving to occur at multiple times per day, if required. Configuring archiving using the Archive Settings screen only lets you schedule archiving to occur once per day on the days you specify.
When defining a business object, you indicate that event messages for that business object should be archived by selecting the Archive check box on the Business Objects properties dialog.
Additional Subscriber Configuration Options
When defining a subscriber, you now can specify the following additional configuration options:
Receiver and domain values required by the subscriber
A SOAP action (required if the subscriber is for a QXI instance)
A SOAP envelope (allows QDocs to be sent to Web services that accept or poll for XML documents)
Ability to Synchronize Rowids Across MFG/PRO and QXO Databases
From time to time you may need to perform Progress database dump and load procedures for various maintenance-related reasons. Performing dump and load procedures changes the assigned rowids in the MFG/PRO database; this means that rowids will no longer be synchronized with the original rowids stored in the QXO database. This reassignment of rowids will result in erroneous messages being generated by QXO. To correct the rowid mismatch and resolve this issue, you now can run the QXO mass rowid synchronization tool.
This tool iterates through the records in the Event Message section table of qxodb and queries the MFG/PRO database to determine if the rowids match. If there is a mismatch, the tool synchronizes the Event Message section record rowid to that of the MFG/PRO rowid.
Ability to Control Services from the Command Line
You can now start, stop, or query QXO services—Event Service, Message Publisher, for example—by running a tool from the command line. Using this tool you can shut down your QAD QXtend services cleanly as part of a scheduled backup process, and then restart them once the qxodb server is running.
Ability to Validate a QXO Configuration
You can now validate your QXO configuration by viewing validation information. The Validate Configuration utility—available in the Configuration tab under the Utilities node in the navigation tree—provides validation information about each aspect of your QXO configuration, including level of severity, message, and cause. A severity level of 1 indicates a critical error. A severity level of 2 is an advisory to check your configuration.
1 Dates are now published in ISO YYYY-MM-DD format. This format is required when submitting outbound messages to QXI.
2 Previously, the error message that was generated if the event type did not exist omitted the name of the missing event type—for example, “ERROR: Event type does not exist 112.” The modified error message now shows the name of the table that is missing an event type record—for example, “ERROR: Event type code_mstr does not exist 112.”
3 The dump of the business object failed if there was an unknown value passed in to the
set-attribute method of the node. The method has been modified to check for the unknown value and put a blank in its place.

In addition, in previous releases on the UNIX platform, if a business object being dumped was larger than 32K, QXO would not output anything due to the Progress limitation of 32K for a character. The dump of the business object has been modified to load into a Progress MEMPTR (memory pointer) instead.
4 When importing business object and profile definitions, if the XML contained a profile with the same name as an existing default profile, the result was the error message “Profile already exists” (sev-3). This fix first deletes the existing default profile and then imports the new profile.
5 When modifying a business object, the fixed values and calculated programs fields were being overwritten in the profiles for the business object. This fix checks to see if the fixed values and calculated programs fields have been set previously and, if so, preserves these values.
6 When using the Publish with Parent option on a profile data object, all subsequent child records were not being published in the QDoc. This has now been fixed and the child records are published.
7 When QXO received a QDoc response that was larger than 32K, the response was truncated or blank, and the error message “Attempt to exceed the max size of Char variable” was generated. The
msg-handler.p program has now been fixed to support large object binaries (LOBs) larger than 32K.
8 The QDoc name was sometimes changed during a business object import. This has now been fixed—the QDoc name from a business object import is now always identical to the original.
Optional Patches
In some circumstances you may need to install optional patches, which are described in the table below. These patches are available from QAD Support. Ideally these patches should be installed after QAD QXtend is extracted from the CD, but before it is built and compiled.
This file contains two patches. The first patch fixes a bug that arises when performing a resubmit. The second patch fixes a bug that arises when multiple message sender agents for a single message sender are configured.
This patch must be installed if you intend to use multiple sender threads.
This file contains two patches. The first patch sets the mnemonicsRaw attribute of all QDocs to True. This avoids having to put language detail records in the business object. The second patch corrects the situation where QXO is not producing the QDoc in the same format as QXI is expecting for arrays.
These patches should be installed if you are configuring QXO to provide data synchronization capability with QXI.
This fix was added to QXO to cause it to ignore updates to business object query definitions for data deletes. However, for data additions/updates, this patch causes QXO to recheck the business object query definition and publish the QDoc.
This patch must be installed if, during QAD QXtend configuration, business objects are loaded from a file.
This patch corrects the situation where loading profiles did not link the profile type correctly.
You should install this patch if you intend to use the synchronization profiles to be provided by QAD.