ChartHop for Administrators
...
Managing data
Fields

Field data types & smart fields

When creating custom fields, you can choose from a wide range of data types to define what kind of information each field will contain. The following table describes the available data types in ChartHop.

Data type

Description

Single select

Records a single response from a list of options. See Enum.

Multiple select

Records multiple responses from a list of options. See Enum.

Note that each item in the list should be separated with a semi-colon when importing.

Numeric scale

Records a single response from a list of numbered options. See Enum.

Yes/No

Stores true/false values. See Boolean

Short text

Stores short strings, such as a person’s preferred name. See String

Long text

Stores longer strings, such as a paragraph of text in a form response. See String

Integer number

Stores whole numbers. See Number

Decimal number

Stores both decimals and whole numbers. See Number.

Money

Stores currency values, such as 10 USD. See Money.

Percentage

Stores percent values. See Percent

Date

Stores dates. See Date

Smart calculation

Calculates a numeric value using Carrot Query Language (CQL). See Smart calculations.

Smart bucket

Records a single response from a list of options.  Each option contains a smart calculation. See Smart buckets.

Person

Stores individual people. See Person

Persons

Stores multiple people, such as a group of peer reviewers on a form. See PersonList.

File

Stores uploaded files, such as an offer letter. See File

Address

Includes Address line 1, Address line 2, City, State, Posta

The data type you select determines what kind of value a field can store. For example, a number field can only store a value like 56. If you expect to receive responses containing either a string value (fifty-six) or a number value (56), use the string data type to capture them, since numbers will automatically be converted to strings (for example, 56 to "56"). If you need to store the responses as numbers for reporting purposes, you can create a second custom field that converts the value to a number. Learn more.



Smart Fields

You can create smart fields that automatically make calculations for you. You can use these fields in reporting and can control the expressions used to calculate the data. There are two kinds of smart fields: smart calculations and smart buckets. Each serves a different purpose and can help you build out simple or complex formulas to manage data.

Smart fields use Carrot Query Language (CQL), ChartHop’s custom query language.

Document image


Smart calculations

Smart calculations contain a single Carrot expression, although that expression can be lengthy depending on the data being calculated. Smart calculations use algebra and basic math to return a single numeric value such as a dollar amount, a date, or a number.

For example, you can use a smart calculation to calculate a prorated salary or the number of jobs that have been open for more than 90 days (is:open daysOpen>90)

Document image


Smart buckets

Smart buckets are single select fields that contain multiple Carrot expressions, one for each color-coded option. Smart buckets return data in a range of numerical values instead of a single number. 

You can use smart calculations to tag or group employees with multiple options; for example, a set of salary guidelines or a group of functional areas. 

In the following example, functional areas for an org are defined by these Carrot expressions:

  • Technical and Product (department.func='Design' or department.func='Engineering' or department.func='Product' or department.func='Security') and placement:normal
  • Sales and Marketing(department.func='BD' or department.func='CS' or department.func='Marketing' or department.func='Sales'  or department.func='Support') and placement:normal
  • Operations and Finance(department.func='Executive' or department.func='Finance' or department.func='General' or department.func='IT'  or department.func='Legal'   or department.func='Operations'   or department.func='People'   or department.func='Recruiting') and placement:normal
  • Administrative/Other placement:assistant
Document image