Transcript Spring 2006 Connections Conference Template
VWF313: Designing and Building Workflow Solutions for SharePoint 2007
Tim Huckaby CEO, InterKnowlogy Microsoft RD & MVP
About…
• InterKnowlogy ( www.InterKnowlogy.com
) ● ● ● Tim Huckaby, CEO ( [email protected]
) Custom App Dev / Consulting / Software & Systems Engineering Firm headquartered in Carlsbad, CA Microsoft Gold Partner managed in SoCal and Redmond ● ● Design, Architect, Build and Deploy enterprise class applications Industry Experts: • 90% of the company is published • Microsoft .NET Application development for 7+ years!
• Microsoft .NET Smart Client pioneers / industry leaders • Information Worker Solutions • Integration / Messaging, B2B / B2C, Wireless / Mobility • Microsoft BizTalk Web Services, Microsoft Active Directory, Security, SSO, Authorization, Authentication • Solutions on the emerging Microsoft servers • Largest Client: Microsoft
Session Objectives And Key Takeaways
• Session Objective: ● ● ● ● Office workflow development in Microsoft Visual Studio 2005/2008 Windows SharePoint Services V3 & 2007 Microsoft Office system workflow built on top of Windows Workflow Foundation platform Workflow is a powerful tool for driving customer business processes Microsoft Office InfoPath 2007 enables symmetric rich/reach form authoring • Key Takeaways: ● Windows Workflow Foundation is a framework for building workflow into applications ● ● ● A single workflow technology for Windows WF has good integration into 2007 Office system & OSS Solution Architecture is necessary
Agenda
• 5 Options for SharePoint Workflows • The business processes we will model • Describe the design, develop, debug & deploy steps • Demos: 1.
Implementing Extensible “canned” Workflows in SPS 2007 & Office 2007 2.
Designing & Implementing Extensible Workflows for SPS 2007 in SharePoint Designer 3.
4.
Building, Implementing and deploying workflows for SharePoint & Office 2007 in VS.NET 2005 (and VS2008) Building SharePoint Workflows with K2
Using WF in SharePoint 2007 & 2007 Office System
Tim Huckaby CEO – InterKnowlogy Microsoft Regional Director Microsoft MVP – .NET
Windows Workflow Foundation Vision: Deliver best-in-class workflow platform & tools for Microsoft products and partner/customer ecosystem Single workflow technology for Windows ● Base for Microsoft products and ISV/customer solutions ● One technology for human and system workflow • A framework not a server product or application ● ● An extensible framework based on Microsoft .NET
Ships as Part of .NET 3.0, which ships in Windows • Make workflow mainstream for .NET developers ● ● Strong workflow partner & solution ecosystem Reach mainstream application developer
Workflow Scenarios
LOB Integration Microsoft Visual Studio and workflow SDK Purchase Order Processing Product lifecycle management Office SharePoint Designer workflows Custom Tracking Apps Service Requests Asset Tracking Custom Form Actions Email Notification Exception Handling Document Processes Spec Review Weekly Status Report Out-of-the-Box Solutions (with customization) Application Task and Issue Tracking Office Server Features List Moderation Publishing Process Document Expiration Routing & Approval Review Approval Signature collection East Asian workflow
Using SharePoint Designer to Build Custom Workflows
Tim Huckaby CEO – InterKnowlogy Microsoft Regional Director Microsoft MVP – .NET
VS.NET SPS WF Development Steps
1. Model workflow in Microsoft Visual Studio 2. Create and bind Microsoft Office InfoPath forms 3. Deploy to Microsoft Office SharePoint Server 4. Debug the running workflow (if necessary)
Model & Building Workflows In Visual Studio 2005
• • •
Prerequisites:
●
Office SharePoint Server 2007
•
.NET 3.0 Runtime Components
●
Microsoft Visual Studio 2005 / 2008 Extensions for Windows Workflow Foundation
●
Microsoft Windows Software Development Kit (SDK) Microsoft Windows Vista Create project of type “SharePoint Sequential Workflow Library” Create the workflow
Create and Bind InfoPath Forms
Types of InfoPath forms in SPS Workflows
• • • •
Association form
● ●
User adds workflow to a list For setting options on WF Initiation form
●
For manual workflow start
●
Collects workflow parameters Task completion form
● ●
A user to edit a task from WF User edits or enters data Modification form
● ●
Linked off WF status page Can modify in-flight WF
Create and Bind InfoPath Forms
InfoPath forms are used in these places
Create and Bind InfoPath Forms
SharePoint hosts the InfoPath form
Hosting Environment InfoPath Form Templates
Create and Bind InfoPath Forms
Data from SharePoint is passed in
SharePoint object _________ _________ _________ Hosting Environment InfoPath Form Templates
Create and Bind InfoPath Forms
Submit the form, saves data to SharePoint
SharePoint object _________ _________ _________ Hosting Environment InfoPath Form Templates
Create and Bind InfoPath Forms
SharePoint starts the workflow
SharePoint object _________ _________ _________ Hosting Environment InfoPath Form Templates SharePoint -> Task/WF Host
Create and Bind InfoPath Forms
Pushing data from WF task into InfoPath
SharePoint Task
•instructions = “Please do this.” Task data as xml
Deploy to SharePoint Server
• Generate Metadata files ● Feature.XML
● Workflow.XML
• Install/activate the “feature” • IISReset • Associate workflow to the list/library
Debug the Running Workflow
• Visual Studio running on server machine • Open the workflow in Visual Studio • Attach to all of the W3WP Processes • Start the workflow
Workflows built in VS.NET
Tim Huckaby CEO – InterKnowlogy Microsoft Regional Director Microsoft MVP – .NET
W W W . K 2 . C O M EXTENDING SHAREPOINT WORKFLOW WITH K2 BLACKPEARL Data auditing Process auditing Versioning SharePoint Workflow
Available via SharePoint metadata and document library/list versioning Available via the “Activity Duration” or “Cancellation & Error” reports found on the list or library where the workflow is deployed Versions of the workflow can be stored per document library or list. Options can be configured to set the workflow version used for new instances as well as active instances.
K2 blackpearl
Workflow designers have the ability to specify data auditing options at design time. All audit information is available in the K2 Reporting environment Available within the K2 Reporting environment in the out-of-the-box reports provided with K2 blackpearl as well as available as data in ad-hoc, user designed reports A new version of the process is automatically stored each time it is deployed. Versions can be managed via the K2 Management Console which allows rollback to any previous version of the workflow.
State management Chaining workflows
State information will be maintained in the document library or list that the workflow is associated with. State is managed within the K2 blackpearl server and data is available within the K2 Reporting environment.
Via Windows Workflow Foundation (WF) custom development. Limited to the current site K2 blackpearl provides the functionality natively within the Inter-Process Communication event wizard. The IPC wizard provides the ability to call a sub-process synchronously or asynchronously Support for actions across SharePoint sites, site collections, servers and farms
Actions spanning across multiple sites Content type association Access to originator information Escalations Task list Host server Process Capacity
Not supported Fully supported Access to author of the library or list item, but not the user who started the workflow if different Via Windows Workflow Foundation (WF) custom development. Includes an “Assign a Task” activity that can be used to assign a task to a user within a MOSS task list. MOSS task lists are shared among all users so users with the correct permissions can act on anyone’s task Out-of-the-box access to workflow originator information, including the originator’s manager Provided via out-of-the-box escalation wizards, including email, redirection, go to another step, custom code Tasks are available via the K2 Task List or K2 Task List web part. Task lists are specific to an individual user so users will only see tasks that they are allowed to action.
Provided via Windows SharePoint Services. The workflow engine runs in process with SharePoint and cannot be separated out onto a dedicated workflow server Provided via the K2 blackpearl Host server. Servers can be dedicated to workflow transactions only and can be set up as a farm of server dedicated specifically to workflow processing Suggested limit of 15 running workflow processes per SharePoint server No set limitations per K2 server.
K2 Workflows
Tim Huckaby CEO – InterKnowlogy Microsoft Regional Director Microsoft MVP – .NET
Call to Action
• WF plugs a large hole in the platform that used to be hard because it had to be built by hand • WF provides a design time environment that makes it easy to build even the most complex workflows • The 2007 Office system and SharePoint 2007 WF integration is fantastic; consequently, integrated solutions are easy to design and build
For More Information…
WorkFlow on the .NET 3.0 Developer Center: http://msdn2.microsoft.com/en-us/netframework/aa663328.aspx
Downloads: ● ● ● ● ● Visual Studio 2005 extensions for .NET Framework 3.0 (Windows Workflow Foundation) Hands on Labs for Windows® Workflow Foundation Experience the 2007 Microsoft Office system Microsoft® Windows® Software Development Kit for Windows Vista™ and .NET Framework 3.0 Runtime Components Windows SharePoint Services Software Development Kit (SDK)
Tim Huckaby, InterKnowlogy
• More info on InterKnowlogy: ● www.InterKnowlogy.com
• Contact me: Tim Huckaby ● ● ● E-mail : [email protected]
Phone: 760-444-8640 Blog : http://blogs.InterKnowlogy.com/TimHuckaby • About Tim Huckaby ● ● ● ● ● ● ● ● ● CEO, InterKnowlogy Microsoft ® Regional Director – Southern California Microsoft ® Microsoft ® .NET Partner Advisory Council Founder / Member MVP - .NET
Microsoft ® Surface Partner Advisory Council INETA Speaker – International .NET Users Group Association Windows and .NET Magazine Advisory Board Member .NET Developers Journal Magazine Advisory Board Member Author / Speaker
Resources
Technical Chats and Webcasts http://www.microsoft.com/communities/chats/default.mspx
http://www.microsoft.com/usa/webcasts/default.asp
Microsoft Learning and Certification http://www.microsoft.com/learning/default.mspx
MSDN & TechNet http://microsoft.com/msdn http://microsoft.com/technet Virtual Labs http://www.microsoft.com/technet/traincert/virtuallab/rms.mspx
Newsgroups http://communities2.microsoft.com/ communities/newsgroups/en-us/default.aspx
Technical Community Sites http://www.microsoft.com/communities/default.mspx
User Groups http://www.microsoft.com/communities/usergroups/default.mspx
Your Feedback is Important
Please fill out a session evaluation form and either put them in the basket near the exit or drop them off at the conference registration desk.
Thank you!