<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;A0cNQ38yeCp7ImA9WhBVE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030</id><updated>2013-04-18T23:04:52.190+02:00</updated><category term="Performancepoint" /><category term="BizTalk" /><category term="EDI" /><category term="Windows Communication Foundation" /><category term="Cloud" /><category term="Workflow Foundation" /><category term="SQL Server" /><title>Snatched moments</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://www.snatchedmoments.com/" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>24</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/SnatchedMoments" /><feedburner:info uri="snatchedmoments" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CUIDRXkyeCp7ImA9WhNaFUo.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-2287603878596965190</id><published>2013-01-30T20:19:00.001+01:00</published><updated>2013-01-30T20:19:34.790+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-30T20:19:34.790+01:00</app:edited><title>Azure Thoughts, EAI Challenges: BizTalk Community Series: Introducing Torben Chron...</title><content type="html">Thanks to Steef-Jan for write a profile about me :-)&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://soa-thoughts.blogspot.com/2013/01/biztalk-community-series-introducing_30.html?spref=bl"&gt;Azure Thoughts, EAI Challenges: BizTalk Community Series: Introducing Torben Chrona Christiansen&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/WMqnvxEaePA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/2287603878596965190/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2013/01/azure-thoughts-eai-challenges-biztalk.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/2287603878596965190?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/2287603878596965190?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/WMqnvxEaePA/azure-thoughts-eai-challenges-biztalk.html" title="Azure Thoughts, EAI Challenges: BizTalk Community Series: Introducing Torben Chron..." /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2013/01/azure-thoughts-eai-challenges-biztalk.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkAHQn0_fSp7ImA9WhNbEUQ.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-1323870373166301852</id><published>2013-01-14T20:12:00.000+01:00</published><updated>2013-01-14T20:12:13.345+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-14T20:12:13.345+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Workflow Foundation" /><title>Delay activity in Workflow foundation </title><content type="html">The Delay activity in Workflow Foundation can be used in many scenarios, but the most likely use is in a composite operation, where you want the execution to wait for a response and cast a failure if the response isn't received in proper time.&lt;br /&gt;
&lt;br /&gt;
The Delay activity has just one parameter, which is call Duration. It expects a Timespan variable or expression. If you want the same duration in every place it would be wise to create a variable to hold the value and use it at the right spots or a better option would be to create a custom activity:&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Add a new file&lt;/li&gt;
&lt;li&gt;Add the delay activity&lt;/li&gt;
&lt;li&gt;Set the Duration on the delay activity&lt;/li&gt;
&lt;li&gt;Rebuild the project&lt;/li&gt;
&lt;li&gt;Add the custom activity to your workflow&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
In Visual Basic Workflow projects this is how you configure it in the expression:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-Ig53zThpYqY/UPRWZrH4DCI/AAAAAAAABk0/x9OiBKET3yE/s1600/DelayActivity2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="184" src="http://3.bp.blogspot.com/-Ig53zThpYqY/UPRWZrH4DCI/AAAAAAAABk0/x9OiBKET3yE/s320/DelayActivity2.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
In Visual C# Workflow project there is a difference based on the edition of Visual Studio you are using. If it is .Net Framework 4 then you have to use Visual Basic syntax and if it is .Net Framework 4.5 you can use C# language in the expression:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-GbLxpxPI9aM/UPRXB9QGCcI/AAAAAAAABk8/dSKga2ePwG0/s1600/delayactivity.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="146" src="http://4.bp.blogspot.com/-GbLxpxPI9aM/UPRXB9QGCcI/AAAAAAAABk8/dSKga2ePwG0/s320/delayactivity.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2013/01/update-to-lens-and-camera-database.html"&gt;Update to lens and camera database&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/p/nikon-prime-normal-lens-testreview.html"&gt;Nikon normal lenses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/p/canon-wide-zoom-testreview-database.html"&gt;Canon wide zoom lenses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2013/01/simple-autogenerated-facade-wcf-service.html"&gt;Simple autogenerated facade WCF service with T4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/10/superliga-runde-14.html"&gt;Superliga runde 14&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://officepower.blogspot.dk/2012/11/welcome-to-office-power-blog.html"&gt;Welcome to Office Power blog&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;i&gt;Help me, help you. You know how ;-) (click, click, click...) Or buy anything at &lt;a href="http://www.amazon.com/?_encoding=UTF8&amp;amp;tag=photospots-20&amp;amp;linkCode=ur2&amp;amp;camp=1789&amp;amp;creative=390957" target="_blank"&gt;Amazon&lt;/a&gt;. You get the same price, and I get a little bit of money. Follow the Photospots site on &lt;a href="http://www.facebook.com/photospotsdk"&gt;Facebook&lt;/a&gt; &lt;/i&gt;&lt;/b&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/2Px1kQF8sZ0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/1323870373166301852/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2013/01/delay-activity-in-workflow-foundation.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/1323870373166301852?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/1323870373166301852?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/2Px1kQF8sZ0/delay-activity-in-workflow-foundation.html" title="Delay activity in Workflow foundation " /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-Ig53zThpYqY/UPRWZrH4DCI/AAAAAAAABk0/x9OiBKET3yE/s72-c/DelayActivity2.jpg" height="72" width="72" /><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2013/01/delay-activity-in-workflow-foundation.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU8DSHs_cSp7ImA9WhNUGE8.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-1932511259615628679</id><published>2013-01-10T15:24:00.002+01:00</published><updated>2013-01-10T15:24:39.549+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-10T15:24:39.549+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Workflow Foundation" /><title>Change expression language in Workflow Foundation 4.5</title><content type="html">In Workflow Foundation 4.5 in the .Net Framework 4.5 it is possible to use C# as your expression lanugage, but how do you change it for a workflow that has been upgraded from .Net Framework 4.0?&lt;br /&gt;
&lt;br /&gt;
There are two ways. One is to create a new workflow in your project (this assumes that your project is based on the C# project template) and copy the shapes/recreate&amp;nbsp;over to the new workflow and afterwards you have to change each expression to the C# language. &lt;br /&gt;
&lt;br /&gt;
Another option is to open the file in XML mode and add the following attribute to the root element: &lt;span style="color: red;"&gt;sap2010:ExpressionActivityEditor.ExpressionActivityEditor&lt;/span&gt;&lt;span style="color: blue;"&gt;="C#"&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-ZZikVmwyEy8/UO7O5Ialg-I/AAAAAAAABkU/YD8uyUUNtFE/s1600/Change+expression+language.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="35" src="http://3.bp.blogspot.com/-ZZikVmwyEy8/UO7O5Ialg-I/AAAAAAAABkU/YD8uyUUNtFE/s640/Change+expression+language.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
You still have to go into each expression to change from C# to Visual Basic code. You don't even get any compiler errors. It would be nice if this were better in the next version, but most likely not.
&lt;br /&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2013/01/the-nikon-d5200-should-i-upgrade-from.html"&gt;The Nikon D5200, should I upgrade from Nikon D90?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/p/nikon-prime-normal-lens-testreview.html"&gt;Nikon normal lenses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/p/canon-standard-zoom-testreview-database.html"&gt;Canon standard zoom lenses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2013/01/simple-autogenerated-facade-wcf-service.html"&gt;Simple autogenerated facade WCF service with T4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/11/superliga-runde-15.html"&gt;Superliga runde 15&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/designing-ui.html"&gt;Designing the UI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://officepower.blogspot.dk/2012/11/welcome-to-office-power-blog.html"&gt;Welcome to Office Power blog&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;i&gt;Help me, help you. You know how ;-) (click, click, click...) Or buy anything at &lt;a href="http://www.amazon.com/?_encoding=UTF8&amp;amp;tag=photospots-20&amp;amp;linkCode=ur2&amp;amp;camp=1789&amp;amp;creative=390957" target="_blank"&gt;Amazon&lt;/a&gt;. You get the same price, and I get a little bit of money. Follow the Photospots site on &lt;a href="http://www.facebook.com/photospotsdk"&gt;Facebook&lt;/a&gt; &lt;/i&gt;&lt;/b&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/MgUQ_QZySp4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/1932511259615628679/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2013/01/change-expression-language-in-workflow.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/1932511259615628679?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/1932511259615628679?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/MgUQ_QZySp4/change-expression-language-in-workflow.html" title="Change expression language in Workflow Foundation 4.5" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-ZZikVmwyEy8/UO7O5Ialg-I/AAAAAAAABkU/YD8uyUUNtFE/s72-c/Change+expression+language.jpg" height="72" width="72" /><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2013/01/change-expression-language-in-workflow.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEYASHgyeSp7ImA9WhNUF08.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-5335778289229090725</id><published>2013-01-09T11:09:00.001+01:00</published><updated>2013-01-09T11:09:09.691+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-09T11:09:09.691+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><category scheme="http://www.blogger.com/atom/ns#" term="Workflow Foundation" /><title>Use the BizTalk 2010 mapper in Visual Studio 2012 Workflow Foundations</title><content type="html">With BizTalk Server 2010 the mapper got updated to a new version and one of the features was the possibility to use the mapper in Workflow Foundation. What happens if you try to use the mapper in Visual Studio 2012?&lt;br /&gt;
&lt;br /&gt;
In Visual Studio 2012 there are some really nice new features for Workflow Foundation like annotations, C# in expressions and a lot more. Coming from a BizTalk world you might want to use the BizTalk mapper to map between two different types and now that it also is an activity the logical choice would try to use the BizTalk mapper in Workflows. This will most likely be fixed in BizTalk Server 2013, but then you have to wait for that upgrade and you might not want to upgrade your BizTalk just because you use a newer version of Workflow Foundation.&lt;br /&gt;
&lt;br /&gt;
First part is to add the activity to the toolbox. It isn't available just be choose items like you normally would, but if you browse the GAC you should find a DLL called Microsoft.ServiceModel.Channels.MapperActivy.&lt;br /&gt;
&lt;br /&gt;
You can now add it to your Workflow, but when you click the BizTalkMapClass you get the following error:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-uMT5Bxe_iGM/UO1Be0HEScI/AAAAAAAABjM/MlLnD3GMUlA/s1600/MapperError.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="302" src="http://3.bp.blogspot.com/-uMT5Bxe_iGM/UO1Be0HEScI/AAAAAAAABjM/MlLnD3GMUlA/s320/MapperError.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Now to the workaround. Use Visual Studio 2010 to create a simple project where you use the mapper with the same input and output parameters and create the map you need. This should create a folder with the schema files, map file and a C# file. This folder you need to include in your Visual Studio 2012 project.&lt;br /&gt;
&lt;br /&gt;
If you like you can change the namespace in the C# class file. Next you need to edit your Workflow in XAML mode (view code) and find the activity. Here you will find an attribute BizTalkMapClass and change that to the namespace and class&amp;nbsp;in the&amp;nbsp;C# from the Visual Studio 2010 folder:&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: #cc0000;"&gt;&amp;lt;mscm:Mapper&lt;/span&gt; &lt;span style="color: red;"&gt;x:TypeArguments&lt;/span&gt;&lt;span style="color: blue;"&gt;="x:String, x:String"&lt;/span&gt; &lt;span style="color: red;"&gt;BizTalkMapClass&lt;/span&gt;&lt;span style="color: blue;"&gt;="&lt;strong&gt;HelpForUsingBizTalkMapperInVS2012.MapString&lt;/strong&gt;"&lt;/span&gt; &lt;br /&gt;
&lt;br /&gt;
The last thing you need is to create a reference to the assembly Microsoft.XLANGs.BaseTypes which are located at "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\Microsoft.XLANGs.BaseTypes.dll".&lt;br /&gt;
&lt;br /&gt;
You project is now ready to go and should compile and run without any problems.&lt;br /&gt;
&lt;br /&gt;
If you look closer at the items in the map created folder you will see that runtime it is actually only the C# code that is used. It contains the method to serialize the objects to XML and it contains the XSLT from the map. The map and the schemas are just there so that you can use the mapper in design time.
&lt;br /&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/10/a-new-section-to-lens-database.html"&gt;A new section to the lens database&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/p/nikon-af-s-dx-zoom-nikkor-17-55mm-f2.html"&gt;Nikon DX lenses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/p/canon-wide-lens-testreview-database.html"&gt;Canon wide lenses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2011/10/wcf-bam-interceptor-and-no-data.html"&gt;WCF BAM interceptor and no data&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/09/superliga-runde-11.html"&gt;Superliga runde 11&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://officepower.blogspot.dk/2012/11/welcome-to-office-power-blog.html"&gt;Welcome to Office Power blog&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;i&gt;Help me, help you. You know how ;-) (click, click, click...) Or buy anything at &lt;a href="http://www.amazon.com/?_encoding=UTF8&amp;amp;tag=photospots-20&amp;amp;linkCode=ur2&amp;amp;camp=1789&amp;amp;creative=390957" target="_blank"&gt;Amazon&lt;/a&gt;. You get the same price, and I get a little bit of money. &lt;/i&gt;&lt;/b&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/4s81IS5B66Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/5335778289229090725/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2013/01/use-biztalk-2010-mapper-in-visual.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/5335778289229090725?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/5335778289229090725?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/4s81IS5B66Q/use-biztalk-2010-mapper-in-visual.html" title="Use the BizTalk 2010 mapper in Visual Studio 2012 Workflow Foundations" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-uMT5Bxe_iGM/UO1Be0HEScI/AAAAAAAABjM/MlLnD3GMUlA/s72-c/MapperError.jpg" height="72" width="72" /><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2013/01/use-biztalk-2010-mapper-in-visual.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEIFSX07eSp7ImA9WhNUFkg.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-5542646726101754745</id><published>2013-01-08T15:48:00.002+01:00</published><updated>2013-01-08T15:48:38.301+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-08T15:48:38.301+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Workflow Foundation" /><title>Workflow foundation annotations and upgrade problems</title><content type="html">One of the cool new features of the Workflow Foundation in the .Net framework 4.5 is the annotations. This gives you the option to at nice comments to your workflows.&lt;br /&gt;
&lt;br /&gt;
In the designer you just have to right click your activity and choose the annotations menu item to add, edit or delete annotations.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-U-4dlW6MKq0/UOwxlCpue6I/AAAAAAAABi8/QerKpXt8Vls/s1600/AnnotationsWF.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://2.bp.blogspot.com/-U-4dlW6MKq0/UOwxlCpue6I/AAAAAAAABi8/QerKpXt8Vls/s320/AnnotationsWF.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
If you upgrade your Visual Studio project from Visual Studio 2010 you can't see these menu options. The problem is that the upgrade wizard doesn't change the target framework, so if you go into properties window of your project and change the Target framework to .Net Framework 4.5 or newer, then you will have the option to add annotations to your workflow.
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/11/best-place-to-find-your-next.html"&gt;Best place to find your next photography gear&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/p/nikon-tele-lens-testreview-database.html"&gt;Nikon tele lenses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/p/canon.html"&gt;Canon EF-S lenses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2011/10/biztalk-esb-toolkit-21-installation.html"&gt;BizTalk ESB Toolkit 2.1 installation guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/10/superliga-opsamling-runde-11.html"&gt;Superliga opsamling runde 11&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://officepower.blogspot.dk/2012/11/dynamic-reference-in-excel.html"&gt;Dynamic reference in Excel&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;i&gt;Help me, help you. You know how ;-) (click, click, click...) Or buy anything at &lt;a href="http://www.amazon.com/?_encoding=UTF8&amp;amp;tag=photospots-20&amp;amp;linkCode=ur2&amp;amp;camp=1789&amp;amp;creative=390957" target="_blank"&gt;Amazon&lt;/a&gt;. You get the same price, and I get a little bit of money. &lt;/i&gt;&lt;/b&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/xRUuxnKPHVo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/5542646726101754745/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2013/01/workflow-foundation-annotations-and.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/5542646726101754745?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/5542646726101754745?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/xRUuxnKPHVo/workflow-foundation-annotations-and.html" title="Workflow foundation annotations and upgrade problems" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-U-4dlW6MKq0/UOwxlCpue6I/AAAAAAAABi8/QerKpXt8Vls/s72-c/AnnotationsWF.jpg" height="72" width="72" /><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2013/01/workflow-foundation-annotations-and.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkEGRXYzfip7ImA9WhNUEk8.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-2212209899648549414</id><published>2013-01-03T15:50:00.002+01:00</published><updated>2013-01-03T15:50:24.886+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-03T15:50:24.886+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Windows Communication Foundation" /><title>Simple autogenerated facade WCF service with T4</title><content type="html">If you don't want to use a lot of money on service virtualization tools you can create a simple autogenerated WCF facade service that does a little bit of the things the big service virtualization tools does.&lt;br /&gt;
&lt;br /&gt;
This gives you the option to hide service between one common service. The services behind this service could be a service from your backend system,&amp;nbsp;a service from your CRM system and it might even be some external services.&lt;br /&gt;
&lt;br /&gt;
You could do it manually, but then you would have to update it each time one of the backend services changes and with the human factor as an error source. Visual Studio gives you the option to use text templates which can be used to generate code.&lt;br /&gt;
&lt;br /&gt;
Start by creating a WCF Service Application in Visual Studio and add a text template to this project, which will give you a *.tt file. This is the file that you will edit to create the autogenerated code. You might want to read a bit about it at MSDN before reading on.&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/bb126445.aspx"&gt;Here is the link&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Working with tt files is like going back in time. Back to the time with ASP and where you don't have intellisense. I stongly recommend to use Visual Studio 2012 that at least gives you a good debug option.&lt;br /&gt;
&lt;br /&gt;
The first part of the tt file is the part where you specify which .Net namespace you want to use. The tt files knows nothing about the references that you have in your project, which I found out the hard way. My initial thoughts were to use reflection to get information about the services that I was going to work with, but I got into problems when I wanted to work with service references. So I ended up using the EnvDTE namespace, where you work with the FileCodeModel in Visual Studio. So this gives me this first part of the tt file:&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;lt;#@ template debug="true" hostspecific="true" #&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;lt;#@ output extension="cs" #&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;lt;#@ assembly name="EnvDTE" #&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;lt;#@ assembly name="System.Xml" #&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;lt;#@ import namespace="EnvDTE" #&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;lt;#@ import namespace="System.Diagnostics" #&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;lt;#@ import namespace="System.Xml" #&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;lt;#@ import namespace="System.Collections.Generic" #&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
I wanted to control which services got autogenerated in an XML file, so I at a *.mapping file to the solution where I created a structure with the name of the service I wanted. &lt;br /&gt;
&lt;br /&gt;
Based on this I could load the FileCodeModel and find the CodeFunctions that needed to be exposed.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;lt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;EnvDTE.DTE dte = GetEnvDTE();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;string myFile = this.Host.ResolvePath("AutoGeneratedFacade.Mapping");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;XmlDocument xdoc = new XmlDocument();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;xdoc.Load(myFile);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;foreach (XmlNode node in xdoc.SelectNodes(@"//class/name"))&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string sourceFileName = node.InnerText;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;sourceFileName = @"Service References\" + sourceFileName + @"\Reference.cs";&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProjectItem enumProjectItem = dte.Solution.FindProjectItem(sourceFileName);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileCodeModel codeModel = enumProjectItem.FileCodeModel;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CodeNamespace codeNamespace = FindNamespace(codeModel.CodeElements);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CodeInterface codeInterface = FindInterface(codeModel.CodeElements);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;CodeFunction&amp;gt; codeFunctions = FindMethods(codeInterface.Children);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;#&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
In the above code there are a couple of utility functions:&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;lt;#+&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private CodeNamespace FindNamespace(CodeElements elements)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (CodeElement element in elements)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CodeNamespace ns = element as CodeNamespace;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ns != null)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ns;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private CodeInterface FindInterface(CodeElements elements)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (CodeElement element in elements)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CodeInterface codeInterface = element as CodeInterface;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (codeInterface != null)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return codeInterface;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; codeInterface = FindInterface(element.Children);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (codeInterface != null)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return codeInterface;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private List&amp;lt;CodeFunction&amp;gt; FindMethods(CodeElements elements)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;CodeFunction&amp;gt; methods = new List&amp;lt;CodeFunction&amp;gt;();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (CodeElement element in elements)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CodeFunction method = element as CodeFunction;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (method != null)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; methods.Add(method);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return methods;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private EnvDTE.DTE GetEnvDTE()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IServiceProvider hostServiceProvider = (IServiceProvider)Host;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (hostServiceProvider == null)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new Exception("Host property returned unexpected value (null)");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EnvDTE.DTE dte = (EnvDTE.DTE)hostServiceProvider.GetService(typeof(EnvDTE.DTE));&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (dte == null)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new Exception("Unable to retrieve EnvDTE.DTE");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return dte;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;#&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&lt;/span&gt;&lt;br /&gt;
With the CodeFunctions in hand I am now able to create the new interface and class implementation for the autogenerated WCF facade service:&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;lt;#+&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;private void WriteInterface(CodeFunction method)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach(CodeElement element in method.Attributes)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string at = "";&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;CodeAttribute att = element as CodeAttribute;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (att != null)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at = at + "[";&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at = at + att.Name;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at = at + "(";&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at = at + att.Value;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at = at + ")]";&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WriteLine(at);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Write(method.Type.AsString);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(" ");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(method.Name);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Write("(");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string sparameter = "";&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach(CodeElement element in method.Parameters)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int count = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;CodeParameter parameter = element as CodeParameter;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (parameter != null)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sparameter =sparameter + parameter.Type.AsString + " ";&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sparameter = sparameter + parameter.Name;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(count &amp;lt; method.Parameters.Count)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sparameter = sparameter + ", ";&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;count++;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sparameter = sparameter.Substring(0,sparameter.Length -2);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Write(sparameter);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Write(");");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;#&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
And with the interface I am able to create the class the implements the interface:&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;lt;#+&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;private void WriteServiceClass(CodeFunction method, string servicename)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write("public ");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(method.Type.AsString);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(" ");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(method.Name);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Write("(");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string sparameter = "";&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string sparameternames = "";&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach(CodeElement element in method.Parameters)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int count = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;CodeParameter parameter = element as CodeParameter;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (parameter != null)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sparameter =sparameter + parameter.Type.AsString + " ";&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sparameter = sparameter + parameter.Name;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sparameternames = sparameternames + parameter.Name;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(count &amp;lt; method.Parameters.Count)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sparameter = sparameter + ", ";&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sparameternames = sparameternames + ", ";&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;count++;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sparameter = sparameter.Substring(0,sparameter.Length -2);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Write(sparameter);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Write(")");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WriteLine(String.Empty);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WriteLine("{");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;PushIndent("&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write("FacadeService.");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(servicename);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(".");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(servicename);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write("Client service = new FacadeService.");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(servicename);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(".");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(servicename);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write("Client();");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WriteLine(String.Empty);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write("return service.");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(method.Name);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sparameternames = sparameternames.Substring(0,sparameternames.Length -2);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write("(");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(sparameternames);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write(");");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WriteLine(String.Empty);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ClearIndent();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PushIndent("&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; WriteLine("}")&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: blue;"&gt;#&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
The final piece is to change the SVC file to point to the autogenerated class with changes to the Service and Codebehind attributes.&lt;br /&gt;
&lt;br /&gt;
I used this&amp;nbsp;&lt;a href="http://weblogs.thinktecture.com/cweyer/2009/06/generating-async-wcf-operationcontract-signatures-with-a-t4-template.html"&gt;article&lt;/a&gt; as inspiration and borrowed some lines of code from it.&lt;br /&gt;
&lt;br /&gt;
With this I just have to update the service proxy and save the tt file to update my facade service and I don't have to write copy paste code. &lt;br /&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/12/nikon-autofocus-system.html"&gt;Nikon autofocus system&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2012/09/sql-server-convert-to-and-text-from.html"&gt;SQL Server, convert to and text from image field&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/10/superliga-opsamling-runde-11.html"&gt;Superliga opsamling runde 11&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://officepower.blogspot.dk/2012/11/welcome-to-office-power-blog.html"&gt;Welcome to Office Power blog&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;i&gt;Help me, help you. You know how ;-) (click, click, click...)&lt;/i&gt;&lt;/b&gt;

