Download presentation
Presentation is loading. Please wait.
2
OFC312 Developing Workflows for the 2007 Microsoft Office System and Windows SharePoint Services (version 3) Adam Calderon Principal Engineer - Interknowlogy Microsoft MVP – C#
3
Session Objectives And Key Takeaways Session Objective: Office workflow development in Microsoft Visual Studio 2005 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
4
Agenda Options for workflow development The business processes we will model Demo: Using WF in OSS & 2007 Office system Introduce Workflow Describe the design, develop, debug & deploy steps Demos: Implementing Workflows in SPS & Office 2007 Building, Implementing and deploying workflows for SharePoint & Office 2007 in VS.NET 2005
5
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 (WinFX) Make workflow mainstream for.NET developers Strong workflow partner & solution ecosystem Reach mainstream application developer
6
Structured Ad Hoc Microsoft Visual Studio and workflow SDK Office SharePoint Designer workflows Out-of-the-Box Solutions (with customization) Application Task and Issue Tracking Routing & Approval Review Approval Signature collection East Asian workflow Office Server Features List Moderation Publishing Process Document Expiration Document Processes Spec Review Weekly Status Report Custom Tracking Apps Service Requests Asset Tracking Custom Form Actions Email Notification Exception Handling LOB Integration Purchase Order Processing Product lifecycle management Workflow Scenarios
7
The Business Process
8
Using WF in SharePoint 2007 & 2007 Office System
9
What is a workflow? A workflow is a class A workflow class may be defined in markup Imports System.Workflow.Activities Public Class MyWorkflow Inherits SequentialWorkflow … End Class …
10
How is a workflow put together? Workflow constructor configures contained activities (like forms & controls) Imports System.Workflow.Activities Partial Public Class MyWorkflow Inherits SequentialWorkflow Public Sub New() MyBase.New() InitializeComponent() End Sub End Class Partial Public Class MyWorkflow REM designer generated Private Sub InitializeComponent() Me.delay1 = New System.Workflow.Activities.Delay Me.delay1.ID = "delay1" Me.delay1.TimeoutDuration = System.TimeSpan.Parse("00:00:05") Me.Activities.Add(Me.delay1) Me.ID = "MyWorkflow" End Sub Private WithEvents delay1 As System.Workflow.Activities.Delay End Class
11
What is an activity? Activities are the building blocks of workflows The unit of execution, re-use and composition Basic activities are steps within a workflow Composite activities contains other activities EG: Sequence Base Activity Library provides out-of-the-box activity set Partners and customers author custom activities EG: “Review Documents”
12
What is an activity? Activities are classes: Properties and events are defined by the activity author and programmable from workflows Has methods that are coded by the activity author but invoked by the workflow runtime (EG: Execute) or designer Can be built into workflow assemblies or deployed as re-usable libraries
13
What is an activity? using System.Workflow.ComponentModel; public partial class SendMail : System.Workflow.ComponentModel.Activity { public SendMail() { InitializeComponent(); } protected override Status Execute(ActivityExecutionContext context) { // my logic here return Status.Closed; } public partial class SendMail { public string subject; public string Subject { get { return subject; } set { this.subject = value; } } private void InitializeComponent() // designer generated { this.ID = "SendMail"; }
14
Development Steps Model workflow in Microsoft Visual Studio Create and bind Microsoft Office InfoPath forms Deploy to Microsoft Office SharePoint Server Debug the running workflow
15
Model & Building Workflows In Visual Studio 2005 Prerequisites: Office SharePoint Server 2007 Beta 2.NET 3.0 (WinFX) Runtime Components Microsoft Visual Studio 2005 Extensions for Windows Workflow Foundation Beta 2.2 Microsoft Windows Software Development Kit (SDK) for Beta 2 of Microsoft Windows Vista 2007 Office System Starter Kit: Enterprise Content Management Starter Kit
16
The Business Process Workflow
17
Create and Bind InfoPath Forms Types of InfoPath forms in 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
18
Create and Bind InfoPath Forms InfoPath forms are used in these places
19
Hosting Environment Create and Bind InfoPath Forms SharePoint hosts the InfoPath form InfoPath Form Templates
20
Hosting Environment Create and Bind InfoPath Forms Data from SharePoint is passed in InfoPath Form Templates SharePoint object _________
21
Hosting Environment Create and Bind InfoPath Forms Submit the form, saves data to SharePoint InfoPath Form Templates SharePoint object _________
22
Hosting Environment Create and Bind InfoPath Forms SharePoint starts the workflow InfoPath Form Templates SharePoint object _________ SharePoint -> Task/WF Host
23
SharePoint Task instructions = “Please do this.” Task data as xml Create and Bind InfoPath Forms Pushing data from WF task into InfoPath InfoPath Task Form <z:row xmlns:z=“#RowSetSchema” ows_MetaInfo_instructions=“”/>
24
Deploy to SharePoint Server Generate Metadata files Feature.XMLWorkflow.XML Install/activate the “feature” IISReset Associate workflow to the list/library
25
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
26
Building the Workflow
27
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
28
For More Information… WF on the.NET 3.0 (WinFX) Developer Center: http://msdn.microsoft.com/winfx/technologies/workflow/default.aspx http://msdn.microsoft.com/winfx/technologies/workflow/default.aspx Downloads: Microsoft Visual Studio 2005 Extensions for Windows Workflow Foundation Beta 2.2 Microsoft Visual Studio 2005 Extensions for Windows Workflow Foundation Beta 2.2 Windows Workflow Foundation - Beta 2.2 Windows Workflow Foundation - Beta 2.2 Windows Workflow Foundation Beta 2 HOL Windows Workflow Foundation Beta 2 HOL 2007 Microsoft Office System Beta 2 2007 Microsoft Office System Beta 2 Microsoft® Windows® Software Development Kit (SDK) for Beta 2 of Windows Vista and.NET 3.0 (WinFX) Runtime Components Microsoft® Windows® Software Development Kit (SDK) for Beta 2 of Windows Vista and.NET 3.0 (WinFX) Runtime Components Windows SharePoint Services SDK Beta 2 Windows SharePoint Services SDK Beta 2 Microsoft Office SharePoint Server SDK Beta 2 Microsoft Office SharePoint Server SDK Beta 2 2007 Office System Starter Kit: Enterprise Content Management Starter Kit 2007 Office System Starter Kit: Enterprise Content Management Starter Kit
29
Adam Calderon More info on InterKnowlogy www.InterKnowlogy.com More info on InterKnowlogy www.InterKnowlogy.com www.InterKnowlogy.com Contact Information Contact Information E-mail: adamc@InterKnowlogy.com adamc@InterKnowlogy.com Phone: 760-930-0075 x274 Blog: http://blogs.InterKnowlogy.com/AdamCalderon http://blogs.InterKnowlogy.com/AdamCalderon About Adam Calderon Microsoft ® MVP – C# Microsoft ® ASP.NET (UI Server Frameworks) Advisory Council Developer / Author / Speaker
30
Thank You!
31
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
32
Fill out a session evaluation on CommNet and Win an XBOX 360!
33
The 2007 Microsoft Office System Clients. Servers. Solutions. Install Beta 2 today! It’s in your attendee bag Learn more at the Office System TLC Demo Stations / Hands-on-Labs / Chalk-talks Get more information Get more information http://www.microsoft.com/office/preview/default.mspx http://msdn.microsoft.com/office/ http://www.microsoft.com/office/preview/default.mspx http://msdn.microsoft.com/office/Talk Lab Demo
34
© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.