Paul Galvin's (old) SharePoint space [SharePoint

Just another site

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 🙂


 Subscribe to my blog.

Technorati Tags: ,

2 responses to “Integrate SharePoint Designer Workflows with Web Services

  1. Bob May 12, 2008 at 8:06 pm

    Any more news on your work to call webservices from a WSS workflow defined in SPD?

  2. Malcolm June 24, 2008 at 10:05 am

    I too am very interested in finding a custom workflow activity that lets me call a Web Service. Any news on progress?

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: