HaloITSM Guides
Documentation to assist with the setup and configuration of the HaloITSM platform
Custom Fields
In this lesson we will cover:
- What are custom fields?
- Creating a new Custom Field
- Displaying Custom Fields
Associated Admin Guide:
What are custom fields?
Custom fields can be used to collect and store additional information in any area of your Halo. In the client view specifically however they can add a great depth of extra information, whether it's the support supplied by their contract with you, the loyalty of that customer or something more specific to you.
Creating a new Custom Field
Head to the Configuration console and then navigate to "Custom Objects" under the Advanced heading. This takes you to the lists of custom fields in Halo. Select the client entity to display all of your current custom client fields.
Fig 1. Change entity for custom field
Once selected you can see all existing Custom Fields of that Entity and add new Custom Fields.
Clicking "New" in the top right-hand corner will take you to the creation screen. Here you can configure different properties of the Custom Field and also choose the Type and Name.
Note: The Type and Name cannot be edited after the field is created so ensure these are correct.
Give the field a name and label. The "Name" is the name of the field in the database, this will contain no spaces but is a descriptor of the field itself and should reflect the field label. The "Label" is what will appear within Halo and is what your agents will see to fill in.
Note: The Name you choose is used as the SQL database name (with CF added to the start of the Name) and it is also referenced in the API when updating the Custom Field data i.e. a custom field named money, will appear on the API with name cfmoney.
Next is the field type, each type is described in the table below:
Type of Field | Description |
Text | Single line of plain text. |
Memo | Multiple lines of plain text; longer descriptions or notes. |
Single Selection | A single option to be picked from a drop down list. |
Multiple Selection | Multiple options to be picked from a drop down list. |
Date | This field type will prompt a date selection box when clicked. |
Time | A specific time on a 24 hr clock, for clients this could be the office opening time in your time zone. |
Checkbox | A binary selection of "Yes" or "No" in the form of a checkbox. |
Table | This is used to refer to custom tables within your database such as external information. |
Rich | A rich text box allowing a large number of formatting and editing styles. Including images, links, html code editor, emoji's. |
Fig 2. Table to show each data type for a custom field
The ways in which you can configure a field depend on which data type you have selected. The following field configuration methods are therefore split by data type.
Text Field Input Types
Anything - Any plain text input.
Integer - Whole number inputs e.g. 13.
Money - A number with two decimal places such as 42.21.
AlphaNumeric - Plain text letters and numbers with no punctuation.
Decimal - A number with more than two decimal places i.e. 12345.98765.
URL - A web address.
Password - The input type can be restricted, this could be set to i.e. “Password” which will be a field that when given inputs, the inputs will show as hidden characters. You can audit for the password custom fields which means you can see who has viewed the password by using the "eye" icon.
Fig 3. Eye Icon
The password can be unveiled by hitting the eye icon. By default the password field will not show the length of the password, unless clicking on the eye icon. The password can also be copied by clicking the copy icon. Password visibility(visibility of the eye icon) can be set on permissions tab of agents, options are “Not Visible” or “Visible”. More information on storing passwords can be found here: Storing Passwords For Customers
Fig 4. Hiding a Password or Copying it to Clipboard
Calculated - The last type of input is the calculated field. The idea of a calculated field is to perform mathematical operations on a field on halo that is numeric.
For example, if the dollar variable $CFIntegerField is entered into the calculated field as shown in figure 5, this will run a calculation to divide the integer in CFIntegerField by two. When CFIntegerField is set to 5, the calculated field will be 2.5 on the ticket.
Fig 5. Field Configuration of a Calculated Field
Fig 6. Example Calculated Field
There are various uses for this, such as, you are topping up accounts via a ticket on Halo. On the ticket creation screen there would be the different accounts along with the amount to top up by. Fig 7. Use Case of a Calculated Field
Then to summarise the total amount to top up by across all of the accounts we can use a calculated field.
Encryption
Text fields can also be encrypted via the checkbox 'Encrypted Field' , this is useful for fields that contain sensitive information. If this is enabled against a text field you will be able to choose the display type for the field as follows:
- Hide value - All the text will be hidden
- Show start of value - Only the starting characters will be visible, the number of characters that will be displayed can be set below.
- Show end of value- Only the ending characters will be visible, the number of characters that will be displayed can be set below.
Memo Field Input Types
The only option here is the default value.
Single Selection Input Types
A static list is a fixed set of options set in a comma separated string, e.g. Yes,No,Maybe. Radio selection can be used instead of a drop down list.
Fig 9. Radio Selection, this can be set to a horizontal layout (checkbox) which has the values go across the page instead of down the page.
A dynamic list (SQL) is a list which populates based on a SQL query input below. This can be used to pull information from the database to enable your agents to make a choice based on existing data. There is a separate Guide on dynamic sql lookup fields here.
Multiple selection Field Input Types
Choose values for the selections here, these are static and cannot be pulled from another query.
Date, Time and Checkbox Field Input Types
These have no configuration settings. They are exactly what the names suggest.
Table
Similar to the Dynamic List, this will extract data from the database but this time from any custom tables you have attached. These will start CT.
You can display any combinations of the information stored in any custom table.
Settings
These are more general for the fields itself with summary being a description of the information contained in the field and the hint being shown in grey when the field is being updated.
Copy values to Child Tickets - This setting decides whether the value of this field is copied to child tickets if this is present in a ticket type.
Tab - This setting determines the tab the field will be visible on; these appear on the client screen to the right of settings.
Fig 10. Custom Tab Added to a Customer
Custom Tabs can be created in Configuration > Custom Objects > Custom Tabs. In the image above there has been a custom tab created for the customer entity with name "Level of support offered". Custom Tabs can be added to many areas of halo, a notable one would be the tabs of the ticket details screen.
Visibility Restrictions
Here, you can set if this field is restricted to a particular client or organisation.
Fig 11. Adding Visibility Restrictions to Custom Fields
Displaying Custom Fields
For all entities other than Tickets/Projects/Opportunities/Actions you do not need to add the custom field anywhere to show on the entity, it will show automatically. The Custom Field will show up straight away on the Tab that was chosen during creation, if this was not changed then that will be the default tab called "Additional Fields".
For Tickets/Projects/Opportunities you need to go to Configuration > Tickets > Ticket Types > edit a Ticket Type and go to Field List. Here you can add the custom field to the specific ticket type, which will then make it visible on that ticket type, restriction settings can also be configured by editing the field item after adding it, as explained further down this lesson.
Adding a Custom Field to a Ticket/Action
Once you have completed the creation of your custom field, if it is a ticket or action level field, don't forget to add this to it's respective field list in the relevant configuration area. For example if you had a custom field you wanted to apply to a ticket types field list, you would add it to the field list of the ticket type, shown in Fig 12.
Fig 12a. Field List on a Ticket Type
Then add the field.
Fig 12b. The Add Fields Interface
Once added to the field list, dynamic visibility restrictions can be set by editing the field which will now be showing on the list. Dynamic visibility restrictions will ensure this field only shows if another field meets certain criteria, such as it contains a specified value, or it is empty.
Popular Guides
- Asset Import - CSV/XLS/Spreadsheet Method
- Call Management in Halo
- Creating a New Application for API Connections
- Creating Agents and Editing Agent Details
- Departments and Teams
- Halo Integrator
- Importing Data
- Multiple New Portals with different branding for one customer [Hosted]
- NHServer Deprecation User Guide
- Organisation Basics
- Organising Teams of Agents
- Step-by-Step Configuration Walk Through
- Suppliers