April 2009 - Posts

 

 

 

 

 


In this issue

  • EDI
  • AS2
  • Mapping Tips and Tricks
  • Business Rules
  • Naming conventions
  • Tools like BizTalk Terminator and BizTalkCop for Static Code Analysis for BizTalk

Great work!

Posted by Nino Crudele | with no comments

I have a SQL trace, I prepared with patience and allowing to filter the most interesting events BizTalk unleashes during its work.
I assure you discover very interesting things, you can see's bts_DeQueueMessages_ [HosTname] host carried out by the host instance to run messages spool call.
The inclusion of the property through the bts_InsertProperty and the mythical bts_FindSubscriptions to search for subscriptions.

I think that there is nothing better to understand exactly functions but above all which weapons we have to be able to speak and understand problems.

Some types of queries may be helpful to understand how a BizTalk Server is working and how you configured.
In particular, I always ask these questions:

As you can run the resume of multiple messages?, how do I understand how many instances are working well and which have problems?
Clear that from the hub can run the query but do not have a lot.
Just a bit of patience and BizTalk to give us answers that we are trying to.

To try these queries we need to copy the text and run it in SQL 2005.

Configuring the messagebox:

 declare @ p2 nvarchar (128)  set @ p2 = N  'NOMEMACCHINA' 
 declare @ p3 nvarchar (128)  set @ p3 = N  'BizTalkMsgBoxDb' 
 declare @ p4  int 
 set @ p4 = 1  declare @ p5  int 
 set @ p5 = 60  exec admsvr_LoadMsgBoxGroupProperties @ nvcGroupName = N  ' BizTalk group ' , @  output , nvcMasterDBServer=@p2 @ nvcMasterDBName=@p3  output , @  output , nNumMsgboxServers=@p4 @ nCacheRefreshInterval=@p5  output 
 Select @ p2, @ p3, @ p4, @ p5

To understand what the master, disable the publication of messages etc.

This is all istance pending

exec ops_OperateOnInstances @snOperation=0,@fMultiMessagebox=0,@uidInstanceID='00000000-0000-0000-0000-000000000000',@nvcApplication=N'',@snApplicationOperator=0,@nvcHost=N'',@snHostOperator=0,@nServiceClass=111,@snServiceClassOperator=0,@uidServiceType='00000000-0000-0000-0000-000000000000',@snServiceTypeOperator=0,@nStatus=36,@snStatusOperator=1,@nPendingOperation=1,@snPendingOperationOperator=0,@dtPendingOperationTimeFrom='Jan  1 1753 12:00:00:000AM',@dtPendingOperationTimeUntil='Dec 31 9999 10:59:59:997PM',@dtStartFrom='Jan  1 1753 12:00:00:000AM',@dtStartUntil='Dec 31 9999 10:59:59:997PM',@nvcErrorCode=N'',@snErrorCodeOperator=0,@nvcErrorDescription=N'',@snErrorDescriptionOperator=0,@nvcURI=N'',@snURIOperator=0,@dtStartSuspend='Jan  1 1753 12:00:00:000AM',@dtEndSuspend='Dec 31 9999 10:59:59:997PM',@nvcAdapter=N'',@snAdapterOperator=0,@nGroupingCriteria=0,@nGroupingMinCount=0,@nMaxMatches=51,@uidAccessorID='4386A978-682A-4F58-B32D-D9BA0D074F64',@nIsMasterMsgBox=0
 
To perform a more relaxed filter, you better filter TexData on NotLike % bts_DeQueueMessages_NOMEHOST %
unless not please see the BizTalk heart beat, is still nice.
The bts_DeQueueMessages_NOMEHOST stored is called continuously from its host to spool messages.
In the long term is annoying but offers a good point of reference on some reads.
To run the resume of a message BizTalk calling:
 set @ p21 = 0  exec [dbo]. [bts_UpdateMsgbox_NinoHost] @ nArtifactType=1,@nAction=207,@uidObjectID=N  ' {6D12B877-ADFF-4B54-98B1-CB4A1A6B5E68} ' , @ uidInstanceID = N '{6D12B877-ADFF-4B54-98B1-CB4A1A6B5E68}' ,  @ uidServiceID = N  ' {C97C4CB1-A853-413B-A3C6-C1CAECB74ABF} ' , @ uidClassID = N '{59F295B0-3123-416E-966B-A2C6D65FF8E6}' ,  @ uidActivationID = N '{16B83A2B-CAAE-4581-B36F-675AA582CA6C}' ,  @ uidInstanceStateID =  NULL , @ uidWorkID =  NULL , @ uidPortID =  NULL , @ nvcErrorID =  NULL , @ nErrorCategory=0,@nvcAdditionalInfo=  NULL , @ nIsResumable=0,@dtResubmitTimeStamp=  ' 30 Dec 1899 12: 00: 000 AM ' , @ nvcLastAction =  NULL , @ nvcURL =  NULL , @ nvcAdapter =  NULL , @  output , fOptimize=1,@uidDBOwnerID=@p20 @ nReturn=@p21  output 
 Select @ p20, @ p21
Cchiaro it to work on the best is necessary to decode the various information, I refer to the various UID.
To do this is necessary to rely to related tables, such as the applications, the famous SPOOL where we have the messageType and the uidMessageID.
 

This is the trace template

Posted by Nino Crudele | with no comments

If we want to send a document to a form library InfoPath WSS 3.0 by using the BizTalk adapter must specify the Optiondi ProcessingInstruction in our message through

a shape of Contructmessage or proprità copy processing instruction on the map processing setting to true.

Clear that if the inbound message does not contain these instructions must insert them handwritten by precisely a contruct message shape.

This is how to:

MsgOUT = MsgIN;
MsgOUT (XMLNORM.ProcessingInstructionOption) = 1;
(XMLNORM.ProcessingInstruction) MsgOUT = ' <? mso-infoPathSolution solutionVersion=\"1.0.0.1\"productVersion=\"11.0.6250\" PIVersion=\"1.0.0.0\"href=\"file:///C:\\InfoPath\\ExpenseReport.xsn\" name = \ "urn: schemas - microsoft - com: infopath:ExpenseReport:-myXSD-2004-04-20T07-24-16\"? > <? mso-application progid=\"InfoPath.Document\"? > ";

Posted by Nino Crudele | with no comments

Someone me it must explain, there please.
By Supplement are I scontrarmi with more strange situations often trying to publish a form InfoPath on a WSS 3.0, the carognetto me responds with this error:

the following url is not valid

image

AAAAHHHH no I say, I started sbatterci the skull for a little and asked to almost all authorities more sharepointistiche etc., or tried also with the pusher... but nothing!.
I was able to solve it by disabling the service: System event notification service

image

Why all this? smile_baringteeth

I appeal to anyone who is capable of me a response donate me sleep tonight.
Remember that cardboard animated...

Posted by Nino Crudele | with no comments

Blogging Jesus found an interesting post on stress testing of WCF services exposed by BizTalk Server .
The use of LoadGen BizTalk was always one of the major points of interest, although remains one aspect of purely peripheral nature and simple support.
The post is a introductory and it is not some highlights, such as the main counters BizTalk and aspects of persistence database side but is certainly aid for those who will begin to understand the first procedures to implement.

Posted by Nino Crudele | with no comments