&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/aae-u48B8D8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/2212209899648549414/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2013/01/simple-autogenerated-facade-wcf-service.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/2212209899648549414?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/2212209899648549414?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/aae-u48B8D8/simple-autogenerated-facade-wcf-service.html" title="Simple autogenerated facade WCF service with T4" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2013/01/simple-autogenerated-facade-wcf-service.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkMHR34_cSp7ImA9WhNXEEQ.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-1032775388316939151</id><published>2012-11-28T11:27:00.000+01:00</published><updated>2012-11-28T11:27:16.049+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-28T11:27:16.049+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><title>BizTalk, SalesForce and timezone</title><content type="html">I had the interesting request that it was important to a system (SalesForce) to set the right time including the timezone.&lt;br /&gt;
&lt;br /&gt;
So I created a .Net function with a string as input and a string as output. This function is call from a map. Here are the function:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span lang="EN-US" style="background: white; color: #2b91af; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US; mso-highlight: white;"&gt;DateTime&lt;/span&gt;&lt;span lang="EN-US" style="background-color: white; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 9.5pt;"&gt; myDateTime = &lt;/span&gt;&lt;span lang="EN-US" style="background: white; color: #2b91af; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US; mso-highlight: white;"&gt;Convert&lt;/span&gt;&lt;span lang="EN-US" style="background-color: white; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 9.5pt;"&gt;.ToDateTime(input);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span lang="EN-US" style="background: white; color: #2b91af; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US; mso-highlight: white;"&gt;TimeZoneInfo&lt;/span&gt;&lt;span lang="EN-US" style="background-color: white; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 9.5pt;"&gt; tzi = &lt;/span&gt;&lt;span lang="EN-US" style="background: white; color: #2b91af; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US; mso-highlight: white;"&gt;TimeZoneInfo&lt;/span&gt;&lt;span lang="EN-US" style="background-color: white; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 9.5pt;"&gt;.FindSystemTimeZoneById(&lt;/span&gt;&lt;span lang="EN-US" style="background: white; color: #a31515; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US; mso-highlight: white;"&gt;"W. Europe
Standard Time"&lt;/span&gt;&lt;span lang="EN-US" style="background-color: white; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 9.5pt;"&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span lang="EN-US" style="background: white; color: #2b91af; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US; mso-highlight: white;"&gt;TimeSpan&lt;/span&gt;&lt;span lang="EN-US" style="background-color: white; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 9.5pt;"&gt; offset =
tzi.GetUtcOffset(myDateTime);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="background: white; color: #2b91af; font-family: Consolas; font-size: 9.5pt; mso-highlight: white;"&gt;DateTimeOffset&lt;/span&gt;&lt;span style="background-color: white; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 9.5pt;"&gt; d = &lt;/span&gt;&lt;span style="background: white; color: blue; font-family: Consolas; font-size: 9.5pt; mso-highlight: white;"&gt;new&lt;/span&gt;&lt;span style="background-color: white; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 9.5pt;"&gt; &lt;/span&gt;&lt;span style="background: white; color: #2b91af; font-family: Consolas; font-size: 9.5pt; mso-highlight: white;"&gt;DateTimeOffset&lt;/span&gt;&lt;span style="background-color: white; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 9.5pt;"&gt;(myDateTime, offset);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US" style="background: white; color: blue; font-family: Consolas; font-size: 9.5pt; line-height: 107%; mso-ansi-language: EN-US; mso-highlight: white;"&gt;string&lt;/span&gt;&lt;span lang="EN-US" style="background-color: white; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 9.5pt; line-height: 107%;"&gt;
output = d.ToString(&lt;/span&gt;&lt;span lang="EN-US" style="background: white; color: #a31515; font-family: Consolas; font-size: 9.5pt; line-height: 107%; mso-ansi-language: EN-US; mso-highlight: white;"&gt;"o"&lt;/span&gt;&lt;span lang="EN-US" style="background-color: white; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 9.5pt; line-height: 107%;"&gt;);&lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
The Id of the zone can be found by running through all the names by running this code:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style="font-family: Consolas, Courier, monospace; font-size: 13px; overflow: auto; padding: 5px; word-break: break-all; word-wrap: break-word;"&gt;ReadOnlyCollection&amp;lt;TimeZoneInfo&amp;gt; zones = TimeZoneInfo.GetSystemTimeZones();
Console.WriteLine(&lt;span style="color: #a31515;"&gt;"The local system has the following {0} time zones"&lt;/span&gt;, zones.Count);
&lt;span style="color: blue;"&gt;foreach&lt;/span&gt; (TimeZoneInfo zone &lt;span style="color: blue;"&gt;in&lt;/span&gt; zones)
   Console.WriteLine(zone.Id);&lt;/pre&gt;
&lt;pre style="overflow: auto; padding: 5px; word-break: break-all; word-wrap: break-word;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: medium; white-space: normal;"&gt;
The result is in a format that this, which also takes care of DST (Daylight saving time):&lt;/div&gt;
&lt;span style="font-family: Times New Roman;"&gt;&lt;span style="white-space: normal;"&gt;2012-07-02T02:12:00.0000000+02:00 (input --&amp;gt;&amp;nbsp;02-07-2012 02:12)&lt;/span&gt;&lt;/span&gt;
&lt;span style="font-family: Times New Roman;"&gt;&lt;span style="white-space: normal;"&gt;2012-02-28T14:00:00.0000000+01:00 (input --&amp;gt;&amp;nbsp;28-02-2012 14:00)&lt;/span&gt;&lt;/span&gt;
&lt;/pre&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/10/nothing-like-misty-autumn-morning-with.html"&gt;Nothing like a misty autumn morning with your Nikon D800 and a couple of lenses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2011/10/biztalk-esb-toolkit-21-installation.html"&gt;BizTalk ESB Toolkit 2.1 installation guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2012/02/fcks-transfer-vindue-201112.html"&gt;FCKs transfer vindue 2011/12&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://officepower.blogspot.dk/2012/11/dynamic-reference-in-excel.html"&gt;Dynamic reference in Excel&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;i&gt;Help me, help you. You know how ;-) (click, click, click...)&lt;/i&gt;&lt;/b&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/rsbhH24iUh4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/1032775388316939151/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2012/11/biztalk-salesforce-and-timezone.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/1032775388316939151?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/1032775388316939151?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/rsbhH24iUh4/biztalk-salesforce-and-timezone.html" title="BizTalk, SalesForce and timezone" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2012/11/biztalk-salesforce-and-timezone.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0AAQXk5eCp7ImA9WhNRFEg.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-764253874313361695</id><published>2012-11-09T11:09:00.000+01:00</published><updated>2012-11-09T11:09:00.720+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-09T11:09:00.720+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><title>Dynamic send port improvements in BizTalk Server 2013</title><content type="html">One of the big problems with BizTalk Server 2010 and earlier is that it isn't possible to change which host you want your dynamic send port to run on. This is now possible in BizTalk Server 2013 and this will show you how to do it.&lt;br /&gt;
&lt;br /&gt;
I will just do a very simple sample where I receive a file and send it to a hardcodet destination. In really life this might depend on the message or the content of the message or it can be something you look up in a database.&lt;br /&gt;
&lt;br /&gt;
So first the orchestration:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-QpFWEZ_b9r4/UJzRu8uYUeI/AAAAAAAAA3w/8pFeLFb_il4/s1600/Snatchedmoments1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="212" src="http://4.bp.blogspot.com/-QpFWEZ_b9r4/UJzRu8uYUeI/AAAAAAAAA3w/8pFeLFb_il4/s400/Snatchedmoments1.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Where the DySP port is set to have a dynamic binding. You configure the DySP port inside the Expression_1 shape like this:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-lyP0ZHr11nY/UJzSLBiyMXI/AAAAAAAAA34/GcL7Q3TYgYY/s1600/Snatchedmoments2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="205" src="http://1.bp.blogspot.com/-lyP0ZHr11nY/UJzSLBiyMXI/AAAAAAAAA34/GcL7Q3TYgYY/s400/Snatchedmoments2.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
And now you are ready to build and deploy. Once you have deployed the solution it is time to configure the send handler for you dynamic send port. You open you send port, where you see a button that lets you configure your send handler:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-JDMpnnkjjBg/UJzTJKg1X1I/AAAAAAAAA4A/Yaoxt_WkOsY/s1600/Snatchedmoments3.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="323" src="http://4.bp.blogspot.com/-JDMpnnkjjBg/UJzTJKg1X1I/AAAAAAAAA4A/Yaoxt_WkOsY/s400/Snatchedmoments3.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
After you click the Configure button in the screen above you will be able to configure on which host that you want your messages to be send. There an option for every adapter that you have installed in your environment as in first on runtime that we know which adapter to use:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-3s0w5eFOnVQ/UJzUa2_S9fI/AAAAAAAAA4I/UKAv6nLNOSI/s1600/Snatchedmoments4.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://3.bp.blogspot.com/-3s0w5eFOnVQ/UJzUa2_S9fI/AAAAAAAAA4I/UKAv6nLNOSI/s320/Snatchedmoments4.JPG" width="310" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
This feature alone will be enough to upgrade to BizTalk Server 2013 if you are using Dynamic send ports a lot as you will have a lot more control over where your workload gets executed.&amp;nbsp;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Random posts:&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/10/dx-standard-zooms-added-to-lens-database.html"&gt;DX standard zooms added to the lens database&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2012/02/biztalk-compile-error-with-maps.html"&gt;BizTalk compile error with maps&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/11/superliga-opsamling-runde-15.html"&gt;Superliga opsamling runde 15&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://officepower.blogspot.dk/2012/11/dynamic-reference-in-excel.html"&gt;Dynamic reference in Excel&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/cHJvVU94kRg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/764253874313361695/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2012/11/dynamic-send-port-improvements-in.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/764253874313361695?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/764253874313361695?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/cHJvVU94kRg/dynamic-send-port-improvements-in.html" title="Dynamic send port improvements in BizTalk Server 2013" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-QpFWEZ_b9r4/UJzRu8uYUeI/AAAAAAAAA3w/8pFeLFb_il4/s72-c/Snatchedmoments1.JPG" height="72" width="72" /><thr:total>1</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2012/11/dynamic-send-port-improvements-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU4NQ3k5cSp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-8640052040776224608</id><published>2012-09-24T15:05:00.000+02:00</published><updated>2012-11-07T20:53:12.729+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T20:53:12.729+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="SQL Server" /><title>SQL Server, convert to and text from image field</title><content type="html">Working with an integration to the ERP system Dynamic NAV from Microsoft I had a request to be able to put large text into a blob (image) field as Dynamic NAV in the version that I was integrating to couldn't create large (over 250 characters) in other way than in a blob field.&lt;br /&gt;
&lt;br /&gt;
It is easy to put text into the field. You just do a cast to image field like this:&lt;br /&gt;
&lt;br /&gt;
declare @longtext varchar(1000)&lt;br /&gt;
set @longtext = 'very long text and so on....'&lt;br /&gt;
&lt;br /&gt;
update tableX set imagetext =&amp;nbsp;cast(@longtext as image)&lt;br /&gt;
where id = 1&lt;br /&gt;
&lt;br /&gt;
If you want to extract the text again from the field is a bit more complicated, but isn't that hard once you know it. You first have to convert it to varbinary and then you can convert it to varchar. Like this:&lt;br /&gt;
&lt;br /&gt;
select convert(varchar(1000), convert(varbinary(1000),imagetext) from firstdb.dbo.tableX where id = 1&lt;br /&gt;
&lt;br /&gt;
A weird thing that I experienced working in SQL Server Management Studio was if a ran this query when I am working (like "use firstdb") in the database, the local special characters was returned without any problems. If I instead was in the master database (like "use master") and executed the query it return some different characters when it came to the locale special characters. As far as I can tell the collation was the same in both the databases.&lt;br /&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/10/dx-standard-zooms-added-to-lens-database.html"&gt;DX standard zooms added to the lens database&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2012/02/biztalk-compile-error-with-maps.html"&gt;BizTalk compile error with maps&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/10/superliga-runde-12.html"&gt;Superliga runde 12&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/h452_257NT0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/8640052040776224608/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2012/09/sql-server-convert-to-and-text-from.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/8640052040776224608?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/8640052040776224608?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/h452_257NT0/sql-server-convert-to-and-text-from.html" title="SQL Server, convert to and text from image field" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2012/09/sql-server-convert-to-and-text-from.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcBRnk9eip7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-1275565987879771237</id><published>2012-09-05T10:19:00.002+02:00</published><updated>2012-11-07T20:54:17.762+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T20:54:17.762+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><title>Create header names for BizTalk flat file assembler</title><content type="html">It isn't that hard to create a flat file from XML file, but I had a bit of trouble to find out how to create a header line with the column names, so I thought I would write a short blog post to describe this.&lt;br /&gt;
&lt;br /&gt;
The following steps are needed:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Take a copy of your flat file schema. Remember to change the file name and type name of the schema&lt;/li&gt;
&lt;li&gt;Open the new schema and change the name of your root element or your target namespace. Otherwise you will get an error that BizTalk can't find your schema as it might not have been added to the GAC. The reason for this error is that BizTalk needs a unique combination of target namespace and root element.&lt;/li&gt;
&lt;li&gt;For each element in your schema you have to set a default value (the name of the column) and it needed change the datatype of the element to string.&lt;/li&gt;
&lt;li&gt;In the send pipeline flat file assembler component you have to point this new schema that you have created.&lt;/li&gt;
&lt;li&gt;This should be it. Of cause you need to deploy, restart and so on, but you know this ;-)&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
Now you have a flat file with header column names as some systems like.&lt;/div&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/10/frosty-leaves-with-nikon-d800-and-nikon.html"&gt;Frosty leaves with Nikon D800 and Nikon 70-200 VR&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2008/08/creating-new-matrix-style-in.html"&gt;Creating a new Matrix style in Performancepoint&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/11/superliga-runde-17.html"&gt;Superliga runde 17&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/Y093xL9y_rI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/1275565987879771237/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2012/09/create-header-names-for-biztalk-flat.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/1275565987879771237?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/1275565987879771237?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/Y093xL9y_rI/create-header-names-for-biztalk-flat.html" title="Create header names for BizTalk flat file assembler" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2012/09/create-header-names-for-biztalk-flat.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcNRHg5eCp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-7720046648791018966</id><published>2012-03-28T12:16:00.000+02:00</published><updated>2012-11-07T20:54:55.620+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T20:54:55.620+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><category scheme="http://www.blogger.com/atom/ns#" term="EDI" /><title>Start and stop BizTalk EDI batches in large scale</title><content type="html">If you have been working with BizTalk and EDI Batches you would most likely have run in to problems with starting and stopping EDI Batches as this require you to go into a screen on the party to start and stop the EDI batch:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-03QtGUe7Mgo/T3Ld_bGbBfI/AAAAAAAAAgY/k8mxxfXQ2b0/s1600/EDIBatch.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="319" src="http://4.bp.blogspot.com/-03QtGUe7Mgo/T3Ld_bGbBfI/AAAAAAAAAgY/k8mxxfXQ2b0/s320/EDIBatch.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
If you have a lot of EDI parties with batches on them then this is a big job to do if you need to import bindings as EDI batches must not be running when you import bindings with party information. There is an unsupported way around this.&lt;br /&gt;
&lt;br /&gt;
When you press the start or the stop button you are sending a row into the PAM_CONTROL table in the BizTalk management database. And the BizTalk EDI Application have a receive location that looks for data in the table (through a stored procedure). So with a little bit of SQL magic we can stop every EDI batch that is running in the BizTalk Server:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--- Stop EDI Batches&lt;br /&gt;
INSERT INTO [BizTalkMgmtDb].[dbo].[PAM_Control]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;([DestinationParty]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[EdiMessageType]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[ActionType]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[ActionDateTime]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[UsedOnce]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[BatchId]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[BatchName]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[DestinationPartyName])&lt;br /&gt;
SELECT edi.PartyId as 'DestinationParty'&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,[EdiMessageType]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,'EdiBatchTerminate' as 'ActionType' --EdiBatchActivate&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,GetDate() as 'ActionDateTime'&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,0 as 'UsedOnce'&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,edi.[BatchId]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,[BatchName]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,p.nvcName as 'DestinationPartyName'&lt;br /&gt;
&amp;nbsp; FROM EdiPartnerBatchSchedule edi inner join bts_party p&lt;br /&gt;
&amp;nbsp; on edi.PartyId = p.nID&lt;br /&gt;
&amp;nbsp; inner join PAM_Batching_Log pam on edi.PartyId = pam.PartyId and edi.BatchId = pam.BatchId&lt;br /&gt;
&lt;br /&gt;
And if we want to start the batches again we can use this SQL magic (you have to specify which parties that you want enable batches for or some other criteria in the where section):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; --- Start EDI Batches&lt;br /&gt;
INSERT INTO [BizTalkMgmtDb].[dbo].[PAM_Control]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;([DestinationParty]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[EdiMessageType]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[ActionType]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[ActionDateTime]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[UsedOnce]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[BatchId]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[BatchName]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;,[DestinationPartyName])&lt;br /&gt;
SELECT edi.PartyId as 'DestinationParty'&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,[EdiMessageType]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,'EdiBatchActivate' as 'ActionType'&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,GetDate() as 'ActionDateTime'&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,0 as 'UsedOnce'&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,edi.[BatchId]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,[BatchName]&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ,p.nvcName as 'DestinationPartyName'&lt;br /&gt;
&amp;nbsp; FROM EdiPartnerBatchSchedule edi inner join bts_party p&lt;br /&gt;
&amp;nbsp; on edi.PartyId = p.nID&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;where edi.PartyId in (4,20)&lt;br /&gt;
&lt;br /&gt;
A lot easier than going through the parties UI. I have only tested this on BizTalk 2009. I will update when I get a chance to test it on other BizTalk versions.&lt;br /&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/10/buyers-guide-to-nikon-50mm-lenses.html"&gt;Buyers guide to Nikon 50mm lenses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2010/01/bing-map-webservice.html"&gt;Bing map webservice&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/10/superliga-opsamling-runde-13.html"&gt;Superliga opsamling runde 13&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/designing-ui.html"&gt;Designing the UI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/kRQFrtFdkzA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/7720046648791018966/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2012/03/start-and-stop-biztalk-edi-batches-in.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/7720046648791018966?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/7720046648791018966?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/kRQFrtFdkzA/start-and-stop-biztalk-edi-batches-in.html" title="Start and stop BizTalk EDI batches in large scale" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-03QtGUe7Mgo/T3Ld_bGbBfI/AAAAAAAAAgY/k8mxxfXQ2b0/s72-c/EDIBatch.JPG" height="72" width="72" /><thr:total>1</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2012/03/start-and-stop-biztalk-edi-batches-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkYHQXg-cCp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-2283856264861518037</id><published>2012-02-15T09:18:00.001+01:00</published><updated>2012-11-07T20:55:30.658+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T20:55:30.658+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><title>BizTalk compile error with maps</title><content type="html">I am working with an integration against a SalesForce solution, where there is a very complex structure in SalesForce, where there are references that will never end in a recursive situation. This gives you an out of memory exception or your Visual Studio crashes.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The solution is to open the BizTalk map with an XML&amp;nbsp;editor&amp;nbsp;and change the (GenerateDefaultFixedNodes="Yes") to&amp;nbsp;(GenerateDefaultFixedNodes="No") or&amp;nbsp;(GenerateDefaultFixedNodes="RequiredDefaults"). If you have defaults in your map then you would need to take the last "RequiredDefaults" as you otherwise will miss those in your output.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Remember to test your mappings after you have done this change. See here for more information:&amp;nbsp;&lt;a href="https://mail.logica.com/owa/redir.aspx?C=67b5735ac57245de8ba73fb5bf152641&amp;amp;URL=http%3a%2f%2fmsdn.microsoft.com%2fen-us%2flibrary%2faa561485.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/aa561485.aspx&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/09/nikon-d800-nikon-d600-do-i-regret-my.html"&gt;Nikon D800, Nikon D600 do I regret my choice after DXOmarks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2012/09/sql-server-convert-to-and-text-from.html"&gt;SQL Server, convert to and text from image field&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/09/kampvurdering-standard-liege-fck.html"&gt;Kampvurdering: Standard Liege - FCK&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/designing-ui.html"&gt;Designing the UI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/XgsUS0M4wyU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/2283856264861518037/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2012/02/biztalk-compile-error-with-maps.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/2283856264861518037?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/2283856264861518037?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/XgsUS0M4wyU/biztalk-compile-error-with-maps.html" title="BizTalk compile error with maps" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>1</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2012/02/biztalk-compile-error-with-maps.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkYMSH8-fip7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-2567764045860651140</id><published>2012-02-09T13:12:00.001+01:00</published><updated>2012-11-07T20:56:29.156+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T20:56:29.156+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><title>Biztalk Server 2009 EDI parties, batches and deployment</title><content type="html">If you are using batches for EDI in BizTalk Server 2009 and earlier you might experience problems with deployment if you include your parties in your binding files or have a role link that have enlisted the party. If it is the later part you will always run into problems as you binding always includes parties even if you don't select it in your deployment.&lt;br /&gt;
&lt;br /&gt;
The normal way to deploy would go into each party and stop the batch as this will stop the orchestration that always is running. You can see your running orchestrations in the BizTalk hub where it is possible to see which parties that have a batch running.&lt;br /&gt;
&lt;br /&gt;
Well I ran into a case where it wasn't possible to see the batches in the BizTalk hub. Maybe someone terminated the orchestrations. And I had about 20 parties and with the slow BizTalk administration tool in BizTalk Server 2009 I wanted to find another way to find out which parties were blocking my deployment.&lt;br /&gt;
&lt;br /&gt;
As always there is the SQL way to find the information. What you want to look at is the output from this SQL:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span lang="EN-US" style="color: blue; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;SELECT&lt;/span&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt; &lt;span style="color: blue;"&gt;TOP&lt;/span&gt; 1000 [PartyId]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: grey;"&gt;,&lt;/span&gt;[BatchOrchestrationId]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: grey;"&gt;,&lt;/span&gt;[NumOccurences]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: grey; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-no-proof: yes;"&gt;,&lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-no-proof: yes;"&gt;[BatchId]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;FROM&lt;/span&gt;
[BizTalkMgmtDb]&lt;span style="color: grey;"&gt;.&lt;/span&gt;[dbo]&lt;span style="color: grey;"&gt;.&lt;/span&gt;[PAM_Batching_Log]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
This gave my the following output:&lt;br /&gt;
&lt;br class="Apple-interchange-newline" /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-vDfhnE4dtDk/TzO2te4ryQI/AAAAAAAAAfM/o1-cSLQmrpQ/s1600/EDI_Party_Batch.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="57" src="http://3.bp.blogspot.com/-vDfhnE4dtDk/TzO2te4ryQI/AAAAAAAAAfM/o1-cSLQmrpQ/s320/EDI_Party_Batch.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
And with the following SQL I could find the Party that was blocking by deployment:&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span lang="EN-US" style="color: blue; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;SELECT&lt;/span&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt; &lt;span style="color: blue;"&gt;TOP&lt;/span&gt; 1000 [nID]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: grey;"&gt;,&lt;/span&gt;[nvcName]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: grey;"&gt;,&lt;/span&gt;[nvcSignatureCert]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: grey; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-no-proof: yes;"&gt;,&lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-no-proof: yes;"&gt;[nvcSignatureCertHash]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-no-proof: yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: grey;"&gt;,&lt;/span&gt;[nvcSID]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-no-proof: yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: grey;"&gt;,&lt;/span&gt;[nvcCustomData]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; mso-no-proof: yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: grey;"&gt;,&lt;/span&gt;[DateModified]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;FROM&lt;/span&gt;
[BizTalkMgmtDb]&lt;span style="color: grey;"&gt;.&lt;/span&gt;[dbo]&lt;span style="color: grey;"&gt;.&lt;/span&gt;[bts_party]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="font-family: 'Times New Roman'; font-size: medium; line-height: normal;"&gt;
With that information I could find the party in BizTalk and stop the batch. Some day I am going to find a way to start and stop edi batches automatically during deployment...&amp;nbsp;&lt;/div&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/11/nikon-d3200-vs-nikon-d5200-what-to-buy.html"&gt;Nikon D3200 vs Nikon D5200 - what to buy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2008/05/description-field-in-time-dimension-in.html"&gt;Description field in the Time dimension in Performancepoint 2007&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2012/05/drop-straffespark.html"&gt;Drop straffespark...&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/designing-ui.html"&gt;Designing the UI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/4rOYTfyk7tc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/2567764045860651140/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2012/02/biztalk-server-2009-edi-parties-batches.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/2567764045860651140?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/2567764045860651140?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/4rOYTfyk7tc/biztalk-server-2009-edi-parties-batches.html" title="Biztalk Server 2009 EDI parties, batches and deployment" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-vDfhnE4dtDk/TzO2te4ryQI/AAAAAAAAAfM/o1-cSLQmrpQ/s72-c/EDI_Party_Batch.JPG" height="72" width="72" /><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2012/02/biztalk-server-2009-edi-parties-batches.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkUHSHw9fCp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-2834258558632541434</id><published>2011-11-08T18:11:00.002+01:00</published><updated>2012-11-07T20:57:19.264+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T20:57:19.264+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><category scheme="http://www.blogger.com/atom/ns#" term="Windows Communication Foundation" /><title>WCF, OneWay and BizTalk</title><content type="html">In WCF there is an option in your contract to markup as an OneWay method like this:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [OperationContract(IsOneWay=true)]&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
You will get the following error when you try to send a message from BizTalk to this WCF Service:&lt;/div&gt;
&lt;blockquote class="tr_bq"&gt;
Details:"System.ServiceModel.CommunicationException: The server did not provide a meaningful reply; this might be caused by a contract mismatch, a premature session shutdown or an internal server error.&lt;/blockquote&gt;
&lt;div&gt;
The problem with this is that BizTalk can't consume the WCF service as it only supports the Request/Reply pattern of WCF, so what options do you have when you have a fire-and-forget WCF service that you want to consume from BizTalk:&lt;/div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li&gt;Change the attribute in your WCF Service, so the "IsOneWay" is set to "false". This is only an option if you have control over your WCF Service&lt;/li&gt;
&lt;li&gt;Create a wrapper around the WCF Service that wraps you service. This blog post is one way to do it:&amp;nbsp;&lt;a href="http://www.pvle.be/2008/12/calling-one-way-wcf-service-with-biztalk-wcf-adapter-part-2/"&gt;http://www.pvle.be/2008/12/calling-one-way-wcf-service-with-biztalk-wcf-adapter-part-2/&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
You should go for the solution it the order listed above.&amp;nbsp;Other possible solutions that I haven't tried, but might work (could be fun to try out at some point in time):&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;Implement a custom behavior (could maybe also be a solution as you hook into the WCF model, but I am not sure if it will work)&lt;/li&gt;
&lt;li&gt;Implement your own WCF adapter using the WCF SDK (A lot of work, should work as you have complete control over the message flow)&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
Random posts:&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/10/yonder-where-road-bends-hcandersen-hist.html"&gt;Yonder, where the road bends - H.C.Andersen (Hist, hvor vejen slår en bugt)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2010/09/routing-failure-and-requestrespons-send.html"&gt;Routing failure and request/respons send ports&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/10/krise-i-brndby-krise-i-ob-krise-i-fck.html"&gt;Krise i Brøndby, krise i OB, krise i FCK...&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/DelZuG1Z3FA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/2834258558632541434/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2011/11/wcf-oneway-and-biztalk.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/2834258558632541434?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/2834258558632541434?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/DelZuG1Z3FA/wcf-oneway-and-biztalk.html" title="WCF, OneWay and BizTalk" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2011/11/wcf-oneway-and-biztalk.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkUNRH8_fCp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-3679030838269176169</id><published>2011-11-02T20:19:00.000+01:00</published><updated>2012-11-07T20:58:15.144+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T20:58:15.144+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><title>WCF-SQL, BizTalk, notification and content based routing</title><content type="html">&lt;div&gt;
Many people use TypedPolling when they are working with BizTalk and wanting to poll data from the SQL Server and publish it to BizTalk, but there is another way where you use notification.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
This sample show how to use notification with the WCF-SQL adapter and BizTalk. It shows that you can use notifications without orchestrations to call a stored procedure in a SQL Server database (Adventureworks) and send output from this stored procedure into the file system. The execution of the stored procedure is only done when BizTalk receives a notification from the SQL Server about something has changed in a table.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The first thing that is needed is that the SQL Server you are working with has SQL Broker installed and it is configured for the database that you want to poll data from:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-__S57e-Z5-0/TrFLuNabAII/AAAAAAAAAcw/IaQOR-7WMr4/s1600/SQLNotification0.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="285" src="http://3.bp.blogspot.com/-__S57e-Z5-0/TrFLuNabAII/AAAAAAAAAcw/IaQOR-7WMr4/s320/SQLNotification0.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The next thing to do is to create a notification schema in your Visual Studio BizTalk project:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-QEHIPKQZT-g/TrFL_JdmWsI/AAAAAAAAAc4/vbWraAB5AnM/s1600/SQLNotification1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="284" src="http://2.bp.blogspot.com/-QEHIPKQZT-g/TrFL_JdmWsI/AAAAAAAAAc4/vbWraAB5AnM/s320/SQLNotification1.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
This will give you this schema:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-IL2NkRcR1fI/TrFMYIvl2qI/AAAAAAAAAdA/WmlPdF7thak/s1600/SQLNotification2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="166" src="http://3.bp.blogspot.com/-IL2NkRcR1fI/TrFMYIvl2qI/AAAAAAAAAdA/WmlPdF7thak/s320/SQLNotification2.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
The schema has 3 elements:&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;&amp;nbsp;Info --&amp;gt; contains the sql action that has been done on the table you are watching. Can be Insert, Update and more (&lt;a href="http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlnotificationinfo.aspx"&gt;http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlnotificationinfo.aspx&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Source --&amp;gt; contains the if it is data, object or something else that is the course for the notification:&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlnotificationsource.aspx"&gt;http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlnotificationsource.aspx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Type --&amp;gt; contains the type of notification mostly change&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/z0fkxc6y.aspx"&gt;http://msdn.microsoft.com/en-us/library/z0fkxc6y.aspx&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
You should promote at least info and source element, so that you can use these fields for routing.&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The next thing you need is to have a stored procedure that you can call to get the data from the SQL Server:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-X29Rf7yYPUw/TrFQLibResI/AAAAAAAAAdQ/XD5BOTXWA1E/s1600/SQLNotification4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="189" src="http://3.bp.blogspot.com/-X29Rf7yYPUw/TrFQLibResI/AAAAAAAAAdQ/XD5BOTXWA1E/s320/SQLNotification4.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
This procedure is just pretty simple and normally you would have some kind of logic to find out which rows that hasn't been polled from the table yet. It could be a datetime field, a boolean field or something else. There are plenty of examples of this on the net.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
You then need to create a schema for this procedure, so that BizTalk knows how to call the procedure:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-TTddYk9vfUc/TrFPMXUMLxI/AAAAAAAAAdI/vy75JVR3Mn8/s1600/SQLNotification3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="284" src="http://3.bp.blogspot.com/-TTddYk9vfUc/TrFPMXUMLxI/AAAAAAAAAdI/vy75JVR3Mn8/s320/SQLNotification3.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
The next thing you need is a simple map to create the request message that is send to the wcf-sql adapter, so that it knows that you want to execute this procedure:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-4sAPg_ux7zc/TrFRPrcOMqI/AAAAAAAAAdY/QRh0_O7ZjcE/s1600/SQLNotification5.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="167" src="http://4.bp.blogspot.com/-4sAPg_ux7zc/TrFRPrcOMqI/AAAAAAAAAdY/QRh0_O7ZjcE/s320/SQLNotification5.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Now you just need to get the Visual Studio project build and deployed to the BizTalk Server.&amp;nbsp;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
The BizTalk Server now needs to be configured to use the schemas and map that we have created in Visual Studio. The first thing is to setup a Receive Port and Location (remember to set the pipeline to XMLReceive):&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-mYi2nzvRPg4/TrFSQ4cx0BI/AAAAAAAAAdg/EvASPQ6qcTU/s1600/SQLNotification6.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://2.bp.blogspot.com/-mYi2nzvRPg4/TrFSQ4cx0BI/AAAAAAAAAdg/EvASPQ6qcTU/s320/SQLNotification6.jpg" width="231" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
The 3 properties that you want to set are (there are also some that you need to connect to the SQL Server, but you most likely know how to do that):&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;The "InboundOperationType" needs to be set to "Notification"&lt;/li&gt;
&lt;li&gt;The NotificationStatement must have a select statement for the table you want to get notifications on "SELECT [DepartmentID]&amp;nbsp;FROM [HumanResources].[Department]" in my example&lt;/li&gt;
&lt;li&gt;NotifyOnListenerStart must be True or False. If it is True it will give you a message when the receive port starts&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
The next thing you need is a request/response port where we send a request to the SQL Server that we want to execute a stored procedure:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-kPzfosTwijY/TrGRX_INKmI/AAAAAAAAAdo/N29miqoeGVw/s1600/SQLNotification7.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-kPzfosTwijY/TrGRX_INKmI/AAAAAAAAAdo/N29miqoeGVw/s320/SQLNotification7.jpg" width="231" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
Set the outbound map that we created:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-U55OtRXKLV8/TrGS5vtB0dI/AAAAAAAAAdw/JbLr0pvNBcM/s1600/SQLNotification8.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="255" src="http://3.bp.blogspot.com/-U55OtRXKLV8/TrGS5vtB0dI/AAAAAAAAAdw/JbLr0pvNBcM/s320/SQLNotification8.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
Set the filter to route everything we get from the receive port (notification). Normally you would use the promoted properties in the notification schema to filter exactly when you want to poll and everything else in a garbage port (you always need a subscriber):&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-2imkf78GV4k/TrGTf-WtD6I/AAAAAAAAAd4/JyOLd5vieO8/s1600/SQLNotification9.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="253" src="http://3.bp.blogspot.com/-2imkf78GV4k/TrGTf-WtD6I/AAAAAAAAAd4/JyOLd5vieO8/s320/SQLNotification9.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Now we just need a send port to subscribe to the output that the stored procedures returns. In this case it is just a file port, but it could be anything like a LOB system:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-zGCs53JpHs8/TrGT7elR9oI/AAAAAAAAAeA/_1k005ey7vI/s1600/SQLNotification10.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="254" src="http://3.bp.blogspot.com/-zGCs53JpHs8/TrGT7elR9oI/AAAAAAAAAeA/_1k005ey7vI/s320/SQLNotification10.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
That is it. We have created content based routing based on the WCF-SQL adapters notifcation feature. The advantage is you get to poll the data from you SQL Server at the moment the insert/update and you don't need to poll for available data every 30 seconds even if there isn't any data. The disadvantage is that you will get some garbage notifications that you need to handle somehow and I don't think I would use this method on high tables with a lot of transactions as you will get a lot of notifications on every event.&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Code available at:&amp;nbsp;&lt;a href="http://code.msdn.microsoft.com/WCF-SQL-BizTalk-notificatio-2d0d4b7e" style="text-align: -webkit-auto;"&gt;http://code.msdn.microsoft.com/WCF-SQL-BizTalk-notificatio-2d0d4b7e&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Random posts:&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/09/nikon-d800-nikon-d600-do-i-regret-my.html"&gt;Nikon D800, Nikon D600 do I regret my choice after DXOmarks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2011/11/wcf-sql-biztalk-notification-and.html"&gt;WCF-SQL, BizTalk, notification and content based routing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/11/superliga-opsamling-runde-16.html"&gt;Superliga opsamling runde 16&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/designing-ui.html"&gt;Designing the UI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/y4FPRcZEmww" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/3679030838269176169/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2011/11/wcf-sql-biztalk-notification-and.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/3679030838269176169?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/3679030838269176169?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/y4FPRcZEmww/wcf-sql-biztalk-notification-and.html" title="WCF-SQL, BizTalk, notification and content based routing" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-__S57e-Z5-0/TrFLuNabAII/AAAAAAAAAcw/IaQOR-7WMr4/s72-c/SQLNotification0.jpg" height="72" width="72" /><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2011/11/wcf-sql-biztalk-notification-and.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkQHQXkzeip7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-1273517000833070530</id><published>2011-10-12T17:01:00.000+02:00</published><updated>2012-11-07T20:58:50.782+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T20:58:50.782+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><category scheme="http://www.blogger.com/atom/ns#" term="Windows Communication Foundation" /><title>WCF BAM interceptor and no data</title><content type="html">&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US"&gt;I had a
situation where I were looking at using BAM (Business Activity Monitoring) from
WCF (Windows Communcation Foundation) and I couldn’t find out why I didn’t get
any data into my BAMPrimaryImport database. I didn’t get any errors so I was
really wondering where my error was.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US"&gt;I launched
the SQL Profiler to see if this could help me in my search for why I didn’t get
any data. When the WCF service is launched it calls a stored procedure:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US" style="color: blue; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;exec&lt;/span&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;
bam_Metadata_GetLatestInterceptorConfiguration&lt;span style="color: blue;"&gt; &lt;/span&gt;@technologyName&lt;span style="color: grey;"&gt;=&lt;/span&gt;&lt;span style="color: red;"&gt;N'WCF'&lt;/span&gt;&lt;span style="color: grey;"&gt;,&lt;/span&gt;@manifest&lt;span style="color: grey;"&gt;=&lt;/span&gt;&lt;span style="color: red;"&gt;N'&amp;lt;namespace&amp;gt;.&amp;lt;interface&amp;gt;, &amp;lt;Assemblyname&amp;gt;,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;&lt;span style="color: red;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US"&gt;This stored
procedure returned zero rows, so that was why I didn’t get any data into my
tables in the BAMPrimaryImport database. I wasn’t sure why yet why this call
didn’t return any data. I looked at the SQL code for the stored procedure and
found that it queried the table “&lt;/span&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-no-proof: yes;"&gt;[bam_Metadata_EventSource]&lt;/span&gt;&lt;span lang="EN-US"&gt;”. In this table it had the information that I was asking for, but the
case of the &amp;lt;Assemblyname&amp;gt; in the manifest column where different than
what I saw were used in the calling of the stored procedure.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US"&gt;So what I
learned from this is to remember the correct spelling and casing in the IC file
map:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;
&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US;"&gt;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US;"&gt;ic:EventSource&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US;"&gt; &lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US;"&gt;Name&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US;"&gt;"&lt;span style="color: blue;"&gt;xxx&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;Technology&lt;/span&gt;&lt;span style="color: blue;"&gt; =&lt;/span&gt;"&lt;span style="color: blue;"&gt;WCF&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;Manifest&lt;/span&gt;&lt;span style="color: blue;"&gt; =&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;lt;namespace&amp;gt;.&amp;lt;interface&amp;gt;, &amp;lt;assemblyname&amp;gt;,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span lang="EN-US"&gt;Something
that might be hard to find…&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/11/wide-angle-lenses-added-to-lens-datbase.html"&gt;Wide angle lenses added to the lens datbase&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2012/02/biztalk-server-2009-edi-parties-batches.html"&gt;Biztalk Server 2009 EDI parties, batches and deployment&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/10/krise-i-brndby-krise-i-ob-krise-i-fck.html"&gt;Krise i Brøndby, krise i OB, krise i FCK...&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/designing-ui.html"&gt;Designing the UI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/j6tM0o-cIVc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/1273517000833070530/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2011/10/wcf-bam-interceptor-and-no-data.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/1273517000833070530?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/1273517000833070530?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/j6tM0o-cIVc/wcf-bam-interceptor-and-no-data.html" title="WCF BAM interceptor and no data" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>1</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2011/10/wcf-bam-interceptor-and-no-data.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkQMQ3gzfSp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-4770928549105548811</id><published>2011-10-06T13:46:00.000+02:00</published><updated>2012-11-07T20:59:42.685+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T20:59:42.685+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><title>BizTalk ESB Toolkit 2.1 installation guide</title><content type="html">In the past I never got the version 1.x installed because of a complex installation guide, so now that I am looking at the toolkit again I thought that I better write done some notes for myself (and maybe other), so that you can get it up and running.&lt;br /&gt;
&lt;br /&gt;
My base image is:&lt;br /&gt;
- Windows Server 2008 R2&lt;br /&gt;
- SQL Server 2008 R2&lt;br /&gt;
- BizTalk Server 2010&lt;br /&gt;
- Visual Studio 2010&lt;br /&gt;
- and some other stuff that I don't think is relevant for the toolkit&lt;br /&gt;
&lt;br /&gt;
First thing is to download the toolkit:&lt;br /&gt;
&lt;a href="http://www.microsoft.com/download/en/details.aspx?id=11847"&gt;BizTalk ESB Toolkit 2.1&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
This also contains an installation guide, so what follows here is only the adds and special notes as I go through the installation guide.&lt;br /&gt;
&lt;br /&gt;
Well you need some optional software from Microsoft before you can install it and the installation guide doesn't contains links:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.microsoft.com/download/en/details.aspx?id=21835"&gt;Visual Studio 2010 SDK&lt;/a&gt;&amp;nbsp;(If you get an error which tells you that Visual Studio 2010 is missing then you might have the wrong version of the SDK. There is one for each service pack. Otherwise it is a "next next" type of installation).&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;amp;id=8279"&gt;Windows SDK&lt;/a&gt;&amp;nbsp;(Well this is a bit hard to predict what is needed. I don't want to install the full monty as this is 1,8GB. Here is what I choose. We will see later if that is enough. It is used for the portal. I would guess that it has something to do with the .Net framework as the portal is an ASP.Net web application).&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-57nJHlRVXmQ/ToydCOrOfLI/AAAAAAAAAcU/gFb3ZM62H7Y/s1600/ESB+toolkit+installation+1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="277" src="http://3.bp.blogspot.com/-57nJHlRVXmQ/ToydCOrOfLI/AAAAAAAAAcU/gFb3ZM62H7Y/s400/ESB+toolkit+installation+1.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Well for the chart control I think I will skip this because of the following statement (Beginning in .NET Framework 4, the Chart controls are part of the .NET Framework. ) From the &lt;a href="http://archive.msdn.microsoft.com/mschart"&gt;sample page&lt;/a&gt; of the chart control.&lt;/div&gt;
&lt;br /&gt;
If you are running in a domain and you use domain groups for the "BizTalk Server Administrators" and groups like this. Then remember to change those when you run the ESB Config toolkit.&lt;br /&gt;
&lt;br /&gt;
If you get an error like this "Cannot &amp;nbsp;open database..." when you run the BAM definition import. Then you need to add your SQL Server Analysis account as a datareader for the databases BAMPrimaryImport and BAMStar:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-jL8TZblPTUk/To1sVqddbBI/AAAAAAAAAcY/gzZS997ZOWE/s1600/ESB+toolkit+installation+2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="195" src="http://4.bp.blogspot.com/-jL8TZblPTUk/To1sVqddbBI/AAAAAAAAAcY/gzZS997ZOWE/s400/ESB+toolkit+installation+2.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
I had a lot of problems installing the ESB Management portal. I found out the reason was that I had Sharepoint Foundation installed on the Default Web Site. So what I ended up doing was delete the Sharepoint site incl. Default Web Site and then created a new Default Web Site for the portal. After some problems (read what it says in the installation guide carefully!!!) I managed to get it up and running. I had to do a couple of changes to the web.config file as my BizTalk groups are domain groups and I installed the core web service for itinerary and exception web service on a different web-site with a custom port (8084).&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-ENjx5Pb4fdY/To2UyNNu9cI/AAAAAAAAAcc/HuglzzxCQ7k/s1600/ESB+toolkit+installation+3.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="222" src="http://1.bp.blogspot.com/-ENjx5Pb4fdY/To2UyNNu9cI/AAAAAAAAAcc/HuglzzxCQ7k/s320/ESB+toolkit+installation+3.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Well it looks like I am up and running. Time to do some testing...&lt;/div&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/10/a-short-stop-from-storeblt-with-nikon.html"&gt;A short stop from Storebælt with Nikon D800 and the Nikon 14-24 lens&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2010/01/bing-map-webservice.html"&gt;Bing map webservice&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/10/superliga-runde-12.html"&gt;Superliga runde 12&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/designing-ui.html"&gt;Designing the UI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/UibFalOCHGU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/4770928549105548811/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2011/10/biztalk-esb-toolkit-21-installation.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/4770928549105548811?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/4770928549105548811?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/UibFalOCHGU/biztalk-esb-toolkit-21-installation.html" title="BizTalk ESB Toolkit 2.1 installation guide" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-57nJHlRVXmQ/ToydCOrOfLI/AAAAAAAAAcU/gFb3ZM62H7Y/s72-c/ESB+toolkit+installation+1.JPG" height="72" width="72" /><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2011/10/biztalk-esb-toolkit-21-installation.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkMBQnk8eSp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-8495826609154059835</id><published>2011-08-18T13:53:00.000+02:00</published><updated>2012-11-07T21:00:53.771+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T21:00:53.771+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><title>BizTalk Server 2009 Deployment issue with multiple users on same server</title><content type="html">If you are more than one developer on the same BizTalk Server 2009 you might have noticed that there can be some deployment issues where you looses configuration that you or some other in your team already have done. Over time I have experienced the following issues from time to time:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;One of the parties that I had enlisted on a rolelink where missing&amp;nbsp;&lt;/li&gt;
&lt;li&gt;The pipeline on a receive location where changed from XMLReceive to PassThrough&lt;/li&gt;
&lt;li&gt;I couldn't deploy an assembly before I deleted a receive port. I got an error telling me that the transport type wasn't set on a receive location. But when I checked the configuration the transport type where set correctly.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
The last one got me searching for why BizTalk does as it does.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
I can't give you a reason why this happens, but I can give you a location that contains the binding files that BizTalk uses behind your back. The location is:&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
C:\Users\&amp;lt;Username&amp;gt;\AppData\Roaming\Microsoft\BizTalk Server\Deployment\BindingFiles&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
"Roaming" could also be something else based on how you logon to your server. I haven't gotten the issue on BizTalk Server 2010 yet, but that might be related to that I haven't work with another user on the same server with the same BizTalk artifacts or related artifacts. But I can see that it creates the same binding files as in BizTalk Server 2009, so my guess is that the same issue is also here in BizTalk Server 2010.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
A common deployment procedure like using the Powershell privider for BizTalk would fix this issue, but I haven't gotten around to confirm this part.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/11/nikon-d3200-vs-nikon-d5200-based-on.html"&gt;Nikon D3200 vs Nikon D5200 based on rumors&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2011/08/use-single-signon-with-ftp-sap-and.html"&gt;Use single-signon with FTP, SAP and other username/password&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/11/superliga-runde-17.html"&gt;Superliga runde 17&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/designing-ui.html"&gt;Designing the UI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/rmQ2J1L8j-M" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/8495826609154059835/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2011/08/biztalk-server-2009-deployment-issue.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/8495826609154059835?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/8495826609154059835?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/rmQ2J1L8j-M/biztalk-server-2009-deployment-issue.html" title="BizTalk Server 2009 Deployment issue with multiple users on same server" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2011/08/biztalk-server-2009-deployment-issue.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkIHR3g-fyp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-808921809741678620</id><published>2011-08-15T15:06:00.000+02:00</published><updated>2012-11-07T21:02:16.657+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T21:02:16.657+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><title>Use single-signon with FTP, SAP and other username/password</title><content type="html">There are some of the adapters that doesn't support single-sign on with you domain users that are assigned to you BizTalk Host Instans. This is an issue in BizTalk when you come to deployment and where you don't want your password for a FTP site to be listed in your binding files.&lt;br /&gt;
&lt;br /&gt;
When you configure your FTP Send Port in Biztalk there is an option to select the &amp;nbsp;SSO Affiliate, which lists your SSO &amp;nbsp;Affiliate applications from Enterprise Single Sign-On. This is a part of what is needed.&lt;br /&gt;
&lt;br /&gt;
The first thing you need is to have a promoted property on your message called "SSOTicket" and this have to have a specifict value. I do this in a pipeline component, but I thing you also can do this in an Orchestration. The code is as follows:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="Apple-style-span" style="color: blue;"&gt;public &lt;/span&gt;Microsoft.BizTalk.Message.Interop.IBaseMessage Execute(Microsoft.BizTalk.Component.Interop.IPipelineContext pc, Microsoft.BizTalk.Message.Interop.IBaseMessage inmsg)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ISSOTicket ssoTicket = &lt;span class="Apple-style-span" style="color: blue;"&gt;new &lt;/span&gt;ISSOTicket();&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; inmsg.Context.Write(&lt;span class="Apple-style-span" style="color: #cc0000;"&gt;"SSOTicket"&lt;/span&gt;,&lt;span class="Apple-style-span" style="color: #cc0000;"&gt; "&lt;/span&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;http://schemas.microsoft.com/BizTalk/2003/system-properties&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #cc0000;"&gt;"&lt;/span&gt;, ssoTicket.IssueTicket(0));&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="Apple-style-span" style="color: blue;"&gt;return &lt;/span&gt;inmsg;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
Create a send pipeline that uses this pipeline component in the Encode phase.&lt;br /&gt;
&lt;br /&gt;
Set the "Allow Tickets" to yes on the system:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-LK6PrYqgd5w/Tqax1IEdVsI/AAAAAAAAAck/xe4RMDHARCw/s1600/SSO1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="201" src="http://1.bp.blogspot.com/-LK6PrYqgd5w/Tqax1IEdVsI/AAAAAAAAAck/xe4RMDHARCw/s320/SSO1.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Then you need to create an affiliate application in Enterprise Single Sign-On:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Give it a nice name and remember to check the check boxes:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-W8dDafydeLs/TkkYIwlUGcI/AAAAAAAAASo/-tG0WvD21HY/s1600/SSOStep1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="234" src="http://1.bp.blogspot.com/-W8dDafydeLs/TkkYIwlUGcI/AAAAAAAAASo/-tG0WvD21HY/s320/SSOStep1.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
Use the Biztalk Group that has the host instanse as Application users&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-4rXq627eaZE/TkkYJKRsiFI/AAAAAAAAASs/gf5zQUnAHg8/s1600/SSOStep2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="233" src="http://2.bp.blogspot.com/-4rXq627eaZE/TkkYJKRsiFI/AAAAAAAAASs/gf5zQUnAHg8/s320/SSOStep2.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
Check "Ticket Allowed" and then finish the Wizard.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-wMa7V6E45_U/TkkYJc0LCCI/AAAAAAAAASw/_JE092l7L1M/s1600/SSOStep3.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="234" src="http://4.bp.blogspot.com/-wMa7V6E45_U/TkkYJc0LCCI/AAAAAAAAASw/_JE092l7L1M/s320/SSOStep3.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
Click new mapping on the new application you just have created. Check the "Credentials as Windows credentials"&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-e42g6uqWRo4/TkkYJmJOW-I/AAAAAAAAAS0/odcff4VBKuA/s1600/SSOStep4.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="232" src="http://4.bp.blogspot.com/-e42g6uqWRo4/TkkYJmJOW-I/AAAAAAAAAS0/odcff4VBKuA/s320/SSOStep4.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
The Window user is the user used by the Biztalk Host Instanse and the External user is your FTP/SAP/Other user&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-50VdTaCeLgg/TkkYJ2oDm1I/AAAAAAAAAS4/UkOVtI_OwCc/s1600/SSOStep5.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="151" src="http://4.bp.blogspot.com/-50VdTaCeLgg/TkkYJ2oDm1I/AAAAAAAAAS4/UkOVtI_OwCc/s320/SSOStep5.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&amp;nbsp;Type in the password for your external user&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-Z3m9mgwgVuo/TkkYKbmJArI/AAAAAAAAAS8/zeMzjfiVvW8/s1600/SSOStep6.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="123" src="http://3.bp.blogspot.com/-Z3m9mgwgVuo/TkkYKbmJArI/AAAAAAAAAS8/zeMzjfiVvW8/s320/SSOStep6.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
Now on your FTP Send port you select the new SSO affiliate application.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-W0EqWivSWCM/TkkYKwZ_iNI/AAAAAAAAATA/R-ix3n6g3Vw/s1600/SSOStep7.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://1.bp.blogspot.com/-W0EqWivSWCM/TkkYKwZ_iNI/AAAAAAAAATA/R-ix3n6g3Vw/s320/SSOStep7.JPG" width="288" /&gt;&lt;/a&gt;&lt;/div&gt;
This should be it. You now have single sign-on on your FTP sites and you can use your Enterprise Single Sign-on to manage your mappings between domain accounts and external accounts.&lt;br /&gt;
&lt;br /&gt;
Sample code at&amp;nbsp;&lt;a href="http://code.msdn.microsoft.com/Use-single-signon-with-FTP-b6414ce8"&gt;http://code.msdn.microsoft.com/Use-single-signon-with-FTP-b6414ce8&lt;/a&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/10/buyers-guide-to-nikon-50mm-lenses.html"&gt;Buyers guide to Nikon 50mm lenses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2011/10/biztalk-esb-toolkit-21-installation.html"&gt;BizTalk ESB Toolkit 2.1 installation guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/11/superliga-opsamling-runde-15.html"&gt;Superliga opsamling runde 15&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/designing-ui.html"&gt;Designing the UI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/N8n3NtiAUWk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/808921809741678620/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2011/08/use-single-signon-with-ftp-sap-and.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/808921809741678620?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/808921809741678620?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/N8n3NtiAUWk/use-single-signon-with-ftp-sap-and.html" title="Use single-signon with FTP, SAP and other username/password" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-LK6PrYqgd5w/Tqax1IEdVsI/AAAAAAAAAck/xe4RMDHARCw/s72-c/SSO1.jpg" height="72" width="72" /><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2011/08/use-single-signon-with-ftp-sap-and.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkIDQHw6eyp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-5146756201563824025</id><published>2010-09-21T20:20:00.000+02:00</published><updated>2012-11-07T21:02:51.213+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T21:02:51.213+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="BizTalk" /><title>Routing failure and request/respons send ports</title><content type="html">&lt;span class="Apple-style-span" style="background-color: white; color: #676767; font-family: Georgia, 'Lucida Grande'; font-size: 12px;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
I had a very strange problem today. I had a one-way receive port that were using the WCF-SQL adapter. I used basic routing to route the message from this port to 2 different WCF-Basic-HTTP request/response ports. The problems was that I got a routing error on my receive port and where you normally would get 2 message I only got one message, which was the routing error. Normally you get 2 message one being the routing error and one being the message received. I went through alot of different things before finding out that you can only have one request/response port as a subcriber, which on some level makes sense, but I would have been nice to get some better error message.&amp;nbsp;&lt;/div&gt;
&lt;div style="padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
If I change my WCF-SQL port to a simple File port I get the following message "The message found multiple request response subscriptions. A message can only be routed&amp;nbsp;to a single request response subscription.", which made it pretty easy to correct the problem. I just have to save the message from the WCF-SQL port to the file system in 2 different folders and have some new ports based on these file locations. Not the nicest solution, but the only way when I didn't want to add an orchestration which might be another solution.&amp;nbsp;&lt;/div&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/09/nikon-d800-here-i-come.html"&gt;Nikon D800 here I come...&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2012/02/biztalk-compile-error-with-maps.html"&gt;BizTalk compile error with maps&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/11/superliga-runde-16.html"&gt;Superliga runde 16&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/designing-ui.html"&gt;Designing the UI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/gD5BHrD78IM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/5146756201563824025/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2010/09/routing-failure-and-requestrespons-send.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/5146756201563824025?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/5146756201563824025?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/gD5BHrD78IM/routing-failure-and-requestrespons-send.html" title="Routing failure and request/respons send ports" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2010/09/routing-failure-and-requestrespons-send.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkEFQH09eSp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-7780513879210429409</id><published>2010-01-26T20:19:00.000+01:00</published><updated>2012-11-07T21:03:31.361+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T21:03:31.361+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Cloud" /><title>Bing map webservice</title><content type="html">&lt;span class="Apple-style-span" style="background-color: white; color: #676767; font-family: Georgia, 'Lucida Grande'; font-size: 12px;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span style="font-family: inherit; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;In some solutions there is a need for some routing services, where your might want to show information to the user about how to get from A to B.&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;In the cloud there are some ways to do this. One is Google and one is Microsoft. This blog post looks at the web services that Microsoft makes available for us.&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;The first you need to do is to create a Bing Map Service account at the following&amp;nbsp;&lt;a href="http://www.bingmapportal.com/" style="color: #70a529; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;"&gt;link&lt;/a&gt;. As a developer you can have up to 5 different keys to use. If you have to use the services in commercials situations you have to contact someone at Microsoft to learn about the pricing and licensing issues. I think that Microsoft should do better at this point and at least show some pricing and licensing examples.&lt;/span&gt;&lt;/div&gt;
&lt;div style="padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span style="font-size: x-small; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;br /&gt;
In the web services there is a couple of different services that you can use:&lt;/div&gt;
&lt;ul style="margin-bottom: 20px; margin-left: 20px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;
&lt;li style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Geocode services, which can be used to lookup of longtitude and latitude of an address or do a reverse lookup of a longtitude and latitude to an address&lt;/li&gt;
&lt;li style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Imagery services, which makes it possible to receive a map image that you might store in a database or something else&lt;/li&gt;
&lt;li style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Route services, which can be used to create a route between two or more different points and where you can get the routing description in your local language. It doesn't have a optimizing feature, which could be nice in some solutions&lt;/li&gt;
&lt;li style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Search services, which can be used to find companies and other stuff from in a city&lt;/li&gt;
&lt;/ul&gt;
&lt;div style="padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
There is an article on MSDN which makes it possible to get up an running with the webservices in a couple of hours. The only thing that might be a problem is that you get two endpoints for the same service, so you have to comment out one of the endpoints.&lt;/div&gt;
&lt;div style="padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;br /&gt;
Besides the webservices there are also a Silverlight and Ajax controls that you can use. I haven't look into these at this point in time.&lt;br /&gt;
Overall it seems like nice services, where you can get up and running pretty fast. The only issue is that they don't list the pricing and licensing and that the services might have some more features.&lt;/div&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/10/a-new-section-to-lens-database.html"&gt;A new section to the lens database&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2011/11/wcf-sql-biztalk-notification-and.html"&gt;WCF-SQL, BizTalk, notification and content based routing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/11/superliga-opsamling-runde-14.html"&gt;Superliga opsamling runde 14&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/4lVx2GO_kHc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/7780513879210429409/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2010/01/bing-map-webservice.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/7780513879210429409?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/7780513879210429409?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/4lVx2GO_kHc/bing-map-webservice.html" title="Bing map webservice" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2010/01/bing-map-webservice.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkEASHk9eCp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-9014827876273384180</id><published>2008-08-26T20:18:00.000+02:00</published><updated>2012-11-07T21:04:09.760+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T21:04:09.760+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Performancepoint" /><title>Creating a new Matrix style in Performancepoint</title><content type="html">&lt;span class="Apple-style-span" style="background-color: white; color: #676767; font-family: Georgia, 'Lucida Grande'; font-size: 12px;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: black; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;If you want to have a nice look for the matrixes that you create in Performancepoint you want to use the Matrix Styles as this gives you a nice and easy way to make sure that all the matrixes have the same formats. But what do you do when you don’t agree with the build-in styles? Say you would like to change the colors to better match your organisation.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: black; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;It is pretty easy, but might also take some time to get just the right matrix style. The matrixes styles are based on the “PivotTable Style” in Excel 2007.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: black; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;The first thing you need to do is to create a small PivotTable otherwise you wouldn’t get the right selects of formats that you want to change.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: black; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;When you are standing in you PivotTable you have to use the&amp;nbsp;&amp;nbsp;“Format as Table” in the Home Ribbon and in the Styles section to change/create a PivotTable Style:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;/div&gt;
&lt;div style="padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;img alt="" src="http://www.snatchedmoments.com/BlogEngine.Web/image.axd?picture=2010%2f2%2fRibbon1.jpg" style="background-color: #eeeeee; border-bottom-color: rgb(221, 221, 221); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-color: rgb(221, 221, 221); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(221, 221, 221); border-right-style: solid; border-right-width: 1px; border-style: initial; border-top-color: rgb(221, 221, 221); border-top-style: solid; border-top-width: 1px; margin-bottom: 0px; margin-left: 0px; margin-right: 10px; margin-top: 0px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; padding-top: 5px;" /&gt;&lt;/div&gt;
&lt;div style="padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font: normal normal normal 11px/normal 'Times New Roman'; letter-spacing: normal; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; orphans: 2; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;span class="Apple-style-span" style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit; font-size: small; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;The best thing is to select one of the existing formats and select the duplicate function in the right click menu. Now you can change the styles you need to get the Matrix Style you want for your Performancepoint matrix with a little trial and error.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/09/nikon-d800-nikon-d600-do-i-regret-my.html"&gt;Nikon D800, Nikon D600 do I regret my choice after DXOmarks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2010/09/routing-failure-and-requestrespons-send.html"&gt;Routing failure and request/respons send ports&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/11/superliga-opsamling-runde-16.html"&gt;Superliga opsamling runde 16&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/SMnHMJSnlTU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/9014827876273384180/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2008/08/creating-new-matrix-style-in.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/9014827876273384180?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/9014827876273384180?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/SMnHMJSnlTU/creating-new-matrix-style-in.html" title="Creating a new Matrix style in Performancepoint" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2008/08/creating-new-matrix-style-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkEMSHo_cCp7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-4045021868106726319</id><published>2008-07-09T20:16:00.000+02:00</published><updated>2012-11-07T21:04:49.448+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T21:04:49.448+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Performancepoint" /><title>Create a NativeSQL Business Rule</title><content type="html">&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Lucida Grande';"&gt;In some difficult situations you might want to use NativeSQL to implement a business rule. It gives you the full power of SQL Server.&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;&amp;nbsp;&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;First you need to create the rule in the Business Modeler to host the NativeSQL business rule. You can use parametres and even use members of dimensions as parameters. When it is time to execute the business rule the user gets a nice interface where the user is able to select the parameter in the dimension.&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;&amp;nbsp;&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;In the SQL it is the memberId of the dimension that is passed into the function and they are of the type int. A start of an implementation can be seen here:&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;&amp;nbsp;&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;&lt;em style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;create proc Calc.[sp$procedure] @entity int, @scenario int, @startTimePeriod int, @endTimePeriod int as&lt;/em&gt;&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;&amp;nbsp;&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;It looks almost as a normal stored procedure in SQL. The only difference is that the name is a preprocessor commands and the Performancepoint translate this to a real stored procedure name, when it is created by the Performancepoint in the SQL Server. The rest of the parametres is just like a normal stored procedure.&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;&amp;nbsp;&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;You implement your stored procedure just like you normally would with transactions, select, insert and delete statements. It can be a good idea to use SQL Server Management Studio to do some testing on the implementation before you add it to Performancepoint. In this implementation it is possible to use more preprocessor commands to reference different kind of columns.&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;&amp;nbsp;&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;When it is time to deploy you have to have the NativeSQL listed as a InActive rule for you to be able to deploy it with the Business Modeler. After this is done you have to have database access to change the bit field in the “RuleSetsOrRules” table from false to true. Then you have to go back to the Business Modeler to do a deployment of the rules again (after a refresh) and it at this time the the Performancepoint creates the stored procedure and if there are any errors in the sql like “Ambiguous column name” or “Invalid column name” they can be found in the Event Viewer. If all this goes well the Business rule is ready to be executed.&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;&amp;nbsp;&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;You can see the implementation of the Business Rule by expanding your stored procedures in you application database and check under the name “Calc.bsp_GeneratedCalc_[Businessmodel label]_Rule:[Business rule label][ModelId]”.&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;&amp;nbsp;&lt;br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /&gt;A small tip: Check out the the NativeSQL implementation of “Chart_CarryForward”, “Chart_GAP_Movement”, “Chart_Batch_GAP_Movement” and “Chart_Seeding” in&amp;nbsp; the Financial Model without shares calculation for some tip on how NativeSQL can be used&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Random posts: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.photospots.dk/2012/11/wide-angle-lenses-added-to-lens-datbase.html"&gt;Wide angle lenses added to the lens datbase&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.snatchedmoments.com/2008/07/create-nativesql-business-rule.html"&gt;Create a NativeSQL Business Rule&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fckview.dk/2011/09/superliga-runde-11.html"&gt;Superliga runde 11&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://appconstruction.blogspot.dk/2012/04/welcome-to-app-construction.html"&gt;Welcome to app construction&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/5NNA6EBk1UM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/4045021868106726319/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2008/07/create-nativesql-business-rule.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/4045021868106726319?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/4045021868106726319?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/5NNA6EBk1UM/create-nativesql-business-rule.html" title="Create a NativeSQL Business Rule" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2008/07/create-nativesql-business-rule.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkAGRX4yeip7ImA9WhNRE0w.&quot;"><id>tag:blogger.com,1999:blog-3293557443132683030.post-7835685037701131918</id><published>2008-05-08T20:14:00.000+02:00</published><updated>2012-11-07T21:05:24.092+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-07T21:05:24.092+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Performancepoint" /><title>Description field in the Time dimension in Performancepoint 2007</title><content type="html">&lt;span class="Apple-style-span" style="background-color: white;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="font-family: Georgia, 'Lucida Grande'; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;What do you do when you want to use the description field in the time dimension in Performancepoint Server 2007?&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: Georgia, 'Lucida Grande'; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;The reason for this question is that I need to be able to show in an Excel input form which days are Easter each year, when is summer vacation and so on. They need this information to do better planning. The most logical answer would be to add this information to the Time dimension as it is information that is closely related to the dates in the Time dimension. You can't add a new field to the Time dimension, so I thought I use the description field which is already in the time dimension. The only problem is that you can't change the description field in the Planning Business Modeler.&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: Georgia, 'Lucida Grande'; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;I tried to change the table directly in the SQL Server and then did a Deploy Model Site in the Planning Business Modeler. You can see the result here:&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: Georgia, 'Lucida Grande'; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="color: #676767; font-family: Georgia, 'Lucida Grande'; font-size: 12px; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;/div&gt;
&lt;div style="color: #676767; font-family: Georgia, 'Lucida Grande'; font-size: 12px; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;img alt="" src="http://www.snatchedmoments.com/BlogEngine.Web/image.axd?picture=2010%2f2%2fdescriptionfieldintimedimension.jpg" style="background-color: #eeeeee; border-bottom-color: rgb(221, 221, 221); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-color: rgb(221, 221, 221); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(221, 221, 221); border-right-style: solid; border-right-width: 1px; border-style: initial; border-top-color: rgb(221, 221, 221); border-top-style: solid; border-top-width: 1px; margin-bottom: 0px; margin-left: 0px; margin-right: 10px; margin-top: 0px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; padding-top: 5px;" /&gt;&lt;/div&gt;
&lt;div style="color: #676767; font-family: Georgia, 'Lucida Grande'; font-size: 12px; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font: normal normal normal 11px/normal 'Times New Roman'; letter-spacing: normal; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; orphans: 2; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="color: #676767; font-family: Georgia, 'Lucida Grande'; padding-bottom: 5px; padding-left: 0px; padding-right: 0px; padding-top: 5px;"&gt;
&lt;span style="color: #003300; font-family: Verdana, sans-serif; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;This isn’t supported by Microsoft as you go and change something that isn’t change with the normal API or user interface.&lt;/span&gt;&lt;/div&gt;
&lt;br/&gt;Random posts: &lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;a href='http://www.photospots.dk/2012/09/nikon-d800-vs-d600-what-to-buy.html'&gt;Nikon D800 vs D600: What to buy&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href='http://www.snatchedmoments.com/2008/08/creating-new-matrix-style-in.html'&gt;Creating a new Matrix style in Performancepoint&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href='http://www.fckview.dk/2011/10/superliga-runde-12.html'&gt;Superliga runde 12&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href='http://appconstruction.blogspot.dk/2012/04/designing-ui.html'&gt;Designing the UI&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;img src="http://feeds.feedburner.com/~r/SnatchedMoments/~4/j5QqVkuCUg4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.snatchedmoments.com/feeds/7835685037701131918/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.snatchedmoments.com/2008/05/description-field-in-time-dimension-in.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/7835685037701131918?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3293557443132683030/posts/default/7835685037701131918?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SnatchedMoments/~3/j5QqVkuCUg4/description-field-in-time-dimension-in.html" title="Description field in the Time dimension in Performancepoint 2007" /><author><name>Torben Chrona Christiansen</name><uri>https://plus.google.com/102111092104313593163</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-R37RtueSayk/AAAAAAAAAAI/AAAAAAAABmU/8qzPob-bjQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.snatchedmoments.com/2008/05/description-field-in-time-dimension-in.html</feedburner:origLink></entry></feed>
