Creating Browser Interfaces to Service Manager using the SDK

Patrik Sundqvist, a Solution Architect at our partner ATEA Spintop, has put together a great example of using the SDK by extending the new user provisioning solution I provided earlier with a web interface.  Having a web interface to automated solutions like this increases the reach of the solution and enables “self-service” which ultimately reduces IT service request management costs even further.  ATEA Spintop already has products which extend other System Center products like System Center Configuration Manager.  We are really looking forward to the self-service portal solution they are going to be providing on top of Service Manager for automated service request fulfillment.  This example that Patrik provides here is just an example of what they are going to be doing as a product when Service Manager RTMs in a few short months.   At the end of the post, you can see some early screenshots from their upcoming product ‘Accelerator’.


Here is the introduction to the solution.  The full document is provided as an attachment to this post.


==============================================================


All code is provided “as is” and should be used as examples only!


Scenario


Say you want to provide a form in your intranet portal that allows end-users to be able to create standardized change requests in Service Manager. Let’s say that the form captures all needed input from the requesting user. This would allow you to automate the entire process of service delivery without any user interaction except from the end user filling out the form.


Overview


In this example, we are going to use the solution provided by Travis Wright in his blog post “Extending Service Manager to Automate IT Processes”. We’ll create a web form that will allow an end-user to create a change request in Service Manager containing the activity “Automated Activity: Provision New User”. As a result an end-user with suitable permissions in Service Manager can request a user account (including things like mailbox, standard Active Directory group membership) from the company’s intranet portal, the account will be automatically provisioned and the entire process will be tracked inside Service Manager. Since the change request is based on a template containing the workflow which automates the user provisioning, the request can be fulfilled without any user interaction besides the one performed by the requesting user*.
*Note: In a real world scenario you would probably add a review step to the process.


In this example we’ll:


· Create a new Visual Studio project for our web application


o Reference the Service Manager SDK assemblies


o Build a new web form that will capture the requesting user’s input


o Write code to:


§ Initiate contact with Service Manager


§ Create a new change request


§ Apply a change request template which contains the needed activity to automate the user provisioning.


§ Set the “CreatedBy” property on the change request


§ Apply the user input to the activity: “Automated Activity: Provision New User” which will be used by the user provisioning workflow to automate the user provisioning.


Here are some screenshots of the example in action:


clip_image001 clip_image002


clip_image003


clip_image004


This examples shows some key ways to interact with the SDK such as:


1)  Using Criteria XML to get a EnterpriseManagementObject


2)  How to create an EnterpriseManagementObjectProjection


Check out the full solution in the attached document and source files!


==============================================================


Here are some early screenshots of ATEA Spintop’s product for self-service automated service request fulfillment on top of Service Manager.  Look for them at the Microsoft Management Summit 2010 to get more information!


image


image


image 


Want to be a guest blogger on the Service Manage team blog like Patrik?


This is a continuation of a series of guest posts by MVPs, partners, and customers.  If you are interested in being a guest poster on the Service Manager team blog, please contact me at twright [at] Microsoft [dot] com to work out something – I have lots of ideas!


Solution files:


http://cid-17faa48294add53f.skydrive.live.com/self.aspx/.Public/CreatingChangeRquestFromWebApp.zip