Field Service Marketplace components
Several types of components are installed with the activation of the Field Service Marketplace feature including tables, roles, system properties, business rules, and script includes.
Tables
| Table | Description |
|---|---|
| Marketplace engagement method [marketplace_engagement_method] |
This table has the basic rules for engaging with contractors. The engagement methods define the ways contractors can respond to the marketplace requests. |
| Marketplace request [marketplace_request] |
This table establishes the relationship between engagement method and work order tasks. This table is populated by the dispatcher with all relevant fields to progress the request. |
| Marketplace assignment [marketplace_assignment] |
This table maintains distinct records for each contractor, offering the dispatcher the capability to choose contractors permitted to participate in a marketplace request. |
| Marketplace response [marketplace_response] |
This table is designated to gather responses from all contractors regarding their pricing, as well as the intended start and completion dates for the task. |
Roles
| Role | Description |
|---|---|
| sn_mktplace_core.mktplace_admin | Administrator role can create marketplace engagement methods. |
| sn_mktplace_core.mktplace_requestor | Requestor role can push tasks to the marketplace. |
| sn_mktplace_core.mktplace_fulfiller | Fulfiller role can respond to marketplace requests. |
System properties
Field Service Marketplace adds the following system properties:
The following table lists the system properties that are required to set up Field Service Marketplace. Navigate to AllSystem Properties list
| System property | Description |
|---|---|
| sn_fsm_mktplace.maximum_number_of_contractors | Maximum number of contractors to fetch and show for a Marketplace request.
|
| sn_fsm_mktplace.use_playbook_experience_for_marketplace | Property to use playbook experience for marketplace.
|
| sn_fsm_mktplace.wot_fields_to_restrict_update | Comma separated fields to restrict update when Work Order Task is pushed to
marketplace.
|
Business rules
| Business rule | Table | Description |
|---|---|---|
| Restrict order change marketplace task | Work Order [wm_order] |
Blocks suspension of a work order when one of its tasks is pushed to the marketplace. |
| Restrict fields for marketplace task | Work Order Task [wm_task] |
Blocks updates to certain work order task fields. |
| Restrict marketplace task with assigned | Work Order Task [wm_task] |
Blocks a work order task with an assignment group populated and marketplace task set to true. |
| Restrict updates to marketplace flag | Work Order Task [wm_task] |
Disables changing marketplace task flag of the work order task to false. |
| Disable changes when open request exists | Marketplace engagement method [marketplace_engagement_method] |
Disallows changes to the engagement method when an open marketplace is using it. |
| Disable cost/time update from list | Marketplace engagement method [marketplace_engagement_method] |
Validates edits of time and cost fields on the marketplace engagement method table list view. |
| Cancel all assignments and responses | Marketplace request [marketplace_request] |
Cancels marketplace assignments and inactivate marketplace responses when a marketplace request is canceled. |
| Validate request insertion | Marketplace request [marketplace_request] |
Blocks the creation of a new marketplace request when an open request exists. |
| Set assignments to timeout on close | Marketplace request [marketplace_request] |
Updates the state of marketplace assignment records when a marketplace request is closed. |
| Create MP Assignment records in draft | Marketplace request [marketplace_request] |
Creates marketplace assignments in the draft state when a marketplace request is created. |
| Check end time is more than start | Marketplace request [marketplace_request] |
Validates start and end times of the marketplace request. |
| Validate assignment insertion | Marketplace assignment [marketplace_assignment] |
Blocks the creation of a new assignment record for a request that isn’t open. Blocks duplicate assignment records for an open request. |
| Inactivate responses when withdrawn | Marketplace assignment [marketplace_assignment] |
If withdrawn, inactivates response of contractor. |
| Check close condition | Marketplace assignment [marketplace_assignment] |
Handles closing marketplace request and flow data records based on its close condition. |
| Unaward assignments when task is awarded | Marketplace assignment [marketplace_assignment] |
When a task is awarded to a contractor, other contractors' assignment records are marked unawarded. |
| Query on Assignment for WOT | Marketplace assignment [marketplace_assignment] |
Query business rule on marketplace assignment table |
| Assigned from marketplace | Marketplace assignment [marketplace_assignment] |
When a task is awarded to a contractor, closes the request and updates the work order task with the necessary details. Updates the work order task scheduling method to marketplace. |
| Disable negative in response duration | Marketplace response [marketplace_response] |
Disables insertion of responses with negative duration and checks response's start and end with work order task window start and end. |
| Update Assignment to accept | Marketplace response [marketplace_response] |
When a response is received, update the assignment record state of that contractor to accepted. |
| Validate response insertion | Marketplace response [marketplace_response] |
Blocks insertion of response if the work order task's "Is Fixed Window" flag is true and the response's start and end don’t fall within the work order task window. Blocks creation of responses for requests that aren’t open. Inactivates the previous response when a new response is received from the contractor. |
| Query on Response for WOT | Marketplace response [marketplace_response] |
Query business rule on marketplace response table. |
Script includes
| Script include | Description |
|---|---|
| MarketplaceCoreUtil | Contains util methods used for generic Marketplace core workflows. |
| FSMMarketplaceUtil | Contains util methods used for FSM specific workflows of Marketplace. |
| FSMMarketplacePlaybookUtil | Contains util methods used for Playbook workflow of Marketplace. |
| FieldServiceMarketplaceConstants | Holds constants. |
| MarketplaceCoreAjaxHelper | Contains util methods used in Marketplace Core client-side scripts. |
| FSMMarketplaceAjaxHelper | Contains util methods used in FSM Marketplace client-side scripts. |
| FSMMarketplaceCspUtil | Util file that holds methods used in Playbook's CSP. |