Welcome to EMC Consulting Blogs Sign in | Join | Help

Paul Galvin's Blog

Integrate SharePoint Designer Workflows with Web Services

I've been playing around with custom actions for SharePoint Designer for some time (see here for some detailed stuff, if that interests you).

In my current project, we need to do some fairly heavy lifting and we want to use declarative SPD workflow to manage the associated business process. 

Long story short, this is entirely possible.  I extended my Codeplex project to invoke a "helper service" and now we can invoke a web service directly from an SPD workflow. 

Here's the signature:

    public string Dispatcher(
        Guid WebID, // Passed by the runtime environment
        Guid SiteID, // Passed by the runtime environment
        string ListID, // Passed by the RTE (don't know why this is a string, not a GUID)
        int ListItemID, // Passed by the RTE.
        string XmlMessage) // Passed by the user as declared in SPD.

This leverages the fact that we can get at important workflow information, like the site, list ID, etc.  This is well documented in several places for those of you interested in creating your own custom actions.  The idea is to extract the XML string as provided by the user to dispatch an appropriate procedure.  Fun stuff!

Sadly, this is obviously a one-way ticket down to "Loosey Goosey" anti-pattern land, but it's better than hitting a brick wall :)

Is it an anti-pattern if you do it even though you know it's an anti-pattern?

I hope to wrap this inside Codeplex in the near future.  If you're interested in me doing so, give me poke (email or leave a comment) and I'll be that more enthusiastic about doing it :)

</end>

 Subscribe to my blog.

Technorati Tags: ,
Published 10 March 2008 19:48 by Anonymous
Filed under:

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Leave a Comment

(required) 
(optional)
(required) 
Submit
Powered by Community Server (Personal Edition), by Telligent Systems