Skip to main content

Rules Usage in Protrak Applications

This document provides comprehensive details about how rules are implemented and used throughout the Protrak Single Page Application (SPA). Rules enable dynamic behavior, conditional formatting, and intelligent user interfaces.

Overview

Rules in Protrak SPA are applied in three primary contexts:

  1. Display Conditions - Control visibility of UI elements based on attribute values
  2. Conditional Formatting - Dynamic styling to attribute values based on attribute values
  3. Dependent Picklists - Filter picklist options based on attribute values

Quick Reference - Rules Applications

Display Conditions

Control visibility of UI elements based on attribute values.

Create and Edit Layouts

  • Sections
  • Section Widgets
  • Attributes

View Layout

  • Sections
  • Section Widgets
  • Section Widgets Attributes
  • Widgets

Conditional Formatting

Conditional formatting applies visual styling based on rule conditions to highlight important information. Apply visual styling based on rule conditions with the following formatting options:

  • Background Color: Set background color for attribute values
  • Fore Color: Set text/foreground color for attribute values
  • Font Style: Apply Bold, Italic, Underline, and Strike through formatting

Dashboard Views

Column formatting with background/fore colors and font styles in

  • Grid
  • Tiles
  • Scroll
  • Grid V2

View Layout

  • Widget Section Attributes
  • Relation Widget Attributes: Grid, Grid V2, Tiles, Calendar, Worksheet attribute formatting
  • Version Widget Attributes: Version-specific styling with attribute formatting

Dependent Picklist

Filter picklist options dynamically in

  • Create/Edit/View Layouts

Display Conditions

Display conditions control UI element visibility based on runtime rule conditions and attribute values.

Create and Edit Layouts

Sections

  • Purpose: Control entire section visibility
  • Use Cases: Show/hide admin sections, role-based sections, state-based visibility

Widgets

  • Purpose: Control individual widget visibility within sections
  • Use Cases: Show/hide approval widgets for pending items, permission-based widgets

Widget Section Attributes

  • Purpose: Control individual attribute field visibility
  • Use Cases: Show/hide sensitive fields, conditional fields, workflow-based display

View Layout

Sections

  • Purpose: Control entire section visibility
  • Use Cases: Show/hide admin sections, role-based sections, state-based visibility

Section Widgets

  • Purpose: Control individual widget visibility within sections
  • Use Cases: Show/hide summary widgets, status widgets, hide empty sections

Section Widgets Attributes

  • Purpose: Control individual attribute visibilty in view layouts with display optimization
  • Use Cases: Show/hide attributes

Relation Widgets

  • Purpose: Control visibility of widgets in view layouts
  • Use Cases: show/hide Grid, tiles, calendar widgets etc.

Conditional Formatting

Conditional formatting applies visual styling based on rule conditions to highlight important information.

Available Formatting Options:

  • Background Color: Set background color for attribute values
  • Fore Color: Set text/foreground color for attribute values
  • Font Style: Apply Bold, Italic, Underline, and Strike through formatting

Dashboard Applications

Grid Dashboard

  • Purpose: Apply conditional formatting to grid columns with background/fore colors and font styles
  • Use Cases: Highlight overdue items, status color-coding, priority indicators

Tiles Dashboard

  • Purpose: Format tile visual properties with colors, borders, and text styling options
  • Use Cases: Category colors, priority indicators, status styling

Scroll Dashboard

  • Purpose: Apply conditional styling to properties elements with color and font options
  • Use Cases: Highlighting items in lists

Grid V2 Dashboard

  • Purpose: Enhanced grid cells formatting with extended options and multi-condition styling capabilities
  • Use Cases: Complex conditional styling with multiple conditions

View Layout Formatting

Widget Section Attributes

  • Purpose: Apply consistent formatting to grouped attributes within sections using colors and font styles
  • Use Cases: Uniform styling for related attribute groups

Relation Widget Attributes

  • Purpose: Apply conditional formatting to attributes displayed in relation widgets with full color and font style options
  • Use Cases: Grid/Grid V2, Tiles, Calendar, Worksheet formatting

Version Widget Attributes

  • Purpose: Apply formatting to version control widget columns values with background/fore colors and font styles
  • Use Cases: Highlight version changes, color-code status, emphasize differences

Dependent Picklist

Dependent picklist functionality uses rules to dynamically filter picklist options based on rules and other attribute values.

Layout Applications

Create Layout

  • Purpose: Filter available picklist attribute options during instance creation with real-time filtering as users make selections
  • Use Cases: City by country, product variants by category, workflows by request type

Edit Layouts

  • Purpose: Update available picklist attribute options during instance modification with dynamic updates when dependencies change
  • Use Cases: Handle existing values that may no longer be valid

View Layouts

  • Purpose: Display contextually relevant picklist attribute options in view mode showing filtered options for reference
  • Use Cases: Display relevant picklist context without enabling editing

Best Practices

Rule Design

  1. Keep Rules Simple: Avoid overly complex conditional logic
  2. Performance First: Consider performance impact of rules
  3. User-Centric: Design rules to improve user experience
  4. Maintainable: Create rules that are easy to understand and modify