Management Pack used to create templates
When I am in the Service Manager Console under Library --> Templates and I right click and select Create Template, what Management Pack, if any, is being used to provide all the fields and text I see?
Reason I ask is when our users create a Change Request and select one of the several Change Requests templates we have, there is a box with a drop down labeled Change Category and you can select from a list of particular Categories we created. The problem
is after selecting OK and exiting the CR, when you go back in, the box is blank, so obviously the data is not being stored in SQL.
I thought maybe this box labeled Change Category was part of the base Change Request form so I opened the form using the Authoring Tool, but its not there. Regardless of which Change Request template I select when creating a CR, that box is always there.
If I select New Template, the form opens and the box is there so I am trying to figure out where its coming from.
September 2nd, 2015 3:18pm
If you are not changing the target Management Pack, then they are probably in the default MPs.
Service Manager Incident Management Configuration Library
Service Manager Service Request Management Configuration Library
Service Manager Change Management Configuration Library
Service Manager Problem Management Configuration Library
Service Manager Release Management Configuration Library
September 2nd, 2015 3:34pm
If you're seeing a "Change Category" field on your change request form, then it's probably part of a form extension. I say that because I see no "Change Category" field in my change request form. There is a "Category" field,
but it's only visible while creating or editing a template..it's not available when creating or editing a change request.
You need to find the MP the form extension is defined in and open that MP in the authoring tool.
And since your users can't save a value in that field, it probably means the field's binding is incorrect.
-
Edited by
Aaron Croasmun
11 hours 38 minutes ago
September 2nd, 2015 3:40pm
Thanks Aaron. Is there an easy way to find the MP the current extensions are in? I know if I create a new MP and then try to save changes in that, it will fail and give me the ID of the MP where the current extensions are stored but that seems like a awkward
way to go about find it.
September 2nd, 2015 3:43pm
My "easy" way is just a quick SQL query :)
select Form.FormName, ManagementPack.MPName, ManagementPack.MPFriendlyName, convert(xml,ManagementPack.MPXML) from Form with(nolock)
inner join ManagementPack with(nolock) on Form.ManagementPackId=ManagementPack.ManagementPackId
where Form.BaseForm='9E4453E0-E29F-B3C6-C991-D06E4F6DF084' --Microsoft.EnterpriseManagement.ServiceManager.ChangeManagement.Forms.ChangeRequestForm
The base form ID in the where clause is the base change request form. So this query will return the form extension name and the management pack in which it resides. This query also happens to convert the management pack body itself to an XML field so
you can just click on it in SQL management studio and see the whole MP without having to export it (It's a trick Travis shared a long time ago).
Anyway, once you know the MP name, you can export it (or find your archived copy) and look at it in the authoring tool. Let me know if the extension contains that field you're trying to find (and let me know what property it's bound to). If it does, double-check
the binding and make sure it's spelled correctly, that the property exists, and that it's cased correctly. WPF Bindings are case sensitive.
September 2nd, 2015 4:41pm
If you're seeing a "Change Category" field on your change request form, then it's probably part of a form extension. I say that because I see no "Change Category" field in my change request form. There is a "Category" field,
but it's only visible while creating or editing a template..it's not available when creating or editing a change request.
You need to find the MP the form extension is defined in and open that MP in the authoring tool.
And since your users can't save a value in that field, it probably means the field's binding is incorrect.
-
Edited by
Aaron Croasmun
Wednesday, September 02, 2015 7:40 PM
September 2nd, 2015 7:38pm
If you're seeing a "Change Category" field on your change request form, then it's probably part of a form extension. I say that because I see no "Change Category" field in my change request form. There is a "Category" field,
but it's only visible while creating or editing a template..it's not available when creating or editing a change request.
You need to find the MP the form extension is defined in and open that MP in the authoring tool.
And since your users can't save a value in that field, it probably means the field's binding is incorrect.
-
Edited by
Aaron Croasmun
Wednesday, September 02, 2015 7:40 PM
September 2nd, 2015 7:38pm
If you're seeing a "Change Category" field on your change request form, then it's probably part of a form extension. I say that because I see no "Change Category" field in my change request form. There is a "Category" field,
but it's only visible while creating or editing a template..it's not available when creating or editing a change request.
You need to find the MP the form extension is defined in and open that MP in the authoring tool.
And since your users can't save a value in that field, it probably means the field's binding is incorrect.
-
Edited by
Aaron Croasmun
Wednesday, September 02, 2015 7:40 PM
September 2nd, 2015 7:38pm
If you're seeing a "Change Category" field on your change request form, then it's probably part of a form extension. I say that because I see no "Change Category" field in my change request form. There is a "Category" field,
but it's only visible while creating or editing a template..it's not available when creating or editing a change request.
You need to find the MP the form extension is defined in and open that MP in the authoring tool.
And since your users can't save a value in that field, it probably means the field's binding is incorrect.
-
Edited by
Aaron Croasmun
Wednesday, September 02, 2015 7:40 PM
September 2nd, 2015 7:38pm
Thanks Aaron. That SQL query was really helpful. With it I was able to find the MP that the extensions were initially saved in. The MP is sealed in Service Manager but luckily I have the original XML file that was used to seal it so I can use that for additional
modifications.
The problem is definitely in the Binding path. The Change Request form was modified initially to include a list picked with a label of Change Category. Whoever did this created a new List and a new Class. I think the problem is out of the box, Service Manager
provides you with a List called "Change Category" and the list contains the following:
Standard
Minor
Major
Emergency
It also provides you with a Class called Category. I am not sure why these default List and Class were not used when creating the list picker. They created a new List and a new Class.
I am not sure what this "out of the box" List and Class are used for. I don't see any place on the Change Request form where they are referenced. I was just thinking of changing the List value on the properties of the list picker to the default
List called Change Category and the binding path to the default Class of Category and calling it a day. Seal the MP and import it in.
-
Edited by
shadowtuck
15 hours 35 minutes ago
September 3rd, 2015 11:40am
Thanks Aaron. That SQL query was really helpful. With it I was able to find the MP that the extensions were initially saved in. The MP is sealed in Service Manager but luckily I have the original XML file that was used to seal it so I can use that for additional
modifications.
The problem is definitely in the Binding path. The Change Request form was modified initially to include a list picked with a label of Change Category. Whoever did this created a new List and a new Class. I think the problem is out of the box, Service Manager
provides you with a List called "Change Category" and the list contains the following:
Standard
Minor
Major
Emergency
It also provides you with a Class called Category. I am not sure why these default List and Class were not used when creating the list picker. They created a new List and a new Class.
I am not sure what this "out of the box" List and Class are used for. I don't see any place on the Change Request form where they are referenced. I was just thinking of changing the List value on the properties of the list picker to the default
List called Change Category and the binding path to the default Class of Category and calling it a day. Seal the MP and import it in.
-
Edited by
shadowtuck
Thursday, September 03, 2015 3:41 PM
September 3rd, 2015 3:39pm
Thanks Aaron. That SQL query was really helpful. With it I was able to find the MP that the extensions were initially saved in. The MP is sealed in Service Manager but luckily I have the original XML file that was used to seal it so I can use that for additional
modifications.
The problem is definitely in the Binding path. The Change Request form was modified initially to include a list picked with a label of Change Category. Whoever did this created a new List and a new Class. I think the problem is out of the box, Service Manager
provides you with a List called "Change Category" and the list contains the following:
Standard
Minor
Major
Emergency
It also provides you with a Class called Category. I am not sure why these default List and Class were not used when creating the list picker. They created a new List and a new Class.
I am not sure what this "out of the box" List and Class are used for. I don't see any place on the Change Request form where they are referenced. I was just thinking of changing the List value on the properties of the list picker to the default
List called Change Category and the binding path to the default Class of Category and calling it a day. Seal the MP and import it in.
-
Edited by
shadowtuck
Thursday, September 03, 2015 3:41 PM
September 3rd, 2015 3:39pm
Thanks Aaron. That SQL query was really helpful. With it I was able to find the MP that the extensions were initially saved in. The MP is sealed in Service Manager but luckily I have the original XML file that was used to seal it so I can use that for additional
modifications.
The problem is definitely in the Binding path. The Change Request form was modified initially to include a list picked with a label of Change Category. Whoever did this created a new List and a new Class. I think the problem is out of the box, Service Manager
provides you with a List called "Change Category" and the list contains the following:
Standard
Minor
Major
Emergency
It also provides you with a Class called Category. I am not sure why these default List and Class were not used when creating the list picker. They created a new List and a new Class.
I am not sure what this "out of the box" List and Class are used for. I don't see any place on the Change Request form where they are referenced. I was just thinking of changing the List value on the properties of the list picker to the default
List called Change Category and the binding path to the default Class of Category and calling it a day. Seal the MP and import it in.
-
Edited by
shadowtuck
Thursday, September 03, 2015 3:41 PM
September 3rd, 2015 3:39pm
I am not sure what this "out of the box" List and Class are used for. I don't see any place on the Change Request form where they are referenced.
I explained that in my first post.
Binding another control to the category property (Category is a property, not a class) may cause you problems. With two controls bound to the same property, your control may be superseded by the original control preventing your control from saving any changes.
Furthermore, the Category property is used for reporting and may be tightly-coupled to out-of-the-box reports.
I'd just use the custom property and list that's already in the extension MP and fix the control's binding. The list control's ParentCategoryId attribute has to reference the list's guid (which it sounds like it already does) and the SelectedItem attribute
has to be bound to the custom property in the extension class.
September 3rd, 2015 4:32pm