# Widgets

Widget types, sources, columns, and filters.

Source: https://support.toolingmetrics.com/en/analytics/reference/widgets/
Updated: 2026-10-29

A **Widget** is a single data view placed on a dashboard. Each widget reads one Source Type and renders the result as a Metric, Chart, or Table, according to its **Type**.

## Widget types

| Type | Description |
|---|---|
| **Metric** | Shows field values from one specific record (set via Source Name) as cards, one card per configured column. Only the Machine, Storage Device, and Warehouse Source Types are available. Has nothing to show until a record is picked. |
| **Chart** | Renders grouped/aggregated Columns as a chart. **Chart Type** selects the shape: Line, Column, Area, Scatter, Bar, Pie, Stacked Column, Stacked Bar, or Stacked Area. |
| **Table** | Renders matching records as rows, one column per configured field. Can't render a result that's already grouped into a single aggregate per group — that combination shows an error instead of a table. |

## Configuration fields

| Field | Description |
|---|---|
| **Title** | Widget title shown on its card. Optional — falls back to the selected record's name (Metric) or the Source Type's name. |
| **Size** | XS, S, M, L, XL, or XXL. Sets how many grid columns the widget spans on wider screens. |
| **Order** | Numeric position among the dashboard's widgets. |
| **Type** | Metric, Chart, or Table — see above. |
| **Chart Type** | Line, Column, Area, Scatter, Bar, Pie, Stacked Column, Stacked Bar, or Stacked Area. Only takes effect when Type is Chart. |
| **Limit** | Caps the number of rows or series returned. Default 10. |
| **Refresh after** | Seconds between automatic data refreshes. Optional. |
| **Source Type** | The record type this widget reads — see Data Sources below. A Metric widget accepts only Machine, Storage Device, or Warehouse. |
| **Source Name** | A specific record to read from. Only editable when Type is Metric; otherwise fixed to "All record." |
| **Sort By / Sort Direction** | Optional column to order results by, and its direction: Ascending or Descending. |
| **Columns** | Which fields this widget uses, and each field's function (show, group, or aggregate) — see Column Functions below. |
| **Filter operation** | Whether the widget's filter rows must all match ("all") or any one of them ("any"). |

## Data sources

| Source Type | What it represents |
|---|---|
| **Item** | A tool library product's stock definition — quantities, pricing, and usage settings. |
| **Tool** | A physical tool tracked through the lifecycle. |
| **Cutting Edge** | A cutting edge mounted on a physical tool, with its condition and usage life. |
| **Machine** | A shopfloor machine. |
| **Storage Device** | A physical storage location (shelf, cabinet, drawer) inside a Warehouse. |
| **Warehouse** | An inventory storage location. |
| **Purchase Order** | A procurement order. |
| **Purchase Order Line** | A single line on a Purchase Order. |
| **Usage Cost Line** | A recorded usage cost posting — machine, item, serialized item, user, value, and date. |
| **Tool Life** | Remaining life tracking for a tool. |

## Column functions

Each Source Type exposes a fixed set of columns, shown in the widget's Data tab. The functions available for a column depend on its type:

| Column type | Available functions |
|---|---|
| Date/time | Show, or group by day, week, month, quarter, year |
| Numeric or currency | Show, Group, Sum, Count, Average |
| Other | Show, Group, Count |

Mark one or more columns **Group** to break the results down by that field; mark a value column **Sum**, **Count**, or **Average** to aggregate it within each group.

## Filters

A filter row has a column, an operator, and a value:

| Operator | Notes |
|---|---|
| `=`, `!=`, `>`, `>=`, `<=`, `<` | Standard comparisons. |
| contain, does not contain | Text match. |
| in, not in | Match against a list of values. |
| last n days | Only offered for date/time columns. The value field becomes a day count instead of a date. |

Every other date/time operator uses a date picker for the value; every non-date column uses a plain text field.
