It is strange how many developers wince when they face
SharePoint and become melancholy when talking about workflows.
Workflows are not just like programming, or something very special
or something very complicated or something very limited or
something for documents. Some people tried to solve simple tasks
with SharePoint workflows, but failed somewhere when it became
clear that they cannot read the manual from the middle and they
have no time to read it from the very beginning.
Without laying claim to the laurels of an investigator of myths
about SharePoint, I will state my hypothesis about their origin
exclusively. Microsoft created very powerful mechanism which makes
it possible to automate business processes, document flow and even
to define the logic of web-site without programming. It is
wonderful. Everyone has been dreaming of such a mechanism for
a long time. People want to do something without a debugger in the
And take a look around. Everything is present: Word Services,
Excel Services. For example, after completing this row in a list I
want an invoice to be generated by template and I want it to be
sent in PDF format to the client by e-mail. And I do not want to
program this. Or I want pictures to be resized at least up to
1024x768 when the user uploads his huge photos made by his big
single lens reflex camera to SharePoint. And if possible - to
compress the pictures down to 800x600. And in the 21st
century people do not want to program this at all.
Stop - you will say - how is this connected with workflows?
Workflows here could be helpful for us: we open SharePoint
Designer, go to Workflows, create a List Workflow for the selected
list or document library, mark that it will run automatically when
adding a new element and… face a crushing defeat!
Unfortunately a powerful mechanism has a very primitive
realization. Microsoft provided us with a little bit more that 30
building bricks (referred to as workflow actions) from which we are
able to build workflows. And there is even a brick sending e-mail.
But the problem is that it is impossible to attach either a file or
a document from the document library to this letter. There is no
brick for work with Word and Excel Services, there is no brick for
work with images.
Usually, after studying the list of these bricks, developers
give a disappointed sigh and run Visual Studio. It becomes clear to
them that it is impossible to solve their task with the help of
these bricks and it is simpler to write everything from the
beginning to the end by themselves. Thus, one more custom web part
appears on a corporate site. I suspect that sometimes managers of
IT Departments pray for programmers, since programmers have already
written a hundred web-parts and no one will be able to understand
these web-parts except for themselves.
In general, in spite of the declared freedom from programming,
no freedom was reached. What a 21st century this is!
We can also talk about SharePoint Designer and Microsoft Visio
and workflows programming in Visual Studio. Here is a workflow in
If you know what every block does, it is rather easy to
understand an algorithm of work process operation. Everything is
seen clearly! But you are not able to set workflow parameters or to
change them in Visio. For example, there is a brick for sending an
e-mail, but to know who will be the recipient of the e-mail -
welcome to SharePoint Designer
Everything is not very clear in SharePoint Designer as well, but
the whole work process is set out here exactly, including setting
e-mail addresses for the "Send e-mail" brick. Just imagine if a
work process would be a little bit more complicated. How long it
would take you to understand its nature?
However, to be true, it is possible to get used to SharePoint
Designer and it manages its work on workflows creation. Even with
good marks. But the question of the 21st century is: why
is there still no online tool on Silverlight for workflows
management and creation which could, without limitation, show it in
the form of a flowchart? Is it possible that if you face
difficulties in understanding an algorithm in SharePoint Designer
you have to pay $1000 for Microsoft Visio Premium?
So, a set of bricks and tools is surprising. More surprising is
the fact that nothing changed generally, with a huge fundamental
mechanism of SharePoint 2007 in SharePoint 2010. And many surprised
and disappointed developers without understanding things to the end
but having understood exactly that nothing would be reached without
Visual Studio, have created the well-known myth that workflows are
not a finished technology and cannot be applied to practical tasks.
But since everywhere at presentations people say the opposite and
their presentations are very beautiful and persuading, this myth is
told by developers in a whisper only and to trustees only. It is
interesting to note: does the king know that he is naked?
Of course, I would not disgrace myself before the whole world
and write these awful things about this excellent technology of a
famous company in which, by the way, many friends of mine work, if
I didn't want to sell you something. My opinion would remain
unchanged anyway, but I would not write about it for sure.
SharePoint has been used in our company with an increasing
intensity starting with the 2003 version, and all these seven-eight
years we have been slowly moving from creation of simple sites for
internal use up to creation of serial commercial products. Maybe
the above lines include those multiple offences when we took a new
beautiful and sparkling technology and hoped to complete everything
by the evening and understood in two weeks later that we would not
And to discredit a myth, I want to state the two main ideas of
1. Work processes are really a powerful
mechanism. Any IT specialist can create workflows and not
only manage document flow but also determine the logic of web-site.
Without programming! And the main thing - these work processes are
easy and not expensive for administration, modifying and support.
You have only to provide a developer with more bricks having
2. The creation of work processes in Visual Studio is an
evil. A workflows created in Visual Studio is very
expensive for administration and support since for this purpose you
need Visual Studio and a programmer, indeed a very qualified
programmer. If possible, avoid creation of work processes in Visual
Studio. If there is no way to avoid custom code, you have two
alternative ways: creation of custom workflow action or use of
third party workflow action allowing you to execute the code on
VB.NET or C#, compiled at the time of execution. It will make your
working processes much easier to manage.
So the only question is: "where to take additional bricks with
wide functionality?" One of the answers is - from us. We have
created the HarePoint Workflow Extensions product, which includes
over 160 finished and well-documented bricks. With their help you
- Convert documents to different formats including PDF.
- Read and write Word and Excel documents, thereby allowing you
to generate invoices, payment orders etc. easily from work
- Send files and documents by e-mail, FTP, save them on disk or
to network share.
- Work with SQL databases and XML, make requests to
- Execute just-in-time compiled C# and VB.NET code from
- Convert and process images, change their size.
- Work with Active Directory, work with HTTP, SMTP, POP3, FTP,
RSS, XMPP and Twitter network protocols.
- And many, many other things (it is almost true about coffee and
beer in the headline).
Another answer - ask Google, and you will find similar
The main question when using such products is the following:
what risks exist at portal automation with a solutions provided by
third parties? In general, the risk is minimal. You get a set of
well-documented workflow actions, each of which solves one small
task. For example, it converts images from one format to another.
In case of any problem either with developers company or with
workflow action, you can always replace this component in workflow
with a similar component from another company or even with a
component developed by yourself. It is important that when using
such products you do not switch to another platform, but simply
expand a standard set of available thirty components with a hundred
or several hundreds components provided by a third party
The second question is less important, but you hear it often as
well: why do I need 160 components more if I need only three and we
have our own programmers? Those people who understand the "Dao" of
workflows start to solve a wide range of tasks with their help. And
even those tasks which seem not to have direct connection to
workflows. In addition, before you start writing your own library
of workflow actions, it is reasonable to be based on a finished,
considered framework. It will be much cheaper than an in-house
product: the bright and colorful world of SharePoint programming
has its dark side as well, but I will not tell this secret to
anyone. Only under confidentiality.
HarePoint Workflow Extensions has 30-day free trial version, it
can be download from the product home page: www.harepoint.com
HarePoint is developer and publisher of software solutions for
The company offers 2 leading products: MAPILab
Statistics for SharePoint (web-analytics and reporting
solution for SharePoint-based portals and sites), HarePoint
Workflow Extensions (a pack of activities for workflow
authoring) and some web-parts and features for SharePoint
2007/2010. The Director of Strategic Development is Alexandr
Gorlach. HarePoint (as a subdivision of MAPILab Ltd.) exists since
2009 and has Microsoft Gold Certified Partner status.
For more information on Sponorship check out our sponsorship
& exhibition page.