<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Michael Yeager's MSDN Blog </title><subtitle type="html">A stigmergic trail of SharePoint, asp.net and Silverlight Solutions </subtitle><id>http://blogs.msdn.com/michael_yeager/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/michael_yeager/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2008-05-06T16:58:00Z</updated><entry><title>Talking about EUCCs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2009/09/23/talking-about-euccs.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2009/09/23/talking-about-euccs.aspx</id><published>2009-09-23T22:59:00Z</published><updated>2009-09-23T22:59:00Z</updated><content type="html">&lt;P&gt;I have been getting emails from lots&amp;nbsp;of you&amp;nbsp;wanting the goods --&amp;nbsp;the real life examples of End User Composed Composites (EUCCs), and more information on the how and why of designing them...&lt;/P&gt;
&lt;P&gt;Unfortunately&amp;nbsp;I haven't been blogging about EUCCs for a while -&amp;nbsp;instead&amp;nbsp;I have been doing presentations. Those of you who are Microsoft FTEs can view the "&lt;STRONG&gt;Designing Capabilities Not Applications&lt;/STRONG&gt;"&amp;nbsp;session in the&amp;nbsp;TechReady9 On Demand&amp;nbsp;archives.&amp;nbsp;The "&lt;STRONG&gt;Designing Capabilities Not Applications&lt;/STRONG&gt;"&amp;nbsp;session&amp;nbsp;is in the Architecture Track:&amp;nbsp;&amp;nbsp;ARC304. Description as follows:&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Many MOSS, OBA and other Composite applications are moving the application design decisions away from the Architects and Developers and putting them into the hands of the end users. This is a paradigm shift that changes the game and radically shrinks the development cycle. To be successful at end user driven designs, Architects and Developers need to think in terms of designing and delivering Capabilities rather than purpose built applications. End users then use workflow and rules to structure their own high value business solutions out of these Capabilities. This presentation will use MOSS and OBA examples from the field to explore the emerging patterns and practices that Architects and Developers can use to factor requirements into capabilities rather than purpose built applications.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;For those of you who are not Microsoft FTEs, I am doing a presentation at the SharePoint 2009 conference in Las Vegas Oct. 19 - 22, the web site is: &lt;A href="http://www.mssharepointconference.com/" mce_href="http://www.mssharepointconference.com/"&gt;http://www.mssharepointconference.com&lt;/A&gt; . The session is SPC268 "&lt;STRONG&gt;Designing Capabilities Not Applications, with SharePoint 2010 Composites&lt;/STRONG&gt;". The full description of that presentation is: &lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Learn about the power of end user composed solutions and how to plan, design and think in terms of capabilities to design them. We will discuss a conceptual pattern for differentiating and&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; evaluating different SharePoint/Office System solutions and for understanding the advantages of Capability-driven solutions along with the institutional road blocks to these solutions.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;A recorded version of that session will also be available to all conference attendees a few weeks&amp;nbsp;after the SharePoint 2009 Conference.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9898640" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/SharePoint/default.aspx" /><category term="WSS v3" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/WSS+v3/default.aspx" /><category term="Software Architecture" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/Software+Architecture/default.aspx" /></entry><entry><title>What the heck am I talking about?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2009/04/26/what-the-heck-am-i-talking-about.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2009/04/26/what-the-heck-am-i-talking-about.aspx</id><published>2009-04-26T16:27:00Z</published><updated>2009-04-26T16:27:00Z</updated><content type="html">&lt;P&gt;Hey, I'm talking about EUCCAs and Versatilities. &lt;/P&gt;
&lt;P&gt;My&amp;nbsp;last couple of blog posts are&amp;nbsp;my personal crusade to&amp;nbsp;get&amp;nbsp;SharePoint&amp;nbsp;architects and developers&amp;nbsp;to focus on&amp;nbsp;the most productive way (in my opinion)&amp;nbsp;to use SharePoint as an application platform. &lt;/P&gt;
&lt;P&gt;A EUCCA is a specific type of Composite Application - an End User Composable Composite Application. &lt;/P&gt;
&lt;P&gt;A EUCCA&amp;nbsp;is a Composite Application that specifically hands over the design of the Presentation and Productivity layers to the end users. Any composite application where the developers end up controlling the Presentation and Productivity layers is not a EUCCA.&lt;/P&gt;
&lt;P&gt;Versatilities are the parts of a EUCCA that the end users compose. So&amp;nbsp;each EUCCA contains a set of Versatilities.&lt;/P&gt;
&lt;P&gt;A Versatility, regardless of it's functional requirements, must satisfy three critical non-functional requirements:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Movability&lt;/LI&gt;
&lt;LI&gt;Assemblability&lt;/LI&gt;
&lt;LI&gt;Composability&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Any component, reusable or not, if it is not Movable, Assemblable and Composable, then it&amp;nbsp;is not a Versatility.&lt;/P&gt;
&lt;P&gt;That's what I'm talking about.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Talleyho&amp;nbsp;:) &lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9569287" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/SharePoint/default.aspx" /><category term="MOSS 2007" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/MOSS+2007/default.aspx" /><category term="WSS v3" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/WSS+v3/default.aspx" /><category term="Software Architecture" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/Software+Architecture/default.aspx" /></entry><entry><title>Requirements and Versatilities</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2009/04/24/understanding-how-versatility-requirements-are-different.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2009/04/24/understanding-how-versatility-requirements-are-different.aspx</id><published>2009-04-25T01:21:00Z</published><updated>2009-04-25T01:21:00Z</updated><content type="html">&lt;P&gt;Reusable components. A lot of work and effort and thought has been put into reusable components... &lt;/P&gt;
&lt;P&gt;OK, so let's talk about a specific type of&amp;nbsp;reusable components...&amp;nbsp;let's talk furniture design and Versatilities. &lt;/P&gt;
&lt;P&gt;There is a certain Scandinavian furniture company, not sure if I am allowed to say their name, but they are incredibly successful at selling really nice, practical, well designed inexpensive stuff.. But&amp;nbsp;their designs&amp;nbsp;are&amp;nbsp;significantly different from traditional furniture designs&amp;nbsp;because&amp;nbsp;their business model requires them to meet some very stringent non-functional requirements.&lt;/P&gt;
&lt;P&gt;First off, a piece of their furniture has to fit in a box that&amp;nbsp;weighs as little as possible, and be transportable home by the customer themselves. So Movability is a huge non-functional requirement. Second&amp;nbsp;their designs&amp;nbsp;have to be easily assembled with only simple graphic instructions, and a few&amp;nbsp;included tools. So Assemblability is another very important non-functional requirement. Third, their designs are designed to look and work great together across completely different types of&amp;nbsp;furniture and housewares and accoutrements. All of their stuff has&amp;nbsp;to be nicely composable into different&amp;nbsp;attractive interior designs and styles.&amp;nbsp;So Composability is also a hugely important&amp;nbsp;non-functional requirement.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Movability&lt;/LI&gt;
&lt;LI&gt;Assemblability&lt;/LI&gt;
&lt;LI&gt;Composability&amp;nbsp;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;These are&amp;nbsp;the&amp;nbsp;uber-requirements. These are&amp;nbsp;requirements that have to be satisfied no matter what&amp;nbsp;the end user's requirements. If what the end user's&amp;nbsp;want can't be designed to be Movable, Assemblable, and Composable - forget it. This company isn't going to deliver it. The&amp;nbsp;end user (customer)&amp;nbsp;will have to go elsewhere.&lt;/P&gt;
&lt;P&gt;SharePoint Versatilities are versatile components that have these same three non-functional uber-requirements: Movability, Assemblability, and Composability. Therefore you have to design from the get-go&amp;nbsp;for Movability, Assemblability and Composability - otherwise you're not designing Versatilities.&lt;/P&gt;
&lt;P&gt;OK, so you have a bunch of business users, and they want an application that does x, y and z. So what are you going to do? If you&amp;nbsp;design them an application that does x, y and z, and exactly x, y and z, then you have a purpose built application. If you get the requirements for a reclining chair, and you then build a one-off reclining chair right in their own living room, as one solid monolithic reclining chair - then what you have is perhaps a great reclining chair, but it only works now, for that particular&amp;nbsp;user with their current decor. If they want to "recompose"&amp;nbsp; their living room into a different design, then they'll have to bring the furniture&amp;nbsp;craftsmen back in and rebuild. Sound familiar?&lt;/P&gt;
&lt;P&gt;If you want Versatility - if you want applications that the end user's can move around, assemble and reassemble, and compose and recompose, then you have to take their requirements, and do a whole&amp;nbsp;different level of analysis on them. You have to look beyond the x, y and z, and treat x, y and z as a sub-set of a larger&amp;nbsp;set of possibilities&amp;nbsp;- and you have to explore how Versatilities can be designed to deliver that mix. In other words, like our Scandinavian design heros, you have to be really smart about the design.&lt;/P&gt;
&lt;P&gt;So&amp;nbsp;now&amp;nbsp;let's say&amp;nbsp;you've been super smart - and you've come up with a&amp;nbsp;slick&amp;nbsp;set of Versatilities that can do x, y and z and so much more&amp;nbsp;- well now you have a more difficult problem. Now you have&amp;nbsp;to convince your&amp;nbsp;stakeholders that your set of Versatilities is a superior solution to their x, y and z requirements. SharePoint users in general have totally realized the value of Versatilities. They love lists and columns and views and content types and web parts, and everyday they realize tremendous value out of moving them around, reassembling and recomposing them into new solutions. But first off,&amp;nbsp;most SharePoint users&amp;nbsp;didn't arrive at their SharePoint site&amp;nbsp;with a clear set of requirements. They arrived at their SharePoint site thinking - here's a whole set of tools, what can I do with them? And second off, what if your&amp;nbsp;stakeholders aren't SharePoint users at all? Quite often you're dealing with CXOs that only have a vague conceptual understanding of what is going on in SharePoint - and they're used to the waterfall&amp;nbsp;lifecycle -&amp;nbsp;they expect you to&amp;nbsp;gather requirements, and then deliver an application that exactly&amp;nbsp;satisfies those requirements.&lt;/P&gt;
&lt;P&gt;How do you convince&amp;nbsp;your fickle and&amp;nbsp;persnickity bunch of&amp;nbsp;stakeholders that they should care about Movability&amp;nbsp;and Assemblability&amp;nbsp;and Composability - how do you convince them that their interests are best served by&amp;nbsp;your set of brilliant Versatilities? &lt;/P&gt;
&lt;P&gt;Convincing stakeholders to care about non-functional requirements is always hard.&amp;nbsp;You have to plan, you have to prepare, you have to lay the ground, you have to do great drawings and presentations, you have to&amp;nbsp;work&amp;nbsp;at hitting&amp;nbsp;the right notes from the very first conversation. You have to get them to understand that Versatilities will give them the agility and speed to continuously execute on their business objectives.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But you can't sugar coat the downside because it will bite you back. Applications composed using a set of Versatilities always require a little more work on the end-user's part - they require more clicks than a purpose built application. Just like the Scandinavian furniture, they have to be assembled, and they come with directions that the end-user's have to follow...&amp;nbsp;So yes, their users will have to do&amp;nbsp;more work and learn a few things, but in return&amp;nbsp;they will be able to&amp;nbsp;compose&amp;nbsp;the application in their own SharePoint site in&amp;nbsp;a matter of hours - and then be able to change it themselves whenever it requires changing.&lt;/P&gt;
&lt;P&gt;Of course you have to&amp;nbsp;show examples. Most stakeholders don't know what they want until they see it.&amp;nbsp;So show them as&amp;nbsp;many similar end user composed SharePoint applications as you can&amp;nbsp;-&amp;nbsp;and if you have a running version, show&amp;nbsp;the stakeholders how&amp;nbsp;the end user's themselves can change and evolve the application as their business changes and evolves&amp;nbsp;-&amp;nbsp;without the&amp;nbsp;need to call in the developers for another 6 months of rebuilding in order to&amp;nbsp;add an account code, or to deliver the same application to a new office in Timbuktu.&lt;/P&gt;
&lt;P&gt;I'll&amp;nbsp;walk through some&amp;nbsp;real examples next time...&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9567423" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/SharePoint/default.aspx" /><category term="MOSS 2007" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/MOSS+2007/default.aspx" /><category term="WSS v3" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/WSS+v3/default.aspx" /><category term="Software Architecture" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/Software+Architecture/default.aspx" /></entry><entry><title>Design and Develop Versatilities not Applications</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2009/04/14/design-and-develop-versatilities-not-applications.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2009/04/14/design-and-develop-versatilities-not-applications.aspx</id><published>2009-04-14T21:13:00Z</published><updated>2009-04-14T21:13:00Z</updated><content type="html">&lt;P&gt;If you have had the pleasure of working in the SharePoint Universe for a while, then hopefully you have had a chance to see&amp;nbsp;lots and lots of examples&amp;nbsp;of the incredible applications that end-users&amp;nbsp;assemble in SharePoint&amp;nbsp;all by themselves - without the help of developers or infrastructure or even business analysts.&amp;nbsp;In my 5 years of&amp;nbsp;Architecting and Developing&amp;nbsp;SharePoint Portals and apps, I have&amp;nbsp;had tours of some truly fantastic applications that individual business units - with enthusiastic business&amp;nbsp;leadership -&amp;nbsp;have assembled from SharePoint and Office System parts completely without the help of IT - and&amp;nbsp;sometimes with the opposition of IT. &lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;The first one that blew my mind&amp;nbsp;was way back in 2004 at one of the major research hospitals in Boston where only a few weeks after I installed SPS03 for them -&amp;nbsp;the nurse certification and training team had completely automated their business process within their SharePoint team site: class scheduling and calendaring, class syllabi,&amp;nbsp;class sign-up, class workstation assignments,&amp;nbsp;teacher registration, teacher bios, post class surveys, student grading and feedback, future class discussion lists, etc. etc. All completely created by the manager of this business unit and his team without any prior experience with SharePoint. &lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;Since then I have been given tours of many many&amp;nbsp;other fabulous - completely user assembled WSS/MOSS applications. Only last week I was shown around an Insurance Underwriting and Risk Assessment site that just rocked my world. The actuaries, engineers and underwriters had again completely automated their business process with&amp;nbsp;lists and libraries and discussions&amp;nbsp;of all kinds of oil drilling equipment, oil refineries, oil tankers,&amp;nbsp;geographical variations, engineering experts by region,&amp;nbsp;with ratings and location info, and analytical spread sheets tying all the data together. I can't go into any detail, but again the site was deep and rich and completely put together by the end-users - and it is in constant use&amp;nbsp;for writing multi-million dollar insurance policies. &lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;The fact is - end users&amp;nbsp;know what they need, and with the right set of&amp;nbsp;end-user tools that have the right set of capabilities&amp;nbsp;- they can assemble, evolve and manage&amp;nbsp;exactly the application&amp;nbsp;that&amp;nbsp;can keep their business riding&amp;nbsp;the leading edge of the&amp;nbsp;productivity curve.&amp;nbsp;These kinds of applications blow the doors off of Agile or any other kind of "purpose built" development because they take developers and IT completely out of the presentation and productivity layers. No matter how fast or Agile a development effort is, it can never come&amp;nbsp;close to keeping up with end-users directly satisfying their own needs through a&amp;nbsp;Productivity Framework like SharePoint and the Office System.&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;So these fantastic and fabulously productive&amp;nbsp;user assembled SharePoint applications - what should we call them? Well for starters, these are Composite Applications. And there are lots and lots of discussions out there&amp;nbsp;in the software architecture world&amp;nbsp;covering the great and wondrous future of&amp;nbsp;Composite Applications. In the Microsoft/Office world the discussion revolves around&amp;nbsp;Office Business Applications (OBAs) in which SharePoint plays a key part -&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;but what&amp;nbsp;I are&amp;nbsp;talking about here is a specific species of Composite Application and/or OBA which&amp;nbsp;I refer to&amp;nbsp;as the End-User Composed Composite Application or EUCCA. &lt;SPAN style="FONT-WEIGHT: bold"&gt;And in my opinion, EUCCAs are the big time game changer!&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;OK, so we have all these highly productive EUCCAs being composed and evolved by business users on the SharePoint platform, so what's the beef?&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;The beef is that 96.4% (informal poll) of all applications developed to run in the context of SharePoint are not EUCCAs. They are Purpose Built applications that take advantage of lots and lots of parts of SharePoint: authentication, authorization, role based security, security trimmed navigation, search, etc. ; but they don't take advantage of the tremendous productivity potential of the End-User Compose-able application. They take a long time to deliver, and they can't be changed and adapted by the end users as the end-users requirements change. &lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Calibri; FONT-SIZE: 11pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;And the reason that software architects and developers don't build more EUCCAs on SharePoint - in my opinion - is that we have the wrong mind set - the whole software development lifecycle has been drilled into us for years - we collect the business requirements, and then we design and develop a solution to deliver exactly those requirements. But the job of designing and building EUCCAs requires a significantly different mindset, because with a EUCCA you don't deliver a solution that exactly delivers on the requirements, instead you deliver these things - configurable parts and pieces - that the users can use to compose and evolve their own solution as their requirements shift and change.&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;The difference is like the difference between designing a train and designing a car. A train is totally controlled by the tracks. The users of a train are passive and the train's schedule with it's unchangeable set of stops dictate their possibilities. The course of the train does not change even if the plans of the individual user's change. This is a purpose built application. &lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Calibri; FONT-SIZE: 11pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;The control of an automobile, on the other hand, is completely under the control of the end users themselves. They can go where they want when they want, they can loop back, they can change course mid-way. Their path evolves as their requirements change. In this way, building the presentation and productivity layers of a EUCCA requires a mindset like that of an automobile designer - it's all about handing the control&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;of the Presentation and Productivity layers over to the end-users.&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;So what are these parts and pieces that end-users use when they are composing a solution? SharePoint has been called a "Capabilities Framework" - so are these things simply "Capabilities"? Yes, but you can deliver capabilities that aren't user compose-able. What we're talking about here are specifically user compose-able capabilities. Each one has it's own brake, accelerator, steering wheel and signals. Which brings me around to the title of this post. I am suggesting we adopt a noun form of the word Versatile - and we call these things Versatilities. &lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Calibri; FONT-SIZE: 11pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;SharePoint Software Architects and developers need to focus on designing and developing Versatilities - small pieces of end-user configurable functionality that are versatile in exactly same way that the OOTB SharePoint functionality (lists, content types, views…) is versatile. We need to think totally in terms of extending the SharePoint Presentation and Productivity layers rather than simply building another Purpose Built application that sits on top of SharePoint. &lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;Think "Versatilities". It will get you in the right mind set to build some fantastically productive EUCCAs!&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in; FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;An example&amp;nbsp;to come.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9548926" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author></entry><entry><title>SharePoint Content vs. Code - A Parable</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2009/02/20/shareppoint-content-vs-code-a-parable.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2009/02/20/shareppoint-content-vs-code-a-parable.aspx</id><published>2009-02-20T15:13:00Z</published><updated>2009-02-20T15:13:00Z</updated><content type="html">&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: 'Arial','sans-serif'"&gt;The difference between&amp;nbsp;Content and Code, and between&amp;nbsp;Publishing and Code Deployment,&amp;nbsp;can be a very difficult thing for&amp;nbsp;the Stakeholders in an Enterprise&amp;nbsp;SharePoint&amp;nbsp;implementation to grasp. So for what it is worth, I recently told a client the following parable, and the light went on... Perhaps the story is worth retelling.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: 'Arial','sans-serif'"&gt;Imagine&amp;nbsp;a beautiful lush green meadow called SharePoint. And this meadow is filled with all these happy productive business people having a great time playing with this beautiful fragile stuff called “Content”. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: 'Arial','sans-serif'"&gt;And off to one side of this meadow is a deep abyss. And at the bottom of this abyss, if it has a bottom, there are these mean smudgy IT people who spend all their time mining this radioactive stuff called “Code”. And after these smudgy IT people dig up this ugly dangerous Code stuff, they pound it with big hammers, and they burn it in blast furnaces, and then they pack it into these huge heavy metal boxes, which they finally have to carry on their backs all the way up the side of the Abyss --&amp;nbsp;through the land of Dev, through the land of Test, and through the land of UAT,&amp;nbsp;and finally&amp;nbsp;to the beautiful&amp;nbsp;SharePoint meadow. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: 'Arial','sans-serif'"&gt;Now if you are one of these happy fun loving business people, the last thing you want is for some of your beautiful Content to fall off the side of the SharePoint meadow and into the IT abyss – cuz those stubborn smudgy IT people will treat it just like that Code stuff, pounding it with hammers, blasting it in blast furnaces, and it may take weeks or months, sometimes even years for an IT person to scale the abyss all the way back up to the meadow with a metal box full of now unrecognizable Content…&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: 'Arial','sans-serif'"&gt;In SharePoint terms, a rule of thumb is that Content is something, that when deployed, goes completely into a Content database. If on the other hand, when you deploy some stuff, if some part of it, even a tiny smidgen, ends up somewhere other than a Content database (such as the GAC or file system on a web server) – then that is nasty radioactive Code. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: 'Arial','sans-serif'"&gt;When you upload a word doc, or an Excel spreadsheet, or a codeless InfoPath form, or you save a SharePoint Designer workflow, or you create a new content type, or a new list or library or team site&amp;nbsp;-- all of these things end up completely in a content database and are in fact Content. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: 'Arial','sans-serif'"&gt;But sometimes those nice happy business people do want to put their Content stuff through a publishing process so it can be considered and approved by other happy business people. No need to bother those smudgy IT people though, they will only slow things down and/or mess them up…&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9435927" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author></entry><entry><title>Using STSADM to set Form Services Properties</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2008/12/01/using-stsadm-to-set-form-services-properties.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2008/12/01/using-stsadm-to-set-form-services-properties.aspx</id><published>2008-12-01T21:23:00Z</published><updated>2008-12-01T21:23:00Z</updated><content type="html">&lt;P&gt;Use the SetFormsServiceProperty operation as follows:&lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;stsadm -o setformsserviceproperty &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;&amp;nbsp;-pn &amp;lt;option name&amp;gt; &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;&amp;nbsp;-pv &amp;lt;option value&amp;gt; &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;Option Names: &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;DefaultDataConnectionTimeout &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;MaxDataConnectionTimeout &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;MaxDataConnectionResponseSize &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;RequireSslForDataConnections &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;AllowEmbeddedSqlForDataConnections &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;AllowUdcAuthenticationForDataConnections &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;AllowUserFormCrossDomainDataConnections &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;AllowUserFormBrowserEnabling &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;AllowUserFormBrowserRendering &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;AllowViewState &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;ViewStateThreshold &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;ShowProgressRolesManager &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;AllowBranding &lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;Example - to turn off the&amp;nbsp;"Powered by Forms Services"&amp;nbsp;logo on your form services forms:&lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;stsadm -o setformsserviceproperty -pn AllowBranding -pv false&lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;Note: You can use stsadm -o getformsserviceproperty -pn to see what the default values are for that particular property&lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: tahoma"&gt;For a full list of the stsadm commands go to: &lt;A href="http://webservicecatalog.com/post/STSAdm-Command-line-Guide.aspx"&gt;http://webservicecatalog.com/post/STSAdm-Command-line-Guide.aspx&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9161160" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/SharePoint/default.aspx" /><category term="MOSS 2007" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/MOSS+2007/default.aspx" /><category term="WSS v3" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/WSS+v3/default.aspx" /><category term="Forms Server" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/Forms+Server/default.aspx" /></entry><entry><title>eXtreme End-User Driven Architectures (XEUDAs)</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2008/11/07/ready-design-build-deploy-xeudas.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2008/11/07/ready-design-build-deploy-xeudas.aspx</id><published>2008-11-07T18:03:00Z</published><updated>2008-11-07T18:03:00Z</updated><content type="html">&lt;P&gt;There is&amp;nbsp;an emergent&amp;nbsp;solution architecture&amp;nbsp;which&amp;nbsp;the most ingenious of our&amp;nbsp;end users are&amp;nbsp;piecing together without our help. It is an architecture&amp;nbsp;without a&amp;nbsp;name - so let's give it one: &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;the eXtreme End-User Driven Architecture or XEUDA (zoo-da)&lt;/STRONG&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;A&amp;nbsp;XEUDA is an Architecture -&amp;nbsp;not an Application.&amp;nbsp;It is an architecture of many applications that end-users compose to&amp;nbsp;empower complex business processes. End users do this by themselves - no developer/IT&amp;nbsp;intervention required.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;XEUDA is an architecture that can be changed, rearranged, reconfigured, repurposed, redesigned, &lt;U&gt;re-architected&lt;/U&gt;&amp;nbsp;by the end users. Right now&amp;nbsp;end users&amp;nbsp;can only do this to a very limited degree, only with a small sub-set of applications, and only to drive particular&amp;nbsp;activities of some&amp;nbsp;business processes, but if the application architect and developer community, along with&amp;nbsp;the IT governance powers that be,&amp;nbsp;were to relax their grip and embrace this impulse, XEUDAs will&amp;nbsp;push IT controlled architectures aside&amp;nbsp;by producing productivity gains of&amp;nbsp;10X or more.&lt;/P&gt;
&lt;P&gt;Anywhere there is an Enterprise MOSS infrastructure with&amp;nbsp;even a handful of power users&amp;nbsp;you will sense the&amp;nbsp;yearning for XEUDA. MOSS power users and champions&amp;nbsp;build&amp;nbsp;fabulously flexible applications&amp;nbsp;on their MOSS sites. MOSS is a&amp;nbsp;wonderful end-user driven system.&amp;nbsp;But it is not extreme enough -&amp;nbsp;inevitably&amp;nbsp;users&amp;nbsp;drive up&amp;nbsp;to the edge&amp;nbsp;where pieces can no longer connect, where their InfoPath or Word or Excel docs, their content types and custom lists, and their SharePoint enabled LOB applications,&amp;nbsp;are left hanging on a library ledge - their structured and unstructured data&amp;nbsp;in danger of&amp;nbsp;being backed-up&amp;nbsp;into oblivion.&lt;/P&gt;
&lt;P&gt;And when the developers and architects are brought in, and the problem is laid out and the requirements gathered, their next impulse, more often than not, is to move to a purpose built application&amp;nbsp;-&amp;nbsp;ripping control out of the hands of the users, and placing it in the hands of a Solution Lifecycle and project managers and development teams and a change management process&amp;nbsp;which may take months or even years&amp;nbsp;to&amp;nbsp;hard boil&amp;nbsp;what the end-users had loosely assembled in a matter of days...&lt;/P&gt;
&lt;P&gt;We have all the tools and skills&amp;nbsp;to&amp;nbsp;give those magnificent MOSS and OBA applications the ability to turn&amp;nbsp;into&amp;nbsp;more powerful and more flexible&amp;nbsp;XEUDAs -- what we don't see enough of are architects and developers that&amp;nbsp;are&amp;nbsp;advocating and building&amp;nbsp;the end-user architectable elements that a XEUDA requires;&amp;nbsp;and agile, apolitical,&amp;nbsp;IT&amp;nbsp;governance teams&amp;nbsp;that are ready and willing to&amp;nbsp;hand-off the architectural&amp;nbsp;keys to their power users and domain experts...&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9052468" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author><category term="MOSS 2007" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/MOSS+2007/default.aspx" /><category term="WSS v3" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/WSS+v3/default.aspx" /><category term="Workflow" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/Workflow/default.aspx" /><category term="Business Process Management" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/Business+Process+Management/default.aspx" /><category term="Software Architecture" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/Software+Architecture/default.aspx" /></entry><entry><title>Reference list for SharePoint internal field names</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2008/11/03/reference-list-for-internal-field-names.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2008/11/03/reference-list-for-internal-field-names.aspx</id><published>2008-11-03T19:19:00Z</published><updated>2008-11-03T19:19:00Z</updated><content type="html">&lt;P&gt;Much used reprinting of list of fields with internal names for easy reference:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Document Library fields&lt;/STRONG&gt;&lt;/P&gt;
&lt;TABLE class=fields align=center class="fields"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class=""&gt;&lt;STRONG&gt;Display Name&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD class=""&gt;&lt;STRONG&gt;Internal Name&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD class=""&gt;&lt;STRONG&gt;GUID&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD class=""&gt;&lt;STRONG&gt;Type&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;ID&lt;/TD&gt;
&lt;TD class=""&gt;ID&lt;/TD&gt;
&lt;TD class=""&gt;{1d22ea11-1e32-424e-89ab-9fedbadb6ce1}&lt;/TD&gt;
&lt;TD class=""&gt;Counter&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Content Type ID&lt;/TD&gt;
&lt;TD class=""&gt;ContentTypeId&lt;/TD&gt;
&lt;TD class=""&gt;{03e45e84-1992-4d42-9116-26f756012634}&lt;/TD&gt;
&lt;TD class=""&gt;ContentTypeId&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Content Type&lt;/TD&gt;
&lt;TD class=""&gt;ContentType&lt;/TD&gt;
&lt;TD class=""&gt;{c042a256-787d-4a6f-8a8a-cf6ab767f12d}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Created&lt;/TD&gt;
&lt;TD class=""&gt;Created&lt;/TD&gt;
&lt;TD class=""&gt;{8c06beca-0777-48f7-91c7-6da68bc07b69}&lt;/TD&gt;
&lt;TD class=""&gt;DateTime&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Created By&lt;/TD&gt;
&lt;TD class=""&gt;Author&lt;/TD&gt;
&lt;TD class=""&gt;{1df5e554-ec7e-46a6-901d-d85a3881cb18}&lt;/TD&gt;
&lt;TD class=""&gt;User&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Modified&lt;/TD&gt;
&lt;TD class=""&gt;Modified&lt;/TD&gt;
&lt;TD class=""&gt;{28cf69c5-fa48-462a-b5cd-27b6f9d2bd5f}&lt;/TD&gt;
&lt;TD class=""&gt;DateTime&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Modified By&lt;/TD&gt;
&lt;TD class=""&gt;Editor&lt;/TD&gt;
&lt;TD class=""&gt;{d31655d1-1d5b-4511-95a1-7a09e9b75bf2}&lt;/TD&gt;
&lt;TD class=""&gt;User&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Has Copy Destinations&lt;/TD&gt;
&lt;TD class=""&gt;_HasCopyDestinations&lt;/TD&gt;
&lt;TD class=""&gt;{26d0756c-986a-48a7-af35-bf18ab85ff4a}&lt;/TD&gt;
&lt;TD class=""&gt;Boolean&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Copy Source&lt;/TD&gt;
&lt;TD class=""&gt;_CopySource&lt;/TD&gt;
&lt;TD class=""&gt;{6b4e226d-3d88-4a36-808d-a129bf52bccf}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Approval Status&lt;/TD&gt;
&lt;TD class=""&gt;_ModerationStatus&lt;/TD&gt;
&lt;TD class=""&gt;{fdc3b2ed-5bf2-4835-a4bc-b885f3396a61}&lt;/TD&gt;
&lt;TD class=""&gt;ModStat&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Approver Comments&lt;/TD&gt;
&lt;TD class=""&gt;_ModerationComments&lt;/TD&gt;
&lt;TD class=""&gt;{34ad21eb-75bd-4544-8c73-0e08330291fe}&lt;/TD&gt;
&lt;TD class=""&gt;Note&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;URL Path&lt;/TD&gt;
&lt;TD class=""&gt;FileRef&lt;/TD&gt;
&lt;TD class=""&gt;{94f89715-e097-4e8b-ba79-ea02aa8b7adb}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Path&lt;/TD&gt;
&lt;TD class=""&gt;FileDirRef&lt;/TD&gt;
&lt;TD class=""&gt;{56605df6-8fa1-47e4-a04c-5b384d59609f}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Modified&lt;/TD&gt;
&lt;TD class=""&gt;Last_x0020_Modified&lt;/TD&gt;
&lt;TD class=""&gt;{173f76c8-aebd-446a-9bc9-769a2bd2c18f}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Created&lt;/TD&gt;
&lt;TD class=""&gt;Created_x0020_Date&lt;/TD&gt;
&lt;TD class=""&gt;{998b5cff-4a35-47a7-92f3-3914aa6aa4a2}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;File Size&lt;/TD&gt;
&lt;TD class=""&gt;File_x0020_Size&lt;/TD&gt;
&lt;TD class=""&gt;{8fca95c0-9b7d-456f-8dae-b41ee2728b85}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Item Type&lt;/TD&gt;
&lt;TD class=""&gt;FSObjType&lt;/TD&gt;
&lt;TD class=""&gt;{30bb605f-5bae-48fe-b4e3-1f81d9772af9}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Effective Permissions Mask&lt;/TD&gt;
&lt;TD class=""&gt;PermMask&lt;/TD&gt;
&lt;TD class=""&gt;{ba3c27ee-4791-4867-8821-ff99000bac98}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;ID of the User who has the item Checked Out&lt;/TD&gt;
&lt;TD class=""&gt;CheckedOutUserId&lt;/TD&gt;
&lt;TD class=""&gt;{a7b731a3-1df1-4d74-a5c6-e2efba617ae2}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Is Checked out to local&lt;/TD&gt;
&lt;TD class=""&gt;IsCheckedoutToLocal&lt;/TD&gt;
&lt;TD class=""&gt;{cfaabd0f-bdbd-4bc2-b375-1e779e2cad08}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Checked Out To&lt;/TD&gt;
&lt;TD class=""&gt;CheckoutUser&lt;/TD&gt;
&lt;TD class=""&gt;{3881510a-4e4a-4ee8-b102-8ee8e2d0dd4b}&lt;/TD&gt;
&lt;TD class=""&gt;User&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Name&lt;/TD&gt;
&lt;TD class=""&gt;FileLeafRef&lt;/TD&gt;
&lt;TD class=""&gt;{8553196d-ec8d-4564-9861-3dbe931050c8}&lt;/TD&gt;
&lt;TD class=""&gt;File&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Unique Id&lt;/TD&gt;
&lt;TD class=""&gt;UniqueId&lt;/TD&gt;
&lt;TD class=""&gt;{4b7403de-8d94-43e8-9f0f-137a3e298126}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;ProgId&lt;/TD&gt;
&lt;TD class=""&gt;ProgId&lt;/TD&gt;
&lt;TD class=""&gt;{c5c4b81c-f1d9-4b43-a6a2-090df32ebb68}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;ScopeId&lt;/TD&gt;
&lt;TD class=""&gt;ScopeId&lt;/TD&gt;
&lt;TD class=""&gt;{dddd2420-b270-4735-93b5-92b713d0944d}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Virus Status&lt;/TD&gt;
&lt;TD class=""&gt;VirusStatus&lt;/TD&gt;
&lt;TD class=""&gt;{4a389cb9-54dd-4287-a71a-90ff362028bc}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Checked Out To&lt;/TD&gt;
&lt;TD class=""&gt;CheckedOutTitle&lt;/TD&gt;
&lt;TD class=""&gt;{9d4adc35-7cc8-498c-8424-ee5fd541e43a}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Check In Comment&lt;/TD&gt;
&lt;TD class=""&gt;_CheckinComment&lt;/TD&gt;
&lt;TD class=""&gt;{58014f77-5463-437b-ab67-eec79532da67}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Checked Out To&lt;/TD&gt;
&lt;TD class=""&gt;LinkCheckedOutTitle&lt;/TD&gt;
&lt;TD class=""&gt;{e2a15dfd-6ab8-4aec-91ab-02f6b64045b0}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Document Modified By&lt;/TD&gt;
&lt;TD class=""&gt;Modified_x0020_By&lt;/TD&gt;
&lt;TD class=""&gt;{822c78e3-1ea9-4943-b449-57863ad33ca9}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Document Created By&lt;/TD&gt;
&lt;TD class=""&gt;Created_x0020_By&lt;/TD&gt;
&lt;TD class=""&gt;{4dd7e525-8d6b-4cb4-9d3e-44ee25f973eb}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;File Type&lt;/TD&gt;
&lt;TD class=""&gt;File_x0020_Type&lt;/TD&gt;
&lt;TD class=""&gt;{39360f11-34cf-4356-9945-25c44e68dade}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;HTML File Type&lt;/TD&gt;
&lt;TD class=""&gt;HTML_x0020_File_x0020_Type&lt;/TD&gt;
&lt;TD class=""&gt;{0c5e0085-eb30-494b-9cdd-ece1d3c649a2}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Source Url&lt;/TD&gt;
&lt;TD class=""&gt;_SourceUrl&lt;/TD&gt;
&lt;TD class=""&gt;{c63a459d-54ba-4ab7-933a-dcf1c6fadec2}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Shared File Index&lt;/TD&gt;
&lt;TD class=""&gt;_SharedFileIndex&lt;/TD&gt;
&lt;TD class=""&gt;{034998e9-bf1c-4288-bbbd-00eacfc64410}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Edit Menu Table Start&lt;/TD&gt;
&lt;TD class=""&gt;_EditMenuTableStart&lt;/TD&gt;
&lt;TD class=""&gt;{3c6303be-e21f-4366-80d7-d6d0a3b22c7a}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Edit Menu Table End&lt;/TD&gt;
&lt;TD class=""&gt;_EditMenuTableEnd&lt;/TD&gt;
&lt;TD class=""&gt;{2ea78cef-1bf9-4019-960a-02c41636cb47}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Name&lt;/TD&gt;
&lt;TD class=""&gt;LinkFilenameNoMenu&lt;/TD&gt;
&lt;TD class=""&gt;{9d30f126-ba48-446b-b8f9-83745f322ebe}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Name&lt;/TD&gt;
&lt;TD class=""&gt;LinkFilename&lt;/TD&gt;
&lt;TD class=""&gt;{5cc6dc79-3710-4374-b433-61cb4a686c12}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Type&lt;/TD&gt;
&lt;TD class=""&gt;DocIcon&lt;/TD&gt;
&lt;TD class=""&gt;{081c6e4c-5c14-4f20-b23e-1a71ceb6a67c}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Server Relative URL&lt;/TD&gt;
&lt;TD class=""&gt;ServerUrl&lt;/TD&gt;
&lt;TD class=""&gt;{105f76ce-724a-4bba-aece-f81f2fce58f5}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Encoded Absolute URL&lt;/TD&gt;
&lt;TD class=""&gt;EncodedAbsUrl&lt;/TD&gt;
&lt;TD class=""&gt;{7177cfc7-f399-4d4d-905d-37dd51bc90bf}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Name&lt;/TD&gt;
&lt;TD class=""&gt;BaseName&lt;/TD&gt;
&lt;TD class=""&gt;{7615464b-559e-4302-b8e2-8f440b913101}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;File Size&lt;/TD&gt;
&lt;TD class=""&gt;FileSizeDisplay&lt;/TD&gt;
&lt;TD class=""&gt;{78a07ba4-bda8-4357-9e0f-580d64487583}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Property Bag&lt;/TD&gt;
&lt;TD class=""&gt;MetaInfo&lt;/TD&gt;
&lt;TD class=""&gt;{687c7f94-686a-42d3-9b67-2782eac4b4f8}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Level&lt;/TD&gt;
&lt;TD class=""&gt;_Level&lt;/TD&gt;
&lt;TD class=""&gt;{43bdd51b-3c5b-4e78-90a8-fb2087f71e70}&lt;/TD&gt;
&lt;TD class=""&gt;Integer&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Is Current Version&lt;/TD&gt;
&lt;TD class=""&gt;_IsCurrentVersion&lt;/TD&gt;
&lt;TD class=""&gt;{c101c3e7-122d-4d4d-bc34-58e94a38c816}&lt;/TD&gt;
&lt;TD class=""&gt;Boolean&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Select&lt;/TD&gt;
&lt;TD class=""&gt;SelectTitle&lt;/TD&gt;
&lt;TD class=""&gt;{b1f7969b-ea65-42e1-8b54-b588292635f2}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Select&lt;/TD&gt;
&lt;TD class=""&gt;SelectFilename&lt;/TD&gt;
&lt;TD class=""&gt;{5f47e085-2150-41dc-b661-442f3027f552}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Edit&lt;/TD&gt;
&lt;TD class=""&gt;Edit&lt;/TD&gt;
&lt;TD class=""&gt;{503f1caa-358e-4918-9094-4a2cdc4bc034}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;owshiddenversion&lt;/TD&gt;
&lt;TD class=""&gt;owshiddenversion&lt;/TD&gt;
&lt;TD class=""&gt;{d4e44a66-ee3a-4d02-88c9-4ec5ff3f4cd5}&lt;/TD&gt;
&lt;TD class=""&gt;Integer&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;UI Version&lt;/TD&gt;
&lt;TD class=""&gt;_UIVersion&lt;/TD&gt;
&lt;TD class=""&gt;{7841bf41-43d0-4434-9f50-a673baef7631}&lt;/TD&gt;
&lt;TD class=""&gt;Integer&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Version&lt;/TD&gt;
&lt;TD class=""&gt;_UIVersionString&lt;/TD&gt;
&lt;TD class=""&gt;{dce8262a-3ae9-45aa-aab4-83bd75fb738a}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Instance ID&lt;/TD&gt;
&lt;TD class=""&gt;InstanceID&lt;/TD&gt;
&lt;TD class=""&gt;{50a54da4-1528-4e67-954a-e2d24f1e9efb}&lt;/TD&gt;
&lt;TD class=""&gt;Integer&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Order&lt;/TD&gt;
&lt;TD class=""&gt;Order&lt;/TD&gt;
&lt;TD class=""&gt;{ca4addac-796f-4b23-b093-d2a3f65c0774}&lt;/TD&gt;
&lt;TD class=""&gt;Number&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;GUID&lt;/TD&gt;
&lt;TD class=""&gt;GUID&lt;/TD&gt;
&lt;TD class=""&gt;{ae069f25-3ac2-4256-b9c3-15dbc15da0e0}&lt;/TD&gt;
&lt;TD class=""&gt;Guid&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Workflow Version&lt;/TD&gt;
&lt;TD class=""&gt;WorkflowVersion&lt;/TD&gt;
&lt;TD class=""&gt;{f1e020bc-ba26-443f-bf2f-b68715017bbc}&lt;/TD&gt;
&lt;TD class=""&gt;Integer&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Workflow Instance ID&lt;/TD&gt;
&lt;TD class=""&gt;WorkflowInstanceID&lt;/TD&gt;
&lt;TD class=""&gt;{de8beacf-5505-47cd-80a6-aa44e7ffe2f4}&lt;/TD&gt;
&lt;TD class=""&gt;Guid&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Source Version (Converted Document)&lt;/TD&gt;
&lt;TD class=""&gt;ParentVersionString&lt;/TD&gt;
&lt;TD class=""&gt;{bc1a8efb-0f4c-49f8-a38f-7fe22af3d3e0}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Source Name (Converted Document)&lt;/TD&gt;
&lt;TD class=""&gt;ParentLeafName&lt;/TD&gt;
&lt;TD class=""&gt;{774eab3a-855f-4a34-99da-69dc21043bec}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Title&lt;/TD&gt;
&lt;TD class=""&gt;Title&lt;/TD&gt;
&lt;TD class=""&gt;{fa564e0f-0c70-4ab9-b&lt;A class=htc href="livecall:863-0177" mce_href="livecall:863-0177"&gt;863-0177&lt;/A&gt;e6ddd247}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Template Link&lt;/TD&gt;
&lt;TD class=""&gt;TemplateUrl&lt;/TD&gt;
&lt;TD class=""&gt;{4b1bf6c6-4f39-45ac-acd5-16fe7a214e5e}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Html File Link&lt;/TD&gt;
&lt;TD class=""&gt;xd_ProgID&lt;/TD&gt;
&lt;TD class=""&gt;{cd1ecb9f-dd4e-4f29-ab9e-e9ff40048d64}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Is Signed&lt;/TD&gt;
&lt;TD class=""&gt;xd_Signature&lt;/TD&gt;
&lt;TD class=""&gt;{fbf29b2d-cae5-49aa-8e0a-29955b540122}&lt;/TD&gt;
&lt;TD class=""&gt;Boolean&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Merge&lt;/TD&gt;
&lt;TD class=""&gt;Combine&lt;/TD&gt;
&lt;TD class=""&gt;{e52012a0-51eb-4c0c-8dfb-9b8a0ebedcb6}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Relink&lt;/TD&gt;
&lt;TD class=""&gt;RepairDocument&lt;/TD&gt;
&lt;TD class=""&gt;{5d36727b-bcb2-47d2-a231-1f0bc63b7439}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;Custom list&amp;nbsp;fields&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE class=fields align=center class="fields"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class=""&gt;&lt;STRONG&gt;Display Name&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD class=""&gt;&lt;STRONG&gt;Internal Name&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD class=""&gt;&lt;STRONG&gt;GUID&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD class=""&gt;&lt;STRONG&gt;Type&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;ID&lt;/TD&gt;
&lt;TD class=""&gt;ID&lt;/TD&gt;
&lt;TD class=""&gt;{1d22ea11-1e32-424e-89ab-9fedbadb6ce1}&lt;/TD&gt;
&lt;TD class=""&gt;Counter&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Content Type ID&lt;/TD&gt;
&lt;TD class=""&gt;ContentTypeId&lt;/TD&gt;
&lt;TD class=""&gt;{03e45e84-1992-4d42-9116-26f756012634}&lt;/TD&gt;
&lt;TD class=""&gt;ContentTypeId&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Content Type&lt;/TD&gt;
&lt;TD class=""&gt;ContentType&lt;/TD&gt;
&lt;TD class=""&gt;{c042a256-787d-4a6f-8a8a-cf6ab767f12d}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Title&lt;/TD&gt;
&lt;TD class=""&gt;Title&lt;/TD&gt;
&lt;TD class=""&gt;{fa564e0f-0c70-4ab9-b&lt;A class=htc href="livecall:863-0177" mce_href="livecall:863-0177"&gt;863-0177&lt;/A&gt;e6ddd247}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Modified&lt;/TD&gt;
&lt;TD class=""&gt;Modified&lt;/TD&gt;
&lt;TD class=""&gt;{28cf69c5-fa48-462a-b5cd-27b6f9d2bd5f}&lt;/TD&gt;
&lt;TD class=""&gt;DateTime&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Created&lt;/TD&gt;
&lt;TD class=""&gt;Created&lt;/TD&gt;
&lt;TD class=""&gt;{8c06beca-0777-48f7-91c7-6da68bc07b69}&lt;/TD&gt;
&lt;TD class=""&gt;DateTime&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Created By&lt;/TD&gt;
&lt;TD class=""&gt;Author&lt;/TD&gt;
&lt;TD class=""&gt;{1df5e554-ec7e-46a6-901d-d85a3881cb18}&lt;/TD&gt;
&lt;TD class=""&gt;User&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Modified By&lt;/TD&gt;
&lt;TD class=""&gt;Editor&lt;/TD&gt;
&lt;TD class=""&gt;{d31655d1-1d5b-4511-95a1-7a09e9b75bf2}&lt;/TD&gt;
&lt;TD class=""&gt;User&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Has Copy Destinations&lt;/TD&gt;
&lt;TD class=""&gt;_HasCopyDestinations&lt;/TD&gt;
&lt;TD class=""&gt;{26d0756c-986a-48a7-af35-bf18ab85ff4a}&lt;/TD&gt;
&lt;TD class=""&gt;Boolean&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Copy Source&lt;/TD&gt;
&lt;TD class=""&gt;_CopySource&lt;/TD&gt;
&lt;TD class=""&gt;{6b4e226d-3d88-4a36-808d-a129bf52bccf}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;owshiddenversion&lt;/TD&gt;
&lt;TD class=""&gt;owshiddenversion&lt;/TD&gt;
&lt;TD class=""&gt;{d4e44a66-ee3a-4d02-88c9-4ec5ff3f4cd5}&lt;/TD&gt;
&lt;TD class=""&gt;Integer&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Workflow Version&lt;/TD&gt;
&lt;TD class=""&gt;WorkflowVersion&lt;/TD&gt;
&lt;TD class=""&gt;{f1e020bc-ba26-443f-bf2f-b68715017bbc}&lt;/TD&gt;
&lt;TD class=""&gt;Integer&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;UI Version&lt;/TD&gt;
&lt;TD class=""&gt;_UIVersion&lt;/TD&gt;
&lt;TD class=""&gt;{7841bf41-43d0-4434-9f50-a673baef7631}&lt;/TD&gt;
&lt;TD class=""&gt;Integer&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Version&lt;/TD&gt;
&lt;TD class=""&gt;_UIVersionString&lt;/TD&gt;
&lt;TD class=""&gt;{dce8262a-3ae9-45aa-aab4-83bd75fb738a}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Attachments&lt;/TD&gt;
&lt;TD class=""&gt;Attachments&lt;/TD&gt;
&lt;TD class=""&gt;{67df98f4-9dec-48ff-a553-29bece9c5bf4}&lt;/TD&gt;
&lt;TD class=""&gt;Attachments&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Approval Status&lt;/TD&gt;
&lt;TD class=""&gt;_ModerationStatus&lt;/TD&gt;
&lt;TD class=""&gt;{fdc3b2ed-5bf2-4835-a4bc-b885f3396a61}&lt;/TD&gt;
&lt;TD class=""&gt;ModStat&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Approver Comments&lt;/TD&gt;
&lt;TD class=""&gt;_ModerationComments&lt;/TD&gt;
&lt;TD class=""&gt;{34ad21eb-75bd-4544-8c73-0e08330291fe}&lt;/TD&gt;
&lt;TD class=""&gt;Note&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Edit&lt;/TD&gt;
&lt;TD class=""&gt;Edit&lt;/TD&gt;
&lt;TD class=""&gt;{503f1caa-358e-4918-9094-4a2cdc4bc034}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Title&lt;/TD&gt;
&lt;TD class=""&gt;LinkTitleNoMenu&lt;/TD&gt;
&lt;TD class=""&gt;{bc91a437-52e7-49e1-8c4e-4698904b2b6d}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;&lt;/TD&gt;
&lt;TD class=""&gt;LinkFilenameNoMenu&lt;/TD&gt;
&lt;TD class=""&gt;&lt;/TD&gt;
&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Title&lt;/TD&gt;
&lt;TD class=""&gt;LinkTitle&lt;/TD&gt;
&lt;TD class=""&gt;{82642ec8-ef9b-478f-acf9-31f7d45fbc31}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Select&lt;/TD&gt;
&lt;TD class=""&gt;SelectTitle&lt;/TD&gt;
&lt;TD class=""&gt;{b1f7969b-ea65-42e1-8b54-b588292635f2}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Instance ID&lt;/TD&gt;
&lt;TD class=""&gt;InstanceID&lt;/TD&gt;
&lt;TD class=""&gt;{50a54da4-1528-4e67-954a-e2d24f1e9efb}&lt;/TD&gt;
&lt;TD class=""&gt;Integer&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Order&lt;/TD&gt;
&lt;TD class=""&gt;Order&lt;/TD&gt;
&lt;TD class=""&gt;{ca4addac-796f-4b23-b093-d2a3f65c0774}&lt;/TD&gt;
&lt;TD class=""&gt;Number&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;GUID&lt;/TD&gt;
&lt;TD class=""&gt;GUID&lt;/TD&gt;
&lt;TD class=""&gt;{ae069f25-3ac2-4256-b9c3-15dbc15da0e0}&lt;/TD&gt;
&lt;TD class=""&gt;Guid&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Workflow Instance ID&lt;/TD&gt;
&lt;TD class=""&gt;WorkflowInstanceID&lt;/TD&gt;
&lt;TD class=""&gt;{de8beacf-5505-47cd-80a6-aa44e7ffe2f4}&lt;/TD&gt;
&lt;TD class=""&gt;Guid&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;URL Path&lt;/TD&gt;
&lt;TD class=""&gt;FileRef&lt;/TD&gt;
&lt;TD class=""&gt;{94f89715-e097-4e8b-ba79-ea02aa8b7adb}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Path&lt;/TD&gt;
&lt;TD class=""&gt;FileDirRef&lt;/TD&gt;
&lt;TD class=""&gt;{56605df6-8fa1-47e4-a04c-5b384d59609f}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Modified&lt;/TD&gt;
&lt;TD class=""&gt;Last_x0020_Modified&lt;/TD&gt;
&lt;TD class=""&gt;{173f76c8-aebd-446a-9bc9-769a2bd2c18f}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Created&lt;/TD&gt;
&lt;TD class=""&gt;Created_x0020_Date&lt;/TD&gt;
&lt;TD class=""&gt;{998b5cff-4a35-47a7-92f3-3914aa6aa4a2}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Item Type&lt;/TD&gt;
&lt;TD class=""&gt;FSObjType&lt;/TD&gt;
&lt;TD class=""&gt;{30bb605f-5bae-48fe-b4e3-1f81d9772af9}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Effective Permissions Mask&lt;/TD&gt;
&lt;TD class=""&gt;PermMask&lt;/TD&gt;
&lt;TD class=""&gt;{ba3c27ee-4791-4867-8821-ff99000bac98}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Name&lt;/TD&gt;
&lt;TD class=""&gt;FileLeafRef&lt;/TD&gt;
&lt;TD class=""&gt;{8553196d-ec8d-4564-9861-3dbe931050c8}&lt;/TD&gt;
&lt;TD class=""&gt;File&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Unique Id&lt;/TD&gt;
&lt;TD class=""&gt;UniqueId&lt;/TD&gt;
&lt;TD class=""&gt;{4b7403de-8d94-43e8-9f0f-137a3e298126}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;ProgId&lt;/TD&gt;
&lt;TD class=""&gt;ProgId&lt;/TD&gt;
&lt;TD class=""&gt;{c5c4b81c-f1d9-4b43-a6a2-090df32ebb68}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;ScopeId&lt;/TD&gt;
&lt;TD class=""&gt;ScopeId&lt;/TD&gt;
&lt;TD class=""&gt;{dddd2420-b270-4735-93b5-92b713d0944d}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;File Type&lt;/TD&gt;
&lt;TD class=""&gt;File_x0020_Type&lt;/TD&gt;
&lt;TD class=""&gt;{39360f11-34cf-4356-9945-25c44e68dade}&lt;/TD&gt;
&lt;TD class=""&gt;Text&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;HTML File Type&lt;/TD&gt;
&lt;TD class=""&gt;HTML_x0020_File_x0020_Type&lt;/TD&gt;
&lt;TD class=""&gt;{4ef1b78f-fdba-48dc-b8ab-3fa06a0c9804}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Edit Menu Table Start&lt;/TD&gt;
&lt;TD class=""&gt;_EditMenuTableStart&lt;/TD&gt;
&lt;TD class=""&gt;{3c6303be-e21f-4366-80d7-d6d0a3b22c7a}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Edit Menu Table End&lt;/TD&gt;
&lt;TD class=""&gt;_EditMenuTableEnd&lt;/TD&gt;
&lt;TD class=""&gt;{2ea78cef-1bf9-4019-960a-02c41636cb47}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Name&lt;/TD&gt;
&lt;TD class=""&gt;LinkFilenameNoMenu&lt;/TD&gt;
&lt;TD class=""&gt;{9d30f126-ba48-446b-b8f9-83745f322ebe}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Name&lt;/TD&gt;
&lt;TD class=""&gt;LinkFilename&lt;/TD&gt;
&lt;TD class=""&gt;{5cc6dc79-3710-4374-b433-61cb4a686c12}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Type&lt;/TD&gt;
&lt;TD class=""&gt;DocIcon&lt;/TD&gt;
&lt;TD class=""&gt;{081c6e4c-5c14-4f20-b23e-1a71ceb6a67c}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Server Relative URL&lt;/TD&gt;
&lt;TD class=""&gt;ServerUrl&lt;/TD&gt;
&lt;TD class=""&gt;{105f76ce-724a-4bba-aece-f81f2fce58f5}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Encoded Absolute URL&lt;/TD&gt;
&lt;TD class=""&gt;EncodedAbsUrl&lt;/TD&gt;
&lt;TD class=""&gt;{7177cfc7-f399-4d4d-905d-37dd51bc90bf}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;File Name&lt;/TD&gt;
&lt;TD class=""&gt;BaseName&lt;/TD&gt;
&lt;TD class=""&gt;{7615464b-559e-4302-b8e2-8f440b913101}&lt;/TD&gt;
&lt;TD class=""&gt;Computed&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Property Bag&lt;/TD&gt;
&lt;TD class=""&gt;MetaInfo&lt;/TD&gt;
&lt;TD class=""&gt;{687c7f94-686a-42d3-9b67-2782eac4b4f8}&lt;/TD&gt;
&lt;TD class=""&gt;Lookup&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Level&lt;/TD&gt;
&lt;TD class=""&gt;_Level&lt;/TD&gt;
&lt;TD class=""&gt;{43bdd51b-3c5b-4e78-90a8-fb2087f71e70}&lt;/TD&gt;
&lt;TD class=""&gt;Integer&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;Is Current Version&lt;/TD&gt;
&lt;TD class=""&gt;_IsCurrentVersion&lt;/TD&gt;
&lt;TD class=""&gt;{c101c3e7-122d-4d4d-bc34-58e94a38c816}&lt;/TD&gt;
&lt;TD class=""&gt;Boolean&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9033711" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/SharePoint/default.aspx" /><category term="MOSS 2007" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/MOSS+2007/default.aspx" /><category term="WSS v3" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/WSS+v3/default.aspx" /><category term="WebPart" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/WebPart/default.aspx" /></entry><entry><title>Adding an InfoPath Preloader (ProgressBar) for long loading forms</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2008/07/17/infopath-preloader-progressbar.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2008/07/17/infopath-preloader-progressbar.aspx</id><published>2008-07-17T21:13:00Z</published><updated>2008-07-17T21:13:00Z</updated><content type="html">&lt;P&gt;Working on a project with some very large InfoPath forms (700+ fields with hundreds of rules and conditions etc.)&amp;nbsp;running out of&amp;nbsp;a SharePoint Forms library using the InfoPath&amp;nbsp;client (not&amp;nbsp;Forms&amp;nbsp;Server)&amp;nbsp;and which take over a minute to load. &lt;/P&gt;
&lt;P&gt;In addition to a number of changes made to reduce the load time discussed elsewhere, it was decided to improve the user experience&amp;nbsp;by adding&amp;nbsp;a Pre-Loader to give the user some feedback while the form is loading.&lt;/P&gt;
&lt;P&gt;Here is how this was done in C#&amp;nbsp;(feedback appreciated&amp;nbsp;- particularly if you know of a better way to do this):&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0. Add a reference to System.Drawing and then add the following using statements at the top of the FormCode.cs file (there may be others):&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Drawing;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Diagnostics;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Threading;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;OL style="MARGIN-TOP: 0in" type=1&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;Add the following using statement at the top of the FormCode.Designer.cs (click on "Show All Files" if you don't see this file under the FormCode.cs file)&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&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; using System.Windows.Forms&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Declare the preLoaderForm at the top of &amp;nbsp;FormCode.Designer.cs* under the "&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;internal Microsoft.Office.InfoPath.Application&amp;nbsp;&amp;nbsp;&amp;nbsp; Application;" and&amp;nbsp;"&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;internal Microsoft.Office.InfoPath.EventManager EventManager;" declarations:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;B&gt;&lt;SPAN style="COLOR: blue"&gt;internal Form preloaderForm = null;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;OL style="MARGIN-TOP: 0in" type=1 start=2&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;Add inside the FormCode constructor in the FormCode.Designer.cs*&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 1in"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'"&gt;LaunchPreLoader();&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;OL style="MARGIN-TOP: 0in" type=1 start=3&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;Add two new methods to FormCode.cs&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void LaunchPreLoader()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; System.Threading.Thread newThread = new System.Threading.Thread(new System.Threading.ThreadStart(this.Preloader));&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; newThread.Start();&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; // do nothing &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void Preloader()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; preloaderForm = new Form();&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; preloaderForm.Text = "Form Loading";&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; preloaderForm.Size = new System.Drawing.Size(250, 75);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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;preloaderForm.Location = new System.Drawing.Point(400, 200);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; preloaderForm.StartPosition = FormStartPosition.CenterScreen;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; Label message = new Label();&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; message.Text = "Your form is loading";&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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;message.Location = new System.Drawing.Point(20, 8);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; message.Size = new System.Drawing.Size(200, 15);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; Panel progBarPanel = new Panel();&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; progBarPanel.Width = 250;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; progBarPanel.Height = 50;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; progBarPanel.BackColor = Color.Gainsboro;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; ProgressBar progBar = new ProgressBar();&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; progBar.Location = new System.Drawing.Point(20, 20);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; progBar.Style = ProgressBarStyle.Marquee;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; progBar.MarqueeAnimationSpeed = 250;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; progBar.BackColor = Color.DodgerBlue;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; progBar.Size = new System.Drawing.Size(200, 15);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; progBarPanel.Controls.Add(message);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; progBarPanel.Controls.Add(progBar);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; preloaderForm.Controls.Add(progBarPanel);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; preloaderForm.ShowDialog();&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&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; // do nothing if preloader fails &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL style="MARGIN-TOP: 0in" type=1 start=4&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;To close the pre-loader, add the following code to the bottom of the FormEvents_Loading method in FormCode.cs. If you don't see a FormEvents_Loading method in your FormCode.cs file, then in InfoPath go to Tools &amp;gt; Programming &amp;gt; Loading Event - and it will be generated for you.&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'"&gt;If( preloaderForm != null )&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; preloaderForm.DialogResult = DialogResult.Yes;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;*Note that steps 1 and 2 are in the FormCode.Designer.cs file. It is not advisable to make changes&amp;nbsp;to this file since it is autogenerated and your changes can&amp;nbsp;be easily lost. But on the onther hand, the&amp;nbsp;Pre-Loader is&amp;nbsp;only useful if it opens&amp;nbsp;early enough, and the FormCode constructor is the earliest point we&amp;nbsp;can get to&amp;nbsp;in the FormCode class. If you cannot deal with the maintenance issue when this code is autogenerated (re-adding the&amp;nbsp;three lines of code in steps 1 and 2) then you can try locating this code in FormCode.cs and see if it runs early enough to be useful to you.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8744717" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/SharePoint/default.aspx" /><category term="MOSS 2007" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/MOSS+2007/default.aspx" /><category term="InfoPath" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/InfoPath/default.aspx" /></entry><entry><title>Clearing the InfoPath Cache</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2008/07/09/infopath-cache.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2008/07/09/infopath-cache.aspx</id><published>2008-07-09T16:56:00Z</published><updated>2008-07-09T16:56:00Z</updated><content type="html">&lt;P&gt;When you load an InfoPath form, it is cached&amp;nbsp;in the following&amp;nbsp;location on your machine:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C:\Documents and Settings\[User]\Local Settings\Application Data\Microsoft\InfoPath\FormCache2&lt;/STRONG&gt; &lt;/P&gt;
&lt;P&gt;When a new version of the form is detected, such as when a new version of the form is installed in a SharePoint Forms library,&amp;nbsp;the cached form will be deleted and the new one installed in it's place.&lt;/P&gt;
&lt;P&gt;You can also&amp;nbsp;manually clear the Infopath cache by deleting the files. &lt;/P&gt;
&lt;P&gt;Or you can do it via command line by:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Start &amp;gt; run &amp;gt; Infopath /cache clearall&lt;/STRONG&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8712591" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/SharePoint/default.aspx" /><category term="MOSS 2007" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/MOSS+2007/default.aspx" /><category term="WSS v3" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/WSS+v3/default.aspx" /><category term="InfoPath" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/InfoPath/default.aspx" /></entry><entry><title>Process Currently Required for MOSS Variations</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2008/06/04/process-currently-required-for-moss-variations.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2008/06/04/process-currently-required-for-moss-variations.aspx</id><published>2008-06-04T16:45:00Z</published><updated>2008-06-04T16:45:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Variations is a potentially&amp;nbsp;great MOSS feature. Variations are obviously useful &lt;A class="" title=_MailEndCompose name=_MailEndCompose&gt;&lt;/A&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT face=Calibri size=3&gt;for multi-lingual sites, but also&amp;nbsp;anytime&amp;nbsp;a company&amp;nbsp;wants to replicate &amp;nbsp;a number of customer or partner sites, variations can&lt;/FONT&gt;&lt;/SPAN&gt; automate the production and customization of those sites.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;But MOSS&amp;nbsp;Variations does not fully function (unless the issue has been fixed in recent hotfix that I missed) with custom content types unless those content types are in the site definition of the publishing sites themselves. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;In other words, creating custom content types and deploying them as features is not enough. You currently need to create custom site definitions incorporating the custom content types – otherwise the pages are not replicated correctly using variations. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Unless you are going to use the OOB publishing site definition with the OOB publishing page layouts, then your process of creating a WCM (Web Content Management) site using Variations has to be frontloaded with nailing down the Content Types and generating Site Definitions:&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="COLOR: #1f497d; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;first develop the master pages, content types, layout pages, get a fully working site that does what the customer needs&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="COLOR: #1f497d; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;then create/generate site definitions that include those content types and layout pages etc.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="COLOR: #1f497d; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;then setup the authoring site using the custom site definitions - enabling Variations and adding the required Labels&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;If you are in a situation where the everything needs to happen at once - where the authoring team needs to enter content as the development team is developing the WCM site, then you may have to work around this issue:&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;See &lt;A href="http://blogs.msdn.com/michael_yeager/archive/2008/05/08/variations-without-custom-site-definitions.aspx"&gt;http://blogs.msdn.com/michael_yeager/archive/2008/05/08/variations-without-custom-site-definitions.aspx&lt;/A&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8573346" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author></entry><entry><title>Balancing your MOSS Content Types</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2008/06/03/balancing-your-content-types.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2008/06/03/balancing-your-content-types.aspx</id><published>2008-06-03T18:59:00Z</published><updated>2008-06-03T18:59:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;A class="" title=_MailEndCompose name=_MailEndCompose&gt;&lt;/A&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT face=Calibri size=3&gt;I have found that the following two issues can be critically important when architecting a catalog style WCM site:&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="COLOR: #1f497d; mso-fareast-font-family: Calibri; mso-bidi-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Calibri size=3&gt;1.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The intention to use the Content Query Web Part (CQWP) to roll up lower level detail pages to higher level summary pages can have a major effect on your “Content Type Architecture” The CQWP has the ability to query across multiple sites by &amp;nbsp;Content Type. In a “catalog” style site where one is drilling down to detail pages, the ability to roll up across many different Pages libraries by Content Type can be a crucial functional detail&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="COLOR: #1f497d; mso-fareast-font-family: Calibri; mso-bidi-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Calibri size=3&gt;2.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Another important detail is the fact that a content type can have many layout pages. Often the authoring team wants to be able to switch between layout pages for the same content. You can do that by simply making sure the layout pages share the same content type, and that the fields that each layout page shares line up properly.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The first issue encourages the&amp;nbsp;site architect&amp;nbsp;to create more content types to make it easier to roll-up the content. The second issue encourages the&amp;nbsp;site architect&amp;nbsp;to create fewer content types each having multiple layout pages so that the authoring team can easily switch between layouts. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8571698" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/SharePoint/default.aspx" /><category term="web content management" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/web+content+management/default.aspx" /><category term="Sharepoint Designer" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/Sharepoint+Designer/default.aspx" /></entry><entry><title>Variations without Custom Site Definitions</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2008/05/08/variations-without-custom-site-definitions.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2008/05/08/variations-without-custom-site-definitions.aspx</id><published>2008-05-08T19:34:00Z</published><updated>2008-05-08T19:34:00Z</updated><content type="html">&lt;P&gt;If you are going to create custom content types and custom layout pages, then for Variations (multilingual sites in MOSS07) to work, you currently are required to create custom site definitions with your custom content types built in.&lt;/P&gt;
&lt;P&gt;The reason for this is that when Variations creates a new site or sub-site, it uses the Site Definition that was used for the original root site. So if you created the original root site using the Publishing Site Definition with it's standard welcome page, your new variation will be created with that Site Definition. But then there are two problems. The Pages library is not enabled for any of your custom content types. And probably you created a new welcome page with a custom layout page built on a custom content type, and the one created by Variations will be the OOB welcome page. Thus errors are thrown, pages show up blank, no content appears to be propagated.&lt;/P&gt;
&lt;P&gt;Again, the preferred process with a new Publishing/Variations site&amp;nbsp;is to build out an initial version of the new site. Define all the content types in the UI, create layout pages in SharePoint Designer based on those content types. Then have your users use it, provide feedback, and do as many iterations until everything is just right, and then turn around and build the custom site definitions with your now perfectly designed content types.&lt;/P&gt;
&lt;P&gt;But a recent client of mine could not possibly do this. Because the site had to be up on such and such a date, there wasn't time to build custom site definitions much less have the custom&amp;nbsp;content types completely defined in advance.&lt;/P&gt;
&lt;P&gt;We built the site, it went live on time, and then after the fact I tried to figure out if I could get Variations to still work.&lt;/P&gt;
&lt;P&gt;And what I found is that:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;When you create a new Label, set Hierarchy Creation to create the "Publishing Sites Only" - no pages&lt;/LI&gt;
&lt;LI&gt;After the sites have been created, rename the old welcome page (to default2.aspx for instance)&lt;/LI&gt;
&lt;LI&gt;Then make a change on the home page of the site so that a new version will propagate (this appears to both add the custom content type to the Pages library, and add the custom page)&lt;/LI&gt;
&lt;LI&gt;After propagation, go and delete the old welcome page out of the library (may need to repoint the Welcome Page to your new page first)&lt;/LI&gt;
&lt;LI&gt;Now all other pages within that site will propagate correctly&lt;/LI&gt;
&lt;LI&gt;repeat for each site in the site site collection&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Only just at the beginning of testing this work around, but so far&amp;nbsp;everything appears to work fine.&lt;/P&gt;
&lt;P&gt;Unfortunately one has to do this every time a new site is added, but then -- hopefully&amp;nbsp;there&amp;nbsp;will be&amp;nbsp;a fix for this whole issue coming before too long...&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8472839" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author></entry><entry><title>Content Deployment Debugging Links</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2008/05/07/content-deployment-debugging-links.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2008/05/07/content-deployment-debugging-links.aspx</id><published>2008-05-07T21:43:00Z</published><updated>2008-05-07T21:43:00Z</updated><content type="html">&lt;P&gt;There is more info on Content Deployment issues in earlier blog entries here. &lt;/P&gt;
&lt;P&gt;The main thing is to first install SP1 and KBs&amp;nbsp;941422, 948945 and 950279, and &lt;STRONG&gt;952698&amp;nbsp;and 952704&lt;/STRONG&gt;&amp;nbsp; (these last two may rollup all the changes in the earlier KBs, I am trying to confirm that).&lt;/P&gt;
&lt;P&gt;Beyond that,&amp;nbsp;the best information on debugging Content Deployment jobs can be found on Maxime Bombardier's blog:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;A href="http://blogs.msdn.com/maximeb/archive/2008/02/19/debugging-content-deployment-issues.aspx" mce_href="http://blogs.msdn.com/maximeb/archive/2008/02/19/debugging-content-deployment-issues.aspx"&gt;http://blogs.msdn.com/maximeb/archive/2008/02/19/debugging-content-deployment-issues.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;(setting versioning to only Major Versions in the Style Library helped me out big time)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;and in parts 5 and 6 of Stefan Goßner's&amp;nbsp;series on content deployment:&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;A href="http://blogs.technet.com/stefan_gossner/archive/2007/10/12/deep-dive-into-the-sharepoint-content-deployment-and-migration-api-part-5.aspx" mce_href="http://blogs.technet.com/stefan_gossner/archive/2007/10/12/deep-dive-into-the-sharepoint-content-deployment-and-migration-api-part-5.aspx"&gt;http://blogs.technet.com/stefan_gossner/archive/2007/10/12/deep-dive-into-the-sharepoint-content-deployment-and-migration-api-part-5.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;Also note that there are quite a few fixes included in SP1 plus the post SP1 rollups&amp;nbsp;KBs&amp;nbsp;941422 and 948945 and 950279.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;A href="http://support.microsoft.com/kb/941274"&gt;http://support.microsoft.com/kb/941274&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;A href="http://support.microsoft.com/kb/948945"&gt;http://support.microsoft.com/kb/948945&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;A href="http://support.microsoft.com/kb/950279"&gt;http://support.microsoft.com/kb/950279&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;There are two KBs that are specific to Content Deployment with 60+ fixes. If you have having serious CD problems, you'll need to talk with Customer Support Services to obtain these:&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;B&gt;&lt;A href="http://support.microsoft.com/kb/952698"&gt;http://support.microsoft.com/kb/952698&lt;/A&gt;&amp;nbsp;&lt;/B&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;FONT color=#000080&gt;&lt;A href="http://support.microsoft.com/kb/952704/"&gt;http://support.microsoft.com/kb/952704/&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;FONT color=#000080&gt;In theory these two are a rollup of all the previous Content Deployment hogfixes. I am still trying to confirm that this is true.&lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8466561" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/SharePoint/default.aspx" /><category term="MOSS 2007" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/MOSS+2007/default.aspx" /><category term="WSS v3" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/WSS+v3/default.aspx" /><category term="web content management" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/web+content+management/default.aspx" /><category term="content deployment" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/content+deployment/default.aspx" /></entry><entry><title>SharePoint Designer Check-in and Check-out and Publishing</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michael_yeager/archive/2008/05/06/sharepoint-designer-check-in-and-check-out-and-publishing.aspx" /><id>http://blogs.msdn.com/michael_yeager/archive/2008/05/06/sharepoint-designer-check-in-and-check-out-and-publishing.aspx</id><published>2008-05-06T23:58:00Z</published><updated>2008-05-06T23:58:00Z</updated><content type="html">&lt;P&gt;Maybe I'm missing a hotfix or something, but SharePoint Designer seems to have a lot of problems with Check-ins and Check-outs. Often it shows a file as checked out when it is actually checked in and vice versa. Sometimes closing SD and opening the site again clears this up, but as a general practice, I do a lot of check-ins and check-outs in the browser and not in SD. &lt;/P&gt;
&lt;P&gt;Mostly I'm talking about Master Pages and Layout Pages - which you can check-in and check-out in your browser by navigating to the Master Pages Gallery found under Site Settings &amp;gt; Galleries &amp;gt; Master pages and page layouts&lt;/P&gt;
&lt;P&gt;Also, I typically use the Publish Selected Files functionality to promote new Master Pages and Page Layouts from Dev to Production, but note that you have to check out the files on both servers. The easiest and most effective way to do this again is in the browser by navigating to the respective Galleries on each farm and checking them out in the browser. &lt;/P&gt;
&lt;P&gt;For instance, you go to the Master pages and layouts Gallery on production and check-out your custom master page, and you go to the Master pages and layouts Gallery on development and you check-out your custom master page, and then on Dev in SharePoint Designer you right click on your custom master page and select Publish Selected Files (and enter the url for your production site if you haven't already).&lt;/P&gt;
&lt;P&gt;Note that after you Publish your new versions, they are only minor versions, and you can view them on production without endangering the site for other users. Once you confirm that they are working and doing what you want, then you can Check them in as a Full version on production. Remember also then to Undo Checkout on Dev. You only checked it out to publish it, so just Undo Checkout so that you don't have a new insignificant version. &lt;/P&gt;
&lt;P&gt;To review - after Publishing, on Production after checking them as a&amp;nbsp;Minro Version&amp;nbsp;you check in and approve a Major Version, and then on Development&amp;nbsp;you Undo Checkout. &lt;/P&gt;
&lt;P&gt;A little complicated, but it works consistently.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8463953" width="1" height="1"&gt;</content><author><name>mty</name><uri>http://blogs.msdn.com/members/mty.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/SharePoint/default.aspx" /><category term="MOSS 2007" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/MOSS+2007/default.aspx" /><category term="WSS v3" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/WSS+v3/default.aspx" /><category term="Sharepoint Designer" scheme="http://blogs.msdn.com/michael_yeager/archive/tags/Sharepoint+Designer/default.aspx" /></entry></feed>