Skip to main content

Introduction

Attribute Configuration

Define How Business Information Is Captured, Validated, and Presented

Protrak Attribute Configuration enables administrators to define the information fields used by configured business types. Attributes determine what information users can enter, the form in which it is captured, how available values are resolved, and how the resulting value is presented in the application. Attributes are configured independently and then associated with the applicable type. Once associated, they can be placed in configured forms and made available according to the permissions applied to the record and its current lifecycle state. The attribute options demonstrated in the product illustrates representative configurations. They can be combined with type, form, lifecycle, and rule configurations to support different business requirements.

Define the information. Control the input. Present it in the required form.

Build Configurable Business Information Fields

Attribute-Based Data Capture

Attributes act as the configurable fields through which users provide and view business information. Each attribute is created with a defined value type and can carry additional settings that control its behavior. This allows the same platform to capture simple values, controlled selections, users, files, formatted content, and other forms of information without hard-coding every field into the application.

Associate Attributes with Business Types

A configured attribute becomes usable when it is associated with the relevant type. The ‘type’ groups the attributes required for that business record. For example, a project, task, or another configured type can be assigned to the specific set of attributes needed for its purpose. The association keeps the data model aligned with the information expected for that type.

Place Attributes in Configured Forms

After association, attributes can be added to create, edit, or view layouts through the configured design experience. Their placement can be arranged within the required containers and sections. This separates the data definition from the form layout, allowing administrators to control both what is captured and where it is presented.

Capture Different Forms of Business Data

Text and Extended Text

Text attributes support general information capture and can be configured for single-line, multi-line, or longer text requirements. Default values can be supplied where a standard starting value is required. Prefix and suffix settings can provide additional context around the value displayed to users.

Date, Date-Time, Numeric, and Currency Values

Specialized attribute configurations allow the platform to capture date-only values, date and time values, numeric information, and currency-related values. Numeric behavior can be configured according to the expected value format, including whole-number or decimal-oriented input requirements.

Boolean Values

Boolean attributes capture a true-or-false decision. They can be used where the required business input represents a flag, confirmation, applicability setting, or another two-state choice.

Controlled Pick Lists

Pick-list attributes allow users to select from configured values rather than enter unrestricted text. Option values can be defined as a static list or resolved from information already configured in the platform, such as roles, types, or templates. A default option can be preselected, and the attribute can be configured for single or multiple selection according to the requirement.

User Selection

User attributes present active platform users as selectable values. The available users can be filtered by role so that the field displays only users relevant to the intended assignment or process context. This allows a record to capture a specific user while controlling the selection of the population through configuration.

Attachment Capture

Attachment attributes allow files to be captured as part of a business record. File acceptance can be controlled through configured patterns, and validation messages can guide users when an uploaded file does not meet the expected requirement.

Rich Text Content

Rich-text attributes allow users to create formatted content rather than plain text alone. The demonstrated capability includes formatting such as bold, italic, underline, hyperlinks, font sizing, images, and ordered or unordered lists. This supports business information that requires structure and visual formatting within the record.

Control Attribute Behavior and Presentation

Single and Multiple Values

Attributes that present selectable options can be configured to accept one value or multiple values. This allows the same value source to support a single assignment, a collection of selected roles, or another multi-value business requirement.

Default Values

A default value can be configured so that a field is populated when it is presented to the user. The user can retain or change the value where editing is permitted. Defaults reduce repeated entry while preserving user control over the final information.

Renderers and Editors

Renderers determine how stored values are displayed, while editors influence how users enter or change them. Examples include masked values, color selection, hyperlinks, and email-oriented presentation and validation. These configurations allow the same underlying value to be presented in a form appropriate to its intended use.

Validation and Input Guidance

Attribute-specific settings can restrict values to the expected format. Examples include email validation, numeric restrictions, and file-type validation. Configured messages can explain why an entered value is not accepted, helping users correct the input at the point of entry.

Control Attribute Availability Through Connected Configuration

Form-Level Visibility

An attribute can be added to the layouts where it is required and omitted from layouts where it is not applicable. This allows Create, Edit, and View experiences to present the information relevant to each interaction.

Lifecycle-Based Edit Access

Whether an attribute can be edited can depend on the permissions configured for the record lifecycle state. An attribute may be visible but read-only in one state and editable in another. This connects the information model with the operational stage of the record.

Rule-Driven Use of Attribute Values

Values collected through attributes can be used by configured logic. A selected role, user, option, date, number, or other captured value can become an input for rules and process behavior defined elsewhere in the platform.

Representative Configuration Scenarios

Select One or More Roles

A pick-list attribute can use configured platform roles as its available values. It can begin as a single-select field and later be changed to permit multiple selected roles when the business requirement calls for a collection of role values.

Limit User Selection by Role

A user attribute can be filtered so that only users assigned to a selected role are available. This helps ensure that the field presents an appropriate group of users for the record or process.

Restrict Uploaded File Types

An attachment attribute can apply a configured pattern to accepted files and display an explanatory message when an unsupported file is selected.

Present Text as a Business-Specific Input

A text value can be displayed as masked content, a color selector, a hyperlink, or an email value. The configuration changes the user interaction without requiring a separate hard-coded field for each presentation.

Business Benefits

  1. Model Information for Each Business Type Associate the required attributes with each configured type so that records capture the information relevant to their purpose.

  2. Standardize Data Entry Use value types, controlled lists, defaults, and validation to guide users toward consistent information.

  3. Adapt the User Experience Configure editors, renderers, layouts, and lifecycle permissions to control how a field appears and behaves.

  4. Use Platform Information as Selectable Values Resolve selections from configured roles, users, types, templates, and other supported platform information.

  5. Capture Structured and Formatted Content Support both controlled business values and richer content such as files and formatted text.

  6. Connect Data with Process Logic Use captured attribute values with forms, lifecycle permissions, and rules to address operational requirements.

