Archive for the ‘BizTalk’ Category

Promoted values for EDI schemas does not work in BizTalk 2009. The EDI disassembler seems to be the villon for this behaviour. Using the xml disassembler with and Edifact message in xml format works just fine, but using the Edi disassembler the same promoted values would not be promoted. I stumbled across this behavor when trying to correlate on a COARRI d95B Edifact message in an orchestration. One solution is to map the message to xml in the receive port, before receiving in the orchestration. Another solution, which is better, is to write your own custom pipeline component and promote the property yourself after the disassembler. Thanks to my collegue Stefan for finding this page: http://social.msdn.microsoft.com/Forums/en-US/biztalkediandas2/thread/bc612dac-b9ad-4dae-a275-f9a6c6309036

Read Full Post »

The xpath function is quite neat, you can use it in expression shapes for both getting and setting data. Here is an example:

xpath(AggregatedMessage, “/*[local-name()=’EFACT_D95B_COARRI_ITG12′ and namespace-uri()=’http://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006′%5D/*%5Blocal-name()=’UNT’ and namespace-uri()=”]/*[local-name()=’UNT2′ and namespace-uri()=”]”) =  xpath(AggregatedMessage,”count(//UNH)”);

This expression sets the element UNT2  (using the xpath expression above) in the message AggregatedMessage to a calculated value of  UNHs.  As you see, you may use xpath functions in your call, here I used the count() function. For getting a value of a node, simply used the function string(), for instance this could look like: receiverId = xpath(ContainerAnnouncement, “string(//UNB/S003_0010”);

Read Full Post »

Microsoft changed the name on ESB Guidance to ESB toolkit and released version 2.0 yesterday. Head to http://msdn.microsoft.com/en-us/dd876606.aspx for more information as well as a download.

An Enterprise Service Bus (ESB)http://msdn.microsoft.com/en-us/dd876606.aspx

Read Full Post »

I guess many BizTalker’s use the Event log for writing debug messages.  Consider using the trace log instead, by doing this, you will get by the problems such as a full event log. Use the following code in an expression shape to log to the trace log:

System.Diagnostics.Trace.WriteLine(“My message”, “My category”);

Then, by using a listener, such as DebugView you can read the messages. Make sure to use the Filter/Highlight functionality under the Edit menu to filter so you only view your messages (set the filter to’ My category’).

Read Full Post »

I attended the seminar “Inside the Windows Application Server Enhancements known as Dublin” in Stockholm last night and it was very interesting!
Stephen Thomas was the key speaker and he spoke about what Dublin is, what it does and he also made some demonstration (from a only 3 weeks old version of “Dublin”), were he deployed and worked with WCF and WF services in “Dublin” (.Net 4.0). 

“Dublin”, will be shipped as an add on to IIS in Windows Server 2008,  and you will get four new icons in the IIS manager for managing and monotoring your WCF/WF services.

One thing (which is a bit funny), it that you recognize a lot if you are a BizTalk developer. Creating WFs in Visual Studio 10 (released sometime next year), you do a lot of drag and drop programming (dragging shapes onto the WF). Furthermore, the management tool in IIS for Dublin is quite similar to the Management tool in BizTalk; services can be stopped, suspended services can be resumed.

So, what’s the difference between “Dublin” and Biztalk?
– BizTalk has build in support for a lot of different adapters, for example the EDI adapter. Dublin does only have support for wcf adapters.
– Dublin does not have a mapping tool such as BizTalk’s mapper (however, mapping could be done in xslt, but it’s not visual).
– Dublin is ideal for low latency solutions, where it may be a better solution to use instead of BizTalk.

So, what can I say about “Dublin”? I think that you can see it as a light version of BizTalk, where people is going to host some WCF/WF services for some flows and use BizTalk for others (depending on the needs).

When will Dublin be released? Microsoft will probably release a beta later this year (in the fall?) and it will be released at the same time as Visual Studio 10 (sometime early 2010).

Read Full Post »

I got an error trying to receive an EDIfact file (A COARRI D95B) containing a value in the UNH2.5 field (Association Assigned Code_0057):

“Error encountered during parsing. The Edifact transaction set with id ” contained in interchange (without group) with id ‘1CJ6U’, with sender id ‘SENDERID’, receiver id ‘RECEIVERID’ is being suspended with following errors:

Error: 1 (Miscellaneous error)
 502: Document spec type
http://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006#EFACT_D95B_COARRI_ITG13 not found”

I was using the Edifact schema as is from the XDR folder in BizTalk.

The file contained the following row in UNH:


Then I found the following on Microsoft’s web site (http://msdn.microsoft.com/en-us/library/bb246058.aspx):

“If you use UNH2.5 (the Association assigned code) for schema resolution of an incoming EDIFACT interchange, you will need to update the relevant document schema in the drive: \Program Files\Microsoft BizTalk Server 2009\XSD_Schema folder. You will need to append the value of UNH2.5 to the existing values for the root_reference, display_reference, and xs:element name. For example, if UNH2.5 is “EAN008” and you are using the EFACT_D96A_INVOIC schema,  you would set root_reference, display_reference, and xs:element name to “EFACT_D96A_INVOIC_EAN008″.”

Obviously I had to change the schema. I simply changed the node name of the root node, from EFACT_D95B_COARRI to EFACT_D95B_COARRI_ITG12 (where IGT12 is the value supplied in the in file in UNH2.5). This changed the root_reference to EFACT_D95B_COARRI_ITG12 automatically. Then, I added IGT12 value to the type_name property as well (this property was now set to EFACT_D95B_COARRI_ITG12).

Now, BizTalk could recognize the file and everything works perfectly!

Read Full Post »

Using virtual machines for you development BizTalk servers? Check out the scripts available under the sdk in BTS 09 for changing the computer name and update various instances of the machine name that are stored in registry and databases as well!

I tried it myself some time ago and didn’t get it to work (I had problems acessing  the datebase after I ran the scripts). I didn’t have time to figure out what went wrong, but it’s a lot of different values to change in the config files… However, I made a backup copy of my vpc before I ran the scripts so it wasn’t a problem.

Check it out at http://msdn.microsoft.com/en-us/library/dd792685.aspx.

Read Full Post »

« Newer Posts - Older Posts »