Configuring FSM Schedule Board Groups and Panel Options
Configure resource grouping and panel filters and sorting for the Schedule Board. Resource, assigned-event, and unassigned-event panels have separate definitions.
This topic includes the following sections:
Grouping Resources
groups contains names from the mapped resource data. Its order determines the grouping levels.
For example, this fragment groups employees by region and then job title, using properties already present in the standard employee map:
{
"routes/scheduler": {
"groups": ["regiontext", "jobtitle"]
}
}
The array replaces the inherited grouping array. Include every grouping level you intend to retain.
Panel Filter Options
Each panel's filter object contains named filter definitions.
The following table describes panel filter properties.
|
Filter Property |
Purpose |
|---|---|
|
|
Filter label shown to the user. |
|
|
Mapped property to match on a resource or event. |
|
|
Available choices, supplied as an option list or a resolved search. |
|
|
Enables the All/Any choice for matching multiple selected values. |
For data with multiple values, All requires every selected value to be present. Any requires a match to at least one selected value. The option IDs must correspond to the values supplied by the mapped property.
Resource, assigned-event, and unassigned-event panels have separate definitions. Changing one panel doesn't automatically change the others.
For example, changing resourcepanel.filter.region.label changes the resource panel's filter label. It doesn't rename the NetSuite region field or change its search criteria.
Consistent Filters Across Panels
Define a filter in every panel where that criterion has a useful meaning. Use matching option IDs and compatible mapped values in those panels. The resource panel filters resource rows. The assigned panel filters events on the board and in the assigned list. The unassigned panel filters its own event list. Each panel saves an independent selection, so adding the same definition doesn't synchronize selected values.
Region is available in all three standard panels. For a consistent label, this fragment changes the inherited Region filter label in each panel without replacing its options or mappings:
{
"routes/scheduler": {
"resourcepanel": {
"filter": {
"region": {
"label": "Service Region"
}
}
},
"assignedpanel": {
"filter": {
"region": {
"label": "Service Region"
}
}
},
"unassignedpanel": {
"filter": {
"region": {
"label": "Service Region"
}
}
}
}
}
For a shared criterion, supply its resource mapping in resource.employee.map and every other applicable resource.<definition>.map. Also supply its event mapping in every applicable event.<definition>.map. Resource and event property names can differ. Each filter's column must identify the appropriate mapped property. That property must return IDs from the same option list. Don't assume that a task field or join also exists on a project task or record for a nonworking day.
Case Type has a different scope: it describes the case linked to a CRM task. For an example that adds Case Type to both event panels, see Adding an FSM Schedule Board Case Type Filter. It doesn't add a Case Type filter to resource rows, which have no corresponding case relationship in this example.
Panel Sort Options
Each panel's sort object contains named sort definitions.
The following table describes panel sort properties.
|
Sort Property |
Purpose |
|---|---|
|
|
Sort choice shown to the user. |
|
|
Mapped property used for ordering. |
|
|
|
Standard resource-panel choices sort labels alphabetically. Standard event-panel choices include priority, start date, and label. Use the mapped property's actual values when defining direction. A label such as High Priority doesn't itself determine the sort order.