For Salesforce Field Service Lightning (FSL) administrators and developers, managing complex, multi-technician jobs requires moving beyond single-resource scheduling. FSL Crew Management provides the technical framework to model, schedule, and manage groups of service resources as a single entity. This technical deep dive explores the architecture, setup, and practical implementation of Crews within the FSL ecosystem.

Crew management tool

Technical Architecture of Crew Management

At its core, Crew Management introduces a new data model and scheduling logic:

Prerequisites and Edition Requirements

Before configuration, verify your org meets the following technical criteria:

Technical Configuration and Setup

Follow this step-by-step guide to enable and expose the Crew Management functionality.

Step 1: Enable Crew Management

  1. Navigate to Setup > Field Service Settings.

  2. Locate and enable the Crew Management feature toggle.

Step 2: Expose the Crew Management Tool to Users

Administrators must explicitly add the Crew Management interface to the org. This can be done via a Visualforce tab or a Lightning component.

Option A: Create a Visualforce Tab (Classic & Lightning)

  1. In Setup, navigate to User Interface > Tabs > Visualforce Tabs and click New.

  2. From the dropdown, select the FSL.CrewManagement Visualforce page.

  3. Label the tab “Crew Management”.

  4. Configure the tab visibility and add it to the necessary apps.

Option B: Embed the Lightning Component (Lightning Experience)

  1. Navigate to the Lightning App Builder for the relevant app page (e.g., the Service Console).

  2. Drag and drop the Crew Management custom Lightning component from the list onto the canvas.

  3. Important: This component contains a detailed chart. Allocate a significant portion of the page layout, preferably a full-width region, to ensure proper usability.

  4. Save and activate the page.

Step 3: Configure Object and Page Permissions

Even with the tool exposed, users need explicit permissions for the underlying Apex classes and Visualforce pages.

  1. Create a new Permission Set (e.g., “FSL Crew Management Access”).

  2. Grant access to the following objects and elements:

    • Tab Settings: Assign the Crew Management tab (if using Option A).

    • Visualforce Page Access: Enable access and set “Enabled” for the following pages:

      • FSL.CrewManagement

      • FSL.CrewsResourceLightbox

      • FSL.CrewsSaLightbox

      • FSL.CrewsWorkorderLightbox

      • FSL.CrewsWorkorderLineItemLightbox

    • Apex Class Access: Enable access for the FSL.CrewManagement Apex class.

  3. Assign this permission set to all FSL Administrators and Dispatchers who need to create or manage crews.

Use Case: Technical Implementation for a Telecom Tower Crew

Scenario: A telecommunications provider needs to schedule a 4-person team for a cell tower upgrade. The crew consists of a Structural Engineer (Crew Leader), an RF Technician, an Electrician, and a Safety Supervisor.

Technical Process Flow:

  1. Crew Creation:

    • An FSL Admin navigates to the Crew Management tab/component.

    • Clicks New Crew and creates a record named “Tower Upgrade Team – Northeast.”

    • Assigns the Structural Engineer as the CrewLeader.

    • Sets the CrewHomeBase to the central depot territory.

    • Adds all four ServiceResource records as CrewMembers. The CrewSize field auto-populates to 4.

  2. Scheduling Logic:

    • A Dispatcher receives a ServiceAppointment for “Tower HW Upgrade” with a 6-hour estimated duration.

    • In the Dispatcher Console Gantt, the “Tower Upgrade Team – Northeast” appears as a single resource.

    • The dispatcher drags the appointment onto the crew’s timeline.

    • The FSL scheduling engine executes a query to find a 6-hour window where all four members have no conflicting ServiceAppointment assignments and are within their operating hours.

    • Upon a successful schedule, a AssignedResource record is created for each of the four ServiceResources, all linked to the same ServiceAppointment.

  3. Field Execution & Data Model:

    • The Crew Leader uses the Field Service Mobile App. The WorkOrder and ServiceAppointment are visible to all crew members.

    • The Crew Leader can report time for the entire crew using the “Log Crew Time” function, which creates multiple TimeSheet and TimeSheetEntry records in a single transaction.

    • Updating the ServiceAppointment status to “Completed” by the Crew Leader reflects the status for the entire team.

Troubleshooting and Best Practices

Conclusion

FSL Crew Management provides a robust and scalable data model for handling team-based service delivery. By correctly configuring the required permission sets, Visualforce pages, and Lightning components, administrators can empower dispatchers with a powerful drag-and-drop tool. This technical implementation shifts the scheduling paradigm from managing individual resource calendars to orchestrating collective team capacity, a critical capability for executing complex field service operations efficiently.

 

Leave a Reply

Your email address will not be published. Required fields are marked *