Creating or modifying classes by using Class Manager
When creating a new class you must first specify the properties and optionally, auditing settings, before you save it. After you save the properties, the class is created. After this, you can add or edit the attributes. If you want to modify an existing class, you need not start from the beginning of this process.
Creating a class by using Class Manager comprises the following tasks:
Action | Reference | |
---|---|---|
1 | Define the properties of the class, which include its type, how it stores data, and (for relationship classes) the relationship type. | |
2 | (Optional) Configure instance auditing for the class. Auditing enables you to track the changes made to instances of a class. | |
3 | Define one or more CI and relationship class attributes. | |
4 | (Optional) Specify permissions. If you do not specify permissions for a class, BMC Helix CMDB assigns default permissions. | |
5 | (Optional) Specify custom indexes. Indexing can reduce database query time, so create custom indexes for those attributes that you expect users to use in queries frequently. | |
6 | (Optional) Propagate attributes in a weak relationship. This step is necessary only if you have created a relationship class that has a weak relationship in which the attributes from one class should be propagated to another class. |
For more information about class and relationship properties, see Common-CI-and-relationship-class-properties.
Before you begin
- You must have AR Administrator (ARADMIN) permissions to create or edit classes.
- Before creating an attribute for a CI class, determine whether you want to store configuration data or lifecycle data for the CI in the new attribute. You must create a new attribute to store only configuration data for the CI. To store lifecycle data for the CI, you must add a field on the BMC Helix ITSM Foundational form, AST:Attributes.
- Review the information in the following topics:
To create new classes by using Class Manager
- Log in to CMDB Portal.
- Open Class Manager.
Select Class Management > Classes. - In the Create list in the left pane, select Regular or Relationship.
Depending on your selection, either the Create New Regular Class or the Create New Relationship Class page opens. In the Properties section, for both a new class and a relationship class, you must configure the following:
Property
Action
Super Class Name
Select the class under which you want to add the new class
Namespace
Select the namespace to which you want to assign the new class
Class Name
Enter a name for the new class
Important: Only English alphanumeric characters are supported in BMC Helix CMDB class and attribute names.
Use only the English alphanumeric characters for a class and attribute names. If you want to use non-English characters such as ñ, æ, and ø, you can use the Description field in addition to the Class Name field.Custom Properties
You can enter customer properties in the following format: {"fieldID"
{"100050":1,"400090":"PrimaryCapability"}
In the Audit information section, select one of these options:
Audit Type
None
Select this if you do not want an audit to be performed.
Copy
Select this option to create a copy of each audited instance. Each AR System form related to a class and its super class is duplicated to create audit forms that hold audited instances.
Log
Select this option to create an entry in a log form that stores all attribute values from the audited instance in one field.
If you select this option, you must also specify the name of the log form to be used.For additional information about auditing, see Enabling-audits-for-classes-and-attributes.
- (Only for relationship classes) You must specify the following criteria:
- In the Class1 and Class2 fields, select the classes between which the relationship is applicable and other criteria.
- The cardinality between the two classes.
- 1-1 — One instance of a class is associated with a single instance of another class.
- Many-1 — One or more instances of a class are associated with one instance of another class.
- 1-Many — One instance of a class is associated with one or more instances of another class.
- Many-Many — Many instances of a class are associated with many instances of another class.
Click Save.
You can now add attributes or indexes to the class.
To create CI type entries for custom classes in the Product Catalog
When you create a CI in a custom class and run a normalization job for the new CI, the CI type value in the Product Catalog form must have the same format as that of the classes provided out of the box. The format for the CI Type for out of the box classes is the Class ID.
To make sure that the CI type is correct and consistent with the out-of-the-box classes, you must manually create a record for CITYPE in the PCT:MenuItems form for every custom class.
- Log in to Mid Tier.
- Open the PCT:MenuItems form by using the URL format https://<arsystemhostname>/arsys/forms/<arsystemserver>/PCT:MenuItems.
- Click New request.
Enter the following information:
Field
Action
Menu Category
Select from the list of categories.
Menu Type
Enter CITYPE
Menu Label 1
Enter the class ID of the custom class.
Menu Value 1
Enter the namespace and the class ID of the custom class.
Menu Order 1
Enter 1.
Locale
Enter the preferred locale. For example, for English, enter en.
Description
(Optional) Enter a description.
- Click Save.
- Restart the normalization engine on the server by using this command: /opt/bmc/AtriumCore/cmdb/server/bin/normeng.sh
- Run the normalization job for the CI in the custom class.
Make sure the Allow product catalog entries option is selected in the normalization job.
To define or edit attributes of a class
Before creating an attribute for a CI class, determine whether you want to store configuration data or lifecycle data for the CI in the new attribute. You must create a new attribute to store only configuration data for the CI. To store lifecycle data for the CI, you must add a field on the BMC Helix ITSM Foundational form, AST:Attributes.
- Open Class Manager:
Select Class Management > Classes. - In the navigation pane, select the class for which you want to edit attributes.
- On the Attributes tab, select the attribute you want to edit and click Edit at the top right corner of the page.
You can now edit the attributes according to your business needs. - Click Save to return to the Class Manager page.
To define or edit permissions for a class
- Open Class Manager.
Select Class Management > Classes. - In the navigation pane, select the class for which you want to set permissions.
- Click the Permissions tab and then click Edit on the top right corner of the properties pane.
The Add/Edit Class Permissions page opens. - Specify Visible Permissions and Hidden Permissions for specific groups and roles.
If you do not set permissions in Class Manager, BMC Helix CMDB automatically assigns the following default permissions:
To create or edit custom indexes for a class
BMC Helix CMDB has out-of-the-box system indexes that are meant to reduce query time of searches for CIs. Based on your business requirements, to further reduce database query time used to identify CIs, you can create custom indexes using the Class Manager.
- Open Class Manager.
Select Class Management > Classes. - In the navigation pane, select the class for which you want to edit indexes.
- Click the Indexes tab and then click Add on the top right of the tab.
The Add/Edit Class Indexes page opens. - You can select Unique if all values for the field must be unique.
- You can select Primary key if the index is the primary key for the class.
- Add the attributes that you want to index to the Fields in Index list.
- Click Save.
To display BMC_ApplicationSystemServices as a weak relationship
The BMC_ApplicationSystem and BMC_SystemService classes are related to each other through BMC_ApplicationSystemServices, which is shown as a strong relationship class in the Class Manager UI.
But, BMC_ApplicationSystemServices is a weak relationship. To propagate the attributes from the source CI class to the destination CI class, edit the relationship class and select Weak Reference as shown in the following figure.
This change makes the BMC_ApplicationSystemServices a weak relationship class, as shown in the following figure.
To propagate attributes for weak relationships
See Best-practices-for-propagating-attributes-to-weak-relationships before you propagate attributes for weak relationships.
Class Manager helps you propagate (or copy) attributes for weak relationships. You can map attributes between members of a weak relationship. The value of a mapped attribute of the source class is copied, or propagated, to the corresponding attribute in the destination class. This enables you to view basic information about a source Configuration Item (CI) while viewing a destination CI, without having to follow the relationship and view the source CI.
- Open Class Manager.
Select Class Management > Classes. - In the navigation pane, select the weak relationship class to which you want to propagate attributes.
For example, select BMC_HostedSystemComponents. - On the Attributes tab, click Propagated Attributes.
- Click Add.
The Weak Reference Attribute Propagation page opens. - Select the source and destination attributes and click Map.
Repeat this for each attribute you want to map. - Click Save.