Questions? Call Us 800.260.9357
Home
Our Work
Services
Small Business Intranet
Samples
Training
SharePoint
  

dbWeb > Blogs > Guy Davis
SharePoint Workflows Series - Redux
After a year's hiatus with another company working strictly in PHP/Mysql/JavaScript I'm back doing SharePoint work and will continue my Workflow series next week.
 
Thankfully the curve to come back up to speed on SharePoint has been short and I'm greatly looking forward to becoming strong in SharePoint technologies, especially custom development using Visual Studio.
 
Look for lots of interesting posts in the future. I will be primarily focused on Workflow for quite some time until I exhaust that topic so let's get started...
SharePoint Workflows Series - Part I - Overview
In an effort to learn all about SharePoint workflows I'm going to start a series of articles beginning with out-of-the-box workflows and ending with a complete tutorial about how to program workflows using the Windows WF object model.
 
So what are workflows in SharePoint? Workflows are nothing more than an automated sequence of events that are triggered by some other event on a SharePoint List or Document Library.
 
MSDN describes a workflow as "...a natural way to organize and run a set of work units, or activities, to form an executable file representation of a work process. "
 
The triggering event can either be the creating of a new item, change of an item, or a manual workflow initiation by the user.
 
Here's an example of a common workflow in many office environments. John wants to go on vacation. He submits a paid time off request to his manager (Sally) for approval by filling out a form and walking it over to Sally's office.
 
Sally then reviews the request and marks it approved or rejected.
 
If it's appoved Sally has her secretary update the company calendar to show that John will be off those days that he requested.
 
And finally she returns a copy of the request to John stamped approved or rejected.
 
In SharePoint you can take the above scenario and create a workflow which will save much of the leg work and time for the employees involved.
 
In my next installment I'll talk about the lone WSS workflow called the three-state workflow.
SharePoint, oh how I loathe thee

Picture by Achim Hering from the Wikimedia Commons area.

As a long time developer I've worked with all kinds of technologies and I've got to say that SharePoint has been one of the most frustrating beasts of them all.

The problem is SharePoint gives an end user remarkable flexibility right out of the box for doing all kinds of things which is one of the reasons it's so amazingly popular. Very few technologies let non-technical folks create and manage lists and libraries for collaboration, handle user permissions, personalize and create web pages, wikis, blogs, meeting workspaces, and do it all with just a few clicks of the mouse button. And that's in WSS alone!!! What's not to like?

Well I'll be the first to admit that SharePoint is amazing for what it can do but if you're a fellow developer then I'm sure you've spent more than a few minutes scratching your head and wondering why certain things aren't easier to do.

For instance, have you ever had to edit the source of a page in SharePoint Designer that's littered with reams of XML and XSLT? Maddening! Add just a few custom web parts to a page and just see how quickly Designer turns into a dog. That's where having a great text editor comes in really handy (I use JGSoft's EditPad Pro).

Or wouldn't it be nice if you could filter a lookup column in a list or library on any criteria at all? I can think of at least ½ dozen clients where that functionality would have been invaluable.

What about easily changing how a site looks without resorting to the outdated use of themes? Or creating a new feature by hand-editing CAML?

I could go on but let me say while there is a lot I don't like about SharePoint, the strengths far outweigh its shortcomings… and I fully expect Microsoft to address many of those shortcomings in the next Office 14 release (slated for 2009).

And working with SharePoint has given me the opportunity to get re-involved in Microsoft technologies (I haven't touched an MS website since ASP – Pre .NET). So after years in the LAMP world I'm now learning about all of the exciting things on the horizon like Cloud Computing, OSLO, LINQ, Workflow in .NET 4.0, web services, and oh, so much more.

Stay tuned for tips on how to get around some of the more interesting SharePoint problems you might come across. I promise to put on a happy face next time.

Thinking of becoming a SharePoint Developer?
If you're a ASP.NET developer and are thinking of developing in SharePoint (and who wouldn't considering the hourly rates SharePoint devs are getting) then you should definitely watch the four introductory podcasts at dnrTV.com.
 
Sahil Malik gives a hilarious and sometimes irreverent look at what SharePoint is and what it takes to be a developer. The shows can be found at:
 
 
I laughed so hard at times I was in tears. Sahil knows his stuff and he presents it eloquently so you won't be bored as he takes you through lists, libraries, content types, CAML and much, much more.
 
By the end of the 4 - hour long podcasts you might rethink your desire to make money programming with the SharePoint object model but you definitely won't be bored.

 ‭(Hidden)‬ Admin Links