Skip to content

Field Keywords

Basic keywords

KeywordMeaningDetails
$[]A list of fixed values separated by commas.link
$number()A numeric value. Uses 2 decimal places by default. Can be given another number as an optional parameter.link
$dateA simple date - formatted as DD/MM/YYYY.link
$datetimeA full date - formatted as DD/MM/YYYY hh:mm:ss.link
$timeA time value - formatted as hh:mm.link
$textA multi-line plain text box.link
$markdownA multi-line markdown text box. Its content is interpreted as Markdown language or HTML.link
$fileA file that can be attached to the instance field.link
$groupA grouping field with no value. Used only to structure the form. Can group other fields into one section or serve only as a separator.link
$instanceLabelMarks the field as being representative of the instances of this definition. Each definition can have only one field with this keyword and its value must be unique (non-repeating). Whenever we search for an instance in RecordM's search box, the value of a field configured with it will be the main information shown in the results.link
$instanceDescriptionMarks the field to be shown by default in search results whenever the user searches for an instance of the definition.link
$ref()A reference to another definition that allow us to search on its instances. The first argument must be the name of the definition where we want to search and the second the query from which we want to show related results. The default value is an asterisk - * - and it allows us to show results from all the instances.link
$extRef()A reference to an external entity - i.e., an entity of a non-RecordM-based external system. The first parameter is the name of the external system we want to use and the second indicates the URI template to use when searching for entities in that system.link
$references()Used to obtain references from other definitions. The first parameter is the name of the definition we want to reference and the second parameter refers to a field of that definition. This keyword can also have as a parameter an optional list of field : value pairs, wherein the value can only be a boolean value (true or false) and the field can be one of the following: showActions, showImport, showViews, and showCreateAndDelete.link
$auto.ref().field()A read-only copy of a field of the reference definition. Used to obtain the field values of referenced instances. While the argument of $auto.ref() needs to be the name of a internal field configured with type $ref() or $extRef(), the argument of .field() needs to be the name of the original field of the external definition that is being referenced.link
$auto.text().join()A dynaminc field that will provide a real-time concatenation of the field values and literal strings.link
$auto.network().offset()A dynamically built IP address. While the argument of $auto.network() needs to be an internal field containing an IP address, the argument of .offset() defines the number to be used as an offset of that IP address.link
$tasks()A form for creating and assigning tasks to users within a given time frame.link
$geoMarks the field as having geolocation coordinates values (latitude and longitude).link
$linkUsed to make a field behave like an hyperlink, most often following an $auto.text().join() keyword in order to dynamically generate a value. When used with the optional argument encode:false, it prevents RecordM of URL encoding the value before making it a link.link
$create()Generates a link to a new instance of a definition that is pre-filled with the values given as arguments. Whereas the first argument needs to be the id of the definition from which we want to create a new instance, the other arguments assign the given values to the appropriate fields of the instance to be created. The assigned values can either be local field values or literal values.link

Advanced keywords

KeywordMeaningDetails
$default()Sets a default value for a field whenever a new instance of the definition is created. If the field is configured with the $date or $datetime keywords, the default value can only be an expression - at the moment, only now is supported.link
$editForGroup()A field configured with it can only be edited by users belonging to the groups indicated in the arguments. Nevertheless, other users can still view the value of the instance field.link
$expanded()Automatically expands a parent field whenever an instance of that field is shown. The expansion can occur at all times or whenever an optional condition is met.link
$groupEditAllows us to simultaneously edit the value of a field on multiple instances of that definition.link
$help[]Enables us to write an explanatory note in HTML or plain text inside the square brackets. This message will be shown next to the value of the field when hovering over a blue circle with a white question mark.link
$markedIf()Adds a CSS class named marked to the field if the condition used as an argument is met. Used to highlight a specific field.link
$radioEnables a list of values within square brackets - $[value1, value2, ...] - to be displayed as radio buttons.link
$readonlyMarks a field as being read-only - i.e., uneditable - for all users.link
$restricted()This field will only be shown to users belonging to the groups indicated as arguments inside the brackets. Used whenever instance fields are reserved for holding sensitive data or whenever we don't want them to be visible in the search results.link
$style[]Used to add custom CSS classes to a field. This allows us to define the look of the field whenever we access an instance of that definition. Classes used as arguments inside the square brackets must be defined in a file named customizations.css. The name of each class included in this file must be preceded by the prefix custom-.link
$multipleAllows the user to select multiple options.link

Customizations

KeywordMeaningDetails
$style[dualColumn]Allows you to display in an instance the fields descending from others in two columns. In case the browser window is large enough, the fields descending from an ascending field will be displayed in pairs, side by side (left and right). Otherwise they will be displayed in a single column.link
$style[singleColumn]Used in a field with a parent field of type $style[dualColumn] to differentiate the appearance of this particular descendant field from the appearance of the other descendant fieldslink
$style[Column]Allows two fields with the $group keyword descending from a field with the $style[dualColumn] keyword to be displayed by thematic groups rather than in the order of their insertion.link
$style[mdPreview]Allows us to render in any record listing a preview of all content created in the markdown editor of the CoB platform. Can only be used in fields that also contain the $markdown keywordlink
$auditCan be used within a definition in one of two options: $audit.creator or $audit.updater. Each of these options accepts one of three possible types of arguments: username, uri, or timelink
$calcThis keyword is used to perform basic mathematic operations with numerical values from selected fields. In conjunction with the keyword $var it's possible to reference fields that will be part of the operation.link
$imageMeant to be used together with the $file or the $link keywords. This means that, at the instance level, whenever you add - either via direct upload or through a link to an external URL - an image stored in a .png, .gif, .jpeg/jpg, .tif/tiff, or webp file format to it, a thumbnail of the image will automatically be displayed in any instance listings.link
$kibanaCreates a bar chart from the values given as data sources to it. It is most often used simultaneously with the $group keyword. The final result will be a kibana bar chart displayed right below the $group separator. The bar chart will only show data concerning the value given to the field used in the query.link
$logEmulate a typical discussion forum environment: for each comment that is saved, a new entry is created in the comments log while the comment field is automatically cleared. This way, all the participants in the discussion will have direct access to previously published comments.link
$styleResultColumnWhenever the value of a field matches the key indicated as an argument inside the keyword, the cells of a column in the instances listing will be styled according to a custom CSS class. The custom CSS class is given as a value given to the key of the keyword.link
$styleResultRowsStyles the look of all cells of rows where the value of the field built with this keyword matches the key indicated as an argument.link
$mandatoryIfTurn a field mandatory when the provided condition is true.link
$commons.validateThis costumization provides generic keywords that will extend your RecordM validation capabilities.link