How to change the Displayname of Asset Management enumeration list values
Hi,
From our business I got the request to change the Displaynames of the License Type enumeration list values in the Cireson Asset Management Pack, without removing the excisting data linked to the excisting license data.
For the Cireson Asset Management Pack there are lists in SCSM that I can edit, but not for this field type.
For one of our own custom MP's I would make the change in the code of the Classes file, but for Asset Management I don't have that option.
How can I change the display names of this enumeration list without breaking the existing link with the license data?
Best Answers
-
Geoff_Ross Cireson Consultant O.G.
Hi Bart
You need to create a DisplayString for that Enum value in your own Management Pack.
Open the Asset Management MP, find the DisplayStrings for these and then copy that XML to a new MP called something like:
Custom.AssetManagement.LicenceTypeEnum.Overrides
Geoff
0 -
Geoff_Ross Cireson Consultant O.G.
Hi Bart,
You need to reference the original enum in the CAM MP via the alias. I've sorted it below and attached.
Also, this is fine to change the Display Name of the two OOB values, but not to add your additional (Other). This would break the build in Asset Workflows because it has to be one or the other. Permanent or Temporary.<ManagementPack ContentReadable="true" SchemaVersion="2.0" OriginalSchemaVersion="1.1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <Manifest> <Identity> <ID>Custom.AssetManagement.LicenceTypeEnum.Overrides</ID> <Version>1.0.0.0</Version> </Identity> <Name>Custom.AssetManagement.LicenceTypeEnum.Overrides</Name> <References> <Reference Alias="CiresonAssetManagement"> <ID>CiresonAssetManagement</ID> <Version>8.5.0.0</Version> <PublicKeyToken>98ba2176e2a9efbc</PublicKeyToken> </Reference> </References> </Manifest> <LanguagePacks> <LanguagePack ID="ENU" IsDefault="true"> <DisplayStrings> <DisplayString ElementID="Custom.AssetManagement.LicenceTypeEnum.Overrides"> <Name>Custom - Asset Management - Licence Type Enum - Overrides</Name> </DisplayString> <DisplayString ElementID="CiresonAssetManagement!Cireson.AssetManagement.LicenceTypeEnum.Temporary"> <Name>Test</Name> </DisplayString> <DisplayString ElementID="CiresonAssetManagement!Cireson.AssetManagement.LicenceTypeEnum.Permanent"> <Name>Perm</Name> </DisplayString> </DisplayStrings> </LanguagePack> </LanguagePacks> </ManagementPack>
Geoff
0
Answers
Hi Bart
You need to create a DisplayString for that Enum value in your own Management Pack.
Open the Asset Management MP, find the DisplayStrings for these and then copy that XML to a new MP called something like:
Custom.AssetManagement.LicenceTypeEnum.Overrides
Geoff
Thank you, I will make the adaptation like that.
Hi Geoff,
I made that change in an custom MP, and the change shows as a new enumeration list with a different ID then the original one. Is there a way to prevent this and have the same ID?
Or should I change all the forms and/or presentation to point to the new Enum?
Bart,
You don't want the Enumeration part of the custom MP - just the DisplayString part which could point to the original Enum in the CAM MP.
Can you share the XML of your MP?
Geoff
Hi Geoff,
I have removed the Enumeration part of the custom MP and replaced the MP in SCSM, but this does not make a difference.
My custom MP now contains:
Hi Bart,
You need to reference the original enum in the CAM MP via the alias. I've sorted it below and attached.
Also, this is fine to change the Display Name of the two OOB values, but not to add your additional (Other). This would break the build in Asset Workflows because it has to be one or the other. Permanent or Temporary.
Geoff
Hi Geoff,
Thank you for the assistence, I made the changes and this works for me.