OFC312 Developing Workflows for the 2007 Microsoft Office System and Windows SharePoint Services...
-
date post
21-Dec-2015 -
Category
Documents
-
view
212 -
download
0
Transcript of OFC312 Developing Workflows for the 2007 Microsoft Office System and Windows SharePoint Services...
OFC312OFC312Developing Workflows for Developing Workflows for the 2007 Microsoft Office the 2007 Microsoft Office System and Windows System and Windows SharePoint Services SharePoint Services (version 3)(version 3)
OFC312OFC312Developing Workflows for Developing Workflows for the 2007 Microsoft Office the 2007 Microsoft Office System and Windows System and Windows SharePoint Services SharePoint Services (version 3)(version 3)Adam CalderonAdam CalderonPrincipal Engineer - InterknowlogyPrincipal Engineer - InterknowlogyMicrosoft MVP – C#Microsoft MVP – C#
Session Objectives And Session Objectives And Key TakeawaysKey Takeaways
Session Objective: Session Objective: Office workflow development in Microsoft Visual Studio 2005Office workflow development in Microsoft Visual Studio 2005
Windows SharePoint Services V3 & 2007 Microsoft Office Windows SharePoint Services V3 & 2007 Microsoft Office system workflow built on top of Windows Workflow Foundation system workflow built on top of Windows Workflow Foundation platformplatform
Workflow is a powerful tool for driving customer business Workflow is a powerful tool for driving customer business processesprocesses
Microsoft Office InfoPath 2007 enables symmetric rich/reach Microsoft Office InfoPath 2007 enables symmetric rich/reach form authoringform authoring
Key Takeaways:Key Takeaways:Windows Workflow Foundation is a framework for building Windows Workflow Foundation is a framework for building workflow into applicationsworkflow into applications
A single workflow technology for WindowsA single workflow technology for Windows
WF has good integration into 2007 Office system & OSSWF has good integration into 2007 Office system & OSS
AgendaAgenda
Options for workflow developmentOptions for workflow development
The business processes we will modelThe business processes we will model
Demo: Using WF in OSS & 2007 Office Demo: Using WF in OSS & 2007 Office systemsystem
Introduce WorkflowIntroduce Workflow
Describe the design, develop, debug Describe the design, develop, debug & deploy steps& deploy steps
Demos: Demos: Implementing Workflows in SPS & Office 2007Implementing Workflows in SPS & Office 2007
Building, Implementing and deploying Building, Implementing and deploying workflows for SharePoint & Office 2007 in workflows for SharePoint & Office 2007 in VS.NET 2005VS.NET 2005
Windows Workflow Foundation Windows Workflow Foundation Vision:Vision:
Deliver best-in-class workflow platformDeliver best-in-class workflow platform& tools for Microsoft products and& tools for Microsoft products and
partner/customer ecosystempartner/customer ecosystem
Single workflow technologySingle workflow technology for Windowsfor WindowsBase for Microsoft products and ISV/customer solutionsBase for Microsoft products and ISV/customer solutions
One technology for human and system workflowOne technology for human and system workflow
A A frameworkframework not a server product or not a server product or applicationapplication
An extensible framework based on Microsoft .NETAn extensible framework based on Microsoft .NET
Ships as Part of .NET 3.0 (WinFX)Ships as Part of .NET 3.0 (WinFX)
Make workflow Make workflow mainstreammainstream for .NET for .NET developersdevelopers
Strong workflow partner & solution ecosystem Strong workflow partner & solution ecosystem
Reach mainstream application developer Reach mainstream application developer
Stru
cture
d A
d H
oc
Stru
cture
d A
d H
oc
Microsoft Visual Studio Microsoft Visual Studio and workflow SDKand workflow SDK
Office SharePoint Office SharePoint Designer workflowsDesigner workflows
Out-of-the-Box Out-of-the-Box SolutionsSolutions(with customization)(with customization)
Application Task and Issue Tracking
Routing & ApprovalReview
ApprovalSignature collectionEast Asian workflow
Office Server FeaturesList Moderation
Publishing ProcessDocument Expiration
Document ProcessesDocument ProcessesSpec Review Spec Review
Weekly Status ReportWeekly Status Report
Custom Tracking AppsCustom Tracking AppsService RequestsService Requests
Asset TrackingAsset Tracking
Custom Form ActionsCustom Form ActionsEmail NotificationEmail Notification
Exception HandlingException Handling
LOB Integration
Purchase Order Processing
Product lifecycle management
Workflow ScenariosWorkflow Scenarios
The Business ProcessThe Business Process
Request feedback
Send Task to Reviewer
Reviewer enters and
sends feedback
Review Completed
Using WF in SharePoint 2007 & 2007 Office SystemUsing WF in SharePoint 2007 & 2007 Office System
What is a workflow?What is a workflow?A workflow is a classA workflow is a class
A workflow class may be defined in markupA workflow class may be defined in markup
Imports System.Workflow.ActivitiesPublic Class MyWorkflow Inherits SequentialWorkflow …
End Class
<?Mapping XmlNamespace="Activities" ClrNamespace="System.Workflow.Activities" Assembly="System.Workflow.Activities" ?>
<SequentialWorkflow x:Class="MyWorkflow" xmlns="Activities" xmlns:x="Definition"> …</SequentialWorkflow>
How is a workflow put together?How is a workflow put together?Workflow constructor configures contained Workflow constructor configures contained activities (like forms & controls)activities (like forms & controls)
Imports System.Workflow.ActivitiesPartial Public Class MyWorkflow Inherits SequentialWorkflow Public Sub New() MyBase.New() InitializeComponent() End SubEnd 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.DelayEnd Class
What is an activity?What is an activity?
Activities are the building blocks of Activities are the building blocks of workflowsworkflows
The unit of execution, re-use and composition The unit of execution, re-use and composition Basic activitiesBasic activities are steps within a workflow are steps within a workflowComposite activitiesComposite activities contains other activities EG: contains other activities EG: SequenceSequenceBase Activity Library provides out-of-the-box Base Activity Library provides out-of-the-box activity setactivity setPartners and customers author custom activities Partners and customers author custom activities EG: “Review Documents”EG: “Review Documents”
What is an activity?What is an activity?
Activities are classes:Activities are classes:PropertiesProperties andand eventsevents are defined by the are defined by the activity author and programmable from activity author and programmable from workflowsworkflowsHas Has methodsmethods that are coded by the activity that are coded by the activity author but invoked by the workflow runtime author but invoked by the workflow runtime (EG: Execute) or designer(EG: Execute) or designerCan be built into workflow assemblies or Can be built into workflow assemblies or deployed as re-usable librariesdeployed as re-usable libraries
What is an activity?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"; }}
Development StepsDevelopment Steps
1.1. Model workflow in Microsoft Visual StudioModel workflow in Microsoft Visual Studio
2.2. Create and bind Microsoft Office InfoPath Create and bind Microsoft Office InfoPath formsforms
3.3. Deploy to Microsoft Office SharePoint Deploy to Microsoft Office SharePoint ServerServer
4.4. Debug the running workflowDebug the running workflow
Model & Building Workflows In Model & Building Workflows In Visual Studio 2005Visual Studio 2005
Prerequisites:Prerequisites:Office SharePoint Server 2007 Beta 2Office SharePoint Server 2007 Beta 2
.NET 3.0 (WinFX) Runtime Components.NET 3.0 (WinFX) Runtime Components
Microsoft Visual Studio 2005 Extensions for Microsoft Visual Studio 2005 Extensions for Windows Workflow Foundation Beta 2.2 Windows Workflow Foundation Beta 2.2
Microsoft Windows Software Development Kit Microsoft Windows Software Development Kit (SDK) for Beta 2 of Microsoft Windows Vista (SDK) for Beta 2 of Microsoft Windows Vista
2007 Office System Starter Kit: Enterprise 2007 Office System Starter Kit: Enterprise Content Management Starter Kit Content Management Starter Kit
The Business Process WorkflowThe Business Process Workflow
Request feedback
Send Task to Reviewer
Reviewer enters and
sends feedback
Review Completed
Create and Bind InfoPath FormsCreate and Bind InfoPath FormsTypes of InfoPath forms in WorkflowsTypes of InfoPath forms in Workflows
Association formAssociation formUser adds workflow to a listUser adds workflow to a list
For setting options on WFFor setting options on WF
Initiation formInitiation formFor manual workflow startFor manual workflow start
Collects workflow parametersCollects workflow parameters
Task completion formTask completion formA user to edit a task from WFA user to edit a task from WF
User edits or enters dataUser edits or enters data
Modification formModification formLinked off WF status pageLinked off WF status page
Can modify in-flight WFCan modify in-flight WF
Create and Bind InfoPath FormsCreate and Bind InfoPath FormsInfoPath forms are used in these placesInfoPath forms are used in these places
Hosting Environment Hosting Environment
Create and Bind InfoPath FormsCreate and Bind InfoPath FormsSharePoint hosts the InfoPath formSharePoint hosts the InfoPath form
InfoPath Form Templates
Hosting Environment Hosting Environment
Create and Bind InfoPath FormsCreate and Bind InfoPath FormsData from SharePoint is passed inData from SharePoint is passed in
InfoPath Form Templates
SharePoint object
_________
_________
_________
Hosting Environment Hosting Environment
Create and Bind InfoPath FormsCreate and Bind InfoPath FormsSubmit the form, saves data to SharePointSubmit the form, saves data to SharePoint
InfoPath Form Templates
SharePoint object
_________
_________
_________
Hosting Environment Hosting Environment
Create and Bind InfoPath FormsCreate and Bind InfoPath FormsSharePoint starts the workflowSharePoint starts the workflow
InfoPath Form Templates
SharePoint object
_________
_________
_________
SharePoint -> Task/WF HostSharePoint -> Task/WF Host
SharePoint Task
•instructions =“Please do this.”
Task data as xml
Create and Bind InfoPath Forms Create and Bind InfoPath Forms
Pushing data from WF task into InfoPathPushing data from WF task into InfoPath
InfoPath Task FormInfoPath Task Form
<z:row xmlns:z=“#RowSetSchema”
ows_MetaInfo_instructions=“”/>
Deploy to SharePoint ServerDeploy to SharePoint Server
Generate Metadata filesGenerate Metadata filesFeature.XMLFeature.XML
Workflow.XMLWorkflow.XML
Install/activate the “feature”Install/activate the “feature”
IISResetIISReset
Associate workflow to the list/library Associate workflow to the list/library
Debug the Running WorkflowDebug the Running Workflow
Visual Studio running on server machineVisual Studio running on server machine
Open the workflow in Visual StudioOpen the workflow in Visual Studio
Attach to all of the W3WP ProcessesAttach to all of the W3WP Processes
Start the workflowStart the workflow
Building the WorkflowBuilding the Workflow
Call to ActionCall to Action
WF plugs a large hole in the platform that WF plugs a large hole in the platform that used used to be hard because it had to be built by to be hard because it had to be built by handhand
WF provides a design time environment WF provides a design time environment that makes it easy to build even the most that makes it easy to build even the most complex workflowscomplex workflows
The 2007 Office system and SharePoint The 2007 Office system and SharePoint 2007 WF integration is fantastic; 2007 WF integration is fantastic; consequently, integrated solutions are consequently, integrated solutions are easy to design and buildeasy to design and build
For More Information…For More Information…
WF on the .NET 3.0 (WinFX) Developer WF on the .NET 3.0 (WinFX) Developer Center:Center:http://msdn.microsoft.com/winfx/technologies/workflow/defahttp://msdn.microsoft.com/winfx/technologies/workflow/default.aspxult.aspx
Downloads:Downloads:Microsoft Visual Studio 2005 Extensions for WindowsMicrosoft Visual Studio 2005 Extensions for Windows Workflow Foundation Beta 2.2 Workflow Foundation Beta 2.2 Windows Workflow Foundation - Beta 2.2Windows Workflow Foundation - Beta 2.2 Windows Workflow Foundation Beta 2 HOL Windows Workflow Foundation Beta 2 HOL 2007 Microsoft Office System Beta 22007 Microsoft Office System Beta 2Microsoft® Windows® Software Development Kit Microsoft® Windows® Software Development Kit (SDK) for Beta 2 of Windows Vista and .NET 3.0 (SDK) for Beta 2 of Windows Vista and .NET 3.0 (WinFX) Runtime Components(WinFX) Runtime ComponentsWindows SharePoint Services SDK Beta 2Windows SharePoint Services SDK Beta 2Microsoft Office SharePoint Server SDK Beta 2Microsoft Office SharePoint Server SDK Beta 22007 Office System Starter Kit: Enterprise Content 2007 Office System Starter Kit: Enterprise Content Management Starter KitManagement Starter Kit
Adam CalderonAdam Calderon
More info on InterKnowlogyMore info on InterKnowlogywww.InterKnowlogy.com www.InterKnowlogy.com
Contact InformationContact InformationE-mail: E-mail: [email protected]@InterKnowlogy.comPhone: Phone: 760-930-0075 x274760-930-0075 x274Blog: Blog:
http://blogs.InterKnowlogy.com/AdamCalderon http://blogs.InterKnowlogy.com/AdamCalderon
About Adam CalderonAbout Adam CalderonMicrosoftMicrosoft®® MVP – C# MVP – C#MicrosoftMicrosoft®® ASP.NET (UI Server Frameworks) ASP.NET (UI Server Frameworks) Advisory CouncilAdvisory CouncilDeveloper / Author / SpeakerDeveloper / Author / Speaker
Thank You!Thank You!
ResourcesResourcesTechnical Chats and Webcastshttp://www.microsoft.com/communities/chats/default.mspx http://www.microsoft.com/usa/webcasts/default.asp
Microsoft Learning and Certificationhttp://www.microsoft.com/learning/default.mspx
MSDN & TechNet http://microsoft.com/msdnhttp://microsoft.com/technet
Virtual Labshttp://www.microsoft.com/technet/traincert/virtuallab/rms.mspx
Newsgroupshttp://communities2.microsoft.com/communities/newsgroups/en-us/default.aspx
Technical Community Siteshttp://www.microsoft.com/communities/default.mspx
User Groupshttp://www.microsoft.com/communities/usergroups/default.mspx
Fill out a session Fill out a session evaluation on evaluation on
CommNet andCommNet and Win an XBOX Win an XBOX
360!360!
The 2007 Microsoft Office The 2007 Microsoft Office System System Clients. Servers. Clients. Servers. Solutions.Solutions.
Install Beta 2 today! Install Beta 2 today! It’s in your attendee bagIt’s in your attendee bag
Learn more at the Office System TLCLearn more at the Office System TLCDemo Stations / Hands-on-Labs / Chalk-talksDemo Stations / Hands-on-Labs / Chalk-talks
Get more informationGet more informationhttp://www.microsoft.com/office/preview/default.mspxhttp://www.microsoft.com/office/preview/default.mspxhttp://http://msdn.microsoft.commsdn.microsoft.com/office//office/
TalkTalk
LabLab
DemoDemo
© 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.