SharePoint custom action: pro and con​


SharePoint workflow is a very convenient way to solve automation tasks without programming. However, at any step aside from common tasks such as document approval workflow, developers face insufficient functionality of workflow actions delivered with the product.

A full list of workflow actions and conditions delivered with SharePoint 2010 can be found here:

The problem of insufficient functionality can be solved in the following ways.

  1. To abandon declarative workflow in favor of Visual Studio workflow. In this case, all Windows Workflow Foundation actions will be available for workflow development. However, it’s the worst possible way to solve the problem, as Visual Studio workflow can’t be edited in SharePoint Designer, and development itself is difficult and time consuming.
  2. The second way is to use one of third-party sets of workflow actions. Our product, HarePoint Workflow Extensions, offers over 300 new activities that allow solving most practical tasks.
  3. The third way is to develop a custom workflow action in Visual Studio, which can be used in declarative workflows. It’s a reasonable step. Though for development, you’ll need a highly qualified programmer, a developed custom action can be used by any competent IT specialist working with SharePoint Designer.

For beginners, we have good and bad news. Let’s start with the bad. To develop a custom action, one needs SharePoint installed on the workstation. The good news is that SharePoint can be installed on Windows 7 and even on Windows Vista. This article describes how to do it: Setting Up the Development Environment for SharePoint 2010

SharePoint 2010 custom workflow actions can deploy both farm solutions and sandbox solutions. From the developer’s prospective, the difference between them lies in limitation of the SharePoint object model. Besides, additional restrictions for using namespaces are applied to sandbox solutions deployed in SharePoint Online. Detailed information on these issues can be found in the following articles:

The rest of the process of creation and deploying actions doesn’t differ and one of the following articles can be selected as a guide:

In addition to workflow actions, you can also create your own conditions for SharePoint Designer. A custom workflow condition is implemented as a static method that evaluates a condition and returns a Boolean value representing the result of evaluation. The example of implementation with a source code can be found in the following article: SharePoint 2010 Audience Membership Workflow Activity Condition for Designer Workflows

In general, it should be noted that despite it seems quite simple, the process of SharePoint development is very complicated, time consuming and fraught with difficulties, which can be hardly predicted. But if you can’t do without a custom code in your workflow, there’s one more way to cut development time.

HarePoint Workflow Extensions product contains “Execute Custom Code” workflow action that allows running the code on C# or VB.NET directly from the workflow without using Visual Studio.

Despite a number of shortcomings, the workflow in SharePoint 2010 is a powerful and convenient mechanism to automate not only business processes but also a large number of purely technical problems. If you are new to workflow, their study is a very good investment.

How useful was this post?

Click on a star to rate it!

Average rating 5 / 5. Vote count: 1

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

(Visited 1,130 times, 1 visits today)

2 Replies to “SharePoint custom action: pro and con​”

  1. This article is quite brilliant.

    I think I would like to use HarePoint products as they are definitely cost effective because you can use them straight away without any development effort (which would cost much more).

    Now how to convince by boss?

Leave a Reply

Your email address will not be published. Required fields are marked *