3. Speaker Bio
•
•
•
•
•
•
•
•
PPP Consulting Ltd
Microsoft MVP SharePoint Server
MCSE: SharePoint
Independent Consultant
Author/Co-author of 10+ SharePoint Books
Trainer
Worked with SharePoint since 2001
Based in UK, work in Europe & US
•
Blogs/Web Site
•
http://www.sharepointdesignerstepbystep.com/
Twitter: @pjcov
5. Change Management Process:
How You Think It Works
1.IT Support Raises Change Request
2.Change Request Approved by
Technical Reviewer (TR)
3.Change Request Approved by
Change Control Board (CCB)
4.Change
Completed
5
6. Change Management Process:
What Really Happens
•
•
•
•
•
•
•
•
•
IT Support raises change request
Technical Reviewer wants more information
IT Support provides information
Technical Reviewer approves change request
Change Control Board rejects change request
IT Support amends change request
Technical Reviewer rejects change request
IT Support who is dealing with the change is on leave
and change request passed to another IT Support
Person
And so on…
6
10. Key Component:
Advanced Task Actions
•
•
Not available in SharePoint Foundation
Deprecated in 2013 but still present in 2010-style
workflows
•
Based on in-the-box approval workflows
•
•
•
Start Approval Process
Start Feedback Process
Start Custom Task Process (build your own)
Can modify in SharePoint Designer
Included as Sub Process within your Workflow
Your Workflow pauses until Task Action Completes
10
11. Start Task Action Behaviour
•
•
Behaves like Built-in Workflow, e.g.,
Approval – SharePoint 2010
Includes
o
o
•
Basic Workflow Conditions/Actions
New category of task actions
Needs to be Configured
o
o
o
Reviewers
Serial (Default) or Parallel
Dates for Task Completion
11
13. Three Levels Of Customization
•
Behaviour of Over All Task Process
o
o
•
•
o
o
•
•
When the Task Process Starts
When the Task Process is Running
When Item is Deleted
When Item is Changed
When the Task Process is Cancelled
When the Task Process Completes
Behaviour of Single Task
o
o
o
o
o
Before a Task is Assigned
When A Task is Pending
When A Task Expires
When A Task is Deleted
When A Task Completes
Completion Conditions for Task Process
o
Run every time an individual Task item is completed.
13
14. Task Behaviour Actions
•
•
•
•
•
•
End Task Process
Set Content Approval
Status (as author)
Wait for Change in
Task Process Item
Wait for Deletion in
Task Process Item
Set Task Field
Rescind Task
•
•
•
•
•
•
•
•
Append Task
Delegate Task
Escalate Task
Forward Task
Insert Task
Reassign Task
Request a Change
Send Task Email
14
17. Looping
•
•
Needed:
Variable
Loop
Switch
o
o
o
No
While /
For / Until
Yes
Steps:
o
o
o
o
•
•
•
Set Variable to Initial State Immediately Before Loop
Put a Switch inside Loop
Switch Evaluates Variable and Branches Accordingly
When you need to Change State,
Change the Value of Variable
Wait for looping to occur
Make Sure at Least One of the States Causes Loop
to End
18. Can You Do This In SharePoint 2010
Workflows?
•
•
One Column to Store Current State
One Startup workflow, One Workflow for each State
o
o
o
•
• (except the workflow that caused the change to take place, of course)
Each Workflow First checks State Column
• Workflow Instance Terminated if Not Target State
This isn’t practical, though
o
•
Last Step of Each Workflow sets Column Value
All State Workflows Started by Modifying an Item
o
It effectively Starts all State workflows (other than the
current one) with Every Change
Complicated to Provide an Audit Trail
Look to Use Advance Task Actions and One to Two
associated (Secondary) Workflows
19. What is A Secondary Workflow?
•
When a Workflow (Primary)
o
o
•
Adds New List Item
Changes the metadata of a List Item
Second Workflow is Triggered by:
o
o
Addition
Change
19
20. Using a Secondary Workflow
Primary
Secondary
New CR or CR Status
Changed to
CR Pending
Technical Review
Needed, Primary
Workflow Sets CR
Status
Primary
Workflow
Stops
•
Task Item Fields
useful in a
Secondary
Workflow
Secondary Workflow,
sends email to
Change Requester &
waits
o
Task Completed
o
o
Workflow Item ID
Workflow List ID
Workflow Name
Secondary
Workflow
Stops
20
21. Reusable Workflows
•
•
•
•
•
Greatest Improvement incorporated into SPD
Workflow Templates
Created against a content type
Associated to a list or library
o
o
Needs more thought than when creating a list
workflow
o
o
•
Uses that content type
Available only within site where reusable workflow created
Associated columns
Association form as well as possibly initiation and task
forms
Basis for Global reusable workflows
21
24. How to Redesign the Solution
•
Benefits
o
o
•
Reduce complexity
Eliminate need to end workflow and ask user
to restart
Technique
o
o
o
Remove task processes
Replace with stages and Start Task actions
Establish transitions between stages
26. What is a Stage?
State
Power On
Transistion
•
•
Button Clicked
Event
Power Off
Button Clicked
Stages (States)
o
Logical set of a tightly-coupled group of activities
Transitions
o
Conditions that move the workflow to the beginning of
another stage
26
27. Benefits of Stages
•
•
•
Fits both short and long process flows
Users can validate their role in a stage
Easy to add stages without major rework
28. Sequential v Stage Workflows
•
Sequential
• Predictable
• Wait, then proceed
• Author controls
process
• Decisions happen
within workflow
• Workflow directs
actions
•
Stage
• Event-Driven
• Stay at one stage until
it changes
• Participants control
process
• Decisions happen
outside the workflow
• Workflow governs
actions
28
29. Benefits of Stages
•
You can avoid:
o
o
o
o
•
A lot of If-Then-Else conditions
A lot of looping
Very confusing diagrams
“GoTo” statements
The “current stage” is useful for
live status updates
30. SharePoint 2013 CR Workflow
Initialise
variables
Technical
Review
Process
If any value equals
value
Yes
If any value equals
value
CCB Review
Process
CR Approved
Workflow
Completed
No
No
If any value equals
value
Yes
Yes
CR Denied
Yes
If any value equals
value
No
Yes
Research
Needed
No
If any value equals
value
No
30
33. Useful Links
•
•
Workflows in SharePoint 2013
o
o
SharePoint 2013 workflows in Visio
o
•
http://blogs.office.com/b/visio/archive/2012/11/12/sharepoint-2013-workflowsin-visio.aspx
How to create a SharePoint Designer 2013 workflow with app step
o
•
http://blogs.msdn.com/b/sharepointdesigner/archive/2012/11/22/exampleworkflow-with-app-step-usage.aspx
Demand Management, Now with SharePoint Designer
o
•
•
http://technet.microsoft.com/en-us/sharepoint/jj556245.aspx
http://msdn.microsoft.com/en-us/library/jj163986.aspx
http://blogs.office.com/b/project/archive/2012/09/18/demand-managementsharepoint-designer-project-server.aspx
What’s new in Microsoft Office Developer Tools for Visual Studio 2012,
from a workflow development perspective
o
http://www.sharepoint-reference.com/Blog/Lists/Posts/Post.aspx?ID=28
Getting started developing Project Server 2013 workflows
o
http://msdn.microsoft.com/en-us/library/office/ee767694.aspx
34. Please rate this session!
Fill out the survey and get a chance to win a Surface
Hinweis der Redaktion
Day 1: 16:20 – 17:30 pmIn SharePoint 2010, using SharePoint Designer 2010 you could not create loops or create a state workflow. Using a workflow developed for one of her clients concerning a Change Request process, Penny will look at using advance task actions and a secondary workflow to overcome this limitation. She will then look at how she would do this differently with SharePoint 2013. Level 200/300
You can use these three identifiers in a variety of ways, including:Deciding which items to act upon The secondary workflow can begin by checking one or more of these fields for each new task item, and then using that information to decide whether to end immediately or to continue to run. For example, the secondary workflow can take further action only on tasks that were created by one or more specified primary workflows.Inserting information in an e-mail message Using these fields, the secondary workflow can send an e-mail message that includes the identity of the original item, the list where that original item resides, or the workflow that created the current task item.Workflow Item ID In the browser, view the list where the item is located. If necessary, modify the view to include the ID column. Note that once the ID of an item is assigned, it is permanent and does not change, regardless of how many other items are added, changed, and deleted in that list.Workflow Name For each workflow, this value is identical to the name specified for that workflow in the Workflow Designer. Note that because no two workflows in any site can have the same name, this value is always unique within the current site.Workflow List ID To find this value for any list, view the list in the browser, and then, on the Settings menu, click either List Settings or Document Library Settings. The Workflow List ID appears in the query string of the URL and follows the "List=" text.Why you need a secondary workflow for managing task due datesThe primary workflow that creates a task item pauses as soon as the task item has been created and assigned.While the primary workflow is paused, it cannot set the Due Date value of the task item, check the completion status of the task when the due date arrives, or take appropriate action for task items that are not complete by their due dates.A secondary workflow running on the Tasks list, however, can perform all of these functions while the primary workflow is still paused.
State machines have been around in computer science for a long time. You'll find they are especially popular in reactive systems, like the software for video games and robotics. Designers use state machines to model a system using states, events, and transitions. A state represents a situation or circumstance. In the diagram below, we have a state machine with two states: a "power on" state and a "power off" state. The machine will always be in one of these two states. An event is some outside stimulus. In figure 1, we only have one type of event - a button click event. The state machine will respond to this event in either the "power on" or the "power off" state. Not all states have to respond to the same events. A transition moves the state machine into a new state. A transition can only occur in response to an event. Transitions don't have to move the state machine to a new state - a transition could loop back to the same state. When the machine receives a button click event in the "power off" state, it transitions to the "power on" state. Conversely, if the machine is in the "power on" state and receives a button click event, it moves to the power off state. Implied in the concept of a state transition is that some action will take place before or after the transition. A state machine doesn’t merely store state - it also executes code when events arrive. In our diagram the state machine would be controlling the flow of electricity by opening or closing a circuit when it arrives in a new state.“On the other hand, the steps in your solution may be random in nature and never really have a clear ending. For example, the participants in an HR workflow might move an employment resume from state to state. The resume might be in a state of being considered, interviewing, or archiving for future. The resume might be re-activated or updated at any time. Because there is no linear path of steps for the resume, it would be excessively hard to produce conditional rules to capture all possible paths. In these situations, you would want to manage your workflow as a series of states and transitions. Use the state machine workflow template to get started there.”