The beginning of a beautiful Site Administrators page :).
Over the years, I've been trying to get some reusable workflows or pages so that it makes it easier for me to do any type of administration work that I need to do.
Although there is a Long Term Delegation page as part of Nintex Workflow, it's 3 clicks away. Who has time for that??? So I took this as a challenge. I want to have my admin page to contain a form that I can simply fill in and automatically create a long term delegation rule when someone in my team goes on leave and forgets to do it.
It's not the most visually appealling form, but I never said I was good at graphic design. I get things to work... there's probably creative people who can beautify this .
How did we come to build this form?
Firstly, we build a SharePoint list and then we add the appropriate fields to it.
From User - the user who will be on leave and we want to delegate on behalf of
To User - the user that will get the tasks delegated to them
StartDate - the start of the users Leave
End Date - the end of the users Leave (this is inclusive)
This Site Only - are we creating a rule for this user, just for this site or for the entire farm?
Now that we've done the hard part, we now click on the Nintex Forms button on the ribbon and a form will be designed for us. The form will most likely require some redesigning. Since I'm doing this to have a form on a page that will have other information or other web parts, I don't want a top-down form. So I moved some of the fields around and made it a little more compact, yet still usable.
How to share this Form on a Page?
To add this form to a SharePoint page, go to your SharePoint page, or create a new one and you'll be able to insert a webpart on to that page. Click on the Nintex Forms group and you'll see a List Form web part. Insert that into the page:
To configure this web part, you simply need the List name and the content type that the form was built for. In this case, we can simply use Item.
Once you save the editing of this SharePoint page, you'll be provided with the form to fill in on this SharePoint page.
UI Done - Can we get to the Workflow?
To add a long term delegation rule, Nintex exposes a web method in the Nintex Workflow web service. It is quite ingeniusly named AddLongTermDelegationRule. If you want more information, check out the Nintex Workflow 2010 SDK.
I could have left it as a simple workflow with just a Call Web Service action. But let's face it, that is one boring workflow. So I like to add some error handling to the workflow.... maybe some notifications if it fails or if it succeeds, so that people know what is going on.
Do we need to go into the Call Web Service configuration? Probably not. I've done enough posts about it for now. But suffice it say, you set the url, the credentials, pick the AddLongTermDelegationRule web method, and add the item fields to the apprporiate web method fields. If you need to see more, you can always download the workflow in the download section below and take a look.
The workflow has one requirement. The Call Web Service action is looking for a Workflow Constant called SiteAdminCredential. You can create it in Site Settings, or if you already have one, you can change the configuration of that action to use your constant.
There's no reason to stop at just the delegation functionality. What if you had a SharePoint site specifically for your administrators. They could have a list where they fill in all the information needed for provisioning a new user. They could build a Nintex Form for that list, and insert the form into the same SharePoint page. One page to rule them all!!!!!