CM.Resource Pool - Setting Up the Basic Resource Model

Introduction

This chapter will guide you through the complete set-up of a resource model. You will learn how to

In our example, you are an administrator who has to set up a resource model for a company which wants to manage their IT assets, as well as their products, using the Resource Pool.

The complete model will look like the one in the following figure. We will show you how to define the Printers and the Office software to demonstrate the basic principles. Then you should be able to configure all remaining resources yourself.

Figure 520: ConSol CM Admin Tool - Example of a resource model

Creating a Resource Group with the First Resource Type

A Resource Group represents the objects at the highest hierarchical level in the data model of the Resource Pool. In our example, all printers are managed in a Resource Group Printers and all office software packages are managed in a Resource Group called OfficeSoftware. The following figure shows some Resource Groups and Resource Types in the Web Client. This should provide you with an overview of the configuration in the Admin Tool and its consequences in the Web Client. Please keep in mind that the technical object names which are used in the Admin Tool are usually not the (localized) names which are displayed in the Web Client.

Figure 521: ConSol CM Web Client - Resources in the Resource Pool Dashboard

The first step in a new (empty) resource model is to create a new Resource Group which contains one Resource Type. The Resource Type contains one Resource Field Group.

Figure 522: ConSol CM Admin Tool - Creating a new resource group

To create a Resource Group, fill out the following fields. The localization for the names of Resource Group, Resource Type and Resource Field Group is done using the fields on the main Data Models tab and is explained in section Localization of Data Fields. The descriptions are localized using the Localize button which is explained in section Localization of Objects in General, Type 1.

Click Save to create the Resource Group, Type and first Field Group.

Once you have defined the Resource Group, you can add some more data for the created objects.

Editing the Resource Group

Figure 523: ConSol CM Admin Tool - Editing a Resource Group

Mark the Resource Group and click the Edit button to edit some Resource Group parameters:

Click Save to commit your changes.

Editing the Resource Type

Figure 525: ConSol CM Admin Tool - Editing a Resource Type

Mark the Resource Type and click the Edit button to edit the following Resource Type parameters:

The Resource Relations are also defined for a Resource Type. This is described in detail in the section CM.Resource Pool - Resource Relations.

Information about Resource Modes

The mode of a resource type defines whether the resource data is stored in the ConSol CM system and - if required - how the transfer from the external system to ConSol CM is managed. Once the mode has been set and resources of the respective type are present in the system, the mode cannot be changed!

In ConSol CM, you have to distinguish between internal resources and external resources. The latter comprise On the fly Resources, Cached Resources and Imported Resources, i.e., all resources which are not completely stored in and managed by ConSol CM.

Only internal resources can be created using the Web Client. External resources can be neither created nor modified (permanently) nor deleted using the Web Client. For all external resources the complete data model has to be defined in the Admin Tool before the first data transfer can be performed. The use of On the fly Resources and Cached Resources is based on the implementation of a specific interface. Therefore, those resources can only be used with a customer-specific ConSol CM .ear file. The respective development project has to be built and deployed before the first data transfer takes place. The following sections provide a detailed overview of all four resource types.

Figure 526: Resource modes

Figure 527: ConSol CM Admin Tool - Configuration of Resource Type mode

Internal Resources

This mode is available in all ConSol CM versions with a Resource Pool, i.e., starting with CM version 6.10.1.

The resource data is fully managed by ConSol CM. Engineers who have sufficient access permissions can use the Web Client to create, modify or delete resources.

On the fly Resources

This mode is available in ConSol CM versions 6.10.3.0 and higher. In previous versions this mode is not available.

The resource data is retrieved from an external backend system whenever requested. The mode on-the-fly relies on a customer-specific implementation of the Java interface ResourceExternalSource.

An on-the-fly resource does not have any data which is stored in ConSol CM except for an external ID. This ID is used to retrieve data from the external system upon request.

In the Web Client:
Cached Resources

This mode is available in ConSol CM versions 6.10.3.0 and higher. In previous versions this mode cannot be selected.

