InfoPath, SharePoint and Business Processes – Part 1
Posted by Kevin Coetzee | Posted in General, InfoPath 2007, Sharepoint 2007 | Posted on 17-08-2009
Tags: business process, InfoPath 2007, Sharepoint 2007
4
Part 1 – The Introduction
Recently I did a session at Tech-Ed Africa around using InfoPath as a driver to automate Business Processes and doing this all without coding.
As promised in my session, this series of posts will do a step-by-step break down of how to implement a basic InfoPath form, attach it to workflow and release to the business through SharePoint. The initial set will focus on pretty much the same content as was presented at Tech-Ed Africa, and then later posts will begin delving to more of a developer’s perspective.
A major change in these set of posts, will be that instead of creating a resource provisioning form, I’m going to use an old LEAVE FORM that IS Partners as a company used (I have to punt my employer somehow).
Why the leave form?
Well in simple – it’s easy! Secondly, one of my colleges (the BI Guy – Gavin) has been harassing me for months now to show how this is done. The Leave Form is also a process that many of us understand and sometimes is the most under-estimated process of them all. If you’ve ever been to a workflow presentation, the one demo you’ll always see is the Leave Form, and according to one post I read this week, someone complained and asked why we as developers underestimate the leave form…. Well in this series of posts, I’m going to try show how the “Leave Form” will transform from the basic leave form we know to something quite extra-ordinary.
What Technologies am I going to use?
My main focus will be to use SharePoint and InfoPath as the main drivers. In later sessions I will start encompassing SQL Server 2008, as well as the some SQL components (Report Builder). I’ll also be using SharePoint Designer to facilitate the workflow components of this exercise. Hopefully by the time we get to the end of this series, SharePoint 2010 will be available for me to talk you through the migration to 2010. Why these technologies?
When it comes to electronic forms and the workflows behind them, there are a number of approaches we can follow. The form could be written in ASP.NET, and could be pretty much a fantastic, exceptional form. What I’m going to try proving here is that high advanced, so called “technical”, items can be developed by the majority of end users. The initial set of posts will show you that without a ‘drop’ of code, you can put together an electronic form that not only is functional but practical as-well.
When it comes to the workflow, there are many options available to me. Let’s first start with the Microsoft Stack:
Microsoft offers, really 3 ways of doing workflow. You can use the built in (out of the box) workflow in SharePoint but this tends to be too simplified and does not allow for much flexibility. You can then extend this using SharePoint Designer which can give you a wide range of options and is fairly flexible and can be done without code. Thirdly you get the fully flexible option of using Visual Studio but it is to be noted that this is fully linked to code and is specificly for developers.
From Third Party vendors, there are a number that really simplify the processes for you by having alot of “prebuilt” components and offer a greater level of “visual” interfaces. Two that I have personally worked on is Ninetex and K2. Each of these vendors have some extreme offerings. I however in these posts will focus on the Microsoft offerings.
Then when it comes to the database layer, I’ve opted once again for Microsoft, SQL Server 2008, the reason is not only linked to performance but also to the added components which I’ll use such as the Report Builder of Reporting Services.
My Real World Example..
The leave process that I have outlined here is going to have a little more depth to it than the sort that would be demonstrated in a pre-sales demo.
Conveniently for all of us, my company IS Partners has fairly substantial Leave Form and process that can nicely demonstrate the process for us. After some initial requirements gathering, we ascertained that like most companies, the initial leave process for the company is problematic. It was an MSWord file that employees have to open, print out, fill in and then hand to their boss. Thus sometimes applications went unprocessed, misfiled or inconsistently handled. Another issue arose when it comes to perhaps cancelling leave and/or reporting on leave.
Below is the leave form in its original MSWord format.

After reviewing the requirements and documenting them, we were able to determine what the management and staff wanted with their automated leave form workflow…
The Business Requirement
- The employee (Me) completes an online form to apply for leave. The form automatically identifies the requestor. Additionally, the type of leave (sick, annual, maternity, etc), Leave start date, Leave end date are entered into the form. Importantly, the total number of days from work are automatically calculated to exclude weekends and public holidays (eeeeiiisshhh, this should be fun).
- The Manager (Approver), receives a task notification to approve an application for leave. The approver reviews the leave details and approves or rejects the leave application.
- Leave Form either gets marked as approved or rejected and the employee is informed either way.
- The leave is added to the IS Partners corporate leave calendar and the HR department is informed.
- The HR Department confirm the leave against the HR system and raise any complaints if need be.
From the above process, a number of key requirements are apparent and some more were determined.
- Automatic identification of requestor
- Reduce data entry
- Validation of dates, specifically the automatic calculation of days on leave
- The Manager is not the only approver, we will need the workflow to route the leave approval to the right supervisor / HR department
- We have a central leave calendar to update
Additionally, The Manager, HR and the Employee would like to keep an eye on things and report back of the Leave process.
What’s Next
First we’ll start by converting the already designed Leave form into an InfoPath form. We’ll talk through this process and every step that’s included.
Watch out for the second part of this dynamic series……


[...] InfoPath, SharePoint and Business Processes – Part 1 (Sticky Glue)Recently I did a session at Tech-Ed Africa around using InfoPath as a driver to automate Business Processes and doing this all without coding. As promised in my session, this series of posts will do a step-by-step break down of how to implement a basic InfoPath form, attach it to workflow and release to the business through SharePoint. The initial set will focus on pretty much the same content as was presented at Tech-Ed Africa, and then later posts will begin delving to more of a developer’s perspective. [...]
I look forward to the rest of the series
I get quite a few users experiencing problems when submitting browser-enabled Infopath forms. This is sporadic and the event id in the event logs is 5374. Please help…this has been going on for a while now and I cannot seem to pin down exactly where the problem is. I have tried recreating the form and republishing it but to no avail! PLEASE HELP!
Thank you much for that good post.