<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>The SharePoint Swiss Army Knife</title>
	<atom:link href="http://blog.henryong.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.henryong.com</link>
	<description>Stories from a SharePoint Engineer that isn&#039;t afraid of Visual Studio.</description>
	<lastBuildDate>Thu, 08 Jul 2010 23:25:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blog.henryong.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/5a8abed37c3e9be49c8e7bb7f9f84a86?s=96&#038;d=http://s2.wp.com/i/buttonw-com.png</url>
		<title>The SharePoint Swiss Army Knife</title>
		<link>http://blog.henryong.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.henryong.com/osd.xml" title="The SharePoint Swiss Army Knife" />
	<atom:link rel='hub' href='http://blog.henryong.com/?pushpress=hub'/>
		<item>
		<title>A Strategy for Migrating Documents Out of Files Shares and Into SharePoint</title>
		<link>http://blog.henryong.com/2010/07/08/a-strategy-for-migrating-documents-out-of-files-shares-and-into-sharepoint/</link>
		<comments>http://blog.henryong.com/2010/07/08/a-strategy-for-migrating-documents-out-of-files-shares-and-into-sharepoint/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 23:25:50 +0000</pubDate>
		<dc:creator>Henry</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Information Architecture]]></category>
		<category><![CDATA[SharePoint File Share Migration]]></category>
		<category><![CDATA[SharePoint Adoption]]></category>

		<guid isPermaLink="false">http://blog.henryong.com/?p=514</guid>
		<description><![CDATA[A little while back I was working with a customer that had a seemingly simple question&#8230; &#8220;How do I help my users transition from saving their collaborative documents in unstructured file shares to a more structured environment in SharePoint?&#8221; I thought to myself&#8230; &#8220;Well, before we let the masses start saving stuff to SharePoint, we [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=514&subd=henryong&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A little while back I was working with a customer that had a seemingly simple question&#8230;<strong> &#8220;How do I help my users transition from saving their collaborative documents in unstructured file shares to a more structured environment in SharePoint?&#8221; </strong></p>
<p>I thought to myself&#8230;<strong> &#8220;Well, before we let the masses start saving stuff to SharePoint, we should go over information architecture, taxonomy, governance, retention policies, quotas&#8230;. that&#8217;s quite a bit to chew&#8230; and will probably confuse the heck out of this guy I&#8217;m talking to&#8230;&#8221;</strong></p>
<p><strong>So I took a few seconds to mentally flip through some of the possible options:</strong></p>
<p><strong>1.</strong> Leave the file shares as is and trust that the users will slowly adopt SharePoint over time through evangelism. &#8220;Of course my users will start using SharePoint. They love adopting new technologies!&#8221;</p>
<p><strong>2. </strong>Physically migrate/relocate all the file shares into SharePoint sites. &#8220;Of course IT would gladly help migrate files and our users wouldn&#8217;t even know the difference. We&#8217;ll just set their homepages to SharePoint!&#8221;</p>
<p><strong>3.</strong> Make the file share read-only and force the users to save files to SharePoint. &#8220;Of course my users are troopers and wouldn&#8217;t mind going back and forth between 2 systems to get to their files!&#8221;</p>
<p>Did you sense the sarcasm?</p>
<p>Then I had an aha! moment and thought of something that I think is quite a feasible strategy for most organizations. This would also not put too much burden on any one part of the organization in particular. I kind of surprised myself for not thinking of this before. Enter the <strong>Page Viewer Web Part</strong>.</p>
<p><a href="http://henryong.files.wordpress.com/2010/07/pageviewerwebparttofileshare.png" target="_blank"><img class="aligncenter size-full wp-image-516" title="Page Viewer Web Part To File Share Thumbnail" src="http://henryong.files.wordpress.com/2010/07/pageviewerwebparttofilesharethumb.png?w=480&#038;h=316" alt="" width="480" height="316" /></a></p>
<p><strong>So here&#8217;s the game plan (Works with SharePoint 2010 as well by the way): </strong></p>
<p><strong>1.</strong> Start with a team or department that uses the file shares heavily and wants to believe that SharePoint will be good for them.</p>
<p><strong>2.</strong> Identify their branch of the file share and make it read only.</p>
<p><strong>3.</strong> Create one or more SharePoint sites for this department or team to collaborate on.</p>
<p><strong>4.</strong> Embed a Page Viewer Web Part to the page and point it to the appropriately defined file share branch using the &#8220;Folder&#8221; destination option.</p>
<p><a href="http://henryong.files.wordpress.com/2010/07/pageviewerwebparttofileshareoptions.png"><img class="aligncenter size-full wp-image-518" title="Page Viewer Web Part To File Share Options" src="http://henryong.files.wordpress.com/2010/07/pageviewerwebparttofileshareoptions.png?w=231&#038;h=333" alt="" width="231" height="333" /></a></p>
<p><strong>5.</strong> Now your users can use the SharePoint site to collaborate on all new stuff while at the same time be able to easily reference the &#8220;Archived&#8221; read-only documents very easily from the same exact site!</p>
<p><strong>6. </strong>If anyone needs to modify a document that was previously stored on the file share, then they can open the document through the Page Viewer Web Part (works just like an Explorer Window) and then &#8220;Save As&#8230;&#8221; to the SharePoint site that they are a member of. Pretty cool huh?</p>
<p><strong>Summary</strong></p>
<p>So this kind of game plan will not only help give your users a smooth transition from file shares to SharePoint but it also gives them the ability to work with both technologies side-by-side to be able to more easily see the benefits of using SharePoint. It also helps IT by not requiring them to manage a file migration project that could potentially turn into mega-sized content databases of purgatory from day 1. Once your users become acclimated with SharePoint, you can then introduce features like required metadata, content types and the like, slowly warming your users up to a more formal information architecture plan.</p>
<p>How&#8217;s that sound? Have you tried a similar plan to any success?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/henryong.wordpress.com/514/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/henryong.wordpress.com/514/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/henryong.wordpress.com/514/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/henryong.wordpress.com/514/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/henryong.wordpress.com/514/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/henryong.wordpress.com/514/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/henryong.wordpress.com/514/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/henryong.wordpress.com/514/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/henryong.wordpress.com/514/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/henryong.wordpress.com/514/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/henryong.wordpress.com/514/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/henryong.wordpress.com/514/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/henryong.wordpress.com/514/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/henryong.wordpress.com/514/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=514&subd=henryong&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.henryong.com/2010/07/08/a-strategy-for-migrating-documents-out-of-files-shares-and-into-sharepoint/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/38c243c201cb2794d67f6250ef1f7251?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">wolvie3421</media:title>
		</media:content>

		<media:content url="http://henryong.files.wordpress.com/2010/07/pageviewerwebparttofilesharethumb.png" medium="image">
			<media:title type="html">Page Viewer Web Part To File Share Thumbnail</media:title>
		</media:content>

		<media:content url="http://henryong.files.wordpress.com/2010/07/pageviewerwebparttofileshareoptions.png" medium="image">
			<media:title type="html">Page Viewer Web Part To File Share Options</media:title>
		</media:content>
	</item>
		<item>
		<title>How to Create Custom SharePoint 2010 Page Layouts using SharePoint Designer 2010</title>
		<link>http://blog.henryong.com/2010/06/08/how-to-create-custom-sharepoint-2010-page-layouts-using-sharepoint-designer-2010/</link>
		<comments>http://blog.henryong.com/2010/06/08/how-to-create-custom-sharepoint-2010-page-layouts-using-sharepoint-designer-2010/#comments</comments>
		<pubDate>Tue, 08 Jun 2010 22:23:57 +0000</pubDate>
		<dc:creator>Henry</dc:creator>
				<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Custom Page Layouts]]></category>
		<category><![CDATA[Enterprise Wiki]]></category>
		<category><![CDATA[SharePoint Designer]]></category>

		<guid isPermaLink="false">http://blog.henryong.com/?p=502</guid>
		<description><![CDATA[Becky Bertram has a nice post on how to create custom SharePoint 2010 Page Layouts via Visual Studio but my googling didn&#8217;t yield any walkthroughs on how to do this via SharePoint Designer. So let&#8217;s take a crack at this… Scenario: You&#8217;re working with the Enterprise Wiki Site Template and you don&#8217;t really like where [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=502&subd=henryong&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.beckybertram.com/Lists/Posts/Post.aspx?ID=71">Becky Bertram</a> has a nice post on how to create custom SharePoint 2010 Page Layouts via Visual Studio but my <a href="http://www.google.com/search?q=how+to+create+sharepoint+2010+page+layout&amp;ie=utf-8&amp;oe=utf-8&amp;aq=t&amp;rls=org.mozilla:en-US:official&amp;client=firefox-a">googling</a> didn&#8217;t yield any walkthroughs on how to do this via SharePoint Designer. So let&#8217;s take a crack at this…</p>
<h1><strong>Scenario:<br />
</strong></h1>
<p>You&#8217;re working with the Enterprise Wiki Site Template and you don&#8217;t really like where the &#8220;Last modified…&#8221; information is located (above the content). You want to move that information to the bottom of the page.</p>
<p><strong>Option 1:</strong> Modify the &#8220;EnterpriseWiki.aspx&#8221; Page Layout directly.</p>
<p><strong>Option 2:</strong> Create a new Page Layout based on the original one and then modify that one.</p>
<p><img class="alignnone" src="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate1.png?w=586&#038;h=410" alt="" width="586" height="410" /></p>
<p>We&#8217;ll go ahead and go with <strong>Option 2 </strong>since we don&#8217;t want to modify the out of the box template just in case we need it later on.</p>
<h1><strong>How To:<br />
</strong></h1>
<h2><strong>Step 1<br />
</strong></h2>
<p>Navigate to the top level site of the <strong>Site Collection &gt; Site Actions &gt; Site Settings &gt; Master pages (Under the Galleries section)</strong>. Then switch over to the Documents tab in the Ribbon and then click <strong>New &gt; Page Layout</strong>.</p>
<p><img class="alignnone" src="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate2.png?w=528&#038;h=437" alt="" width="528" height="437" /></p>
<h2><strong>Step 2<br />
</strong></h2>
<p>Select the Enterprise Wiki Page Content Type to associate with, give it a URL and Title. Note that there&#8217;s also a link on this page to create a new Content Type. You might be interested in doing this if you wanted to say, add more editing fields or metadata properties to the layout. For example if you wanted to add another Managed Metadata column to capture folksonomy aside from the already included &#8220;Wiki Categories&#8221; Managed Metadata column.</p>
<p><img class="alignnone" src="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate3.png?w=623&#038;h=660" alt="" width="623" height="660" /></p>
<h2><strong>Step 3<br />
</strong></h2>
<p>SharePoint Designer time! Hover over your newly created Page Layout and &#8220;Edit in Microsoft SharePoint Designer.&#8221;</p>
<p><img src="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate4.png?w=480" alt="" /></p>
<h2><strong>Step 4<br />
</strong></h2>
<p>Now you can choose to build your page manually by dragging your SharePoint Controls onto the page and laying them out as you&#8217;d like…</p>
<p><img class="alignnone" src="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate5.png?w=706&#038;h=645" alt="" width="706" height="645" /></p>
<p>… Or you can copy and paste the OOB Enterprise Wiki Page Layout. I think I&#8217;ll do that. <span style="font-family:Wingdings;"> <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </span></p>
<h2><strong>Step 5<br />
</strong></h2>
<p>Alright, so you&#8217;ve copied the contents of the EnterpriseWiki.aspx Page Layout and now it&#8217;s time for some customizing. I found the control I want to move, so I&#8217;ll simply do a copy or cut/paste to the new spot.</p>
<p><img src="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate6.png?w=480" alt="" /></p>
<h2><strong>Step 6<br />
</strong></h2>
<p>Check-in, publish, and approve the new Page Layout. Side note: I like to add the Check-In/Check-Out/Discard or Undo-Checkout buttons to all of my Office Applications&#8217; Quick Access Toolbars for convenience.</p>
<p><img src="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate7.png?w=480" alt="" /></p>
<h2><strong>Step 7<br />
</strong></h2>
<p>Almost there! Navigate to your publishing site, in this case the Enterprise Wiki Site, then go <strong>to Site Actions &gt; Site Settings &gt; Page layouts</strong> and site templates (Under Look and Feel). Here you&#8217;ll be able to make the new Page Layout available for use within the site.</p>
<p><img class="alignnone" src="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate8.png?w=900&#038;h=264" alt="" width="900" height="264" /></p>
<h2><strong>Step 8<br />
</strong></h2>
<p>Go back to your site and edit the page that you&#8217;d like to change the layout for. On the Page tab of the Ribbon, click on Page Layout and select your custom Page Layout.</p>
<p><img class="alignnone" src="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate9.png?w=533&#038;h=544" alt="" width="533" height="544" /></p>
<p>Et voila! You just created a custom Page Layout using SharePoint Designer 2010, re-arranged a SharePoint control and managed to plan for the future by not modifying the out of the box template. That was a really simple example but I hope it helped to give you some ideas on how else you can customize Page Layouts within SharePoint 2010!</p>
<p><img class="alignnone" src="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate10.png?w=472&#038;h=465" alt="" width="472" height="465" /></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/henryong.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/henryong.wordpress.com/502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/henryong.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/henryong.wordpress.com/502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/henryong.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/henryong.wordpress.com/502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/henryong.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/henryong.wordpress.com/502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/henryong.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/henryong.wordpress.com/502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/henryong.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/henryong.wordpress.com/502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/henryong.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/henryong.wordpress.com/502/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=502&subd=henryong&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.henryong.com/2010/06/08/how-to-create-custom-sharepoint-2010-page-layouts-using-sharepoint-designer-2010/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/38c243c201cb2794d67f6250ef1f7251?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">wolvie3421</media:title>
		</media:content>

		<media:content url="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate1.png" medium="image" />

		<media:content url="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate2.png" medium="image" />

		<media:content url="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate3.png" medium="image" />

		<media:content url="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate4.png" medium="image" />

		<media:content url="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate5.png" medium="image" />

		<media:content url="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate6.png" medium="image" />

		<media:content url="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate7.png" medium="image" />

		<media:content url="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate8.png" medium="image" />

		<media:content url="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate9.png" medium="image" />

		<media:content url="http://henryong.files.wordpress.com/2010/06/060810_2223_howtocreate10.png" medium="image" />
	</item>
		<item>
		<title>SharePoint Dev Error: Exception from HRESULT: 0x80040E14</title>
		<link>http://blog.henryong.com/2010/05/27/sharepoint-dev-error-exception-from-hresult-0x80040e14/</link>
		<comments>http://blog.henryong.com/2010/05/27/sharepoint-dev-error-exception-from-hresult-0x80040e14/#comments</comments>
		<pubDate>Thu, 27 May 2010 16:09:56 +0000</pubDate>
		<dc:creator>Henry</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SharePoint 2007]]></category>
		<category><![CDATA[SharePoint Development]]></category>
		<category><![CDATA[SharePoint Troubleshooting]]></category>

		<guid isPermaLink="false">http://blog.henryong.com/?p=485</guid>
		<description><![CDATA[I told myself I was going to stop blogging about SharePoint 2007 stuff but this one may apply to 2010 as well. And it took me and a cohort nearly 3 days to figure out. Scenario: The project is using MOSS 2007 as a Supply Chain Management Application Platform. A SharePoint data access layer (DAL) [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=485&subd=henryong&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I told myself I was going to stop blogging about SharePoint 2007 stuff but this one may apply to 2010 as well. And it took me and a cohort nearly 3 days to figure out.</p>
<h1><strong>Scenario:</strong></h1>
<p>The project is using MOSS 2007 as a Supply Chain Management Application Platform. A SharePoint data access layer (DAL) was built to speed development across the development teams so that they didn&#8217;t have to worry about the intricacies of working with the SharePoint object model. The data primarily resided within a single SharePoint list and consisted of ~80 columns and &gt; 100,000 list items. My part was to create a custom Edit/Display/Version History form web part that would render data according to custom user roles, rights, and various other criteria. For example, User A can see 50 fields, write to 10 fields and see 40 as read-only data. User B can see 20 fields, write to 5 fields and see the rest as read-only data. The custom web part also utilizes the DAL to update SharePoint list items with new data.</p>
<h1><strong>Problem:</strong></h1>
<p>Upon saving the data back to SharePoint using the custom DAL, the version history was incremented but none of the form data was being written back to the SharePoint list item. As we were debugging the issue, we came across the following exceptions and errors messages from Visual Studio and the SharePoint diagnostic logs.</p>
<p><strong>Exception from HRESULT: 0x80040E14</strong></p>
<p>Source = &#8220;Microsoft.SharePoint&#8221;</p>
<p>StackTrace = &#8220;   at Microsoft.SharePoint.Library.SPRequestInternalClass.AddOrUpdateItem(String bstrUrl, String bstrListName, Boolean bAdd, Boolean bSystemUpdate, Boolean bPreserveItemVersion, Boolean bUpdateNoVersion, Int32&amp; plID, String&amp; pbstrGuid, Guid pbstrNewDocId, &#8230;</p>
<p><strong>Windows SharePoint Services | Database | 6f8g | Unexpected</strong></p>
<p>Unexpected query execution failure, error code 8145. Additional error information from SQL Server is included below. &#8220;@tp_ID is not a parameter for procedure proc_UpdateListItem.&#8221; Query text (if available): &#8220;BEGIN TRAN;DECLARE @@iRet INT,@DN nvarchar(256),@LN nvarchar(128),@@S uniqueidentifier,@@Level tinyint,@@DocUIVersion int,@ExtraItemSize bigint;SET @@iRet = 0;SET @@S=&#8217;B1DA1F55-D16D-4E46-9FB8-F0B4795368EB&#8217;;SET @@Level=1;SET @@DocUIVersion = 512; SELECT @ExtraItemSize = 0 EXEC @@iRet = proc_UpdateListItem @SiteId=&#8217;B1DA1F55-D16D-4E46-9FB8-F0B4795368EB&#8217;,@WebId=&#8217;5ABC8FE7-112D-40A9-A2B7-F731F620F549&#8242;, @ListID = &#8217;37386B71-16F1-4EC4-BF4B-80B83F847F0E&#8217;, @ItemID=1759, @RowOrdinal = 0,@ReturnRowset = 1,@ItemDirName=@DN OUTPUT,@ItemLeafName=@LN OUTPUT,@UserId=1,@TimeNow = &#8217;20100527 15:09:30&#8242;,@Ma&#8230;</p>
<p><strong>Windows SharePoint Services | Database | 8e2s | Medium</strong></p>
<p>Unknown SPRequest error occurred. More information: 0x80040e14</p>
<h1><strong>Solution:</strong></h1>
<p>My unnamed cohort really gets the credit for this one. In the DAL, all the SPListItem field updates were referencing internal field names. For example:</p>
<p>SPListItem item = some item you get from SharePoint;<br />
item[internalFieldName] = &#8220;some value&#8221;;<br />
item.update();</p>
<p>Usually, that would work just fine and is typically the preferred method since often times the field display names can be changed through the user interface rendering your code useless. But it simply wouldn&#8217;t work in our situation. After modifying the DAL to update the items using the display names, everything worked as expected! What a cockeyed bugger right?</p>
<p>SPListItem item = some item you get from SharePoint;<br />
item[displayFieldName] = &#8220;some value&#8221;;<br />
item.update();</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/henryong.wordpress.com/485/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/henryong.wordpress.com/485/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/henryong.wordpress.com/485/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/henryong.wordpress.com/485/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/henryong.wordpress.com/485/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/henryong.wordpress.com/485/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/henryong.wordpress.com/485/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/henryong.wordpress.com/485/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/henryong.wordpress.com/485/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/henryong.wordpress.com/485/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/henryong.wordpress.com/485/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/henryong.wordpress.com/485/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/henryong.wordpress.com/485/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/henryong.wordpress.com/485/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=485&subd=henryong&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.henryong.com/2010/05/27/sharepoint-dev-error-exception-from-hresult-0x80040e14/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/38c243c201cb2794d67f6250ef1f7251?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">wolvie3421</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint 2010 Troubleshooting: 503 Service Unavailable, App Pool Shutdown</title>
		<link>http://blog.henryong.com/2010/04/24/sharepoint-2010-troubleshooting-503-service-unavailable-app-pool-shutdown/</link>
		<comments>http://blog.henryong.com/2010/04/24/sharepoint-2010-troubleshooting-503-service-unavailable-app-pool-shutdown/#comments</comments>
		<pubDate>Sun, 25 Apr 2010 00:16:00 +0000</pubDate>
		<dc:creator>Henry</dc:creator>
				<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SharePoint Troubleshooting]]></category>

		<guid isPermaLink="false">http://blog.henryong.com/?p=474</guid>
		<description><![CDATA[Environment: SharePoint 2010 Enterprise RTM Windows Server 2008 R2 Domain Description: I chose not to use the Farm Configuration Wizard, but instead create my web applications manually. 1. Created a new Web Application. 2. Added a new managed service account. 3. Created a new application pool for this web app. 4. Created a Site Collection [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=474&subd=henryong&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2><strong>Environment</strong>:</h2>
<p>SharePoint 2010 Enterprise RTM<br />
Windows Server 2008 R2 Domain</p>
<h2><strong>Description: </strong></h2>
<p>I chose not to use the Farm Configuration Wizard, but instead create my web applications manually.</p>
<p>1. Created a new Web Application.<br />
2. Added a new managed service account.<br />
3. Created a new application pool for this web app.<br />
4. Created a Site Collection for this web app.</p>
<h2>Error Messages:</h2>
<p>The following error occurs when trying to launch the newly created Site Collection:</p>
<p><strong>HTTP Error 503. The service in unavailable.</strong></p>
<p>The application pool is shutdown and the Event Viewer indicates:</p>
<p>Log Name:      Application<br />
Source:        Microsoft-Windows-User Profiles Service<br />
Date:          4/24/2010 4:58:28 PM<br />
Event ID:      1500<br />
Task Category: None<br />
Level:         Error<br />
Keywords:<br />
User:          GUERILLA\spapppool<br />
Computer:      SPS2010RTM.guerilla.local<br />
Description:<br />
Windows cannot log you on because your profile cannot be loaded. Check that you are connected to the network, and that your network is functioning correctly.</p>
<p>DETAIL &#8211; Unspecified error</p>
<h2><strong>Observations</strong>:</h2>
<p>Seems like the application pool was having trouble loading the user profile for the service account. Since I had never logged on locally with the service account before, it was unable to find a user profile for it (C:\Users\).</p>
<h2>Resolutions:</h2>
<p><strong>Option 1</strong> &#8211; Log on locally with the service account once to create a local profile for it.</p>
<p><strong>Option 2</strong> &#8211; Modify the application pool by going into IIS &gt; Application Pools &gt; Right-Click offending app pool &gt; Advanced Settings &gt; <strong>Set &#8220;Load User Profile&#8221; to False.</strong></p>
<h2>Side Effects?</h2>
<p>Haven&#8217;t seen any yet&#8230; Not sure if SharePoint service accounts need to have local user profiles for anything in particular.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/henryong.wordpress.com/474/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/henryong.wordpress.com/474/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/henryong.wordpress.com/474/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/henryong.wordpress.com/474/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/henryong.wordpress.com/474/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/henryong.wordpress.com/474/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/henryong.wordpress.com/474/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/henryong.wordpress.com/474/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/henryong.wordpress.com/474/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/henryong.wordpress.com/474/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/henryong.wordpress.com/474/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/henryong.wordpress.com/474/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/henryong.wordpress.com/474/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/henryong.wordpress.com/474/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=474&subd=henryong&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.henryong.com/2010/04/24/sharepoint-2010-troubleshooting-503-service-unavailable-app-pool-shutdown/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/38c243c201cb2794d67f6250ef1f7251?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">wolvie3421</media:title>
		</media:content>
	</item>
		<item>
		<title>Automated SharePoint 2007 Farm Configuration Batch File</title>
		<link>http://blog.henryong.com/2010/04/23/automated-sharepoint-2007-farm-configuration-batch-file/</link>
		<comments>http://blog.henryong.com/2010/04/23/automated-sharepoint-2007-farm-configuration-batch-file/#comments</comments>
		<pubDate>Sat, 24 Apr 2010 04:48:44 +0000</pubDate>
		<dc:creator>Henry</dc:creator>
				<category><![CDATA[SharePoint 2007]]></category>
		<category><![CDATA[Automation]]></category>
		<category><![CDATA[Build Script]]></category>
		<category><![CDATA[PSCONFIG]]></category>

		<guid isPermaLink="false">http://blog.henryong.com/?p=470</guid>
		<description><![CDATA[This one&#8217;s been sitting in my queue for a few weeks, hopefully it could still be of value to people out there still building out MOSS 2007 farms. I think this script took me roughly a week to put together and pretty much configures a farm just the way I like it. Now only if [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=470&subd=henryong&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This one&#8217;s been sitting in my queue for a few weeks, hopefully it could still be of value to people out there still building out MOSS 2007 farms. I think this script took me roughly a week to put together and pretty much configures a farm just the way I like it. Now only if I had done this earlier in the product cycle&#8230;Anyways, much thanks to those that came before me and also to <a href="http://stsadm.blogspot.com/2009/02/downloads.html" target="_blank">Gary Lapointe for his custom STSADM commands</a> which my script does leverage for a couple of things. This will also probably be my last post about WSSv3/MOSS 2007. From here on out, it&#8217;s 2010 stuff baby!</p>
<p><a href="http://henryong.com/psconfig.bat" target="_blank">Download batch file here</a>.</p>
<p>Or scan the script below&#8230;</p>
<p>::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::<br />
:: Requires Gary Lapointe&#8217;s STSADM Extensions for complete automation.<br />
:: Place his WSP package into the %UtilitySolutions% directory.<br />
:: http://stsadm.blogspot.com/2009/02/downloads.html<br />
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;Start Variables&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; Set Tools &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
set SPLocation=&#8221;%CommonProgramFiles%\Microsoft Shared\web server extensions\12&#8243;<br />
set STSADM=%SPLocation%\BIN\stsadm.exe<br />
set PSCONFIG=%SPLocation%\BIN\psconfig.exe<br />
set UtilitySolutions=C:\temp<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::::::::::::::::::::::::::::::::::::::::::::::::::::<br />
:::::::: Set SharePoint Farm Configurations ::::::::<br />
::::::::::::::::::::::::::::::::::::::::::::::::::::<br />
::&#8212;&#8212;&#8212;&#8212;&#8211; Server Names&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
set SQLServerName=YourSQLInstanceInstanceName<br />
set SPWebFrontEndName=YourSharePointWebFrontEndServerName<br />
set SPSearchIndex=YourSharePointIndexServerName<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8211; Web application ports &#8212;&#8212;&#8212;&#8211;::<br />
::&#8212;&#8212;&#8211; These ports are configurable &#8212;&#8212;&#8212;-::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
set SPCentralAdminPort=90<br />
set SPSSPPort=91<br />
set SPMySitePort=81<br />
set DefaultApplicationPort=80<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;- Shared Services Provider Configurations &#8212;::<br />
:: You can leave most of these alone except for the index location ::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
set SPSSPName=SharedServices1<br />
set SPSSPUrl=http://%SPWebFrontEndName%:%SPSSPPort%<br />
set SPSSPWebAppName=&#8221;Shared Services Provider&#8221;<br />
set SPSSPDescription=&#8221;SSP Host&#8221;<br />
set SSPApplicationPoolName=&#8221;SharedServices1&#8243;<br />
set SPSearchIndexLocation=c:\temp\spsearchindexes<br />
mkdir %SPSearchIndexLocation%<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212; Database Names &#8212;&#8212;&#8212;&#8212;&#8212;&#8211;::<br />
:: Change if you want or leave them as they are   ::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
set SPConfigDatabaseName=SharePoint_Config<br />
set SPConfigContentDB=SharePoint_CentralAdmin_Content<br />
set SPSearchDatabaseName=WSS_Search<br />
set SPSSPConfigDatabaseName=%SPSSPName%_Config_DB<br />
set SPSSPDatabaseName=%SPSSPName%_DB<br />
set SPSSPSearchDatabaseName=%SPSSPName%_Search_DB<br />
set SPMySiteContentDBName=WSS_Content_MySites<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8211; Central Admin Configurations &#8212;&#8212;&#8212;-::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8211; Email Settings &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
set SPSearchContactEmail=email@emailcom<br />
set SPOutboundSMTPServer=email@emailcom<br />
set SPOutboundEmailFrom=email@emailcom<br />
set SPReplyToEmail=email@emailcom<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;&#8212;&#8212;&#8212;- Search Settings &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
set SPSearchIndexPerformance=Reduced<br />
:: Your options: &lt; Reduced | PartlyReduced | Maximum &gt;</p>
<p>set SPSearchRole=indexquery<br />
:: Your options: &lt; Index | Query | IndexQuery &gt;<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;&#8212;&#8212;&#8212;- Diagnostic Logging &#8212;&#8212;&#8212;&#8212;&#8212;::<br />
set SPDiagnosticLoggingThrottle=Verbose<br />
:: Your options: &lt; None | Unexpected | Monitorable | High | Medium | Verbose &gt;</p>
<p>:: You can change this directory if you want<br />
set SPDiagnosticLoggingDirectory=c:\temp\spdiagnostics<br />
mkdir %SPDiagnosticLoggingDirectory%</p>
<p>set SPDiagnosticLoggingFileCount=10<br />
:: Your options: &lt;0-1024&gt;</p>
<p>set SPDiagnosticLoggingFileMinutes=30<br />
:: Your options: &lt;0-1440&gt;<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;&#8212;&#8212;&#8212; Usage Analysis Settings &#8212;&#8212;&#8212;&#8211;::</p>
<p>:: You can change this directory if you want<br />
set SPUsageAnalysisLogFileLocation=c:\temp\spusageanalysis</p>
<p>mkdir %SPUsageAnalysisLogFileLocation%<br />
set SPUSageAnalysisLogFileCount=1<br />
:: Your options: &lt;0-30&gt;</p>
<p>set SPUsageAnalysisJobStartTime=2:00AM<br />
set SPUsageAnalysisJobEndTime=3:00AM<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212; Main Content Web App Configurations &#8212;&#8211;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
IF /i %DefaultApplicationPort%==80 (set OOBApplicationURL=http://%SPWebFrontEndName%) ELSE (set OOBApplicationURL=http://%SPWebFrontEndName%:%DefaultApplicationPort%)<br />
ECHO Default web application port is %DefaultApplicationPort%</p>
<p>:: Optional Alternate Access Mapping configurations<br />
::set NewAlternateAccessMapping=http://test<br />
::set NewAlternateAccessMappingZone=Default<br />
:: &lt;Default | Intranet | Internet | Extranet | Custom&gt;<br />
:: More AAM settings can be added here if necessary</p>
<p>set WebApplicationOwner=domain\henry.ong<br />
set WebApplicationOwnerEmail=email@email.com<br />
set WebApplicationOwnerDisplayName=&#8221;Henry Ong&#8221;<br />
set SPSiteTitle=&#8221;Collaboration Portal&#8221;<br />
set SPSiteDecription=&#8221;This is a description for your site collection.&#8221;<br />
set ApplicationPoolName=&#8221;Application Pool Name for this Web App&#8221;<br />
set SPContentDBName=WSS_Content_AppName</p>
<p>set SPSiteTemplate=SPSPORTAL#0</p>
<p>:: Possible templates listed below<br />
:: GLOBAL (Placeholder, no template)<br />
:: STS#0 (Team Site)<br />
:: STS#1 (Blank Site)<br />
:: STS#2 (Document Workspace)<br />
:: MPS#0 (Basic Meeting Workspace)<br />
:: MPS#1 (Blank Meeting Workspace)<br />
:: MPS#2 (Descision Meeting Workspace)<br />
:: MPS#3 (Social Meeting Workspace)<br />
:: MPS#4 (Multipage Meeting Workspace)<br />
:: CENTRALADMIN#0 (Central Administration)<br />
:: WIKI#0 (Wiki Site)<br />
:: BLOG#0 (Blog Site)<br />
:: BDR#0 (Document Center)<br />
:: OFFILE#1 (Records Center)<br />
:: OSRV#0 (Shared Services Administration Site)<br />
:: SPSPERS#0 (SharePoint Portal Server Personal Space ? Obsolete ?)<br />
:: SPSMSITE#0 (Personalization Site)<br />
:: CMSPUBLISHING#0 (Publishing Site)<br />
:: BLANKINTERNET#0 (Publishing Site)<br />
:: BLANKINTERNET#1 (Press Releases Site)<br />
:: BLANKINTERNET#2 (Publishing Site with workflow)<br />
:: SPSNHOME#0 (News Site)<br />
:: SPSSITES#0 (Site Directory)<br />
:: SPSREPORTCENTER#0 (Report Center)<br />
:: SPSPORTAL#0 (Collaboration Portal)<br />
:: SRCHCEN#0 (Search Center with Tabs)<br />
:: PROFILES#0 (Profiles)<br />
:: BLANKINTERNETCONTAINER#0 (Publishing Portal)<br />
:: SPSMSITEHOST#0 (My Site Host)<br />
:: SRCHCENTERLITE#0 (Search Center)<br />
:: SRCHCENTERLITE#1 (Search Center)</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212; My Site Configurations &#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
set CreateNewWebApp=false<br />
:: Your options: &lt;true | false&gt;<br />
:: False will create the My Site under your default web app configured above.</p>
<p>set MySiteApplicationURL=http://%SPWebFrontEndName%:%SPMySitePort%<br />
::set MySiteAlternateAccessMapping=http://mysite******<br />
::set MySiteAlternateAccessMappingZone=Default ******<br />
:: Your options: &lt;Default | Intranet | Internet | Extranet | Custom&gt;<br />
:: More AAM settings can be added if necessary</p>
<p>set MySiteWebApplicationOwner=domain\henry.ong<br />
set MySiteWebApplicationOwnerEmail=email@email.com<br />
set MySiteWebApplicationOwnerDisplayName=&#8221;Henry Ong&#8221;<br />
set SPMySiteTemplate=SPSMSITEHOST#0<br />
set SPMySiteSiteDecription=&#8221;My Site Host&#8221;<br />
set MySiteApplicationPoolName=&#8221;My Sites&#8221;<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212; Set SharePoint Service Accounts &#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212; All Configurable &#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
set ServiceAccountSPFarm=domain\spdbaccess<br />
set ServiceAccountSPFarmPassword=password</p>
<p>set ServiceAccountSSP=domain\spssp<br />
set ServiceAccountSSPPassword=password</p>
<p>set ServiceAccountSPSearch=domain\spsearch<br />
set ServiceAccountSPSearchPassword=password</p>
<p>set ServiceAccountContentAccess=domain\spcontentaccess<br />
set ServiceAccountContentAccessPassword=password</p>
<p>set ServiceAccountMySite=domain\spmysite<br />
set ServiceAccountMySitePassword=password</p>
<p>set ServiceAccountApplicationAppPool=domain\spapppool<br />
set ServiceAccountApplicationAppPoolPassword=password</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-:: END VARIABLES ::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;.&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
:: Creating Central Administration<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
ECHO &#8220;Create Central Admin&#8221;</p>
<p>%PSCONFIG% -cmd configdb -create -server %SQLServerName% -database %SPConfigDatabaseName% -user %ServiceAccountSPFarm% -password %ServiceAccountSPFarmPassword% -admincontentdatabase %SPConfigContentDB%</p>
<p>%PSCONFIG% -cmd helpcollections -installall</p>
<p>%PSCONFIG% -cmd secureresources</p>
<p>%PSCONFIG% -cmd services -install</p>
<p>:: Use this if activating all the farm services on this server<br />
::%PSCONFIG% -cmd services -provision</p>
<p>%PSCONFIG% -cmd installfeatures</p>
<p>%PSCONFIG% -cmd adminvs -provision -port %SPCentralAdminPort% -windowsauthprovider onlyusentlm</p>
<p>%PSCONFIG% -cmd applicationcontent -install<br />
ECHO &#8220;Finished creating Central Admin&#8230;&#8221;</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
:: Configuring Central Administration<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
ECHO &#8220;Configuring Central Admin&#8230;&#8221;</p>
<p>%STSADM% -o addsolution -filename %UtilitySolutions%\Lapointe.SharePoint.STSADM.Commands.wsp<br />
%STSADM% -o deploysolution -name Lapointe.SharePoint.STSADM.Commands.wsp -immediate -allowgacdeployment<br />
%STSADM% -o execadmsvcjobs<br />
%STSADM% -o spsearch -action start -farmperformancelevel %SPSearchIndexPerformance% -farmserviceaccount %ServiceAccountSPSearch% -farmservicepassword %ServiceAccountSPSearchPassword% -farmcontentaccessaccount %ServiceAccountContentAccess% -farmcontentaccesspassword %ServiceAccountContentAccessPassword% -databaseserver %SQLServerName% -databasename %SPSearchDatabaseName%<br />
%STSADM% -o osearch -action start -role %SPSearchRole% -farmcontactemail %SPSearchContactEmail% -farmperformancelevel %SPSearchIndexPerformance% -farmserviceaccount %ServiceAccountSPSearch% -farmservicepassword %ServiceAccountSPSearchPassword%<br />
%STSADM% -o email -outsmtpserver %SPOutboundSMTPServer% -fromaddress %SPOutboundEmailFrom% -replytoaddress %SPReplyToEmail% -codepage 65001<br />
%STSADM% -o setlogginglevel -tracelevel %SPDiagnosticLoggingThrottle%<br />
%STSADM% -o gl-tracelog -logdirectory %SPDiagnosticLoggingDirectory% -logfilecount %SPDiagnosticLoggingFileCount% -logfileminutes %SPDiagnosticLoggingFileMinutes%<br />
ECHO &#8220;Finished configuring Central Admin&#8230;&#8221;</p>
<p>IISRESET /STOP /NOFORCE<br />
IISRESET /START</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
:: Create Initial Application Web App<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
ECHO &#8220;Creating initial web application portal&#8230;&#8221;</p>
<p>%STSADM% -o extendvs -url %OOBApplicationURL% -ownerlogin %WebApplicationOwner% -owneremail %WebApplicationOwnerEmail% -exclusivelyusentlm -ownername %WebApplicationOwnerDisplayName% -databaseserver %SQLServerName% -databasename %SPContentDBName% -donotcreatesite -description %SPSiteDecription% -apidname %ApplicationPoolName% -apidtype configurableid -apidlogin %ServiceAccountApplicationAppPool% -apidpwd %ServiceAccountApplicationAppPoolPassword%<br />
%STSADM% -o createsite -url %OOBApplicationURL% -owneremail %WebApplicationOwnerEmail% -ownerlogin %WebApplicationOwner% -ownername %WebApplicationOwnerDisplayName% -sitetemplate %SPSiteTemplate% -title %SPSiteTitle% -description %SPSiteDecription%<br />
ECHO &#8220;Finished creating initial web application portal&#8230;&#8221;</p>
<p>::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
:: Create My Site Web App<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
ECHO &#8220;Creating My Site Host&#8230;&#8221;</p>
<p>IF /i %CreateNewWebApp%==true (goto CreateNewMySiteWebApp) ELSE (goto CreateNewMySiteExistingWebApp)</p>
<p>:CreateNewMySiteWebApp<br />
ECHO &#8220;Creating new My Site Web App&#8221;<br />
%STSADM% -o extendvs -url %MySiteApplicationURL% -ownerlogin %MySiteWebApplicationOwner% -owneremail %MySiteWebApplicationOwnerEmail% -exclusivelyusentlm -ownername %MySiteWebApplicationOwnerDisplayName% -databaseserver %SQLServerName% -databasename %SPMySiteContentDBName% -sitetemplate %SPMySiteTemplate% -description %SPMySiteSiteDecription% -apidname %MySiteApplicationPoolName% -apidtype configurableid -apidlogin %ServiceAccountMySite% -apidpwd %ServiceAccountMySitePassword%<br />
%STSADM% -o enablessc -url %MySiteApplicationURL%<br />
set MySiteURL=%MySiteApplicationURL%<br />
ECHO &#8220;Finished Creating My Site Host&#8230;&#8221;</p>
<p>GOTO SSP</p>
<p>:CreateNewMySiteExistingWebApp<br />
ECHO &#8220;Creating My Site Host using existing web app&#8221;<br />
%STSADM% -o addpath -url %OOBApplicationURL%/MySites -type explicitinclusion<br />
:: &lt;ExplicitInclusion | WildcardInclusion&gt;<br />
%STSADM% -o enablessc -url %OOBApplicationURL%/MySites</p>
<p>%STSADM% -o createsite -url %OOBApplicationURL%/MySites -oe %MySiteWebApplicationOwnerEmail% -ol %MySiteWebApplicationOwner% -on %MySiteWebApplicationOwnerDisplayName% -lcid 1033 -st %SPMySiteTemplate% -t %SPMySiteSiteDecription% -desc %SPMySiteSiteDecription%<br />
set MySiteURL=%OOBApplicationURL%/MySites/<br />
ECHO &#8220;Finished Creating My Site Host&#8230;&#8221;</p>
<p>GOTO SSP</p>
<p>:SSP<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
:: Create SSP<br />
::&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;::<br />
ECHO &#8220;Creating SSP&#8230;&#8221;<br />
%STSADM% -o extendvs -url %SPSSPUrl% -exclusivelyusentlm -databaseserver %SQLServerName% -databasename %SPSSPDatabaseName% -donotcreatesite -description %SPSSPWebAppName% -apidname %SSPApplicationPoolName% -apidtype configurableid -apidlogin %ServiceAccountSSP% -apidpwd %ServiceAccountSSPPassword%</p>
<p>IISRESET /STOP /NOFORCE<br />
IISRESET /START</p>
<p>%STSADM% -o createssp -title %SPSSPName% -url %SPSSPUrl% -mysiteurl %MySiteURL% -ssplogin %ServiceAccountSSP% -indexserver %SPSearchIndex% -indexlocation %SPSearchIndexLocation% -ssppassword %ServiceAccountSSPPassword% -sspdatabaseserver %SQLServerName% -sspdatabasename %SPSSPConfigDatabaseName% -searchdatabaseserver %SQLServerName% -searchdatabasename %SPSSPSearchDatabaseName% -ssl no<br />
ECHO &#8220;Finished Creating SSP&#8230;&#8221;</p>
<p>ECHO &#8220;Ignore Syntax error messages if not using alternate access mapping configurations in this script.&#8221;</p>
<p>%STSADM% -o gl-setusageanalysis -enablelogging true -enableusageprocessing true -logfilelocation %SPUsageAnalysisLogFileLocation% -numberoflogfiles %SPUSageAnalysisLogFileCount% -processingstarttime %SPUsageAnalysisJobStartTime% -processingendtime %SPUsageAnalysisJobEndTime% -sspname %SPSSPName% -enableadvancedprocessing true -enablequerylogging true<br />
%STSADM% -o addalternatedomain -url %OOBApplicationURL% -incomingurl %NewAlternateAccessMapping% -urlzone %NewAlternateAccessMappingZone%<br />
%STSADM% -o addzoneurl -url %NewAlternateAccessMapping% -urlzone %NewAlternateAccessMappingZone% -zonemappedurl %NewAlternateAccessMapping%</p>
<p>ECHO Done!<br />
PAUSE</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/henryong.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/henryong.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/henryong.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/henryong.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/henryong.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/henryong.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/henryong.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/henryong.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/henryong.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/henryong.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/henryong.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/henryong.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/henryong.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/henryong.wordpress.com/470/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=470&subd=henryong&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.henryong.com/2010/04/23/automated-sharepoint-2007-farm-configuration-batch-file/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/38c243c201cb2794d67f6250ef1f7251?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">wolvie3421</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint Active Directory FBA Configuration References</title>
		<link>http://blog.henryong.com/2010/03/19/sharepoint-active-directory-fba-configuration-references/</link>
		<comments>http://blog.henryong.com/2010/03/19/sharepoint-active-directory-fba-configuration-references/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 17:56:07 +0000</pubDate>
		<dc:creator>Henry</dc:creator>
				<category><![CDATA[SharePoint 2007]]></category>
		<category><![CDATA[Active Directory Membership providers]]></category>
		<category><![CDATA[Forms based authentication]]></category>
		<category><![CDATA[LDAP membership providers]]></category>

		<guid isPermaLink="false">http://blog.henryong.com/?p=458</guid>
		<description><![CDATA[Just some personal reference so I don&#8217;t have to go hunting for this stuff again. Nothing to see here folks&#8230; move steadily along&#8230; single file please&#8230; Using Active Directory as the membership store via 2 different methods simultaneously - System.Web.Security.ActiveDirectoryMembershipProvider &#38; Microsoft.Office.Server.Security.LdapMembershipProvider Assumptions: MOSS 2007 Farm Configured Port 80: Initial NTLM Web Application and Site [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=458&subd=henryong&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Just some personal reference so I don&#8217;t have to go hunting for this stuff again. Nothing to see here folks&#8230; move steadily along&#8230; single file please&#8230;</p>
<p>Using Active Directory as the membership store via 2 different methods simultaneously -</p>
<p><strong>System.Web.Security.ActiveDirectoryMembershipProvider &amp; Microsoft.Office.Server.Security.LdapMembershipProvider</strong></p>
<p><strong>Assumptions: </strong><br />
MOSS 2007 Farm Configured<br />
Port 80: Initial NTLM Web Application and Site Collection configured.<br />
Port 81: ActiveDirectoryMembershipProvider.<br />
Port 82: LDAPMembershipProvider.</p>
<p><strong>Step 1: Extend Port 80 to Port 81 &amp; Port 82</strong></p>
<p><strong>Step 2: Update the web.config for port 81</strong> <strong>(ActiveDirectoryMembershipProvider)</strong><br />
<strong>Add the connection string settings to anywhere with the &lt;configuration&gt; section. </strong></p>
<pre>&lt;configuration&gt;
...
&lt;connectionStrings&gt;
&lt;add connectionString="LDAP://DomainController.local/DC=DomainController,DC=local"
name="ADConnection"/&gt;
&lt;/connectionStrings&gt;
...
&lt;/configuration&gt;
</pre>
<p><strong>Within &lt;system.web&gt; add the following:</strong></p>
<pre>&lt;system.web&gt;
...
&lt;membership defaultProvider="ADMembershipProvider"&gt;
 &lt;providers&gt;
 &lt;add name="ADMembershipProvider"
type="System.Web.Security.ActiveDirectoryMembershipProvider,
System.Web,
Version=2.0.0.0,
Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="ADConnection"
connectionUsername="domain\account"
connectionPassword="password"
attributeMapUsername="SAMAccountName"/&gt;
 &lt;/providers&gt;
&lt;/membership&gt;
...
&lt;/system.web&gt;
</pre>
<p><strong>Step 3: Update the web.config for port 82 (LDAPMembershipProvider)</strong></p>
<p><strong>Within &lt;system.web&gt; add the following:</strong></p>
<p>&lt;system.web&gt;</p>
<pre>...
&lt;membership defaultProvider="LDAPProvider"&gt;
 &lt;providers&gt;
 &lt;add name="LDAPProvider"
type="Microsoft.Office.Server.Security.LdapMembershipProvider,
Microsoft.Office.Server,
Version=12.0.0.0,
Culture=neutral,
PublicKeyToken=71e9bce111e9429c"
server="yourDomain.local"
port="389"
useSSL="false"
userDNAttribute="distinguishedName"
userNameAttribute="SAMAccountName"
userContainer="DC=yourDomain,DC=local"
userObjectClass="person"
userFilter="(|(ObjectCategory=group)(ObjectClass=person))"
scope="Subtree"
otherRequiredUserAttributes="sn,givenname,cn" /&gt;
 &lt;/providers&gt;
&lt;/membership&gt;
...
&lt;/system.web&gt;
</pre>
<p><strong>Step 4: Update the web.config for Central Administration</strong></p>
<p><strong>Add the connection string settings to anywhere with the  &lt;configuration&gt; section. </strong></p>
<pre>&lt;configuration&gt;
...</pre>
<pre>&lt;connectionStrings&gt;</pre>
<pre>&lt;add connectionString="LDAP://DomainController.local/DC=DomainController,DC=local"
name="ADConnection"/&gt;
&lt;/connectionStrings&gt;
...
&lt;/configuration&gt;
</pre>
<p><strong>Within &lt;system.web&gt; add the following:</strong></p>
<pre>&lt;system.web&gt;
...
&lt;membership&gt;
 &lt;providers&gt;
 &lt;add name="ADMembershipProvider"
type="System.Web.Security.ActiveDirectoryMembershipProvider,
System.Web, Version=2.0.0.0,
Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="ADConnection"
connectionUsername="domain\account"
connectionPassword="password"
attributeMapUsername="SAMAccountName"/&gt;

 &lt;add name="LDAPProvider"
type="Microsoft.Office.Server.Security.LdapMembershipProvider,
Microsoft.Office.Server,
Version=12.0.0.0,
Culture=neutral,
PublicKeyToken=71e9bce111e9429c"
server="yourDomain.local"
port="389"
useSSL="false"
userDNAttribute="distinguishedName"
userNameAttribute="SAMAccountName"
userContainer="DC=yourDomain,DC=local"
userObjectClass="person"
userFilter="(|(ObjectCategory=group)(ObjectClass=person))"
scope="Subtree"
otherRequiredUserAttributes="sn,givenname,cn" /&gt;
 &lt;/providers&gt;
&lt;/membership&gt;
...
&lt;/system.web&gt;
</pre>
<p><strong>Step 5: Update Central Administration Settings</strong></p>
<p>Go to Central Administration &gt; Application Management<strong> </strong>&gt; Authentication Providers &gt; Adjust the Membership Provider Names to match your providers. In this case, the zone representing port 81would utilize &#8220;ADMembershipProvider&#8221; and the zone representing port 82 would utilize &#8220;LDAPProvider&#8221;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/henryong.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/henryong.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/henryong.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/henryong.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/henryong.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/henryong.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/henryong.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/henryong.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/henryong.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/henryong.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/henryong.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/henryong.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/henryong.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/henryong.wordpress.com/458/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=458&subd=henryong&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.henryong.com/2010/03/19/sharepoint-active-directory-fba-configuration-references/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/38c243c201cb2794d67f6250ef1f7251?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">wolvie3421</media:title>
		</media:content>
	</item>
		<item>
		<title>Configure unique outgoing email settings per SharePoint web application</title>
		<link>http://blog.henryong.com/2010/03/14/configure-unique-outgoing-email-settings-per-sharepoint-web-application/</link>
		<comments>http://blog.henryong.com/2010/03/14/configure-unique-outgoing-email-settings-per-sharepoint-web-application/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 19:36:35 +0000</pubDate>
		<dc:creator>Henry</dc:creator>
				<category><![CDATA[SharePoint 2007]]></category>
		<category><![CDATA[Email Settings]]></category>
		<category><![CDATA[STSADM]]></category>

		<guid isPermaLink="false">http://blog.henryong.com/?p=452</guid>
		<description><![CDATA[Here&#8217;s something new that I just came across as I was trolling STSADM documentation&#8230; Did you know that you can set unique outgoing email settings per web application in SharePoint? Well, you probably didn&#8217;t because there&#8217;s no configuration page for it in Central Administration (there&#8217;s a config page that applies the outgoing email settings globally, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=452&subd=henryong&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s something new that I just came across as I was trolling<a href="http://technet.microsoft.com/en-us/library/cc261956.aspx" target="_blank"> STSADM documentation</a>&#8230; Did you know that you can set unique outgoing email settings per web application in SharePoint? Well, you probably didn&#8217;t because there&#8217;s no configuration page for it in Central Administration (there&#8217;s a config page that applies the outgoing email settings globally, not per web app).</p>
<p><strong>What are some use cases for this?</strong></p>
<ul>
<li>Maybe you have a different web app per business unit and you want to have each web app send emails from different addresses. Examples:
<ul>
<li>SharePoint emails from Accounting department comes from <a href="mailto:accounting@company.com">accounting@company.com</a> while emails from Human Resources come from <a href="mailto:hr@company.com">hr@company.com</a>. The same configuration options are available for the reply-to addresses.</li>
</ul>
</li>
<li>Maybe you have some multi-tenancy going on in your environment and you want each web app to send SharePoint emails through unique SMTP servers.
<ul>
<li>You can configure one tenant&#8217;s web app to send mail through one SMTP server while another tenant&#8217;s uses another SMTP server.</li>
</ul>
</li>
</ul>
<p><a href="http://technet.microsoft.com/en-us/library/cc261681.aspx" target="_blank">Magical STSADM command:<br />
</a><strong>stsadm -o email -outsmtpserver mail.example.com -fromaddress someone@example.com -replytoaddress someone@example.com -codepage 65001 -url </strong><a href="http://web_app_url"><strong>http://web_app_url</strong></a></p>
<p><strong> </strong></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/henryong.wordpress.com/452/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/henryong.wordpress.com/452/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/henryong.wordpress.com/452/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/henryong.wordpress.com/452/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/henryong.wordpress.com/452/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/henryong.wordpress.com/452/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/henryong.wordpress.com/452/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/henryong.wordpress.com/452/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/henryong.wordpress.com/452/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/henryong.wordpress.com/452/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/henryong.wordpress.com/452/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/henryong.wordpress.com/452/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/henryong.wordpress.com/452/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/henryong.wordpress.com/452/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=452&subd=henryong&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.henryong.com/2010/03/14/configure-unique-outgoing-email-settings-per-sharepoint-web-application/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/38c243c201cb2794d67f6250ef1f7251?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">wolvie3421</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint Workflow &amp; BPM Vendor Comparison Chart</title>
		<link>http://blog.henryong.com/2010/02/20/sharepoint-workflow-bpm-vendor-comparison-chart/</link>
		<comments>http://blog.henryong.com/2010/02/20/sharepoint-workflow-bpm-vendor-comparison-chart/#comments</comments>
		<pubDate>Sun, 21 Feb 2010 07:42:44 +0000</pubDate>
		<dc:creator>Henry</dc:creator>
				<category><![CDATA[BPM]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Workflow]]></category>
		<category><![CDATA[SharePoint Workflow]]></category>
		<category><![CDATA[SharePoint BPM]]></category>
		<category><![CDATA[SharePoint 3rd Party Comparisons]]></category>

		<guid isPermaLink="false">http://blog.henryong.com/?p=437</guid>
		<description><![CDATA[I had every intention of going into each of these software packages in much greater detail but as I started unwrapping these packages, I quickly found out that doing so is no easy task. There is so much depth to all of these products that I would simply not do any of them justice without [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=437&subd=henryong&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I had every intention of going into each of these software packages in much greater detail but as I started unwrapping these packages, I quickly found out that doing so is no easy task. There is so much depth to all of these products that I would simply not do any of them justice without spending an inordinate amount of time becoming deeply familiar with each and every one of them. So instead, I&#8217;ll capture whatever notes I&#8217;ve come up with here and will continue to update this as an evolving pseudo-wiki page going forward. Take these opinions with a grain of salt, but yes please do comment if any of it is mistaken or incorrect! With that said, let&#8217;s do a recap of what we learned so far&#8230;</p>
<p><object type='application/x-shockwave-flash' wmode='opaque' data='http://static.slideshare.net/swf/ssplayer2.swf?id=3235374&#038;doc=sharepointworkflowandbpmsolutions-100220234837-phpapp02' width='480' height='394'><param name='movie' value='http://static.slideshare.net/swf/ssplayer2.swf?id=3235374&#038;doc=sharepointworkflowandbpmsolutions-100220234837-phpapp02' /><param name='allowFullScreen' value='true' /><param name='allowScriptAccess' value='always' /></object></p>
<h3><strong>Since I can&#8217;t do IFrames with WordPress, you&#8217;ll have to<a href="http://henryong.com/workflow-bpm-comparison-chart.htm" target="_blank"> click here for the comparison chart</a>. Sorry bub.</strong></h3>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/henryong.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/henryong.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/henryong.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/henryong.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/henryong.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/henryong.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/henryong.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/henryong.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/henryong.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/henryong.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/henryong.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/henryong.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/henryong.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/henryong.wordpress.com/437/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=437&subd=henryong&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.henryong.com/2010/02/20/sharepoint-workflow-bpm-vendor-comparison-chart/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/38c243c201cb2794d67f6250ef1f7251?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">wolvie3421</media:title>
		</media:content>
	</item>
		<item>
		<title>Workflow Software vs. BPM Software: What&#8217;s the difference?</title>
		<link>http://blog.henryong.com/2010/01/18/workflow-software-vs-bpm-software-whats-the-difference/</link>
		<comments>http://blog.henryong.com/2010/01/18/workflow-software-vs-bpm-software-whats-the-difference/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 02:13:15 +0000</pubDate>
		<dc:creator>Henry</dc:creator>
				<category><![CDATA[BPM]]></category>
		<category><![CDATA[Workflow]]></category>
		<category><![CDATA[Contest]]></category>

		<guid isPermaLink="false">http://blog.henryong.com/?p=431</guid>
		<description><![CDATA[I&#8217;m curious about what you think, so here&#8217;s a question for you: Let&#8217;s think about this at the software level &#8211; In your opinion/experience/expertise, what are the key differentiators between a workflow product and a business process managmement (BPM) product? Your opinions can be formed with experience from within or outside of the SharePoint arena. A lucky [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=431&subd=henryong&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m curious about what you think, so here&#8217;s a question for you:</p>
<p>Let&#8217;s think about this at the software level &#8211; In your opinion/experience/expertise, what are the key differentiators between a workflow product and a business process managmement (BPM) product? Your opinions can be formed with experience from within or outside of the SharePoint arena.</p>
<p>A lucky commenter that I choose at random on January 31, 2010 will win a super rare, ultra collectable copy of SharePoint Designer 2007 in mint condition pictured below <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<div id="attachment_432" class="wp-caption aligncenter" style="width: 235px"><a href="http://henryong.files.wordpress.com/2010/01/spdesigner2007.jpg"><img class="size-medium wp-image-432" title="SharePoint Designer 2007" src="http://henryong.files.wordpress.com/2010/01/spdesigner2007.jpg?w=225&#038;h=300" alt="" width="225" height="300" /></a><p class="wp-caption-text">Unopened and in mint condition!</p></div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/henryong.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/henryong.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/henryong.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/henryong.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/henryong.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/henryong.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/henryong.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/henryong.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/henryong.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/henryong.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/henryong.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/henryong.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/henryong.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/henryong.wordpress.com/431/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=431&subd=henryong&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.henryong.com/2010/01/18/workflow-software-vs-bpm-software-whats-the-difference/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/38c243c201cb2794d67f6250ef1f7251?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">wolvie3421</media:title>
		</media:content>

		<media:content url="http://henryong.files.wordpress.com/2010/01/spdesigner2007.jpg?w=225" medium="image">
			<media:title type="html">SharePoint Designer 2007</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint Workflow != Business Process Management (BPM)</title>
		<link>http://blog.henryong.com/2010/01/10/sharepoint-workflow-business-process-management-bpm/</link>
		<comments>http://blog.henryong.com/2010/01/10/sharepoint-workflow-business-process-management-bpm/#comments</comments>
		<pubDate>Sun, 10 Jan 2010 23:20:46 +0000</pubDate>
		<dc:creator>Henry</dc:creator>
				<category><![CDATA[BPM]]></category>
		<category><![CDATA[Workflow]]></category>
		<category><![CDATA[SharePoint Analysis]]></category>
		<category><![CDATA[SharePoint Workflow]]></category>
		<category><![CDATA[SharePoint BPM]]></category>

		<guid isPermaLink="false">http://blog.henryong.com/?p=402</guid>
		<description><![CDATA[Part 1; You are here. Part 2: SharePoint Workflow &#38; BPM Vendor Comparison Chart Once upon a time, I was a fledgling IT business analyst with a concentration in enterprise collaboration tools and processes. So one day, a company executive said, “Henry, we need some tools to help us manage our business processes… you know… [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=402&subd=henryong&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Part 1; You are here.<br />
Part 2: <a href="http://blog.henryong.com/2010/02/20/sharepoint-workflow-bpm-vendor-comparison-chart/" target="_self">SharePoint Workflow &amp; BPM Vendor Comparison Chart</a></p>
<p><strong>Once upon a time</strong>, I was a<a href="http://images.google.com/images?hl=en&amp;rls=com.microsoft%3Aen-us&amp;um=1&amp;sa=1&amp;q=fledgling&amp;aq=f&amp;oq=&amp;aqi=&amp;start=0" target="_blank"> fledgling </a>IT business analyst with a concentration in enterprise collaboration tools and processes. So one day, a company executive said, “Henry, we need some tools to help us manage our business processes… you know… like something that can keep track of everyone’s tasks&#8230; send emails to the person that has the next action&#8230; Then have it email me when everything’s done.”</p>
<p>Well, having looked at oodles of Microsoft SharePoint <a href="http://www.slideshare.net/search/slideshow?searchfrom=header&amp;q=sharepoint+workflow" target="_blank">presentations</a> and<a href="http://images.google.com/images?hl=en&amp;rls=com.microsoft%3Aen-us&amp;um=1&amp;sa=1&amp;q=sharepoint+pie&amp;aq=f&amp;oq=&amp;aqi=&amp;start=0" target="_blank"> pizza charts</a>, I told him, “Mr. Company Executive, I have just the thing in mind. Since we’re already using SharePoint, we can take advantage of the cool workflow capabilities already built into the system!”</p>
<p>And so it began… We started off with some short and sweet implementations like having Joe (the CTO) approve James’ (QA Manager) <a href="http://www.hulu.com/watch/13311/office-space-memo" target="_blank">TPS reports</a> using the OOTB <a href="http://office.microsoft.com/en-us/sharepointserver/HA103494751033.aspx" target="_blank">document approval workflows</a> in SharePoint. Then we used <a href="http://office.microsoft.com/en-us/sharepointdesigner/FX100487631033.aspx" target="_blank">SharePoint Designer</a> to make some more robust workflows that enabled James to provide some more information to be used as <a href="http://office.microsoft.com/en-us/sharepointdesigner/HA102097781033.aspx" target="_blank">variables inside the workflow</a>. Then as soon as we outgrew that, we even busted out <a href="http://msdn.microsoft.com/en-us/library/dd692925.aspx" target="_blank">Visual Studio for some custom SharePoint workflows</a> that copied these TPS reports out to customer extranet sites. Then we wanted to make the workflow talk to our accounting system, and our SalesForce CRM account, and then have it trigger some other processes&#8230; yada yada&#8230;You get the idea right?  But going down this path, we quickly realized this one critical key point:</p>
<p><strong>SharePoint Workflows are only good for managing business processes if your entire business process resides within SharePoint!</strong></p>
<p>&lt;!&#8212; Update (1/11/2010):</p>
<p>&#8220;Whoa nelly!&#8221; you might be saying to yourself. &#8220;That&#8217;s quite a loaded statement. Care to clarify?&#8221;</p>
<p>SharePoint is meant to be an end-user enabler. In our case, of all the self-service things that an end-user can do in SharePoint, the ability to create workflows by their lonesomes had become one of the most empowering tools. But once we got to the point of having to create custom workflows and workflow actions in Visual Studio for all the different systems, the thought of burdening developers to develop, maintain and enhance these proved to be an overhead that simply wasn&#8217;t worth it to us (in comparisons to third-party workflow solutions that are available).</p>
<p><span style="text-decoration:line-through;">Well I guess that&#8217;s not entirely true. If you can afford to have a development team dedicated to creating custom workflows in Visual Studio and are willing to have them update the workflows every two weeks (exaggeration?) as the business process changes, then you should be ok. But how many companies out there can actually afford to do that right? </span></p>
<p>So that&#8217;s when I figured out the difference between OOTB SharePoint workflow capabilities and the difference between user-centric workflow and business process management software.</p>
<p>&#8212;&gt;</p>
<p><span style="text-decoration:line-through;">&#8220;Hold on one darn second there&#8221;, you&#8217;re saying.</span> &#8220;So what&#8217;s the difference between SharePoint Workflows and Business Process Management Software?&#8221;</p>
<p>Well, in some ways they&#8217;re the same and in some ways the differences are black and white. In its most basic form (OOTB &amp; SharePoint Designer) I would consider <strong>SharePoint workflows</strong> to <strong>have the following characteristics</strong>:</p>
<ul>
<li>Can be manually or automatically invoked by some human action.</li>
<li>Workflow states typically consist of Start, Pause, Wait for User Action, End.</li>
<li>Workflow states can be changed based on predefined business rules or logic.</li>
<li>Actions are typically confined to the boundaries of SharePoint and in many instances, the actions are confined to even more granular levels like the site or document library.</li>
<li>Although the results of workflow actions can be recorded and logged in history, multiple versions of the workflow models themselves cannot be saved.</li>
<li>Changes to the workflow process can not be applied retroactively. Once a workflow process has begun, it can only follow its predefined path or be terminated.</li>
</ul>
<p>On the other hand, Business Process Management is an idea or strategy typically executed with and supported by the use of <strong>Business Process Management Systems (BPMS)</strong>. I would consider the following <strong>features to be available at minimum</strong>:</p>
<ul>
<li>Can be manually or automatically invoked by some human<strong><em> or</em></strong> system action.</li>
<li>Actions are never bound to any particular system.</li>
<li>Should be able to communicate with any software system in the enterprise by way of web services and other service oriented architectures.</li>
<li>Can be used to model, implement and manage the entire lifecycle of any customer facing or internal business process regardless of the number of different systems it has to interact with.</li>
<li>Can enable the business to change their process on the fly without detriment to processes already in flight.</li>
</ul>
<p>&lt;!&#8212; Update (1/11/2010):</p>
<p>Why is the title of this post &#8220;SharePoint Workflow != Business Process Management&#8221;? Because without getting into code, OOTB SharePoint workflow just doesn&#8217;t give you much flexibility in really managing full business processes&#8230; but it can be close!</p>
<p>There is a huge market space in between the 2 sets of characteristics that I had listed above. This space, which I will call the &#8220;SharePoint Workflow solutions that want to be pseudo BPM machines but can&#8217;t call themselves BPM machines because SharePoint people only know what workflow means&#8221; category. These solutions typically help business users overcome just about all of the issues with the OOTB SharePoint workflow capabilities, yet also include a multitude of custom actions that enable them to interact with things outside of SharePoint, thus sharing some characteristics of a true BPMS.</p>
<p>&#8212;&gt;</p>
<p>Now if you just read that and are still scratching your head, my apologies. Just remember this important differentiator: <strong>OOTB SharePoint workflows <span style="text-decoration:line-through;">don&#8217;t</span> are difficult to scale outside of SharePoint without Visual Studio.</strong></p>
<p><strong>So how does all this information help you and your SharePoint implementation?</strong></p>
<p>If you&#8217;ve been working with SharePoint workflows for awhile and have started looking at supplemental workflow solutions, you&#8217;ve probably come across quite a few options out there. As these third party products have matured, they are also increasingly blurring the lines between<em> just</em> being SharePoint workflow solutions to including capabilities that also enable them to become full blown business process management systems. In the next few posts, I&#8217;m going to take a good hard look at each of these SharePoint workflow/BPM solutions and give you the low down on the pros and cons of each that I will be evaluating. Stay tuned.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/henryong.wordpress.com/402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/henryong.wordpress.com/402/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/henryong.wordpress.com/402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/henryong.wordpress.com/402/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/henryong.wordpress.com/402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/henryong.wordpress.com/402/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/henryong.wordpress.com/402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/henryong.wordpress.com/402/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/henryong.wordpress.com/402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/henryong.wordpress.com/402/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/henryong.wordpress.com/402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/henryong.wordpress.com/402/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/henryong.wordpress.com/402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/henryong.wordpress.com/402/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.henryong.com&blog=704359&post=402&subd=henryong&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.henryong.com/2010/01/10/sharepoint-workflow-business-process-management-bpm/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/38c243c201cb2794d67f6250ef1f7251?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">wolvie3421</media:title>
		</media:content>
	</item>
	</channel>
</rss>