The resource data originates from an external backend system. The data is transferred into ConSol CM upon the first request and is then cached in the ConSol CM database. The first request to the external system is executed when the resource is linked to another object (a ticket, a customer or another resource), i.e., when a relation is established. The mode Cached relies on a customer specific implementation of the Java interface ResourceExternalSource.

In the Web Client:

Imported Resources

This mode is available in ConSol CM versions 6.10.3.0 and higher. In previous versions, the mode cannot be selected.

The resource data originates from an external backend system and is stored in the ConSol CM database. Once the data has been imported into ConSol CM, it is treated almost like internal data. The import into ConSol CM usually relies on an ETL (Extract - Transform - Load) job which is run once or on a certain schedule.

In the Web Client:

In order to integrate external resources into your CM system, you have to write a special Java / Groovy class which implements the interface ResourceExternalSource with the three methods

A detailed example for a mock class is provided in the ConSol CM Release Notes for version 6.10.3. You will have to implement the methods for your system to provide real data from your IT infrastructure.

Editing the Resource Field Group

A Resource Field Group is a collection of Resource Fields, the data fields for resource data (analog to a Custom Field Group which is a collection of Custom Fields for ticket data). Resource Fields can never be managed as singular objects, they are always managed (e.g., faded in or out) as a Resource Field Group.

A Resource Field Group has the following group-specific parameters. Mark the desired Resource Field Group and click Edit to edit those values (see the next section).

Editing Resource Field Group-Specific Parameters

Figure 528: ConSol CM Admin Tool - Editing Resource Field Group-specific parameters

Here, you can edit the following fields:

Setting Resource Field Group Annotations

A Resource Field Group can have annotations. Select the Resource Field Group and press the Annotations button to set or unset annotations. The annotations are the same as for Custom Field groups. All annotations are listed and explained in Annotations.

Figure 529: ConSol CM Admin Tool - Resource Field Group annotations

Creating and Editing Resource Fields

Resource Fields are containers for the data of resources (analog to Custom Fields for ticket data). Resource Fields always belong to a Resource Field Group. To add or edit Resource Fields of a Resource Field Group, select the group in the resource data model and enter all required data on the right-hand side of the Admin Tool.

Figure 530: ConSol CM Admin Tool - Managing Resource Fields

Creating a New Resource Field

To create a new Resource Field, click the Add button and enter the required data in the pop-up window.

Figure 531: ConSol CM Admin Tool - Creating a new Resource Field

Enter the following data:

Types of Data Fields

The following data types are available for Custom Fields, Data Object Group Fields and Resource Fields.

The data type you choose on creating a data field cannot be changed afterwards!

Details about String Fields: Use Annotations to Fine-Tune Strings

String fields are widely used for customer, ticket, and resource data and strings can be used to contain various content, for example, a text box with a comment, a simple input field with only 20 characters, a URL or a password. The fine-tuning of string fields is implemented using specific annotations which are all listed on the Annotations page. However, since work with these annotations is an every-day task of CM administrators, the most important and most commonly used annotations will be explained here as well.

How can I ...

... insert a text box instead of a single line?

Value for annotation text-type: textarea

The size of the text box can be adjusted, displayed as standard text box depending on web browser. Use the field-size annotation in case a specific size of the text box is required.

... hide the input of the fields for passwords?

Value for annotation text-type: password

Only dots will be displayed. This annotation does not define the field to contain a password! It only defines the display mode! Use the password annotation to define a string field to contain the CM.Track password.

... display a hyperlink, display the name instead of the link?

Value for annotation text-type: url

Input will be displayed as a hyperlink in view mode. String has to match a specific URL pattern:

First part of the string is the link (url), second part is the name which should be displayed.

Example: "http://consol.de ConSol"

... display a file link?

Value for annotation text-type: file-url

Input will be displayed as a link to a file on the file system. The web browser has to allow/support those links!

Example: Enabling file:// URLs in a Firefox browser

