<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Nikhil's Blog : SharePoint Workflow</title><link>http://blogs.msdn.com/nikhil/archive/tags/SharePoint+Workflow/default.aspx</link><description>Tags: SharePoint Workflow</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>VSTO Power tool: SharePoint Workflow package generator</title><link>http://blogs.msdn.com/nikhil/archive/2008/03/03/vsto-power-tool-sharepoint-workflow-package-generator.aspx</link><pubDate>Tue, 04 Mar 2008 09:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8020453</guid><dc:creator>Nikhil Khandelwal</dc:creator><slash:comments>15</slash:comments><comments>http://blogs.msdn.com/nikhil/comments/8020453.aspx</comments><wfw:commentRss>http://blogs.msdn.com/nikhil/commentrss.aspx?PostID=8020453</wfw:commentRss><description>&lt;P&gt;We announced the release of &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=46B6BF86-E35D-4870-B214-4D7B72B02BF9&amp;amp;displaylang=en" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=46B6BF86-E35D-4870-B214-4D7B72B02BF9&amp;amp;displaylang=en"&gt;VSTO power tools&lt;/A&gt; at Office Developer Conference (ODC). Of the many tools that we released, I will discuss the SharePoint Workflow Package Generator. Workflow package generator is a tool that creates a WSP file from a VS 2008 SharePoint workflow project. &lt;/P&gt;
&lt;P&gt;The package generator uses the feature.xml file to generate a WSP file. In the WSP file, it will also include any &amp;lt;ElementFile&amp;gt; that have been referenced. Hence, any referenced InfoPath forms and resource files will also be packaged in the WSP file.&lt;/P&gt;
&lt;P&gt;To use the package generator just type: 
&lt;P&gt;“c:\Program Files\Microsoft VSTO Power Tools 1.0\workflowpackagegen.exe" /featureManifest:feature.xml 
&lt;P&gt;An example of incorporating the tool into the project as an MSBuild post-build task is shown below. You can add this to the end of your csproj/vbproj file to get a wsp file after every build: 
&lt;P&gt;&amp;lt;Target Name="AfterBuild"&amp;gt;&lt;BR&gt;&amp;lt;Exec Command="&amp;amp;quot;c:\Program Files\Microsoft VSTO Power Tools 1.0\workflowpackagegen.exe&amp;amp;quot; /featureManifest:feature.xml" ContinueOnError="true"&amp;gt;&lt;BR&gt;&amp;lt;/Exec&amp;gt;&lt;BR&gt;&amp;lt;/Target&amp;gt; 
&lt;P&gt;Drop me a line if you find the tool useful. We're always looking for feedback on our tools.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8020453" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/nikhil/archive/tags/VSTO/default.aspx">VSTO</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/VS+2008/default.aspx">VS 2008</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/SharePoint+Workflow/default.aspx">SharePoint Workflow</category></item><item><title>InfoPath forms deployment, SharePoint workflow in VS 2008</title><link>http://blogs.msdn.com/nikhil/archive/2008/01/22/infopath-forms-deployment-sharepoint-workflow-in-vs-2008.aspx</link><pubDate>Tue, 22 Jan 2008 12:13:09 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7195844</guid><dc:creator>Nikhil Khandelwal</dc:creator><slash:comments>12</slash:comments><comments>http://blogs.msdn.com/nikhil/comments/7195844.aspx</comments><wfw:commentRss>http://blogs.msdn.com/nikhil/commentrss.aspx?PostID=7195844</wfw:commentRss><description>&lt;p&gt;A number of developers who have tried the SharePoint workflow features in VS 2008 wanted to know more about our support for InfoPath forms deployment. So I'm blogging it here for everyone's reference.&lt;/p&gt; &lt;p&gt;Before diving into details of InfoPath forms deployment here's a little bit of background on workflow and InfoPath forms integration. Typical SharePoint workflows goes through different stages - &lt;strong&gt;association&lt;/strong&gt;, &lt;strong&gt;initiation&lt;/strong&gt;, &lt;strong&gt;task completion&lt;/strong&gt;. Also, workflows might be &lt;strong&gt;modified&lt;/strong&gt; after being initiated. SharePoint supports ASP.NET and InfoPath forms to enable developers to capture user inputs at these different stages. For example, on initiation of a simple document approval workflow you might want to capture the approvers for the document. &lt;p&gt;To develop InfoPath forms you can either use the VSTO template for InfoPath that also ships with Visual Studio 2008 or InfoPath (with VSTA) itself. Once you have designed the InfoPath form it can be published as an XSN file. There is some great documentation on &lt;a href="http://msdn2.microsoft.com/en-us/library/ms548723.aspx" target="_blank"&gt;MSDN&lt;/a&gt; regarding this. In general, if you need code (custom event handlers/validation) behind your InfoPath forms you should use the VSTO InfoPath template and create a project alongside your workflow project. &lt;p&gt;Coming back to SharePoint workflow integration with InfoPath forms - It is very easy to deploy InfoPath forms along with your workflow. All you have to do is to add a relative reference to the form in the feature.xml with the &amp;lt;ElementFile/&amp;gt; element eg:&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;ElementFile&lt;/span&gt; &lt;span class="attr"&gt;Location&lt;/span&gt;&lt;span class="kwrd"&gt;="InfoPathForm.xsn"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }
&lt;/style&gt;

