Qorus Integration Engine®  5.1.2_git
Qorus Value Maps

Value Map Introduction

See also
Implementing Value Maps for information on value map development

Qorus Value Maps (also known as "Lists of Values") are key-value lookup tables to access various data. With appropriate processes in place, this data can be maintained by non-technical users, and changes can be captured and included when releases are packaged and managed.

Value maps are unique in the system (their ID and name are unique) and also keys within a value map are unique.

By default, values are cached on demand (during the first access by name/key combination). Automatic caching of all the values in a value map is possible changing the Qorus system option qorus.vmap-size-threshold to any number. It's set to 100 by default.

Each value map has following characteristics:

  • id: internal numeric ID of the value map
  • name: an unique string name for the value map
  • description: string description of the set
  • author: a string identifying the author of the value map
  • throws_exception: a flag if the API function throws an exception of the key does not exist in the value map (see Value Map Error Handling and Missing Data)
  • valuetype: an expected data type of the value (see Value Map Data Types)
  • created: timestamp the value map was created
  • modified: timestamp the value map was last modified

Value maps are exposed through the REST API at the following URI path: @/api/valuemaps.

The following permissions relate to value maps:

Value maps are also members of interface groups for access control purposes (value maps cannot be enabled or disabled).

Value Map Data Types

Each value map has a pre-defined type of the values stored. The allowed types are as follows:

  • "string": values are stored as strings. Even if the number is provided.
  • "int": values are stored as int. Strings or anything else is converted using Qore::int() function
  • "float": values are stored as float. Strings or anything else is converted using Qore::float() function
  • "date": values are stored as date.
  • "raw": values are stored as-is. This option allows complex structures (such as lists or hashes) to be stored as values, however no validation is performed in this case.

Enabled and Disabled Values

Key-value mappings in the value map can be hidden by setting the enabled flag to False; if a value mapping is disabled, UserApi::getValueMap() either returns NOTHING or it throws an exception when a disabled mapping is referenced (see Value Map Error Handling and Missing Data).