Tuesday 20 September 2011

Stuff People Want Developers To Do with SharePoint

There are generally four things a user will want developers to do for them in SharePoint (When I say "SharePoint" I mean 2007. 2010 is not dissimilar but a bit more straightforward. When I have more programming experience in it I will say more about it!)

1. Event Handling. When modifying, creating or deleting a SharePoint item, sometimes it would be nice to do something a little extra above and beyond just completing the transaction. Event handlers are the bread and butter of SharePoint.

2. Web Parts. These are little forms (usually) that one can add in to a SharePoint page via the site galleries (found by Site Actions - Site Settings - Galleries - Web Parts.) When added in they can do various things with the SharePoint object model that are far more versatile and powerful than the built-in stuff.

3. Workflow This is not dissimilar to event handling, but is more visible and can be done out of the box (though the OOB implementation of workflow is extremely sparse.) My tool of choice for setting up workflows on tasks or list items is SharePoint Designer 2007 (which is a free tool), though this has disadvantages, the main one being that the .xoml files it builds (as an aside, where do Microsoft get these unpronounceable file extensions from?) are completely un-portable and can't be moved from one list to another. But once you bear that admittedly large limitation in mind, Designer can be handy enough.

It is also possible to code a workflow, but 2007 doesn't have as slick a dev environment as 2010 so I tend to stick to Designer.

Note part deux: if you do download Designer, ensure you already have SharePoint properly installed on the proper OS as previously detailed. I thought just having designer and SharePoint on a browser would be enough. Yes, you can laugh at my ignorance; if it saves you time then it makes me happy to be the butt of your derision!

4. Alerts While it is possible to set alerts on list items, one might often want some job to refresh or do some particular task once a day. One can (a) use an infinite looping workflow until the condition says stop, which is a bit clumsy to implement due to some flippin' Service Pack #90210 which stops infinite looping so you need TWO workflows or (b) create a timer job from the SharePoint Central Admin. I don't know how to do this yet (this will be a familiar, annoying refrain in the days and weeks to come) but when I do I will get back to you!

So in my next series of posts I will talk about 1, 2 and 3 and once I learn how to do 4, I'll talk about that too! With many pauses by the wayside to find some particular rant that interests me.

And yes, I know I mentioned the SharePoint Central Admin. Sounds like the Lubyanka, and probably every bit as cheering, but actually once you get in there, it's ok. It's basically another SharePoint site which decides the settings of all the machines on the SharePoint farm. Install that wherever you have the rest of your SharePoint installed and you should be a happy camper.

No comments:

Post a Comment