The Web Portal allows end users to create Incidents. This is pretty cool because you can move to load for the Incident creation process away from the Service Desk people to the end users. If a new Incident is created, the Portal uses a specified Incident template called “Incident portal template” that will be applied to the newly created Incident. This template cannot be modified because it is stored in sealed Management Pack. But what would be the steps to select another template to be applied? Just read on …
You can indeed change the Incident template that will be applied when new Incidents are generated from the portal. For that you have to download the portal source (details.aspx-displaylang=en&id=1983) and do some modifications there. First, you should read the guide that comes with the download. This is to understand the basic concepts of the portal source. Then, extract the portal source files that you need (either the original portal or the new version that is delivered with the portal source) and open the solution in Visual Studio. First make sure you have all the missing references fixed. Now open the file “Common\constants.cs” and search for “templateid”. You will find the “Incident id’s” section and an entry called “IncidentPortalTemplateID” that specifies the GUID of the Incident template that will be used. Just enter the GUID of your own template there.
If you don’t know what your GUID is, use the SMLets to find out. Just import the Powershell module and use the cmdlet “get-scsmobjecttemplate” to find your template and get the GUID. In my case, I created an Incident template called “itnetx portal template”.
After you changed the GUID in the constants.cs file, build the solution. Then check if the dll “Microsoft.EnterpriseManagement.ServiceManager.Portal.Common” has ben created in the folder “End User Portal”\bin”.
Copy this dll to the appropriate folder where the portal runs (on the Web Portal server) and overwrite the existing file. After that, connect to the portal and create a new Incident. This time the Incident should be created by using the your specified template.