tag:blogger.com,1999:blog-198907112024-03-14T17:00:47.717+10:00Marcus Rosen.NETThoughts on .NET/SQL Server/BizTalk and other Microsoft related technologiesMarcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.comBlogger24125tag:blogger.com,1999:blog-19890711.post-64821820775053688512008-07-01T23:11:00.001+10:002008-07-01T23:11:10.210+10:00Nokia Step Counter<p>As I recently upgraded my phone plan and got a Nokia N95 8G (which by the way is a fantastic device), I trailed the net for exciting and useful/useless applications to install. <br /> <br /><a href="http://www.nokia.com/A41033364" target="_blank"><img style="margin: 0px 5px 0px 0px" src="http://www.nokia.com/NOKIA_COM_1/Microsites/BetaLabs/applications/Nokia_Step_Counter/stepcounter.jpg" align="left" /></a> One quite useful application that I can a cross is the Nokia Step Counter by Nokia Labs. It uses the accelerometer built into the phone and transforms the phone to a pedometer (step counter). The pedometer is quite accurate and I now now how much (or little) I move around in a given day. <br /> <br />Working in the IT industry and almost turning 30 I guess it's important to start thinking a bit more about my overall well being (read weight) and this actually seems to motivate me to walk a bit more.. ;-) <br /> <br />The application has a couple of cool features like auto start in the morning, diary, trends charts, etc.</p> <p>You can download it from: <a href="http://www.nokia.com/A41033364" target="_blank">http://www.nokia.com/A41033364</a></p> Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com2tag:blogger.com,1999:blog-19890711.post-73121900242890879142008-06-25T23:44:00.001+10:002008-06-25T23:47:56.409+10:00Keyboard shortcuts for traversing Code in Visual Studio<p>The feature has probably been around for years but I just discovered it the other day and already find indispensable. <br /> <br />If you are traversing through code and use the <strong><em>"Go to Definition",</em></strong> Visual Studio offers Back and Forward History similar to a Web browser so you can jump back and forth between code files and positions without scrolling. This is a very useful feature especially if you work with code that is unfamiliar and/or many levels deep. <br /> <br /><strong>Keyboard Shortcut:</strong></p> <p><strong>Back: Ctrl + Minus <br />Forward Ctrl + Shirt + Minus</strong></p> Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-79717139054583492732008-04-02T01:29:00.001+10:002008-04-11T20:29:54.179+10:00SQL Server 2005 Integration Service (SSIS) vs. BizTalk Server 2006 (Updated)<p><em><strong>EDIT: Post has been update after comments by Rick Negrin (Microsoft).</strong></em></p> <p><em>The other day I was asked about the differences about SSIS and BizTalk as there are some blurred boundaries between these products. Not being an expert on SSIS, this write up might be a bit bias towards BizTalk but hopefully will provide some useful comparisons or insights.</em></p> <p><b>What is SQL Integration Services (SSIS)? <br /></b>SSIS is a replacement for Data Transformation Service (DTS) and provides tools to build data integration solutions, including extraction, transformation, and load (ETL) for data warehousing. SSIS can be used to build solutions to transfer/copy data between multiple different data sources (Database table, Flat File, Excel, etc) using a variety of protocols (SQL, FTP, SOAP, etc) allowing for transformation/cleaning/aggregation between those data sources. SSIS also provides a .NET Application Programming Interface (API) and can be invoked from .NET code.</p> <p><b>What is BizTalk Server? <br /></b>BizTalk is an Enterprise Integration (EAI) and Business Process Management (BPM) Server. It provides tools to create both long-running and transactional business processes allowing for interaction with multiple platforms through adapters supporting multiple protocols (SQL, File, SOAP, HTTP, POP3, etc) and applications (SAP, Siebel, JDE, etc). BizTalk includes a Rule Engine allowing for real-time execution of business rules, a XML transformation engine, real-time monitoring framework for better visibility of business processes and more.</p> <p><b>Overlapping features of BizTalk and SSIS</b></p> <ul> <li><b>Integration <br /></b>SSIS provides integration on the database/physical file level and some support for integration with a business process e.g. through SOAP (although this is not typical usage of the product). It’s typically used to execute batch processes without specific or changing business rules. A typical integration scenario for SSIS is Database to Database integration or File to Database (or vice versa) batch process that is scheduled to run at a given time. <br /> <br />BizTalk provides integration on the business process level but also support for database level integration. BizTalk can receive data from both databases and files, execute a set of discrete business step and write data back to a file of database. BizTalk’s strength lies in real-time data, orchestration of business processes and ability to connect many different systems and applications. BizTalk adapters also have features such as automatic retries and service windows. A typical integration scenario for BizTalk is a multi-step business process requiring specific business rules to be executed and multiple systems to be interacted with e.g. an order and credit-card approval process through a 3<sup>rd</sup> party web service. <br /></li> <li><b>Transformation <br /></b>SSIS support transformation between many formats, e.g. comma separated files, Excel files, and database table but only offers very limited support for XML. XML is supported only as a data type (e.g. to be inserted into a table) but XML cannot be transformed to Flat File format without addition of custom code. <br /> <br />BizTalk supports mainly transformations of XML to XML. The reason for this is that all data that goes through the BizTalk engine need to be converted to XML. BizTalk has support for flat files as an XML schema but the mapping between transformation formats is done on the XML level. Custom pipeline components can be created to support transformation to/from other formats. <br /></li> <li><b>Messaging <br /></b>Service Broker (part of SSIS) is First-In-First-Out (FIFO) highly-scalable queue used for asynchronous and reliable processing. <strike>As it’s a FIFO no parallel processing is available which decreases throughput.</strike> The Service Broker doesn’t support subscriptions and needs to be explicitly invoked (e.g. via SOAP, Stored Procedure or through SSIS directly). There is no support for <strike>automatic retries or </strike>service windows. The typical scenario for Service Broker is to handle <strike>low priority</strike> asynchronous call from an SSIS process such as sending emails without holding up the existing process. <br /> <br />BizTalk features a powerful publish and subscribe messaging system. New message subscribers can be added with ease (after deployment) and content-based routing is easy to implement. It supports both parallel and serial (FIFO) processing. All adapters also support automatic retries and service windows. All messages are stored transactionally in the MessageBox database. </li> </ul> <p><b></b></p> <p><b>Scenarios</b></p> <ul> <li><b>File Order Batch <br /></b>A company’s proprietary order system provides a flat file of the days orders exported from the Mainframe. The order batch data needs to be inserted into a ODBC database table. <br />  <ul> <li><b>SSIS – </b>Everything can be done out of the box. <br /></li> <li><b>BizTalk – </b>Everything can be done out of the box but SSIS is would most likely be more suitable (unless the file needed to be processed at the time it was created rather than at a scheduled time). </li> </ul> </li> </ul> <p><b></b></p> <ul> <li><b>Simple Order Exporter <br /></b>At a given interval, retrieve XML order data from a database, transform data, and send transformed data to a web service (which provides a thin wrapper of a database). Receive web service reply and handle error conditions based on reply or errors. <br /> <br /> <ul> <li><b>SSIS – </b>Everything except the XML transformation and the handling of reply can be done without custom code. If the format could be changed and the service boundary removed (talking directly to underlying database) SSIS would be a good choice. <br /></li> <li><b>BizTalk – </b>Everything can be done out of the box. <br /> <br /></li> </ul> </li> <li><b>Order Batch and Credit Card Validation <br /></b>At a given interval, receive order batch (as XML), perform rules on each discrete order (and react to rule outcome), call 3<sup>rd</sup> Party web service for order and credit card verification and run rules on the returned result (and react to rule outcome). <br /> <br /> <ul> <li><b>SSIS – </b>Everything except running business rules can be done without custom code. Every time a business rule changes (if we assume it’s been implemented in .NET code) the .code has to be updated, recompiled and deployed. <strike>Processing can only be done in serial, as one batch.</strike> <br /></li> <li><b>BizTalk – </b>Everything can be done out of the box with little custom-code both in parallel (by splitting the batch and processing each order individually) and in serial, as one batch. </li> </ul> </li> </ul> <p><b></b></p> <p><b>Summary</b></p> <p>SSIS strength lies in bulk data processing on the database/file level. SSIS is a great tool for implementing ETL solutions but not a good tool for implementing business processes on. If data needs to be interpreted, business rules needs to be evaluated and multiple steps are involved BizTalk is most likely a better choice.</p> <p>BizTalk strength lies in supporting complex processes on the business level still with good support for data level integration. To use BizTalk for database to database integration without/or with few business rules is an over-kill solution and SSIS would most likely be a better fit.</p> Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com10tag:blogger.com,1999:blog-19890711.post-26284218792654540552008-03-05T22:47:00.001+10:002008-03-05T22:53:49.620+10:00MSBuild and BizTalk<p>If you need to deploy a BizTalk solution in an automated fashion using MSBuild take a look at the following:</p> <p><strong>Microsoft SDC Tasks</strong> - <a title="http://www.codeplex.com/sdctasks/" href="http://www.codeplex.com/sdctasks/">http://www.codeplex.com/sdctasks/</a></p> <p>Contains MSBuild tasks for BizTalk deployment tasks like: </p> <ul> <li>Removing/Adding BizTalk Applications </li> <li>Starting/Stopping Application </li> <li>Terminating Host Instances </li> <li>And whole heap of other goodies.. </li> </ul> <p><strong>BizTalk Build Generator</strong> - <a title="http://www.codeplex.com/BizTalkMsBuildTool/" href="http://www.codeplex.com/BizTalkMsBuildTool/">http://www.codeplex.com/BizTalkMsBuildTool/</a></p> <ul> <li>Generates a complete set of MSBuild scripts for your BizTalk Application. Very easy and quick to use and gives a very good basis for your own customised build scripts. </li> </ul> <p>Combining these two tools give you a lot of flexibility and clean build scripts if you want /need to stick with MSBuild.</p> <p>The only things that is missing in my opinion is a task to Restarting the BizTalk Host Instance. To do this manually (using NET START/STOP) through MSBuild you can use the following target: </p> <!-- code formatted by http://manoli.net/csharpformat/ --> <pre class="csharpcode"><span class="kwrd"><</span><span class="html">PropetyGroup</span><span class="kwrd">></span><br /> <span class="kwrd"><</span><span class="html">BizTalkServiceName</span><span class="kwrd">></span>BTSSvc$BizTalkServerApplication<span class="kwrd"></</span><span class="html">BizTalkServiceName</span><span class="kwrd">></span> <br /><span class="kwrd"></</span><span class="html">PropertyGroup</span><span class="kwrd">></span><br /><br /><span class="kwrd"><</span><span class="html">Target</span> <span class="attr">Name</span><span class="kwrd">="RestartBizTalkHostService"</span><span class="kwrd">></span><br /> <span class="kwrd"><</span><span class="html">Message</span> <span class="attr">Text</span><span class="kwrd">="Stopping the BizTalk Service.."</span> <span class="kwrd">/></span><br /> <span class="kwrd"><</span><span class="html">Exec</span> <span class="attr">Command</span><span class="kwrd">="NET STOP $(BizTalkServiceName)"</span> <span class="kwrd">/></span><br /><br /> <span class="kwrd"><</span><span class="html">Message</span> <span class="attr">Text</span><span class="kwrd">="Starting the BizTalk Service.."</span> <span class="kwrd">/></span><br /> <span class="kwrd"><</span><span class="html">Exec</span> <span class="attr">Command</span><span class="kwrd">="NET START $(BizTalkServiceName)"</span> <span class="kwrd">/></span><br /><span class="kwrd"></</span><span class="html">Target</span><span class="kwrd">></span></pre><br /><br /><p>You can obtain the value of BizTalkServiceName from the Service Console. </p> Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-45138157044559916682007-06-22T06:12:00.000+10:002007-06-22T06:16:09.897+10:00[Personal Post] My Travel BlogFor you who know me personally and would like to hear of my adventures overseas I have created a new blog explicitly for this purpose on:<br /><br /><a href="http://bamontour.blogspot.com/">http://bamontour.blogspot.com</a>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-30225891661385373792007-05-10T19:56:00.000+10:002007-05-10T20:00:03.790+10:00WMI Programming in .NETI have lately been playing around using WMI though .NET (<a href="http://msdn2.microsoft.com/en-us/library/system.management.aspx">System.Management</a> namespace). The reason for this is that I’m developing a little BizTalk admin tool and I’m using a fair bit of WMI interop as well as ExplorerOM.<br /><br />I never realised the power of WMI until I started doing this. WMI allows you to do many things among control hardware, hook in to OS events and all MS Server products exposes functionality through WMI (e.g. BizTalk). It basically brings you closer to the platform.<br /><br />WMI programming is fairly simple to do through managed code these days, and it’s made even simpler through this free MS Tool: <a href="http://www.microsoft.com/downloads/details.aspx?familyid=2cc30a64-ea15-4661-8da4-55bbc145c30e&displaylang=en">WMI Code Creator</a>. This tool lists all WMI Classes, events and even generates code in C#/VB.NET or VB Script.<br /><br />Nice Nice!Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1159355540171366592006-09-27T21:12:00.000+10:002007-02-23T22:48:35.562+10:00First BizTalk 2006 book to hit the shelves..<p><img src="http://www.apress.com/ApressCorporate/supplement/1/10137/bcm.gif" align="right" />The first BTS 2006 has finally hit the shelves!! It seems alot of author have decided to hold off releasing their books until BizTalk Server 2006 R2 has been released but here is a book that takes the plunge.<br /><br /><em><strong>BizTalk 2006 Recipes: A Problem-Solution Approach</strong> is based on the experiences of many of the most prominent experts in the field. It features over 170 problem-solving recipes for BizTalk developers and administrators.</em></p><p><em>BizTalk Server 2006 builds on the heritage and core architecture of BizTalk Server 2004, leading to a powerful tool that encompasses the latest Microsoft technologies and industry standards for automating and managing business processes. BizTalk Server 2006 adds incremental value to BizTalk 2004 by improving administration, deployment, and other key areas of the product.</em> <p><a href="http://www.apress.com/book/bookDisplay.html?bID=10137" target="_blank">Book Web Site</a></p>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1158668710740707052006-09-19T22:25:00.000+10:002007-05-09T21:53:37.502+10:00Flat File Processing with Multiple Repeating TAG Identifiers<p>Suppose you came across a flat file format that describes a header, a footer and a collection of different types of unrelated object (e.g., CAT, DOG, CAR, HOUSE, SPACESHIP). Each object have a different stucture and it's own TAG identifier. </p><p>The format could look like this:<br /><strong><Header Comment>, <Sequence Number>, <Date of Transmission>; <List of objects>;<Total Number of objects>,<Sequence Number><CR LF></strong></p><p>Each object is a completely different structure and a has unique tag identifier e.g:<br /><strong><Tag Identifier> <List of Fields separated by , >;</strong><br /><br />And example of the example of data looking like this could be (colour coded for readablity):</p><p><span style="color:#0000ff;"></span><span style="color:#ffff00;"></span></p><p><span style="color:#004080;">A Header Comment, 12345678910, 2006-09-19;</span><span style="color:#ff0000;">CAT Garfield,5 Years,50KG;DOG Odie,Drowles Everywhere,Loves Everything,10KG,2 Years;CAR Mazda 323,Marcus Rosen,123 QYW,Red,1999;CAR Honda Accord,Belinda Something,567 QWE,Silver,1997;HOUSE 10 Somewhere,Some Town,Some Country,12345;SPACESHIP The Falcon,200 Lightyears,Luke Skywalker;CAT Tiffany,13 Years,12KG;CAR BMW 318i,Scott Martin,412 YQW,Metallic Blue,2006;</span><span style="color:#ffff00;">8, 12345678910;</span> <p></p><p><strong>Can you create a Flat File Schema that supports multiple repeating TAG identifiers in the BizTalk Schema Editor?</strong></p><p>YES you can but it's not really straight forward, hence this post!! </p><p><em>Unfortunatly I lost the images that were previously uploaded here but the example files are still avaliable for download.</em></p><p><a href='http://www.mediafire.com/?6njolzdmdto'>Download Example</a></p>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com2tag:blogger.com,1999:blog-19890711.post-1158041318060604932006-09-12T16:05:00.000+10:002006-09-12T16:08:55.693+10:00Diffrences between WF and BizTalkHere is a great older post by Brian Loesgen trying to weed out the confusion about when to use Windows Workflow Foundation versus Biztalk Server 2004/2006.<br /><br /><a href="http://geekswithblogs.net/bloesgen/archive/2005/10/09/56481.aspx">http://geekswithblogs.net/bloesgen/archive/2005/10/09/56481.aspx</a>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1158036814834330432006-09-12T14:47:00.000+10:002006-09-12T14:53:35.226+10:00Changes to the BRE between BizTalk 2004-2006Sreedhar Pelluru, Programmer Writer on the BizTalk Server team has a <a href="http://blogs.msdn.com/biztalkbre/archive/2006/08/29/730645.aspx">great post</a> (with code examples) about changes in the Business Rules engine between BizTalk 2004 and 2006.<br /><br />Change Summary:<br /><ul><li>Support for generic types and generic methods </li><li>Support for nullable types</li><li>Accessing nested members of a class</li><li>Type Casting support</li><li>Invoking Static Members of a Class</li><li>Overriding registry key setting with application configuration file. </li><li>GetDeploymentDriver method added to Configuration class</li><li>Clear method added to the Policy class </li><li>IFactRemover interface added. </li><li>SqlTimeOut registry key added. </li><li>Arithmetic and logical operators support double promotion</li></ul>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1157775613025686872006-09-09T14:20:00.000+10:002007-05-10T20:05:12.184+10:00BrizTalk Presentation - Identity Migration using DSML and BizTalk Server<p>On the 30th of August I had the pleasure of presenting to the Brisbane BizTalk User Group - BrizTalk. The presentation covered a solution I implemented last year using DSML (Directory Service Markup Language) and BizTalk Server 2004 to move users between a mainframe system and MS Active Directory.</p><p><em>Unfortunaly the Powerpoint presentation has been lost. :( I will post it here again if it surfaces.</em></p><p></p><p><a href="http://www.briztalk.org" atomicselection="true"><img height="65" src="http://www.briztalk.org/Portals/0/logo3_sm.gif" width="240" border="0" /></a></p>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com6tag:blogger.com,1999:blog-19890711.post-1155272289851668502006-08-11T14:52:00.000+10:002006-08-11T14:58:09.863+10:00BizTalk 2006 Deep DiveI had the pleasure of attending the <a href="http://www.quicklearn.com/deepdive.htm">BizTalk 2006 Deep Dive Course</a> in Seattle, Washington.<br />This course is (without a doubt) one of the worlds best advanced traning courses in BizTalk Server.<br /><br />The course covered the following (and more):<br /><br />- BizTalk Performance (deployment and orchestration optimisation)<br />- Security<br />- Advanced Mapping<br />- Advanced Messenging<br />- Integration Patterns<br />- Advanced Flat-File Processing<br />- Advanced Orchestration Design<br /><br />I absolutely recommend this course to anyone wishing to further their BizTalk skills!Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1154099061028223412006-07-29T00:55:00.000+10:002006-07-29T01:04:21.043+10:00BizTalk 2006 Certified (MCTS)I sat the BizTalk 2006 Beta (71-235) exam in the beginning of June and the results were released last week. <br />I PASSED!<br /><br />Anyway, compared to the BizTalk 2004 exam this was nothing. The questions were very high-level and a person without a lot of experience could have passed it. The most focus (from memory) was on BAM but questions regarding the Business Rules engine, Persistence Points in orchestrations and general orchestration knowleadge was also covered. The study guide ( which I spent about 1 1/2 days with) can be <a href="http://www.microsoft.com/learning/exams/70-235.asp">found here</a> and matched quite well the exam content.<br /><br />Next on my list are the MCDP: Enterprise Developer UPGRADE exams.Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com4tag:blogger.com,1999:blog-19890711.post-1148446870032435132006-05-24T14:47:00.000+10:002006-05-24T15:09:57.403+10:00K2.NET - Deleting a ProcessI have for the last couple of days been playing with K2.NET, which is an excellent product for playing the human workflow part in a BizTalk implemention, rather the awful Human Workflow Services.... :-(<br /><br />As I was trying a couple of different things, I got to a stage were I wanted to delete some of my existing deployed (K2 uses the word "exported") processes, but I could not for the life of me work out how to do it. It's not in the HELP file, not in the study notes, etc..<br /><br />Finally I found this <a href="http://forum.k2workflow.com/viewtopic.php?t=1274">post</a> on the K2.NET Forums that discussses the wProcDelete stored procedure in the K2 transaction database...<br /><br />It isn't a very pretty, intuitive or even user-friendly solution but it does work....Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com2tag:blogger.com,1999:blog-19890711.post-1147833459497787122006-05-17T12:31:00.000+10:002006-05-24T14:47:13.620+10:00Problem locating the pre-requisite files for BizTalk 2006Tried for the 1st time to install BizTalk 2006 myself today on a Virtual PC Image, but had problems downloading and finding the pre-requisite redistributable files (BtsRedist.cab) required for the install.<br /><br />Thanks to Grant Holliday of Readify it all worked out, see his post here:<br /><a href="http://www.holliday.com.au/blog/biztalk-2006-pre-requisite-cab-files.html">http://www.holliday.com.au/blog/biztalk-2006-pre-requisite-cab-files.html</a>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1145581744002827512006-04-21T11:04:00.000+10:002006-04-24T10:33:19.106+10:00BizTalk 2006 Documentation in PDF Format!!The BizTalk Product team has released the product documentation in PDF format (> 8000 Pages)!! The package contains the following PDF files: <ul><li>Getting Started (506 pages)</li><li>Planning and Architecture (1,056 pages)</li><li>Security and Protection (60 pages)</li><li>Development (2,098 pages)</li><li>Deployment (149 pages)</li><li>Operations (1,950 pages)</li><li>Business Process Management (703 pages)</li><li>Troubleshooting (133 pages)</li><li>Technical Reference (2,100 pages)</li></ul>See Luke Nyswonger's Post for more information:<br /><a href="http://blogs.msdn.com/luke/archive/2006/04/19/579289.aspx">http://blogs.msdn.com/luke/archive/2006/04/19/579289.aspx</a><br /><br />Or download directly here:<br /><a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=8F3EC693-2865-4B85-8455-745511EA4267&displaylang=en">http://www.microsoft.com/downloads/details.aspx?FamilyId=8F3EC693-2865-4B85-8455-745511EA4267&displaylang=en</a>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1144812649034493342006-04-12T13:28:00.000+10:002006-04-12T13:30:49.036+10:00MSDN TV coverage of new BizTalk features<strong>New Features of BizTalk Server 2006</strong><br /><br />Kris Horrocks introduces some of the new features of BizTalk Server 2006. See demos of the all new BizTalk Administration Console and Group Hub Page, as well as technical demonstrations of new core engine features like recoverable interchanges and end-to-end ordered message delivery.<br /><br /><a href="http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20060309BizTalkKH/manifest.xml"><span style="font-size:85%;">http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20060309BizTalkKH/manifest.xml</span></a>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1144812077163762012006-04-12T13:19:00.000+10:002006-04-12T13:21:17.173+10:00SQL Server 2005 Web CastsMicrosoft has released a whole heap web casts for SQL Server 2005:<br /><br /><a href="http://www.microsoft.com/sql/eval/webcast.mspx?wt.mc_id=SQL.AD.01072">http://www.microsoft.com/sql/eval/webcast.mspx?wt.mc_id=SQL.AD.01072</a>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1144805481376744372006-04-12T11:24:00.000+10:002006-04-12T11:31:21.396+10:00Refactor! for VB.NET 2.0Are you programming in VB.NET 2.0?<br /><br />Are you missing the refactoring function that C# 2.0 offers in Visual Studio 2005?<br /><br />I know that I was really looking forward to this function when finally moving to VS2005 and was very disappointed when the VS development team was forced to remove it from the first realease of VS 2005 due to time constraints.<br /><br />WELL, Developer Express Inc has now released a free add-on for VB.NET 2.0 that should offer similar functionality to the C# one.<br /><br />Get it from here today:<br /><a href="http://msdn.microsoft.com/vbasic/downloads/tools/refactor/">http://msdn.microsoft.com/vbasic/downloads/tools/refactor/</a>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1140419818719077952006-02-20T16:59:00.000+10:002006-02-20T20:24:25.610+10:00Biztalk 2004 Certified!!<p>After about a month’s preparation I finally sat and passed the <strong>074-135 (Developing E-Business Solutions Using Microsoft BizTalk Server 2004) </strong>with a final exam score of 887 (pass is 700). It's a hard exam in that the preparation required is quite extensive. As with any MS partner exams there are no practice exams (e.g. Trancenders) available and all you have to go on is the <a href="http://www.microsoft.com/learning/exams/74-135.asp">study guide</a>. If you intend to sit this exam, I highly recommend lots of PRACTICAL knowledge regarding the platform (as I actually doing versus only reading about it).<br /><br />These are the source that I used:<br /><br />BizTalk 2004 Server Unleashed<br />BizTalk 2004 Whitepapers<br />Microsoft MSDN Articles<br />MOC 2157 – Development<br />MOC 2158 - Administrator<br />All SDK samples (Refresh)<br /><br />I do believe in this case the study guide matched pretty well what the exam did cover.<br /><br />Now I only have the <a href="http://www.microsoft.com/learning/mcp/mcts/biztalk/">BizTalk 2006 exam</a> to look forward to, which is yet to be released. ;-)<br /></p>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com2tag:blogger.com,1999:blog-19890711.post-1135164589613086002005-12-21T21:19:00.000+10:002005-12-21T21:36:18.990+10:00Problems running and debugging InfoPath 2003 ??I developed a Digital Signing component (see previous post) tested it and put it under source control. A week later I tried the component again and this time it wouldn't work. I tried everything, but still couldn't figure out what went wrong, considering nothing had actually changed on the code level.<br /><br />After some searching I came across the solution on the newsgroups. It turns out that InfoPath (and maybe other Office Product) defaults to .NET 2.0 if installed. And as it turned out, although I hadn't yet installed the 2nd version of the framework, it some how was installed on my computer. I blame WINDOWS UPDATE, which is constantly running.. ;-)<br /><br />To get the InfoPath to default back to .NET 1.1, you need to update or create a file named INFOPATH.EXE.CONFIG, add it to the same directory as your infopath.exe and add the following:<br /><br /><?xml version ="1.0"?><br /><configuration><br /> <startup><br /> <requiredRuntime version="v1.1.4322"/><br /> </startup><br /></configuration><br /><br />Apparently this goes for any old .NET applications.<br /><br />To read more about this: <br /><a href="http://blogs.msdn.com/jmstall/archive/2005/12/05/VS2003_crashes_with_2005.aspx">Visual Studio 2003 Mixed Mode Debugging Crash</a>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com4tag:blogger.com,1999:blog-19890711.post-1135163808422583962005-12-21T21:01:00.000+10:002005-12-22T14:09:50.756+10:00Programmatically adding Digital Signature to an InfoPath FormDigital Signature are useful for detecting that information has tampered with and is easily added to an InfoPath form through a wizard interface. But what if you wanted to add a one without using the wizard? With InfoPath 2003 now being able to run managed code(SP1), this is now relatively easy.<br /><br />Microsoft has published the follwing comprehensive articles on the subject:<br /><br /><a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odc_ip2003_ta/html/ODC_INFDigitallySigningData1.asp" target="_blank">Digitally Signing Data in InfoPath 2003</a><br /><br /><a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odc_ip2003_ta/html/ODC_INFDigitallySigningData2.asp" target="_blank">Verify and Add Digital Signatures to Form Data in InfoPath 2003 Using MSXML 5.0 or .NET Framework Managed Code</a><br /><br />If you need a certificate for development purposes, I recommend using <a href="http://www.openssl.org/">OpenSSL</a><br /><br />This site explains how to create a self-signed certificate: <br /><a href="http://www.madboa.com/geek/openssl/#cert-self">OpenSSL Command-Line HOWTO</a>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1134988568413997062005-12-19T20:35:00.000+10:002005-12-21T21:00:03.076+10:00BizTalk & DSMLNeed to interact with Active Directory (or other LDAP source) through your BizTalk implementation?<br /><br />One option to be able to do this is to use Directory Service Markup Language (DSML).<br />DSML is a XML-based langaguge which allows you to interact with a LDAP source, such as Active Directory. You can (among other things) add, delete, update and query your directory source just as within the System.DirectoryServices namespace.<br /><br />The advantage of using DSML over the System.DirectoryServices namespace is that you can go directly from an XML structure to another XML structure (through a transformation map) within your BizTalk orchestration, while if going through the the System.DirectoryServices namespace you are required you to go from <br />XML Message -> .NET object -> XML Message by calling an external assembly from the orchestration.<br /><br /><br />An example DSML Add message looks like this:<br /><br /><addRequest dn="CN=Alice,OU=HR,DC=Example,DC=COM"><br /> <attr name="objectclass"><value>top</value></attr><br /> <attr name="objectclass"><value>person</value></attr><br /> <attr name="objectclass"><value>organizationalPerson</value></attr><br /> <attr name="sn"><value>Johnson</value></attr><br /> <attr name="givenName"><value>Alice</value></attr><br /> <attr name="title"><value>Software Design Engineer</value></attr> <br /></addRequest><br /><br /><br />Microsoft has released a DSML Service (DSML Standard v2.0) for Windows which runs as a Windows Service and exposes a web service interface. It comes with some good coding examples and a Web based console to directly execute DSML against the service.<br />The service can further be secured through certificates to prevent unauthorised access.<br /><br /><br />Links:<br /><br /><a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dsml/dsml/portal.asp">DSML Services for Windows</a><br /><br /><a href="http://www.oasis-open.org/committees/dsml/docs/DSMLv2.doc">DSML v2.0 Documentation</a><br /><br /><a href="http://www.oasis-open.org/committees/dsml/docs/DSMLv2.xsd">XML Schema for DSML</a>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com1tag:blogger.com,1999:blog-19890711.post-1134646926264220862005-12-15T21:31:00.000+10:002005-12-15T21:42:06.273+10:00Welcome to my blog!<span style="font-family:arial;font-size:85%;">Hi there! </span><br /><span style="font-family:arial;font-size:85%;">My name is Marcus Rosen and I'm a Solution Developer with <a href="http://www.data3.com.au">Data#3</a> in Brisbane, Australia.</span><br /><span style="font-family:arial;font-size:85%;"></span><br /><span style="font-family:arial;font-size:85%;">My main technology focus is <strong>BizTalk Server</strong> and .NET development but this blog will hopefully contain posts regarding a range of MS products such as </span><span style="font-family:arial;font-size:85%;">Windows Share Point Service (WSS), </span><span style="font-family:arial;font-size:85%;">SharePoint Portal Server (SPS) </span><span style="font-family:arial;font-size:85%;">Office InfoPath 2003, etc.</span>Marcus Rosenhttp://www.blogger.com/profile/05678723267559173458noreply@blogger.com2