I got a question the other day, and thought I’d post a very short how-to. The problem the questioner had was this: They encountered a situation where they wanted to view the incoming document before BizTalk has begun processing it – the sending party “hadn’t changed anything” yet all of a sudden the message was failing in BizTalk. How can this easily be available?

By default, when you look at a ports Tracking tab, no box is checked.

If you try and look at the message details of such a message

you will get an error dialogue.

However if I return to my port and check some of those check boxes for tracking, in this case “Request message before port processing”

make sure that the SQL job TrackedMessages_Copy_BizTalkMessageBoxDb is running as it should (which by default is enabled and running)

Now if I send in another message and try to look at its Message Details I get a dialogue containing the details I am after, including the content of the message

As expected this dialogue may not show some characters correctly, but you can easily go to File Save Message.

This will create two files, one which is the context properties, and the other the message.

The message will stay in the database as long as configured in the database job DTA Purge and Archive (BizTalkDTADb). Live means the the ServiceInstance exists (ie suspended) and Hard that it is no longer in BizTalk.