&lt;p&gt;When you press F5 you will see that VS will copy the form alongside your feature.xml files in the 12\TEMPLATE\FEATURES\&amp;lt;featname&amp;gt;\ directory. It must be noted that this is a &lt;em&gt;relative reference &lt;/em&gt;to the form and VS will look in the path specified relative to the source location of feature.xml.
&lt;p&gt;You can use the above feature to also install resx files or any other accompanying files. Also, the feature.xml file is processed by SharePoint on feature installation and absolute paths or relative references with ellipsis are not supported (for obvious security reasons). However, you can add references that need to be deployed as subdirectories and we will replicate the hierarchy eg:&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;ElementFile&lt;/span&gt; &lt;span class="attr"&gt;Location&lt;/span&gt;&lt;span class="kwrd"&gt;="InfoPathForms\InfoPathForm1.xsn"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;br&gt;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;ElementFile&lt;/span&gt; &lt;span class="attr"&gt;Location&lt;/span&gt;&lt;span class="kwrd"&gt;="Resources\Resources.en-us.resx"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;On F5, a subdirectory named InfoPathForms and Resources will be created in the 12\TEMPLATE\Features\&amp;lt;featname&amp;gt;\ directory.
&lt;p&gt;And yeah, don't forget to reference them also in the workflow.xml as an initiation, association, modification or task form, to see them show up at runtime.
&lt;p&gt;Now go ahead and have fun with InfoPath forms!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7195844" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/nikhil/archive/tags/VSTO/default.aspx">VSTO</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/VS+2008/default.aspx">VS 2008</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/SharePoint+Workflow/default.aspx">SharePoint Workflow</category></item><item><title>SharePoint Workflow feature in VS 2008 (Part II)</title><link>http://blogs.msdn.com/nikhil/archive/2008/01/19/sharepoint-workflow-feature-in-vs-2008-part-ii.aspx</link><pubDate>Sun, 20 Jan 2008 03:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7166126</guid><dc:creator>Nikhil Khandelwal</dc:creator><slash:comments>41</slash:comments><comments>http://blogs.msdn.com/nikhil/comments/7166126.aspx</comments><wfw:commentRss>http://blogs.msdn.com/nikhil/commentrss.aspx?PostID=7166126</wfw:commentRss><description>&lt;P&gt;I will continue from my &lt;A href="http://blogs.msdn.com/nikhil/archive/2008/01/15/sharepoint-workflow-feature-in-vs-2008.aspx" target=_blank mce_href="http://blogs.msdn.com/nikhil/archive/2008/01/15/sharepoint-workflow-feature-in-vs-2008.aspx"&gt;last post&lt;/A&gt; on authoring SharePoint workflows in VS 2008 by providing a walkthrough.&lt;/P&gt;
&lt;P&gt;In order to work with SharePoint workflows in VS you will have to setup your development machine as follows:&lt;/P&gt;
&lt;P&gt;1)&amp;nbsp;&amp;nbsp;&amp;nbsp; Install Windows Server 2003.&lt;BR&gt;2)&amp;nbsp;&amp;nbsp;&amp;nbsp; Install Internet Information Services (IIS). (In Control Panel, Add/Remove Windows Components, Application Server, Details, Internet Information Services (IIS).)&lt;BR&gt;3)&amp;nbsp;&amp;nbsp;&amp;nbsp; Install .NET Framework 2.0 and.NET Framework 3.0.&lt;BR&gt;4)&amp;nbsp;&amp;nbsp;&amp;nbsp; Enable ASP.NET 2.0.5727 in IIS Manager.&lt;BR&gt;5)&amp;nbsp;&amp;nbsp;&amp;nbsp; Install Microsoft Office SharePoint Server 2007 (MOSS). Make sure to run the configuration wizard. [Edit: May 29: WSS is not supported]&lt;BR&gt;6)&amp;nbsp;&amp;nbsp;&amp;nbsp; Install Visual Studio 2008. Use the default installation, or make sure that Visual Studio Tools for Office is selected on the Custom installation page of the Setup wizard. 
&lt;P&gt;Some questions that come to mind -&amp;nbsp; Firstly, why &lt;STRONG&gt;only&lt;/STRONG&gt; Windows Server 2003 (no Windows Xp)? Well MOSS/WSS can only be installed on a Windows Server machine. And secondly, why does MOSS/WSS need to be installed on the development machine? It's just required to do &lt;STRONG&gt;any &lt;/STRONG&gt;(not just workflow) practical SharePoint development since you have to do an iisreset, access the GAC etc. 
&lt;P&gt;Is the above installation order important? Yes and no. If you install SharePoint before Visual Studio, your toolbox for Workflow development comes initialized with all SharePoint related activities. So it is a good idea to install in that order. If you do not do so - you will have to reset your toolbox (Right click on the toolbox and select 'Reset toolbox') once you start developing SharePoint workflows. 
&lt;P&gt;&lt;STRONG&gt;Project Creation&lt;/STRONG&gt; - Select the 'SharePoint 2007 Sequential Workflow' 
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/NewProjectWizard_2.jpg" mce_href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/NewProjectWizard_2.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=317 alt=NewProjectWizard src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/NewProjectWizard_thumb.jpg" width=532 border=0 mce_src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/NewProjectWizard_thumb.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;New SharePoint Workflow wizard:&lt;/STRONG&gt; A wizard shows up that allows you to specify the parameters for debugging - the name of the worklfow, the local&amp;nbsp;SharePoint site &lt;STRONG&gt;(no support for&amp;nbsp;remote SharePoint sites)&lt;/STRONG&gt;&amp;nbsp;on which to deploy the workflows, the list to associate&amp;nbsp;it with, the task&amp;nbsp;and&amp;nbsp;history list to work with. Also you can specify, how you intend to start your workflow on F5.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/Wizard1_2.jpg" mce_href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/Wizard1_2.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=417 alt=Wizard1 src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/Wizard1_thumb.jpg" width=522 border=0 mce_src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/Wizard1_thumb.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Select the parameters for workflow association on F5:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/wizard2_2.jpg" mce_href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/wizard2_2.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=422 alt=wizard2 src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/wizard2_thumb.jpg" width=529 border=0 mce_src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/wizard2_thumb.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/Wizard3_4.jpg" mce_href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/Wizard3_4.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=417 alt=Wizard3 src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/Wizard3_thumb_1.jpg" width=523 border=0 mce_src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/Wizard3_thumb_1.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Workflow designer:&lt;/STRONG&gt;On pressing 'Finish' in the wizard, the workflow designer shows up.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/designer_2.jpg" mce_href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/designer_2.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=321 alt=designer src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/designer_thumb.jpg" width=521 border=0 mce_src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/designer_thumb.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Property Window:&lt;/STRONG&gt;A few additions to note include a property window that allows you to view/change the selections you made in the wizard. The property window is visible when you have the project node selected in the Solution Explorer.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/PropertyGrid_2.jpg" mce_href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/PropertyGrid_2.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=478 alt=PropertyGrid src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/PropertyGrid_thumb.jpg" width=405 border=0 mce_src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/PropertyGrid_thumb.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Breakpoint: &lt;/STRONG&gt;You can go ahead an now put a breakpoint in the workflow activity in the designer, by right clicking the activity and selecting 'Insert breakpoint' from the context menu.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/breakpoint_2.jpg" mce_href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/breakpoint_2.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=229 alt=breakpoint src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/breakpoint_thumb.jpg" width=372 border=0 mce_src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/breakpoint_thumb.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Press F5 now to start debugging&lt;/STRONG&gt;&amp;nbsp; and you will notice the output window shows all the deployment details - Install the assembly to the GAC, restart IIS, copy workflow.xml, feature.xml, and any other resource files/InfoPath forms you may have, install and activate the workflow template as a feature in SharePoint, associate the workflow with the list you specified in the wizard.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/OutputWindow_2.jpg" mce_href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/OutputWindow_2.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=105 alt=OutputWindow src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/OutputWindow_thumb.jpg" width=523 border=0 mce_src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/OutputWindow_thumb.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;In the browser window that launches you will see the deployed workflow.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/DeployedWorkflow_2.jpg" mce_href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/DeployedWorkflow_2.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=175 alt=DeployedWorkflow src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/DeployedWorkflow_thumb.jpg" width=544 border=0 mce_src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/DeployedWorkflow_thumb.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;After you manually start the instance of the workflow, you will see the breakpoint being hit:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/breakpointHit_2.jpg" mce_href="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/breakpointHit_2.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=261 alt=breakpointHit src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/breakpointHit_thumb.jpg" width=383 border=0 mce_src="http://blogs.msdn.com/blogfiles/nikhil/WindowsLiveWriter/SharePointWorkflowfeatureinVS2008PartII_C5A/breakpointHit_thumb.jpg"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Btw. my technorati profile is getting started here: &lt;A href="http://technorati.com/claim/a6aiweyxgg" target=_blank rel=me mce_href="http://technorati.com/claim/a6aiweyxgg"&gt;Technorati Profile&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7166126" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/nikhil/archive/tags/VSTO/default.aspx">VSTO</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/VS+2008/default.aspx">VS 2008</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/SharePoint+Workflow/default.aspx">SharePoint Workflow</category></item><item><title>SharePoint Workflow feature in VS 2008</title><link>http://blogs.msdn.com/nikhil/archive/2008/01/15/sharepoint-workflow-feature-in-vs-2008.aspx</link><pubDate>Tue, 15 Jan 2008 12:33:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7117089</guid><dc:creator>Nikhil Khandelwal</dc:creator><slash:comments>48</slash:comments><comments>http://blogs.msdn.com/nikhil/comments/7117089.aspx</comments><wfw:commentRss>http://blogs.msdn.com/nikhil/commentrss.aspx?PostID=7117089</wfw:commentRss><description>&lt;P&gt;As mentioned in &lt;A href="http://blogs.msdn.com/nikhil/archive/2007/09/11/vsto-and-sharepoint-workflow.aspx" target=_blank mce_href="http://blogs.msdn.com/nikhil/archive/2007/09/11/vsto-and-sharepoint-workflow.aspx"&gt;earlier posts&lt;/A&gt;, I was one of the developers on the SharePoint Workflow feature in VS 2008. (shipped as one of the VSTO components - available in Professional SKU upwards)&lt;/P&gt;
&lt;P&gt;The feature include a set of VS project templates, wizard, and VS project package that integrates creating, deploying, and debugging of SharePoint workflows into a streamlined, simplified experience. &lt;/P&gt;
&lt;P&gt;Those who have used WSS SDK or MOSS SDK would realize that creating and debugging workflows in SharePoint is not an easy task. The main pillars of this feature were to significantly lower the learning curve for SharePoint workflow development, and make developers more productive. To achieve this, we knew that we had to optimize - what I like to call the &lt;STRONG&gt;code-build-debug cycle&lt;/STRONG&gt;. That's where you are bound to spend most of your time while developing workflows, and any improvements there would be of great value. &lt;/P&gt;
&lt;P&gt;Before VS 2008, typical code-build-debug cycle would be:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Write the code 
&lt;LI&gt;&lt;FONT color=#ff0000&gt;Build the workflow project. &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT color=#ff0000&gt;Copy the latest feature.xml and workflow.xml files to the FEATURE directory. &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT color=#ff0000&gt;Remove any existing copies of the workflow assembly from the GAC. &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT color=#ff0000&gt;Add the latest version of the workflow assembly to the GAC. &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT color=#ff0000&gt;Re-start IIS. &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT color=#ff0000&gt;Install the feature with SharePoint using &lt;/FONT&gt;&lt;A href="http://technet2.microsoft.com/Office/en-us/library/188f006d-aa66-4784-a65b-a31822aa13f71033.mspx" target=_blank mce_href="http://technet2.microsoft.com/Office/en-us/library/188f006d-aa66-4784-a65b-a31822aa13f71033.mspx"&gt;&lt;FONT color=#ff0000&gt;stsadm&lt;/FONT&gt;&lt;/A&gt;&lt;FONT color=#ff0000&gt;. &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT color=#ff0000&gt;Activate the feature at a SharePoint site where you intend to perform the debugging. &lt;/FONT&gt;
&lt;LI&gt;Launch the web browser and go to the list that you want to associate the workflow with. 
&lt;LI&gt;Associate the workflow with&amp;nbsp; the list. 
&lt;LI&gt;Attach the debugger to the correct IIS worker process. (W3WP) 
&lt;LI&gt;Manually start the workflow. 
&lt;LI&gt;Debug the workflow.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;The steps in &lt;FONT color=#ff0000&gt;red&lt;/FONT&gt; are scriptable, and WSS and MOSS SDK include batch files to enable that. However, batch files are difficult to maintain (source control, hard coding etc.?), error-prone (when something fails - what do you do?), and slow (more on this in another post). Rest of the steps are manual, tedious, and time consuming.&lt;/P&gt;
&lt;P&gt;Using VSTO SharePoint workflow project templates, your code-build-debug cycle will be so simple:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Write the code.&lt;/LI&gt;
&lt;LI&gt;Press F5 (builds, deploys files, associates the workflow feature in SharePoint, attaches the debugger to the correct W3WP process, launches the browser).&lt;/LI&gt;
&lt;LI&gt;Manually start the workflow.&lt;/LI&gt;
&lt;LI&gt;Debug the workflow.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Imagine this being repeated every time you make a change to your workflow. This is how VS 2008 already gives you a great productivity edge - you just need to now &lt;STRONG&gt;focus&lt;/STRONG&gt; on designing your solution.&lt;/P&gt;
&lt;P&gt;Get your copy of VS 2008 and give the feature a try, and drop me a line about how you find the feature.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7117089" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/nikhil/archive/tags/VSTO/default.aspx">VSTO</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/VS+2008/default.aspx">VS 2008</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/SharePoint+Workflow/default.aspx">SharePoint Workflow</category></item><item><title>VS 2008 and SharePoint Workflow</title><link>http://blogs.msdn.com/nikhil/archive/2007/09/11/vsto-and-sharepoint-workflow.aspx</link><pubDate>Tue, 11 Sep 2007 10:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4862261</guid><dc:creator>Nikhil Khandelwal</dc:creator><slash:comments>6</slash:comments><comments>http://blogs.msdn.com/nikhil/comments/4862261.aspx</comments><wfw:commentRss>http://blogs.msdn.com/nikhil/commentrss.aspx?PostID=4862261</wfw:commentRss><description>&lt;P&gt;The "Orcas" release train has been keeping me busy. For a long time I have been thinking of blogging about the feature that I worked on in Orcas. As the title of this entry suggests it is a VSTO feature that has to do something with SharePoint Workflow.&lt;/P&gt;
&lt;P&gt;Firstly, lets look at SharePoint (also referred to as Microsoft Office SharePoint Server (MOSS) - yet another long product name!). In the MOSS 2007 release, the SharePoint team has done a great job of integrating with the &lt;A href="http://wf.netfx3.com/" target=_blank mce_href="http://wf.netfx3.com/"&gt;Workflow Foundation (WF)&lt;/A&gt; to provide a means to create workflows. &lt;/P&gt;
&lt;P&gt;A &lt;B&gt;workflow&lt;/B&gt; is a reliably repeatable pattern of activity enabled by a systematic organization of resources, and information flows (from Wikipedia). A typical workflow in MOSS would be that of document approval. An employee writes a document that needs to be approved by the manager before sending it out externally. When the employee checks in the document in a SharePoint library, the manager is assigned a task to approve the document. On approval, the employee gets a notification and sends out the document to the customer. This is a simple example, but a workflow can define a more sophisticated and complex series of human or automated activities in an enterprise.&lt;/P&gt;
&lt;P&gt;As you may have guessed, that building workflows from ground up is a lot of work. The SharePoint team has done a great job by integrating WF and creating a great runtime story - taking care of difficult problems pertaining to persistence, serialization, permissions, user model etc., However, there is a necessity to make the development of SharePoint workflows much easier.&amp;nbsp; As John Durant in his &lt;A href="http://blogs.msdn.com/johnrdurant/archive/2007/04/06/sharepoint-development-article.aspx" target=_blank mce_href="http://blogs.msdn.com/johnrdurant/archive/2007/04/06/sharepoint-development-article.aspx"&gt;blog post&lt;/A&gt; quotes &lt;A href="http://www.devx.com/webdev/Article/34032/" target=_blank mce_href="http://www.devx.com/webdev/Article/34032/"&gt;Robert Bogue&lt;/A&gt;: &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;SharePoint and Workflow may be the most powerful combination since chocolate and peanut butter, but the trick is harnessing their combined power. &lt;STRONG&gt;That isn't as easy as it first seems&lt;/STRONG&gt;, but in this article you'll learn how create a SharePoint workflow in Visual Studio from start to finish.&amp;nbsp; &lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;That's where the VSTO SharePoint workflow tools come in. We have made it extremely easy for you to &lt;STRONG&gt;develop, deploy, and debug &lt;/STRONG&gt;SharePoint workflows. We have brought the "simple F5 experience" (as we internally refer to it) that you are familiar with for Windows application development, to SharePoint Workflow development. &lt;/P&gt;
&lt;P&gt;No more hunting for the right w3wp processes in the task manager, looking for stsadm errors, or running of some batch scripts to deploy your workflows. (as documented &lt;A href="http://msdn2.microsoft.com/en-us/library/ms455354.aspx" target=_blank mce_href="http://msdn2.microsoft.com/en-us/library/ms455354.aspx"&gt;here&lt;/A&gt;) VSTO SharePoint workflow tools take care of all this for you. &lt;/P&gt;
&lt;P&gt;Check this feature out in the &lt;A href="http://go.microsoft.com/?linkid=7175498" target=_blank mce_href="http://go.microsoft.com/?linkid=7175498"&gt;VS 2008 Beta 2 release.&lt;/A&gt;&amp;nbsp;Now you can focus on your business logic right away - without caring about&amp;nbsp;setting up your environment for development.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4862261" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/nikhil/archive/tags/VSTO/default.aspx">VSTO</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/VS+2008/default.aspx">VS 2008</category><category domain="http://blogs.msdn.com/nikhil/archive/tags/SharePoint+Workflow/default.aspx">SharePoint Workflow</category></item></channel></rss>