Add the following lines to either the configuration file prefs.js or to user.js in the user profile. On a Windows system usually in a folder like C:\Users\<USERNAME>\AppData\Roaming\Mozilla\Firefox\Profiles\uvubg4fj.default

Alternatively a Firefox browser add-on like Local Filesystem Links can be installed for better access to the referenced files and folders.

The link will also be displayed as tooltip.

The URL is correctly formed if the following conditions are met:

Example URLs:

... define a label?

Value for annotation text-type: label

This will be a read-only field which is displayed in gray, use the label-group annotation to link label and input fields which belong together. Please take a look at the annotations for labels (show-label-in-edit, show-label-in-view) before implementing special label fields!

... define a field for the CM.Track login?

Value for annotation username: true

Will be used for authentication against CM.Track server. Only for Data Object Group Fields in a contact object.

... define a field for the CM.Track password?

Value for annotation password: true

Will be used for authentication against CM.Track server (in DATABASE mode). Only for Data Object Group Fields in a contact object.

... define a field for the valid e-mail addresses?

Value for annotation email: true

The field may only contain valid e-mail addresses. Input will be validated according to standard e-mail format <name>@<domain>.

... define a scripted autocomplete list? 

Value for the annotation text-typeautocomplete

Optional: value for the annotation autocomplete-script = <name of the respective script>

A scripted autocomplete list is used to provide a drop-down menu which is filled dynamically using the input the engineer has provided so far. For example, when the user types "Mil", the possible values "Miller", "Milberg", and "Milhouse" are displayed as list and the engineer can select the one required for the field. You know this behavior from other autocomplete fields, e.g., the search for engineers for a ticket or the search for customers while creating a ticket. However, in these cases, CM generates the list automatically. The behavior cannot be influenced or customized. Scripted autocomplete lists, on the contrary, can be implemented by the CM administrator. The values are based on a result set which is dynamically created. The result set can contain strings, engineers, customers (Units), and resources.

A detailed description of scripted autocomplete lists is provided in section Scripted Autocomplete Lists.

Setting Resource Field Annotations

The characteristics of a Resource Field, e.g., the visibility, the position in the Web Client, and whether the field should be indexed or reportable, are defined using annotations. You might know this principle from your work with Custom Field annotations.

Figure 534: ConSol CM Admin Tool - Defining Resource Field annotations

The annotations which are available are the same as for Custom Fields and are listed and explained in detail in Annotations.

The position annotation marks the position of the field on

As with ticket layout, you can place the Resource Fields in the GUI by using the matrix principle and setting the position accordingly:

Figure 535: Example matrix for position annotation

Creating Further Resource Types within a Resource Group

To add a new Resource Type within a Resource Group, mark another Resource Type of the desired Resource Group in the list and click the Add button. Then fill in all required data as described in the section Editing the Resource Type.

Creating Resource Field Groups and Resource Fields

To create a new Resource Field Group within a Resource Type, select another Resource Field Group of the desired Resource Type in the list and click the Add button. Then enter all the required data as described in the section Editing the Resource Field Group.

Creating Further Resource Groups

To create a new Resource Group (OfficeSoftware in our example), select another Resource Group in the list and click the Add button.

Enter all the data as for the first Resource Group, see section Editing the Resource Group.

Figure 536: ConSol CM Admin Tool - Adding a new Resource Group

To fill the new Resource Group with Resource Types and Resource Fields, proceed as described in the previous sections.

Example for a Complete Resource Model

In our example, the following resource model has been created. It will be used as a basis for later examples in this manual.

Figure 537: ConSol CM Admin Tool - Example for a resource model

Figure 538: ConSol CM Web Client - Example for a resource model (in Resource Pool Dashboard)

Defining Resource Relations

This is explained in detail in the section CM.Resource Pool - Resource Relations.

Defining Resource Actions

This is explained in detail in the section CM.Resource Pool - Resource Actions.

Assigning Access Permissions for Resources to Engineers Using Roles

This is explained in detail in the section CM.Resource Pool - Assigning Permissions for Resources.