Configure Information Around the Business Record

Protrak Attribute Configuration provides a flexible foundation for defining the fields associated with configured business types. Through value-type selection, option sources, defaults, validation, presentation settings, type association, form placement, and lifecycle access, administrators can control how information is collected and used without limiting the model to the examples demonstrated.

Configure the attribute. Associate it with the type. Use it wherever the business process requires it.

Standard Attributes

The following standard attributes are available:

  • Name
  • Description
  • TrackingId (when Tracking Required is enabled on the Type)
  • TrackingInfo (when Tracking Required is enabled on the Type)
  • Geolocation (when Geolocation Required is enabled on the Type)
  • State (the lifecycle state)
  • Creator (the user who created the instance)
  • Modifier (the user who last modified the instance)
  • Created (timestamp of instance creation)
  • Modified (timestamp of last modification)
  • VersionNumber (when versioning is enabled for the instance)
  • QRCode

Working with Different Attribute Types

Protrak supports various data types for custom attributes. This guide explains how to work with attribute values in your code.

The Prorigo.Protrak.API.Contracts.Attribute class is used to represent attribute values in the Protrak API.

Attribute Contract

PropertyData TypeDescription
NamestringThe attribute name defined in the schema. Unique for each attribute. May differ from the display name.
TypeProrigo.Protrak.API.Contracts.Enum.AttributeTypeEnum: Text, Numeric, Date, Currency, Picklist, DateTime, RichText, Expression, Boolean, Attachment, User, Reference, Lifecycle
CanUpdateboolIndicates if the attribute value can be updated for the given instance, based on permissions and lifecycle state.
TextValuestringValue for Text attributes.
DateValueDateTime?Value for Date attributes.
NumericValuedouble?Value for Numeric and Currency attributes.
BooleanValuebool?Value for Boolean attributes.
ArrayValuestring[]Value for Picklist attributes.
FileValueProrigo.Protrak.API.Contracts.FileValueValue for Attachment attributes. Contains FileId and FileName.
UserValuesProrigo.Protrak.API.Contracts.UserValue[]Value for User attributes. Array of UserId, UserName, UserEmail, UserThumbnailUrl, Phone.
ReferenceValuesReferenceValue[]Value for Reference attributes. Array of related instance Id and Name.
OptionValuesProrigo.Protrak.API.Contracts.Enum.OptionValuesEnum indicating if the option value is StaticList, Roles, Types or Templates.
TemplateTargetstringIf OptionValues is set to Templates, then TemplateTarget is used to filter available templates based on the specified template target.

Attribute Type Capabilities

Attribute TypeSortableDefault Sort OrderFilterableConditions
TextyesAscendingyesContains, Not Contains, Equals, Not Equals, In, Is Empty, Is Not Empty, Starts With, Ends With
NumericyesAscendingyesEquals, Greater Than, Greater Than Or Equal, Less Than, Less Than Or Equal, Between, Is Empty, Is Not Empty, In
DateyesDescendingyesEquals, Greater Than, Greater Than Or Equal, Less Than, Less Than Or Equal, Between, Is Empty, Is Not Empty
CurrencyyesAscendingyesEquals, Greater Than, Greater Than Or Equal, Less Than, Less Than Or Equal, Between, Is Empty, Is Not Empty
PicklistyesAscendingyesContains, Not Contains, Equals, Not Equals, Is Empty, Is Not Empty
Picklist - MultiselectnoyesContains, Not Contains, Equals, Not Equals, Is Empty, Is Not Empty
DateTimeyesDescendingyesEquals, Greater Than, Greater Than Or Equal, Less Than, Less Than Or Equal, Between, Is Empty, Is Not Empty
RichTextyesAscendingyesContains, Is Empty, Is Not Empty
Expressionnono
BooleanyesAscendingyesEquals
Attachmentnono
UseryesAscendingyesContextUser, Contains, Not Contains, Equals, Not Equals, Is Empty, Is Not Empty
User - MultiselectnoyesContextUser, Contains, Not Contains, Equals, Not Equals, Is Empty, Is Not Empty
ReferencenoyesContains, Not Contains, Equals, Not Equals, In, Is Empty, Is Not Empty, Starts With, Ends With
NameyesAscendingyesContains, Not Contains, Equals, Not Equals, In, Is Empty, Is Not Empty, Starts With, Ends With
TrackingIdyesAscendingyesContains, Not Contains, Equals, Not Equals, In, Is Empty, Is Not Empty, Starts With, Ends With
TrackingInfoyesAscendingyesContains, Not Contains, Equals, Not Equals, In, Is Empty, Is Not Empty, Starts With, Ends With
Geolocationnono
DescriptionyesAscendingyesContains, Not Contains, Equals, Not Equals, In, Is Empty, Is Not Empty
StateyesAscendingyes
Actionsnono
CreatoryesAscendingyesContextUser, Contains, Not Contains, Equals, Not Equals, Is Empty, Is Not Empty
ModifieryesAscendingyesContextUser, Contains, Not Contains, Equals, Not Equals, Is Empty, Is Not Empty
CreatedyesDescendingyesEquals, Greater Than, Greater Than Or Equal, Less Than, Less Than Or Equal, Between, Is Empty, Is Not Empty
ModifiedyesDescendingyesEquals, Greater Than, Greater Than Or Equal, Less Than, Less Than Or Equal, Between, Is Empty, Is Not Empty
TypeNamenono
VersionNumbernono
QRCodenono

Child Pages