Microsoft KB Archive/325165

= Implement a Custom Preprocessor to Read Header Properties =

Article ID: 325165

Article Last Modified on 11/15/2007

-

APPLIES TO


 * Microsoft BizTalk Adapter for MQSeries

-



This article was previously published under Q325165



SYMPTOMS
On many occasions, you may want to read and preserve the MQSeries header properties of a message that flows from MQSeries to BizTalk to MQSeries because it permits back end systems to carry out various operations such as identifying and correlating the message with the MsgID and CorrelID based on header properties. However, BizTalk Adapter for MQSeries does not provide a way for you to read these header properties.



RESOLUTION
A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.

To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

http://go.microsoft.com/?linkid=6294451

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

http://support.microsoft.com/contactus/?ws=support

The English version of this fix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.

  Date         Time   Version      Size     File name 14-Aug-2002 9:11   1.0.45.7     34,816   Mtbsvc.exe 14-Aug-2002 9:11   1.0.45.7     27,136   Aicmq.dll 14-Aug-2002 9:11   1.6.1.1      51,200   Lkrhash.dll 14-Aug-2002 9:11   1.0.45.7     172,544  Mmcmqs.dll 14-Aug-2002 9:11   1.0.45.7     27,648   Mqadaptersetup.dll 14-Aug-2002 9:11   1.0.45.7     65,536   Mqhelper.dll 14-Aug-2002 9:11   1.0.45.7     7,680    Mqhelperps.dll 14-Aug-2002 9:11   1.0.45.7     58,880   Mtbworker.dll 14-Aug-2002 9:11   1.0.45.7     20,480   Svcevent.dll 30-Aug-2002 13:02               143,696  Mmcmqs.chm 14-Jun-2002 14:27               1,294    Aicmq_mqpipeline_1.asp 14-Jun-2002 14:27               1,248    Aicmq_mqpipeline_1_post.asp

Installation Instructions
NOTE: The fix must be applied on an RTM installation. If you have earlier hotfixes installed, you must roll back to the RTM version when you remove the hotfixes. This hotfix is a cumulative package that includes the fixes that are described in the following Microsoft Knowledge Base articles:

316405 FIX: You Cannot Send Messages from MQSeries to BizTalk on the Chinese Version of a Windows 2000-Based System

320738 FIX: BizTalk Adapter for MQSeries Service Requires an Administrator Account

320726 Implement Custom Post-Processor to Add Header Properties in AIC

324529 Parameters for Polling Interval and Threshold After Communication Failure


 * 1) Stop the BizTalk Adapter for MQSeries service.
 * 2) In Component Services, remove the MQHelper COM component from the BizTalk Adapter for MQSeries COM+ application.
 * 3) Install the Btsmqs_q325165.exe fix. You receive a prompt to restart the server.
 * 4) Add MQHelper COM+ components to the BizTalk Adapter for MQSeries COM+ application by using the new binary (C:\Program Files\Microsoft BizTalk Adapter for MQSeries\Mqhelper.dll).
 * 5) Replace the RTM Active Server Pages (ASP) pages that are installed under the BizTalk folder (C:\Program Files\Microsoft BizTalk Server\MessagingManager\pipeline) with the ASP pages that are in the .zip file (Aicmq_mqpipeline_1.asp and Aicmq_mqpipeline_1_post.asp).
 * 6) Use the header file (Bts_mqs_sdk_guids.h) in the .zip file to create your preprocessor component.



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.



MORE INFORMATION
After you apply this fix, you can configure the preprocessor in the BizTalk Adapter for MQSeries Configuration Manager at the mapping level of the appropriate job.

When it is configured, the preprocessor component permits the MQ Helper to take both the header properties and the message payload from an incoming message and send them to the preprocessor. The preprocessor updates the message and sends it back to the BizTalk Adapter for MQSeries, and the adapter can then submit the modified payload that now contains the values of the header properties to BizTalk.

