WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices
date post
25-Feb-2016Category
Documents
view
65download
2
Embed Size (px)
description
Transcript of WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices
BrightStarr Services
WF 100 - SharePoint Designer Workflow: Tips, tricks and best practicesPaul Galvin1Agenda About Paul and BrightStarr (brief)The Arc of a SharePoint Workflow ProjectData entryProcessingDashboardsPatternsWhat are they?What are they important?Discuss business solutions in terms of the Arc and patternsExtending SPD to enlarge its scopeWrap-up
Quick note on this presentationMy laptop doesnt like Denver
Re-created this presentation without any of my demos.
About Paul GalvinMicrosoft MVP since July 2008Working on a book on this very topicPaul Galvin Workflow on Amazon.comWorking with SharePoint since January 2007(MOSS just came out)
Twitter: @pagalvinEmail: galvin.paul@gmail.comBlog: www.mstechblogs.com/paul
About BrightStarrFounded in UK in 2005 Microsoft Gold PartnerGlobal reach with offices in USA (Paramus, NJ, Houston, TX) and the UK
Microsoft Competencies
Digital MarketingPortals and CollaborationWeb DevelopmentCustomer Relationship ManagementAs a 100% dedicated SharePoint Company we offer a full range of SharePoint services including:
Infrastructure Architecture and DesignInformation Architecture and Business AnalysisUser Experience and Interaction DesignSharePoint and .NET DevelopmentSharePoint TrainingDedicated SharePoint Support 5Our web site and linksSuccess Storieswww.brightstarr.com/US/Pages/Success-Stories.aspx
SharePoint DesignView our cool wall of designswww.brightstarr.com/US/Pages/SharePoint-Design.aspx
6The Arc of a SharePoint Workflow SolutionRequirements gatheringDefining content typesNaming conventionUse lookup columnsImplement the solutionProvide a dashboard
Avoid:List columnsJumping in without considering the dashboardMyopic requirements gathering(You can always choose to ignore a requirement)Workflow Solutions Extend Beyond SPDSPD is the engineSharePoint as a whole provides the solution platformDont fall into the trap thinking that SPD workflow is all that really matters
HR On-boarding:SPD workflow assigns tasksOtherwise, all the rest is about dashboarding and human intervention when necessary
PatternsAt home, I always put the keys in the same place
Patterns are very importantThey save timeThey ensure that work is done more quickly with high qualityProvide a consistent end user experience
PatternsTwo types of patterns:
Business patternsTechnical patterns
End users see and live with the business patterns
Solution designers use technical patterns to accomplish the task at handCommon PatternsThere mare many, many patterns.
Here are a few:
DelegationAuditingSecurity-relatedTime BankNotifications
Lets dig into a couple of them.DelegationBoth a business and technical pattern
From business side:Tasks are assigned to peoplePeople go on vacation or become unavailable for other unplanned reasons
From technical side:How do you set up delegation?How do you use it?Video and blog to be posted next weekAuditingDont rely upon SharePoint workflow historyIts purged automaticallyIts not easy to report against
Instead:Use a custom listRely upon created timestamp to see sequencingAudit often and frequentlyAlways provide this minimum info: who, what, key value and a link to the base itemVideo / blog entry to follow before end of May Patterns and Business SolutionsWalk through some solutions:Helpdesk TicketingHR Time Off Management
Helpdesk Ticketing - RequirementsCapture the requestTry to automatically assign to someone based on problem typeAuto-assign patternVery similar to delegationIntegrate delegationSecurityOnly IT can see my stuffSelf-serviceEmail notifications at key points during my tickets lifespanMetrics reportingHelpdesk Ticketing - ImplementationCustom list to capture the needBack the list with a content typeFollow a naming convention (HD_) for all site columns and the content type itselfUse SPD or InfoPath to improve the UIUse content approval on the list to implement securityImplement the metrics feeder patternTrack events in a custom list(submitted, who submitted it, how long it was open)Dashboard for self-serviceEmail notification includes a link to search with appropriate keywords
Helpdesk DashboardSharePoint dashboards are easyViews on listsCreate web part pagesAdd the helpdesk request list to the dashboardAdd it multiple timesAdd with different views
HR Time Off Management - RequirementsSecurity is paramount
End users become lawyers when their vacation is being calculated
Time bank patternEveryone has types of available time off
Time Off - ImplementationAs always, custom lists backed with content typesAlways follow a naming convention
Security pattern: Use one list per approving managerContent approval wont be sufficient in this caseThe approving managers direct reports request time via this list
Auditing is especially importantRe-use the same auditing patternLog all requestsLog all dispositions
Workflow updates master timebank.Time Off - DashboardTwo audiencesHR managersIndividual employees
This is a good case for item level security* on the time bank End users can go directly to the time bankItem level security ensures that they cannot see anyone elses timeHR can view everyones time
(*) Item level security ios usually a bad idea
Patterns and SharePoint DesignerBusiness patterns transcend SharePoint DesignerTheres a lot of stuff you want to do with SPD that simply cant be done, or shouldnt be doneIn these cases make a decision:Abandon SPDExtend SPDExtending SPDSharePoint Designer is extensibleCustom activitiesCustom conditions
Implemented using C# code.
Can follow same feature/solution framework as web parts (and other technical artifacts)
Why Bother Extending SPD?Invoicing Story from the old daysHuman beings spending a lot of time doing inappropriate things
Extend SPD so that highly trained/skilled IT resources can spend their time doing the kinds of things that require highly trained and skilled resources
This is not a knock against end users / power users.What does it take to extend SPD?Some strong SharePoint coding skillsA good example upon which to base your first effort (i.e. a pattern)Strong developer can get first custom activity working in a few days (fully tested and deployed)
You should think about extending SPD in the same way that you think about creating a content type its a little harder but really, its no big dealGood Candidates for SPD Custom ActivitiesCalculate next business dayTake company calendar and weekends into account when assigning due dates.
IterationsIterate over all the items in the list
Item level securityWhen content approval isnt good enough
Site GovernanceMiscellaneous tips and tricksXOML files (zommel)Role within the SharePoint workflow framework data to the engineText file that can be edited manuallyBest use richly formatted emailsCreate an email in outlookView sourcePut the source into the right place in the XOML file
Miscellaneous tips and tricksSecurityUse the update workflow variable activity Look up from a secured listEmpty result means that current user does not have access
Secure the list by means of SharePoint users, SharePoint groups and active directory groups
Example: Conditional approval$500 approvers$10,000 approvers$50,000 approvers
SummaryKeep the Arc in mind whenever you sit down to start a new business solutionRequirements (cast a wide net)Implementation, using patternsDashboards for self-service and exceptions managementDiscover and use patterns in your daily routine with SharePoint Designer workflowExtend SPD so that the right people with the right skill sets are doing the most appropriate things at all times
Questions?Pauls contact information:Galvin.paul@gmail.comTwitter: @pagalvinwww.mstechblogs.com/paul
BrightStarr goodies and business cards
Recommended