<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6516664531509310188</id><updated>2011-07-08T04:22:37.830-07:00</updated><category term='Tag'/><category term='out-of-the-box'/><category term='office'/><category term='XSLT'/><category term='Website'/><category term='Stored Procedure'/><category term='.Net'/><category term='Library'/><category term='BizTalk'/><category term='SharePoint'/><category term='Info'/><category term='Looping'/><category term='Workflow'/><category term='Update Panel'/><category term='PowerPoint'/><category term='XML AUTO'/><category term='Data Connections'/><category term='Cascading Dropdown'/><category term='Word'/><category term='Fact unrecognized'/><category term='Ajax'/><category term='Static Class'/><category term='XMLDATA'/><category term='BRE'/><category term='C#'/><category term='Static Support'/><category term='Filter'/><category term='iPhone'/><category term='excel'/><category term='Business Rule Engine'/><category term='Tip'/><category term='FileUpload'/><category term='Dynamic'/><category term='Generic'/><category term='HTML'/><category term='asp.net'/><category term='InfoPath Forms'/><category term='SQL Server Adpater'/><category term='UpdatePanel'/><category term='InfoPath'/><category term='Node'/><title type='text'>SilverSands Associates</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>13</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-8300034583784447304</id><published>2009-08-19T06:55:00.000-07:00</published><updated>2009-08-19T06:58:08.128-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BizTalk'/><category scheme='http://www.blogger.com/atom/ns#' term='Dynamic'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='Looping'/><category scheme='http://www.blogger.com/atom/ns#' term='XSLT'/><category scheme='http://www.blogger.com/atom/ns#' term='out-of-the-box'/><category scheme='http://www.blogger.com/atom/ns#' term='Node'/><title type='text'>BizTalk: Create dynamically nodes with mapper and looping</title><content type='html'>Problem:&lt;br /&gt;Sometimes, we receive data as input, but need to split this data in the output.&lt;br /&gt;Ex. As Input we receive 2 dates, begin-date and end-date.&lt;br /&gt;The output should be for every date between the given dates 1 node&lt;br /&gt;&lt;br /&gt;Input Data&lt;br /&gt;Begin Date:    19-8-2009&lt;br /&gt;End Date:        25-8-2009&lt;br /&gt;&lt;br /&gt;Output Data&lt;br /&gt;19-8-2009&lt;br /&gt;20-8-2009&lt;br /&gt;21-8-2009&lt;br /&gt;22-8-2009&lt;br /&gt;23-8-2009&lt;br /&gt;24-8-2009&lt;br /&gt;25-8-2009&lt;br /&gt;&lt;br /&gt;Our customers always used an external web service to do this or a C# class (placed in the GAC).   I was wondering if it would be possible to do the same 100% out of the ox, so when we deploy we don’t need to care of the extra class in the GAC or web services and security.&lt;br /&gt;&lt;br /&gt;Solution in BizTalk&lt;br /&gt;&lt;br /&gt;1. Create Input Schema&lt;br /&gt;&lt;br /&gt; &lt;a href="http://1.bp.blogspot.com/_cdZZQ3XC1oY/SowElH_uzOI/AAAAAAAAAcU/9xv4fS3Srp4/s1600-h/InputSchema.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 277px;" src="http://1.bp.blogspot.com/_cdZZQ3XC1oY/SowElH_uzOI/AAAAAAAAAcU/9xv4fS3Srp4/s400/InputSchema.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371673491394186466" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. Create Output Schema&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_cdZZQ3XC1oY/SowErjHnO7I/AAAAAAAAAcc/91CV0fMTBTU/s1600-h/OutputSchema.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 277px;" src="http://4.bp.blogspot.com/_cdZZQ3XC1oY/SowErjHnO7I/AAAAAAAAAcc/91CV0fMTBTU/s400/OutputSchema.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371673601754217394" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;3. Create Mapping&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_cdZZQ3XC1oY/SowExBaDKcI/AAAAAAAAAck/tXmN_KFSZhs/s1600-h/Mapping.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 277px;" src="http://2.bp.blogspot.com/_cdZZQ3XC1oY/SowExBaDKcI/AAAAAAAAAck/tXmN_KFSZhs/s400/Mapping.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371673695783954882" /&gt;&lt;/a&gt;           &lt;br /&gt;&lt;br /&gt;            Source Schema: InputSchema&lt;br /&gt;&lt;br /&gt;            Destination Schema OutputSchema&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Script 1:  This script is an inline C#, calculating the different days between the begin date and the end date.  The script returns an integer.&lt;br /&gt;&lt;br /&gt;public int SubtractDates(System.String param1, System.String param2)&lt;br /&gt;{&lt;br /&gt;       System.TimeSpan diffresult = System.Convert.ToDateTime(param2) - System.Convert.ToDateTime(param1);&lt;br /&gt;       return diffresult.Days;&lt;br /&gt;}&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; Script 2: Select Inline XSLT Call Template.  The XSLT template is recursive.  The first part is handling the receiving parameters.  The second part is the creation of a node in the output schema (&lt;intervals&gt;).   The third part, we call the same XSLT template, with the updated variables&lt;br /&gt;&lt;br /&gt;Pay attention on the last parameter startDate, we call a inline CSharp Function (see further)&lt;br /&gt;&lt;br /&gt;The reason why we need to call an inline CSharp function is the fact that BizTalk handles only XSLT 1.0, so we can’t use some great date time functions.&lt;br /&gt;(the lines starting with ------ must be deleted, it is just to explain the different parts of the code)&lt;br /&gt;&lt;br /&gt;------ Parameters --------&lt;br /&gt;&lt;br /&gt;&lt;xsl:template name="ForLoop"&gt;&lt;br /&gt;&lt;xsl:param name="i" /&gt;&lt;br /&gt;&lt;xsl:param name="count" /&gt;&lt;br /&gt;&lt;xsl:param name="startDate" /&gt;&lt;br /&gt;&lt;br /&gt;------ Creation of a node --------&lt;br /&gt;&lt;xsl:if test="$i &amp;lt;= $count"&gt;&lt;br /&gt;&lt;br /&gt; &lt;Intervals&gt;&lt;br /&gt;           &lt;xsl:element name="IntervalDate"&gt;&lt;xsl:value-of select="$startDate" /&gt;&lt;/xsl:element&gt;&lt;br /&gt; &lt;/Intervals&gt; &lt;br /&gt;&lt;br /&gt;&lt;/xsl:if&gt;&lt;br /&gt;&lt;br /&gt;------ recersive Part --------&lt;br /&gt;&lt;xsl:if test="$i &amp;lt;= $count"&gt;&lt;br /&gt;  &lt;xsl:call-template name="ForLoop"&gt;&lt;br /&gt;    &lt;xsl:with-param name="i"&gt;&lt;br /&gt;      &lt;xsl:value-of select="$i + 1"/&gt;&lt;br /&gt;    &lt;/xsl:with-param&gt;&lt;br /&gt;    &lt;xsl:with-param name="count"&gt;&lt;br /&gt;      &lt;xsl:value-of select="$count"/&gt;&lt;br /&gt;    &lt;/xsl:with-param&gt;&lt;br /&gt;    &lt;xsl:with-param name="startDate"&gt;&lt;br /&gt;      &lt;xsl:value-of select="userCSharp:AddDaysToStartDate($startDate,1)" /&gt;&lt;br /&gt;    &lt;/xsl:with-param&gt;&lt;br /&gt;  &lt;/xsl:call-template&gt;&lt;br /&gt;&lt;/xsl:if&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;/xsl:template&gt;&lt;br /&gt;Script 3:  This script functoid has no input or output parameters, but we create Inline C# function, AddDaysToStartDate.  The function will just add a number of days to the given start date. (Parameters coming from script 2)&lt;br /&gt;&lt;br /&gt; public System.DateTime AddDaysToStartDate(string param1, string param2)&lt;br /&gt;{&lt;br /&gt;     DateTime _date = System.Convert.ToDateTime(param1);&lt;br /&gt;     return _date.AddDays(System.Convert.ToDouble(param2));&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Test the mapping and you will see that the output schema contains an interval node for everyday between begin and end date.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-8300034583784447304?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/8300034583784447304/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/08/biztalk-create-dynamically-nodes-with.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/8300034583784447304'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/8300034583784447304'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/08/biztalk-create-dynamically-nodes-with.html' title='BizTalk: Create dynamically nodes with mapper and looping'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_cdZZQ3XC1oY/SowElH_uzOI/AAAAAAAAAcU/9xv4fS3Srp4/s72-c/InputSchema.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-3482856183551255625</id><published>2009-06-15T08:35:00.001-07:00</published><updated>2009-06-15T08:35:29.862-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Website'/><title type='text'>Silversands Associates iPhone ready</title><content type='html'>&lt;p&gt;The website of SilverSands Associates is adapted to have a real iPhone experience, when surfing to the website with an iPhone.   &lt;br /&gt;    &lt;br /&gt;Have a look.    &lt;br /&gt;From the iPhone: SilverSandsAssociates.com    &lt;br /&gt;    &lt;br /&gt;&lt;a href="http://lh5.ggpht.com/_cdZZQ3XC1oY/SjZqPznjzOI/AAAAAAAAAbY/HPnP2dzeW9k/s1600-h/iPhone1%5B2%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="iPhone1" border="0" alt="iPhone1" src="http://lh5.ggpht.com/_cdZZQ3XC1oY/SjZqQbPVPhI/AAAAAAAAAbc/pO-WZVhCSF8/iPhone1_thumb.jpg?imgmax=800" width="137" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-3482856183551255625?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/3482856183551255625/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/06/silversands-associates-iphone-ready.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/3482856183551255625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/3482856183551255625'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/06/silversands-associates-iphone-ready.html' title='Silversands Associates iPhone ready'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_cdZZQ3XC1oY/SjZqQbPVPhI/AAAAAAAAAbc/pO-WZVhCSF8/s72-c/iPhone1_thumb.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-5157729642536722854</id><published>2009-06-15T00:54:00.001-07:00</published><updated>2009-06-15T00:54:41.462-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Filter'/><category scheme='http://www.blogger.com/atom/ns#' term='Library'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><category scheme='http://www.blogger.com/atom/ns#' term='Workflow'/><title type='text'>Filter SharePoint List by Workflow Status</title><content type='html'>&lt;p&gt;   &lt;p&gt;Often we need to filter a SharePoint list by&amp;#160; the status of a workflow.     &lt;br /&gt;      &lt;br /&gt;This is rather simple and can be done in the same way as filtering any other field.      &lt;br /&gt;      &lt;br /&gt;The only thing you need to know is that the status of the workflow is an integer, not a text.&amp;#160; So we can’t add a filter like ‘Workflow name’ IS EQUAL TO ‘In Progress’      &lt;br /&gt;      &lt;br /&gt;The following list gives the integer values of each status.      &lt;br /&gt;      &lt;br /&gt;&lt;/p&gt;    &lt;li&gt;&lt;b&gt;0&lt;/b&gt; - Starting &lt;/li&gt;    &lt;li&gt;&lt;b&gt;1&lt;/b&gt; - Failed on Start &lt;/li&gt;    &lt;li&gt;&lt;b&gt;2&lt;/b&gt; - In Progress &lt;/li&gt;    &lt;li&gt;&lt;b&gt;3&lt;/b&gt; - Error Occurred &lt;/li&gt;    &lt;li&gt;&lt;b&gt;4&lt;/b&gt; - Canceled &lt;/li&gt;    &lt;li&gt;&lt;b&gt;5&lt;/b&gt; - Completed &lt;/li&gt;    &lt;li&gt;&lt;b&gt;6&lt;/b&gt; - Failed on Start (retrying) &lt;/li&gt;    &lt;li&gt;&lt;b&gt;7&lt;/b&gt; - Error Occurred (retrying &lt;/li&gt;    &lt;li&gt;&lt;b&gt;15&lt;/b&gt; - Canceled &lt;/li&gt;    &lt;li&gt;&lt;b&gt;16&lt;/b&gt; - Approved &lt;/li&gt;    &lt;li&gt;&lt;b&gt;17&lt;/b&gt; - Rejected&lt;/li&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-5157729642536722854?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/5157729642536722854/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/06/filter-sharepoint-list-by-workflow.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/5157729642536722854'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/5157729642536722854'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/06/filter-sharepoint-list-by-workflow.html' title='Filter SharePoint List by Workflow Status'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-7275774136746340846</id><published>2009-06-15T00:48:00.001-07:00</published><updated>2009-06-15T00:48:31.047-07:00</updated><title type='text'>Prepare your InfoPath for deployment and be sure your form is generic</title><content type='html'>&lt;p&gt;When creating an InfoPath form, we often use the data connections.    &lt;br /&gt;InfoPath makes it easy to work with data connections, but the issue is that the links to the SharePoint library or database is saved in the InfoPath Form.     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;What if we have to move the SharePoint Library to another place?    &lt;br /&gt;Ex. Test -&amp;gt; Production Environment     &lt;br /&gt;    &lt;br /&gt;What if we change the name of the SharePoint Library we want to submit too?     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;We can’t always return to our InfoPath Designer, make the changes and publish again.    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;Happily for us, InfoPath 2007 with SharePoint has a solution.&amp;#160; SharePoint offers a &lt;b&gt;Data Connection Library.&lt;/b&gt;     &lt;br /&gt;Within the data library we place our InfoPath Data Connections.&amp;#160; When changing database password, changing SharePoint Library names or paths etc we just change the Data Connection file in the Data Connection Library and your InfoPath will continue working.     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;The next part will explain you step by step how to do this.    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;To Create &lt;/b&gt;&lt;b&gt;a SharePoint Data Connection Library if the library does not yet exists.&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;1. Browse to an Office SharePoint Server 2007 or Office Forms Server 2007 site on which you have at least &lt;b&gt;Design&lt;/b&gt; rights. If you are on the root site, or portal, go to the &lt;b&gt;Document Center&lt;/b&gt; or create a new site before proceeding to the next step.&lt;/p&gt;  &lt;p&gt;2. Click &lt;b&gt;Create&lt;/b&gt; on the &lt;b&gt;Site Actions&lt;/b&gt; menu.&lt;/p&gt;  &lt;p&gt;3. On the &lt;b&gt;Create&lt;/b&gt; page, click the &lt;b&gt;Data Connection Library&lt;/b&gt; link in the &lt;b&gt;Libraries&lt;/b&gt; section.&lt;/p&gt;  &lt;p&gt;4. On the &lt;b&gt;New&lt;/b&gt; page, type a name for the library and click the &lt;b&gt;Create&lt;/b&gt; button.&lt;/p&gt;  &lt;p&gt;5. Copy the URL of the new library.    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Update your InfoPath file&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;1. Create a data connection in InfoPath, following the wizard&lt;/p&gt;  &lt;p&gt;2. After creating the data connection, you see the list of data connection.&lt;/p&gt;  &lt;p&gt;Select the newly created data connection&lt;/p&gt;  &lt;p&gt;3. Click on &lt;b&gt;Convert&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;4. On the &lt;b&gt;Convert Data Connection&lt;/b&gt; dialog box, enter the URL of the data connection library that you previously copied.&lt;/p&gt;  &lt;p&gt;5. Delete &amp;quot;Forms/AllItems.aspx&amp;quot; in the URL.&lt;/p&gt;  &lt;p&gt;6. Enter a name for the data connection file at the end.&lt;/p&gt;  &lt;p&gt;7. Click &lt;b&gt;OK&lt;/b&gt;.&lt;/p&gt;  &lt;p&gt;8. Confirm that the data connection has been converted successfully by examining the &lt;b&gt;Details&lt;/b&gt; section of the &lt;b&gt;Data Connections&lt;/b&gt; dialog box while the converted data connection is selected.     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;Don’t forget to publish your InfoPath Form.    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;You will see that under the Data Connections Library, a new file is added.&amp;#160; This file needs to be updated when moving environments, changing databases, changing submit libraries etc.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-7275774136746340846?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/7275774136746340846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/06/prepare-your-infopath-for-deployment_15.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/7275774136746340846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/7275774136746340846'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/06/prepare-your-infopath-for-deployment_15.html' title='Prepare your InfoPath for deployment and be sure your form is generic'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-7274091449890943977</id><published>2009-06-15T00:43:00.001-07:00</published><updated>2009-06-15T00:43:10.787-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Generic'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Connections'/><category scheme='http://www.blogger.com/atom/ns#' term='InfoPath Forms'/><category scheme='http://www.blogger.com/atom/ns#' term='InfoPath'/><category scheme='http://www.blogger.com/atom/ns#' term='Info'/><title type='text'>Prepare your InfoPath for deployment and be sure your form is generic</title><content type='html'>&lt;p&gt;When creating an InfoPath form, we often use the data connections.    &lt;br /&gt;InfoPath makes it easy to work with data connections, but the issue is that the links to the SharePoint library or database is saved in the InfoPath Form.    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;What if we have to move the SharePoint Library to another place?    &lt;br /&gt;Ex. Test -&amp;gt; Production Environment     &lt;br /&gt;    &lt;br /&gt;What if we change the name of the SharePoint Library we want to submit too?    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;We can’t always return to our InfoPath Designer, make the changes and publish again.   &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;Happily for us, InfoPath 2007 with SharePoint has a solution.&amp;#160; SharePoint offers a &lt;b&gt;Data Connection Library.&lt;/b&gt;    &lt;br /&gt;Within the data library we place our InfoPath Data Connections.&amp;#160; When changing database password, changing SharePoint Library names or paths etc we just change the Data Connection file in the Data Connection Library and your InfoPath will continue working.    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;The next part will explain you step by step how to do this.   &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;To Create &lt;/b&gt;&lt;b&gt;a SharePoint Data Connection Library if the library does not yet exists.&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;1. Browse to an Office SharePoint Server 2007 or Office Forms Server 2007 site on which you have at least &lt;b&gt;Design&lt;/b&gt; rights. If you are on the root site, or portal, go to the &lt;b&gt;Document Center&lt;/b&gt; or create a new site before proceeding to the next step.&lt;/p&gt;  &lt;p&gt;2. Click &lt;b&gt;Create&lt;/b&gt; on the &lt;b&gt;Site Actions&lt;/b&gt; menu.&lt;/p&gt;  &lt;p&gt;3. On the &lt;b&gt;Create&lt;/b&gt; page, click the &lt;b&gt;Data Connection Library&lt;/b&gt; link in the &lt;b&gt;Libraries&lt;/b&gt; section.&lt;/p&gt;  &lt;p&gt;4. On the &lt;b&gt;New&lt;/b&gt; page, type a name for the library and click the &lt;b&gt;Create&lt;/b&gt; button.&lt;/p&gt;  &lt;p&gt;5. Copy the URL of the new library.   &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Update your InfoPath file&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;1. Create a data connection in InfoPath, following the wizard&lt;/p&gt;  &lt;p&gt;2. After creating the data connection, you see the list of data connection.&lt;/p&gt;  &lt;p&gt;Select the newly created data connection&lt;/p&gt;  &lt;p&gt;3. Click on &lt;b&gt;Convert&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;4. On the &lt;b&gt;Convert Data Connection&lt;/b&gt; dialog box, enter the URL of the data connection library that you previously copied.&lt;/p&gt;  &lt;p&gt;5. Delete &amp;quot;Forms/AllItems.aspx&amp;quot; in the URL.&lt;/p&gt;  &lt;p&gt;6. Enter a name for the data connection file at the end.&lt;/p&gt;  &lt;p&gt;7. Click &lt;b&gt;OK&lt;/b&gt;.&lt;/p&gt;  &lt;p&gt;8. Confirm that the data connection has been converted successfully by examining the &lt;b&gt;Details&lt;/b&gt; section of the &lt;b&gt;Data Connections&lt;/b&gt; dialog box while the converted data connection is selected.    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;Don’t forget to publish your InfoPath Form.   &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;You will see that under the Data Connections Library, a new file is added.&amp;#160; This file needs to be updated when moving environments, changing databases, changing submit libraries etc.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-7274091449890943977?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/7274091449890943977/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/06/prepare-your-infopath-for-deployment.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/7274091449890943977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/7274091449890943977'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/06/prepare-your-infopath-for-deployment.html' title='Prepare your InfoPath for deployment and be sure your form is generic'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-7995448289649868224</id><published>2009-05-19T08:21:00.001-07:00</published><updated>2009-05-19T08:21:55.148-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='excel'/><category scheme='http://www.blogger.com/atom/ns#' term='office'/><category scheme='http://www.blogger.com/atom/ns#' term='Word'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerPoint'/><title type='text'>Another Office Tip: Format painter (Office)</title><content type='html'>&lt;p&gt;   &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_cdZZQ3XC1oY/ShLOkIxecOI/AAAAAAAAAag/mCOUcf44HEg/s1600-h/FormatPainter%5B4%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 15px 0px 0px; display: inline; border-top: 0px; border-right: 0px" title="FormatPainter" border="0" alt="FormatPainter" align="left" src="http://lh4.ggpht.com/_cdZZQ3XC1oY/ShLOkte31HI/AAAAAAAAAak/WDW8qppjitc/FormatPainter_thumb%5B2%5D.jpg?imgmax=800" width="164" height="74" /&gt;&lt;/a&gt; The &lt;b&gt;Format Painter&lt;/b&gt; tool replicates the formatting from one part of a document to another. So instead of manually redoing all the formatting yourself, you can use the &lt;b&gt;Format Painter&lt;/b&gt;.      &lt;br /&gt;      &lt;br /&gt;1. select the text whose formatting you want to replicate. &lt;/p&gt;    &lt;p&gt;     &lt;p&gt;2. click the &lt;b&gt;Format Painter&lt;/b&gt; toolbar button.         &lt;br /&gt;3. select the text you want to imbue with the format.         &lt;br /&gt;        &lt;br /&gt;For bonus points,        &lt;br /&gt;1. select the text whose formatting you want to replicate&lt;/p&gt;      &lt;p&gt;2. double-click the &lt;b&gt;Format Painter&lt;/b&gt; toolbar button.         &lt;br /&gt;3. select the multiple texts you want to imbue with the format        &lt;br /&gt;&lt;/p&gt;      &lt;p&gt;Source: &lt;a href="http://office.Microsoft.com"&gt;http://office.Microsoft.com&lt;/a&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-7995448289649868224?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/7995448289649868224/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/05/another-office-tip-format-painter.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/7995448289649868224'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/7995448289649868224'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/05/another-office-tip-format-painter.html' title='Another Office Tip: Format painter (Office)'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_cdZZQ3XC1oY/ShLOkte31HI/AAAAAAAAAak/WDW8qppjitc/s72-c/FormatPainter_thumb%5B2%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-2361096878288874787</id><published>2009-05-05T01:22:00.001-07:00</published><updated>2009-05-05T01:22:04.490-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Static Support'/><category scheme='http://www.blogger.com/atom/ns#' term='BizTalk'/><category scheme='http://www.blogger.com/atom/ns#' term='Fact unrecognized'/><category scheme='http://www.blogger.com/atom/ns#' term='Business Rule Engine'/><category scheme='http://www.blogger.com/atom/ns#' term='BRE'/><category scheme='http://www.blogger.com/atom/ns#' term='Static Class'/><title type='text'>Business Rule Engine and Static .net Classes</title><content type='html'>When using static classes together with the Rule Engine you will get an error when testing the policy  &lt;br /&gt;  &lt;br /&gt;&lt;strong&gt;Fact unrecognized.   &lt;br /&gt;    &lt;br /&gt;&lt;/strong&gt;The solution is explained in the following link, in a few words,Business Rule Engine needs an instance of a class and don’t know how to work with Static classes but by changing a parameter it can be solved.  &lt;br /&gt;  &lt;br /&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/cyoung/articles/111169.aspx"&gt;http://geekswithblogs.net/cyoung/articles/111169.aspx&lt;/a&gt;&lt;/p&gt;  &lt;br /&gt;Thanks to Jean-Francois Philagor for pointing this article.    &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-2361096878288874787?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/2361096878288874787/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/05/business-rule-engine-and-static-net.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/2361096878288874787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/2361096878288874787'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/05/business-rule-engine-and-static-net.html' title='Business Rule Engine and Static .net Classes'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-5122965844237868172</id><published>2009-04-28T02:15:00.001-07:00</published><updated>2009-04-28T02:16:54.237-07:00</updated><title type='text'>Another Office Tip: World Clocks in Windows Vista</title><content type='html'>&lt;p&gt;   &lt;br /&gt;&lt;em&gt;&lt;font color="#c0c0c0"&gt;Within the section of “Another Office Tip” I will give some tips, ideas how to get the maximum out of your Windows products and help you to make working easier.&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;When working in an international environment, time zones are important as you don’t want to wake up you business partner to early :)     &lt;br /&gt;    &lt;br /&gt;There are many world clock tools available on the net, but always you need to install these programs, it takes more place on your desktop etc.&lt;/p&gt;  &lt;p&gt;This is a tip for Vista users, Windows Vista has a feature to show 2 extra clocks in the taskbar;&amp;#160; You will always see the current local time and by clicking on the time you will get the others clocks in a visual way.    &lt;br /&gt;    &lt;br /&gt;&lt;a href="http://lh6.ggpht.com/_cdZZQ3XC1oY/SfbJGvgpsWI/AAAAAAAAAZI/io38SDFtoTg/s1600-h/image%5B6%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_cdZZQ3XC1oY/SfbJJOQx06I/AAAAAAAAAZM/D80F7milDJE/image_thumb%5B2%5D.png?imgmax=800" width="387" height="207" /&gt;&lt;/a&gt;     &lt;br /&gt;    &lt;br /&gt;By position your mouse on the time, without clicking, you will get a simple list&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_cdZZQ3XC1oY/SfbJJptJPYI/AAAAAAAAAZQ/AM1yZVLbLrg/s1600-h/image%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_cdZZQ3XC1oY/SfbJKbezsQI/AAAAAAAAAZU/xpD0Io6YMo8/image_thumb%5B1%5D.png?imgmax=800" width="244" height="187" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;How to setup different clocks in Vista?&lt;/p&gt;  &lt;p&gt;- Go to &lt;strong&gt;Control Panel&lt;/strong&gt;     &lt;br /&gt;- Select &lt;strong&gt;Date &amp;amp; Time&lt;/strong&gt;     &lt;br /&gt;- Select the tab: &lt;strong&gt;Additional Clocks&lt;/strong&gt;     &lt;br /&gt;- Choose the clocks you like to add and give it a name.     &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-5122965844237868172?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/5122965844237868172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/04/another-office-tip-world-clock-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/5122965844237868172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/5122965844237868172'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/04/another-office-tip-world-clock-in.html' title='Another Office Tip: World Clocks in Windows Vista'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_cdZZQ3XC1oY/SfbJJOQx06I/AAAAAAAAAZM/D80F7milDJE/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-5621634085169413401</id><published>2009-03-30T05:28:00.001-07:00</published><updated>2009-03-30T05:28:43.079-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BizTalk'/><category scheme='http://www.blogger.com/atom/ns#' term='Stored Procedure'/><category scheme='http://www.blogger.com/atom/ns#' term='XML AUTO'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server Adpater'/><category scheme='http://www.blogger.com/atom/ns#' term='XMLDATA'/><title type='text'>SQL Adapter – Generating a Schema</title><content type='html'>&lt;p&gt;When using the Stored Procedures in SQL Server and BizTalk, we need to add the XSD to the project.&amp;#160; When using the &lt;strong&gt;Add Adpater MetaData&lt;/strong&gt; feature of BizTalk (Add –&amp;gt; Add Generated Items…) BizTalk generates the schema, but the result is equal to the Success element and is of atype&amp;#160; AnyType.    &lt;br /&gt;    &lt;br /&gt;This behavior is not the one we want as we want to use the return values.    &lt;br /&gt;    &lt;br /&gt;&lt;strong&gt;Solution:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;   &lt;p&gt;     &lt;p&gt;       &lt;p&gt;         &lt;p&gt;1. First create the Store Procedure           &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; ex. SELECT Id, Name FROM Countries &lt;strong&gt;FOR XML AUTO, XMLDATA&lt;/strong&gt;            &lt;br /&gt;            &lt;br /&gt;&amp;#160;&amp;#160; Be sure to add &lt;strong&gt;FOR XML AUTO, XMLDATA &lt;/strong&gt;at the end.            &lt;br /&gt;            &lt;br /&gt;2. Run the Add Adapter MetaData wizard, within Visual Studio and your&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; BizTalk Project.            &lt;br /&gt;            &lt;br /&gt;3. At the &lt;strong&gt;Statement Information&lt;/strong&gt; screen, you need to enter valid values             &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; into the &lt;strong&gt;Value&lt;/strong&gt; column            &lt;br /&gt;            &lt;br /&gt;4. Click the &lt;strong&gt;Generate &lt;/strong&gt;button            &lt;br /&gt;            &lt;br /&gt;5 Finish the Wizard, you will see that now the XSD will contain the &lt;/p&gt;          &lt;p&gt;           &lt;p&gt;&amp;#160;&amp;#160; structured results and not anymore the AnyType element.             &lt;br /&gt;              &lt;br /&gt;6.&amp;#160; After the XSD is generate, remove the XMLDATA clause from the               &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Stored Procedure;              &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; ex. SELECT Id, Name FRO Countries FOR XML AUTO&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-5621634085169413401?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/5621634085169413401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/03/sql-adapter-generating-schema.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/5621634085169413401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/5621634085169413401'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/03/sql-adapter-generating-schema.html' title='SQL Adapter – Generating a Schema'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-1806726982166824247</id><published>2009-03-25T09:36:00.001-07:00</published><updated>2009-03-25T09:36:56.152-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UpdatePanel'/><category scheme='http://www.blogger.com/atom/ns#' term='FileUpload'/><category scheme='http://www.blogger.com/atom/ns#' term='Ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Update Panel'/><title type='text'>FileUpload control within an Update Panel</title><content type='html'>The FileUpload control is not working within the Update Panel control, but there is a workaround:  &lt;br /&gt;  &lt;br /&gt;Add the following code to the Page_Load event of your page:  &lt;br /&gt;  &lt;br /&gt;ScriptManager.GetCurrent(Page).RegisterPostBackControl(cmdUploadPicture);  &lt;br /&gt;  &lt;br /&gt;Where cmdUploadPicture the ID of button is, used to Upload the File.    &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-1806726982166824247?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/1806726982166824247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/03/fileupload-control-within-update-panel.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/1806726982166824247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/1806726982166824247'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/03/fileupload-control-within-update-panel.html' title='FileUpload control within an Update Panel'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-5076438318014855074</id><published>2009-03-24T01:46:00.001-07:00</published><updated>2009-03-24T01:46:49.739-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='InfoPath Forms'/><category scheme='http://www.blogger.com/atom/ns#' term='InfoPath'/><category scheme='http://www.blogger.com/atom/ns#' term='Cascading Dropdown'/><title type='text'>Cascading Drop downs in InfoPath Web Forms made easy</title><content type='html'>&lt;p&gt;To create user‐friendly web forms, cascading drop down list boxes is a must, but InfoPath Form Services doesn’t allow you to use them, like you can use them with InfoPath Client.    &lt;br /&gt;(Filter Data on DataConnections/DataSources are not allowed with InfoPath Web Forms)&lt;/p&gt;  &lt;p&gt;This article explains how to use Cascading &lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;a href="http://www.silversandsassociates.com/HOW_TO_use_Cascading_Dropdown_ListBoxes_within_an_InfoPath_Web_Form.pdf"&gt;http://www.silversandsassociates.com/HOW_TO_use_Cascading_Dropdown_ListBoxes_within_an_InfoPath_Web_Form.pdf&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt; (Silversands Associates is very happy that already hundreds of companies used this article to get cascading dropdown list boxes into there web based InfoPath forms)  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-5076438318014855074?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/5076438318014855074/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/03/cascading-drop-downs-in-infopath-web.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/5076438318014855074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/5076438318014855074'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/03/cascading-drop-downs-in-infopath-web.html' title='Cascading Drop downs in InfoPath Web Forms made easy'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-968077174627191029</id><published>2009-03-24T01:42:00.001-07:00</published><updated>2009-03-24T01:42:44.397-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><category scheme='http://www.blogger.com/atom/ns#' term='Tag'/><category scheme='http://www.blogger.com/atom/ns#' term='Website'/><title type='text'>10 Rare HTML Tags You Really Should Know</title><content type='html'>&lt;p&gt;   &lt;p&gt;When working in IT, we often come across the good old HTML.&amp;#160; I found a very interesting article about rare HTML tags, written by Glen Stansberry.     &lt;br /&gt;      &lt;br /&gt;&lt;a title="http://net.tutsplus.com/articles/web-roundups/10-rare-html-tags-you-really-should-know/" href="http://net.tutsplus.com/articles/web-roundups/10-rare-html-tags-you-really-should-know/"&gt;http://net.tutsplus.com/articles/web-roundups/10-rare-html-tags-you-really-should-know/&lt;/a&gt;&lt;/p&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-968077174627191029?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/968077174627191029/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/03/10-rare-html-tags-you-really-should.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/968077174627191029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/968077174627191029'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/03/10-rare-html-tags-you-really-should.html' title='10 Rare HTML Tags You Really Should Know'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6516664531509310188.post-7268108304901952034</id><published>2009-02-09T06:46:00.003-08:00</published><updated>2009-02-09T06:46:50.411-08:00</updated><title type='text'>Naming Conventions</title><content type='html'>&lt;p&gt;&lt;/p&gt;  &lt;p&gt;The raison to write this article is because I still see many multi-nationals struggling with naming conventions within their IT department.&lt;/p&gt;  &lt;p&gt;Naming conventions are as old as IT itself, but still many companies do not have proper naming conventions, and even worse, they use internal of external sources to create one.    &lt;br /&gt;    &lt;br /&gt;&lt;strong&gt;What is the reason to have Naming Conventions in the first place?      &lt;br /&gt;&lt;/strong&gt;The main reason to introduce naming conventions is to :&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;- to reduce the effort needed to read&amp;#160; and understand source code &lt;/li&gt;    &lt;li&gt;- to enhance source code appearance &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The most important reason is the first one, &lt;em&gt;&lt;strong&gt;to reduce the effort needed to read and understand source code&lt;/strong&gt;&lt;/em&gt;     &lt;br /&gt;    &lt;br /&gt;Code must be easy and quick readable and understandable when new employees (internal of external) enters the IT department or when other teams takes over the project..&lt;/p&gt;  &lt;p&gt;The answer I gave to my customers is very easy: take the naming conventions found on the Internet.&amp;#160; The goal is not only to have company related Naming conventions, but &lt;strong&gt;general naming conventions.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;New employees or external consultancy will loose less time understanding the general naming conventions, as they were used too with their previous work, instead of learning the company related ones, which will never be followed 100%.    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;Some links:&lt;/p&gt;  &lt;p&gt;BizTalk: &lt;a title="http://wes.fehler.ca/weblog/biztalk/2005/01/biztalk-naming-conventions.html" href="http://wes.fehler.ca/weblog/biztalk/2005/01/biztalk-naming-conventions.html"&gt;http://wes.fehler.ca/weblog/biztalk/2005/01/biztalk-naming-conventions.html&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;General Naming Conventions: &lt;a title="http://msdn.microsoft.com/en-us/library/ms229002.aspx" href="http://msdn.microsoft.com/en-us/library/ms229002.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms229002.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;And many more are available on the net.&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Don’t let your IT department loose time to write company related naming conventions, re-use them!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6516664531509310188-7268108304901952034?l=silversandsassociates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://silversandsassociates.blogspot.com/feeds/7268108304901952034/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://silversandsassociates.blogspot.com/2009/02/naming-conventions.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/7268108304901952034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6516664531509310188/posts/default/7268108304901952034'/><link rel='alternate' type='text/html' href='http://silversandsassociates.blogspot.com/2009/02/naming-conventions.html' title='Naming Conventions'/><author><name>Frederik Van Lierde</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://3.bp.blogspot.com/_cdZZQ3XC1oY/SSxOWv66hgI/AAAAAAAAATE/8JQ-7L__jXA/S220/Fre.jpg'/></author><thr:total>0</thr:total></entry></feed>
