Category Archives: Universal Resource Scheduling

Appointment Sync from Outlook and Dynamics Appointments to Schedule Board

With Wave 1 2021 Microsoft has released a revised integration of Appointments into Resource Scheduling.

After setting ‘Scheduling Parameter’.’Include Appointments’ to Yes, you’ll see all Dataverse Appointments on your Schedule Board including their colored Appointments Status. And that in between your other Bookings coming from Work Orders or Custom Entities etc.:

Screenshot of the schedule board with appointments.
Source: Microsoft
  • Appointments that were tracked from Outlook
    “Dataverse appointments can also originate in Outlook, and be synced to Dynamics 365 if server-side synchronization has been set up. An Outlook appointment must be manually assigned the special Tracked to Dynamics 365 category so it appears as a Dataverse appointment record.”
  • Appointments from Service Calendar
  • CRM/Dataverse Appointments coming from Timeline or other Activity entries
    “Appointments will be visible on the new schedule board for the required attendees and the owner, as long as they are set up as bookable resources.”

Consider:

  • Appointments can’t be moved in Schedule Board
  • can be deactivated for certain Resources in ‘Bookable Resource’.’Include Appointments’
  • RSO respects the Appointments
  • Schedule Assistant (Find availability) will also respect it (coming wave 2 2021)
  • “Appointments marked private in Outlook will not show their subject on the schedule board”

Source & more information:

https://docs.microsoft.com/en-us/dynamics365/field-service/appointment-scheduling

Watch 7 min Video here:

Share it on

Customize the Schedule Board

To customize the Schedule Board has some special limitations but also a lot of possibilities.

Requirement Lists

This is one of the most wanted things to customize.
You can easily use all different kinds of Views from the Entity Resource Requirement on the Schedule Board.

  • System views as well as Personal Views (good for advanced Users customizing their own Schedule Board tab) can be displayed.

Booking Templates

Can be defined per Schedulable Entity.

Good reference here:
https://docs.microsoft.com/en-us/dynamics365/customer-engagement/field-service/booking-template

Tooltips

  • displayed fields are defined by a View

Tooltips that are defined once across all Schedulable Entities:

  • Resource Map Pins: Resource Tooltips View
  • Organizational Unit Map Pins: Organizational Unit Tooltips View

Tooltips individual per Schedulable Entity:

  • Requirement Map Pins (here also personal view possible): Requirement Map Pin Tooltips View
  • Booking Map Pin or Booking Tile: Booking Tooltips View

Note: the Booking Tile’s Booking Tooltips View in the Daily/Weekly and Monthly View are not customizable as of now [improve@MS].

Details Pane

Sliding out from the right after selecting an item.

Views that are defined once across all Schedulable Entities:

  • Resource Map Pin or Resource Card: Resource Details View
  • Organizational Unit Map Pin: Organizational Unit Details View

Views individual per Schedulable Entity:

  • Booking Map Pin or Booking Tile: Booking Details View
  • Requirement Map Pin or Requirement from Requirements List (here also personal view possible): Requirement Details View

Map View filter

  • Requirement Map Filter View
  • Determines which Requirements (Requirement Map Pins) are shown on the map.
  • only the filter, not the columns matter
  • is independent of the Views on the Requirements Panel /Requirement Lists)
  • if Apply Territory Filter from Tab parameters (gearwheel symbol) is set to yes, ADDITIONALLY the Territories of the filter fields will be applied to sort out the displayed Requirement Map Pins

Other Adjustments

  • Increase Booking width (zoom in): slider at the bottom right. This is saved for the Schedule Board Tab (for all users).
  • remove columns from List View directly: only temporarily/local, not saved.
  • to hide certain bookings for example of Custom Entities from the Schedule Board has to be done by using the Field Service Booking Status Canceled for these Bookings and than setting this Status to be hidden.

Customization Tips

  • make default schedule board not editable per Security Role
  • if the setting for a Schedule Board Tab from 2nd gearwheel, upper right corner, should be saved, the User needs update privileges for this Schedule Board Settings entity record. Changes would be visible for all other Users of this tab as well than. More information: Shared vs. personal Schedule Board (by Microsoft).

Advanced Customization

Resource Cell

See here:
https://www.linkedin.com/pulse/extending-schedule-boardif-i-can-do-you-too-scott-lefante/

https://docs.microsoft.com/en-us/dynamics365/customer-engagement/field-service/extend-schedule-board-custom-resource-attribute

Dynamically get the displayed date range and use it for count in Resource Cell:
https://blogs.msdn.microsoft.com/crm/2017/12/15/new-use-schedule-board-date-ranges-in-custom-queries-in-universal-resource-scheduling/

Custom Tab in Details area (left)

A Web Resource can be integrated on the right as Custom Tab:
https://www.powerobjects.com/blog/2016/08/01/advanced-customizations-for-the-custom-tab-in-the-field-service-schedule-board/

Query extentions / Filter Layout extentions

https://docs.microsoft.com/en-us/dynamics365/customer-engagement/field-service/extend-schedule-board-custom-resource-attribute

https://cloudblogs.microsoft.com/dynamics365/it/2017/10/16/blog-post-july-2017-update-for-field-service-and-project-service-automation-universal-resource-scheduling-part-1/?source=crm

https://docs.microsoft.com/en-us/dynamics365/customer-engagement/common-scheduler/developer/extensibility-release-notes

Add a Sort By criteria

Get an insight into how to add a Sort By criteria by using the example of total available time. Also see how UFX works here.

https://community.dynamics.com/365/projectserviceautomation/b/dynamics-365-for-project-service-automation-blog/posts/how-to-sort-results-by-total-available-time-when-searching-for-resource-availability

https://cloudblogs.microsoft.com/dynamics365/it/2017/12/15/sort-available-resources-by-total-available-time-in-universal-resource-scheduling/

Book-Button extention

https://cloudblogs.microsoft.com/dynamics365/it/2017/07/14/dynamically-build-your-schedule-assistant-search-by-changing-the-url/

Custom Javascripts, CSS, and label localization on the Schedule Board

Create a new Client Extension record and associate it to the Schedule Board Setting record that contains your Schedule Board Tab or leave the Schedule Board Setting id field empty to have it affecting all Schedule Board Tabs .

https://community.dynamics.com/365/b/365teamblog/posts/july-2017-update-for-field-service-and-project-service-automation-universal-resource-scheduling-part-1

More information / sources:

6 tips for global versus local changes – Universal Resource Scheduling (by Microsoft)

Share it on

RSO enhancements October ’19

Version 3.0.19263.1 of Resource Scheduling Optimization brings the following functionalities:

  • Constraint “Meets Resource Preferences” also respects the new Resource Preference Type “Must Choose From” to force selection from certain Resouces only
  • new Objective “As Soon As Possible”: helps to front load rather than leaving some emergency/unplanned capacity
  • new Constraint “Meets Required Roles”: matches Requirement Roles with Resource Roles
  • RSO recalculates Travel Time also for locked bookings (Operation Details: “Only the travel time was updated for the booking.”)

Source & more information:
https://cloudblogs.microsoft.com/dynamics365/it/2019/10/03/whats-new-in-dynamics-365-resource-scheduling-optimization-version-3-0-19263-1/

Share it on

Version History FIELD SERVICE, Universal Resource Scheduling & RSO

The official docs-page from Microsoft provides information to the major releases, i.e. V. 8.6, 8.7, 8.8 and so on:

https://docs.microsoft.com/en-us/dynamics365/customer-engagement/field-service/version-history

Also the latest generally available Woodford Mobile Project Template versions incl. download links and the Woodford solution itself can be found on the site above.

However the minor update documentation is not directly linked from the above mentioned page. Therefore I (try to) list all the update announcements I come across here:

Minor Update Versions

V.8.8.3.533 (Sept. 10, 2019)
https://cloudblogs.microsoft.com/dynamics365/it/2019/09/10/enhancements-and-bug-fixes-for-field-service-version-8-8-3-533/

V.8.8.2.160 (August 11, 2019):
https://cloudblogs.microsoft.com/dynamics365/it/2019/08/11/enhancements-and-bug-fixes-for-field-service-version-8-8-2-160/

V.8.8.1.45 (July 07, 2019):
https://cloudblogs.microsoft.com/dynamics365/it/2019/07/07/enhancements-and-bug-fixes-for-field-service-version-8-8-1-45/

Field Service Mobile Updates

Mobile App V.11.3 and Project Template 1.0.2735 (September 30, 2019)
https://cloudblogs.microsoft.com/dynamics365/it/2019/09/30/release-notes-for-field-service-mobile-app-version-11-3-and-mobile-project-template-version-1-0-2735/

Universal Resource Scheduling (URS) Updates

V.3.8.0.105 (June 11, 2019)
https://cloudblogs.microsoft.com/dynamics365/it/2019/06/11/enhancements-and-bug-fixes-in-universal-resource-scheduling-urs-version-3-8-0-105/

Resource Scheduling Optimization (RSO) Updates

V.3.0.19263.1 (October 3, 2019)
https://cloudblogs.microsoft.com/dynamics365/it/2019/10/03/whats-new-in-dynamics-365-resource-scheduling-optimization-version-3-0-19263-1/

Share it on

Resource Preferences

Technically the entity Requirement Resource Preference serves as a container for preferred, restricted or possible Resources under
a) the Account
b) the Resource Requirement of a Work Order
c) the Resource Requirement of a Requirement Group Template

On the field Preference Type you have the options

  • Preferred
  • Restricted
  • Must choose from (new!)

What is the difference between Must choose from and Preferred?

When having Preferred Resources you will get this after having clicked Find Availability on the Schedule Board (pretty new heart symbol):

Also the Find Availability will sort show your Preferred Resources at the top of the list.
When you open the Schedule Assistant by clicking the Book-Button on the Work Order you’ll find your Preferred Resources highlighted by the same pretty heart symbol as well, however not sorted at the top of your list:

The difference to Must choose from is, that with this option the Schedule Assistant or Find Availability really only brings you these Resources back in your search results.

Share it on

Variations of the Requirement Group setup and further detailed hints

Requirement Groups – options for alternative combinations

When creating a Requirement Group or a Requirement Group Template we are able to configure several possible combinations of Group members within one Requirement Group.

Example: We have a large Implementation Project and need two Project Managers. But these could either be one Senior plus one Junior, or alternatively two Project Managers on the Advanced level.

Our Resources are set up with these Skills and Rating Values:

Our Requirement Group (Template) will look like this:

Additionally I have opened each of the four Requirements of this Group configuration and set the corresponding Rating Value:

When we than execute the search by hitting the Book button in the ribbon of the Requirement Group (Template), and raising the Results Per Interval to 10, we’re getting these results:

Recognize that we are getting all possible combinations of Resources to fulfill each of the Requirements with an appropriate skill level in the configured combination and the system also respects our Rating Value. For example it does not propose to create a Group of Tom and Tim because Tom has only a low skill level (familiar) that would require a Senior (proficient skill level) on his side according to our configuration.

Requirement Group functionality

  • you can’t schedule Requirements that are part of a Requirement Group by using the Schedule Board. Use the Book-button from the parent record instead.
  • Requirement Groups are possible for Onsite, Location Agnostic and Facility Work Locations.
  • Always the same for all Requirements of a Requirement Group (updating them on one Requirement updates them on all others from the same Group automatically):
    • Duration (also gets auto-populated/updated from ‘Work Order’.’Primary Incident Estimated Duration’)
    • Fulfillment Preference
    • Work Location (also gets auto-populated/updated from Work Order changes)
    • Latitude/Logitude (also gets auto-populated/updated from Work Order changes)
    • From Date / To Date (also gets auto-populated/updated from ‘Work Order’.’Date Window Start’ /’Date Window End’).
    • Booking Setup Metadata and schedulable entity (Work Order, Project, custom entity, …)

Sources and more information:
https://docs.microsoft.com/en-us/dynamics365/customer-engagement/field-service/multi-resource-scheduling-requirement-groups

Hints for working with Requirement Groups in Work Orders (by leveraging Incident Type Requirement Groups)

Preferred Resources

If a Primary Incident Type that contains an Incident Type Requirement Group has been used in a Work Order, than the Resource Preferences which are kept as child records of the Service Account are not auto-populated neither into the Work Order nor into the Requirement Group based Resource Requirements of this Work Order.

However we can associate Preferred Resources to the Requirement Group Template.

Here a Requirement Group Template without preferred Resources:


Leading to these search results when setting the Results Per Interval to 3:

But if we now add two defined Resources into the Preferred Resource field of our “Associate”-Requirement of the Requirement GroupTemplate:

and than perform the search again with the setting of 3 Results Per Interval, we’re only getting two results per interval back:

This is because we have restricted the number of possible Resources for one of the Requirements to two. And because we don’t have any other Resources available which could fulfill the “Technician”-Requirement, there are only two options left per interval.

So if you have large customers who each have a certain selection of possible Resources (similar to Resource Preferences under the Account record), than you could create one Incident Type per large customer that, in combination with one Requirement Group Template per large customer, serve as a replacement of the Preferred Resource (Resouce Preferences with Preference Type: Preferred) under the Account.

Technically the entity Requirement Resource Preference serves as a container for Preferred Resources under
a) the Account
b) the Resource Requirement of a Work Order
c) the Resource Requirement of a Requirement Group Template

Find more info here: Requirement Resource Preference

Share it on

Bookable Resource – Form Customization

If you try to copy the OOB Bookable Resource form you might experience that some client side scripting doesn’t seem to be applied to your copied form anymore. Even when you haven’t done ANY other customizations except of copying it.

In this case the Facility/Equipment lookup isn’t hidden anymore when choosing the Resource Type Contact. On the uncustomized form this would have been hidden.

Strange as this usually doesn’t happen, right? If you have JS references you should have copied these references as well to your new form, right?

So when you dig deeper you’re finding that there now are business rules activated for the Bookable Resource form. I think this is rather new that MS delivers Business Rules out of the box. Fine for non-coders!!

The problem seems to be that the Business Rules here are set to scope “Information” which is only the one original OOB form, so your copy of it doesn’t inherit these Business Rules.

Another fascinating thing is that when you go into the Default Solution via old Solution explorer, you’ll see three business rules (above). When using Level Up (Browser Plugin), you’ll find 6 Business Rules taking effect here:

So you would need to go to the new maker experience to find / customize all 6 of them:

Next obstacle is: you can’t just change the scope of these Business Rules (I wouldn’t even know if this would be supported or not) as at least one of them has the Managed Property “Customizable” set to Flase:

Note: trying to customize from Business Rule “Show Enabled for Field Service Mobile field if Resource Type is User]” from within the new maker experience caused for me a state of no return, at least from make.powerapps.com: the BR got Deactivated and I could neither change it nor reactivate it anymore [improve@MS]. A resolution has luckily been to reactivate it from the old solution explorer (upper screenshot).

So what are you going to do to get the same behavior as on your OOB form also for your custom Resource form?

You need to copy the Business Rules delivered by Microsoft, than edit the Scope to your custom Form and activate the copies.
In the end you would have it like this:

Share it on

Requirement Groups in Work Orders

In a former article I have explained how Requirement Groups and Requirement Group Templates work.

Now I’m going to show you how these can be leveraged when using Work Orders.

Configure the Incident Type

  1. create a Requirement Group Template as explained in above mentioned article
  2. create a new Incident Type: Field Service=>Settings=>Incident Types=>”+ New”
  3. Give the new Incident Type a name (my recommendation: provide a hint in the name that helps you later on to remember that this Incident Type is based on a Requirement Group):

4. On the Incident Type form, go to Related=>Requirement Groups
5. create a new Incident Type Requirement Group:

6. associate the formerly created Requirement Group Template to it via the lookup field
7. provide a name to the record and save it.

So you should finally get something like this:

Test it with a Work Order

Now its up to you to test the whole setup.
For doing this you just need to create a new Work Order and fill in our new Incident Type into the field Primary Incident Type on the Work Order form:

Note: With a standard Field Service setup you necessarily need to provide the group based Incident Type in the field Primary Incident Type BEFORE you save the Work Order the first time. Otherwise you’ll get an error saying “You can’t add an incident that is related to a requirement group template to a work order if there is already a requirement related to this work order.”

Than you can check if your Requirements have correctly been associated with the Work Order. For doing so you need to go to: Related=>Requirements=> change the View to “Unsubmitted“:

Customized Work Order form and Requirements view

Customization recommendation (especially if you more often have group based Requirements): create your own Resource Requirement view for the Work Order form.

And now the big moment comes: hit the Book button on top of the Work Order form:

You should now get search results according to the available Resources, the distance to the Service Location and the other parameters like Work Location, Organizational Unit, Resource Type and so forth:

Note: if you are going to use the same or a similar combination of Resources more often, it makes sense to create Requirement Group Templates whereas if you need a certain combination of Resources/Skills only one time it would theoretically be enough to create a Requirement Group without a Template. However it seems like if go down that road, you will not be able to associate your Requirement Group to a Work Order anymore later on. At least I couldn’t find a way to do that. That means that if you want your Users to be able to click the Book button on a Work Order and have the fancy algorithm execute its sophisticated multi-resource query, you will always need to create an Incident Type for it first and associate a Requirement Group Template to it.

What you can do is going back from a created Work Order that has a Requirement Group associated via =>Resource Requirement=>Requirement Group (or simply from the Field Service menu: Requirement Groups) and there editing the instance of the Requirement Group that is responsible for your Work Order.
This method allows you to create a kind of a standard Incident Type Requirement Group and Template which you always use for creating a new Work Order when you want to leverage the Group functionality.

Cascading & sync of attributes within the Requirement Group

a) Cascading attribute changes from Work Order to Requirements

(as of Sept. 2019)

gets initially populated and auto-updated for the Resource Requirement with flag “Is Primary“ only:

  • Time From Promised/Time To Promised
  • Time Window Start/Time Window End
  • Service Territory (remove)

gets initially populated and auto-updated for all associated Resource Requirements:

  • Duration
  • Date Window Start/Date Window Start End (into fields From Date / To Date )
  • Latitude/Longitude
  • Work Location
  • Service Territory (Create, Change)

b) Attributes kept in sync between Resource Requirements

Duration, From/To Date, <long/Lat, Work Location are always kept in sync within the Requirement Group, even when changed on a non-primary Requirement.

Service Territory however is only kept in sync, when it was changed from the Work Order AND the change was not a removal of the field content. So you can open the non-primary Requirements and assign different Territories to each.

As an example you might end up having Requirements like this in the end:

– Time Promised From/To and Time Window Start/End is only populated to the primary Requirement
– Territory has been removed from the Work Order after initial creation: this removal is cascading only to the primary Requirement (whereas an UPDATE/CREATE of the Territory would have been cascaded to all Requirements)

When asking yourself why is there a difference of cascading between Time Promised/Time Window vs. Date Window you can come to the assumption that it has to do with the Requirement Group functionality. If we check the UI (screen below) we can easily see that there are only the From Date / To Date fields (which are the counterparts to Date Window From /To from the Work Order). So Microsoft only takes care for a synchronization of these fields within a Requirement Group but not for the other Date/Time fields.

I was asking myself how can you have differing values in the Time Promised fields for Requirements of the same Requirement Group? As soon as you are scheduling or re-scheduling them, all of the Bookings based on these Requirements get moved simultaneously.
However it could make sense if you have a scenario where a team gets a Booking for a longer period of time (i.e. traveling on site together) but the actual “ToDo” of a Resource would only be for a shorter time frame and you want to keep this information somewhere.
If you are going to use it this way you should surely not create a hard booking restriction – for example with a Real Time Workflow – which forces you to not book outside of time promised from/to.

Also note that a Time From/To Promised on one of the non-primary Requirements will be ignored completely by the Schedule Assistant. However a Time From/To Promised on the Primary Requirement is a hard selection criteria for the Schedule Assistant, even if it doesn’t show these fields in the Filter panel, when scheduling a Requirement Group [improve@MS].

Find in my next article variations of the Requirement Group setup and further detailed hints related to it.

Share it on

Requirement Group

After we have taken a look into Resource Crews let’s now explore what Dynamics 365 Customer Engagement can offer with Requirement Groups.

  1. create three Resources, each with differing skills:
    Go to Field Service=>Resources=>”+ New” and create
    a) One User with Skills: Flow, Hololens Know How.
    b) One Contact with Skill: Data Integration
    c) One Equipment with Skill: Hydraulic Lift

2. create a Requirement Group Template. Go to Field Service=>Resources=>Requirement Group Templates=>”+ New”
a) provide a Name, save
b) click into the first row from the subgrid and click “+ Requirement
c) now add three requirements for getting back proposals for a team of three people and add corresponding skills
d) at the Truck Resource click on Open Form to determine which Resource Type (Equipment in this case) you are expecting

Difference between Requirement Group and Requirement Group Template

A bit confusing is, that as soon as you open a Requirement Group Template form, the menu on the left jumps back as if you would have opened a Requirement Group instead of a Requirement Group Template. [improve@MS]
Reason: technically Requirement Group and Requirement Group Template are the same entity msdyn_requirementgroup where only the records are differentiated by a flag called “Is Template”.

The title of the new-form “New Template: …” gives you the indicator that you’re creating a new template. But if you’re going to edit an existing Requirement Group Template you feel like editing a Requirement Group instead. I would therefore recommend to make the flag “Is Template” visible but read-only on the form.

If you pay close attention you recognize another difference: the lookup field Requirement Group Template is only visible on the Requirement Group form:

The field Requirement Group Template is read only for saved records.

That brings us to the interoperability of the two:
if you create a new Requirement Group the above mentioned field gets unlocked so you can choose a Requirement Group Template to start from.

Book a Requirement Group

If done with editing the requirements you can click the Book button directly from the Requirement Group ribbon:

This will open the Schedule Assistant with a list of appropriate Resource combinations. In our example the three Resources we have configured in step 1:

On the result list you than can

  • open each result row’s group to see its members
  • see which of the Requirements are going to be fulfilled by which of the found resources (last column)
  • adjust filter criteria and repeat search execution
  • book one of the groups by clicking on it => Book & Exit on the right flyout

If you’re not getting any results you should

  • probably need to adjust your search criteria
  • check if you have appropriate Resources in the system at all
  • check whether your Requirements do have a Service Territory associated but your Resources haven’t

Requirement Group in Schedule Board

If you now open the Schedule Board you could find something like this (too many Resources to have an easy overview):

Hovering over the booking panel (screenshot above) tells you that you have a Grouped Booking. So maybe you want to do a right click at the booking and choose Split View:

Shows you all bookings from this group (only those Resources which are on the same page of results, so you might want to increase the number of Resources per Page in Schedule Board tab settings and/or adjust your Resource filter to see all group members).

If you now drag and drop one of the bookings to a different starting time, all other bookings of this group will be shifted automatically too. Cool! That is what our customer wants!
However compared to the same procedure with a Resource Crew you don’t see the shifting immediately happening on the board, instead you need to hit the refresh-button at the top of the Schedule Board tab once to see your bookings being shifted [improve@MS].

In another article I’m going to dig deeper into the combination of Requirement Groups with Work Orders.

Share it on

Resource Crews

If your customer is asking you which possibilities with Dynamics 365 Field Service you have to book several Resources for one Work Order, you will have plenty of them in mind.

So lets further specify the requirements:

  • scheduling of several resources for a Work Order all at once
  • if appointment dates have to be postponed, the bookings for all of the Resources should be postponed all at one

Which possibilities come to your mind?

Resource Crews

Let’s directly jump into trying that out!
So I want to create a Crew out of 3 Resources: one User, one Contact and one Equipment.

  1. Go to Field Service (App)=>Resources(Area)
  2. Let’s create three Resources which you want to be Crew members: a Contact, a User and an Equipment
  3. “+ New” on top of Resource list =>
  4. set Resource Type to Crew; provide a Name to the Crew:
Dynamics 365 Field Service Resource Crew

5. in your Resource of Resource Type “Crew” go to “Related”=>Resource’s Children

6. click on “+ New Bookable Resource Group”
7. for the field Child Resource choose the first crew member and also fill in the Name field
8. for From Date and To Date choose the timeframe in which you want this Resource to be member of the crew

bit confusing here is the naming of the entity: “Bookable Resource Group”. In fact for you this is solely an association between a Resource and a Resource crew (or technically between exactly two Resources).

9. hit Save&Close and repeat step 6 to 9 for all your 3 crew members

Dynamics 365 Field Service Resource Crew Members
Keep in mind that if you want to see all members of a crew you should either go to the Schedule Board (maybe better) or open the “Resource’s Children” subgrid in your Resource form if you have the Resource Type “Crew”.

10. now open your Schedule Board. You should see this:

Dynamics 365 Field Service Schedule Board with Resource Crew
A new Crew Resource is available and the individual Crew members are made unavailable for the time of their crew membership.

11. you might want to do a right click on your Crew resource and chose “View Crew Resources in Split View

this provides you with an even better perspective:

12. now lets drag and drop one of the Resource Requirements from your Open Requirements list onto the Crew Resource

After the system has finished its job (might take a couple of seconds) you will see this:

If I now move the main tile representing the Booking of the Crew by drag and drop, all Bookings for all the crew members get postponed automatically as well.

Share it on

Bookable Resource

In Dynamics 365 Field Service you are able to create these types of Resources:

  • User
  • Contact
  • Account
  • Equipment
  • Crew
  • Facility
  • Pool

Resource Type: Equipment

  • Facility Equipment lookup appears and becomes mandatory after this Resource Type has been chosen.
  • Organizational Unit lookup becomes read only after this Resource Type has been chosen . Gets pulled from ‘Facility/Equipment’.’Organizational Unit’ or, if this is empty, than from ‘Project Parameters’.’Default Organizational Unit’.
  • Enabled for Field Service Mobile two option set disappears
  • in previous versions it was called Company Asset
  • makes sense to be used in a Resource Crew
  • for example: Truck, Excavator, Beamer, Hololens
  • Start Location & End Location cannot be set to Resource Address

Resource Type: Crew

Also see here for further details on how to set up a Crew.

Customizations

After I have created a copy of an existing form I faced issues that some of the scripting provided by Microsoft didn’t work anymore. As long as I don’t get further insights into this I would recommend to be careful when taking this road. Better maybe to customize the existing form instead of creating a copy of it for customizations. This, by the way, is also a way that has proved to be more stable when it comes to upgrading your org with latest MS solution versions. We faced lots of scripting errors on forms that we previously have copied. It turned out that MS replaced the JS libraries for the original forms but not for your form copies during the last larger upgrade cycle.

Share it on

Tips for Enable Resource Scheduling for Entities

If you’re going to enable another (custom or OOB) entity for scheduling there is a great blog series from Sara Lagerquist (see links below) which has some good tips. Based on these tips I’m listing up some of the most valuable insights when it comes to extend URS functionality when you Enable Resource Scheduling for Entities.

ENABLE RESOURCE SCHEDULING FOR ENTITIES
  • don’t create new relationships from within the “Enable Scheduling” setup wizard as they won’t contain your custom prefix in their technical relationship names
  • think about doing a more sophisticated field mapping by Workflow instead of only using the static field mapping from the wizard
  • also take into account to leverage the standard field mappings for the newly created relationships to pass on additional parameters which are not exposed as fields in the wizard
  • don’t forget to maybe auto create Resource Requirements by another Workflow
  • also you maybe want to auto-populate Resource Requirement Skills / Characteristics for your new Resource Requirements
    • for only a limited number of Characteristics you might want to create several new Lookup fields on your newly schedulable entity to the Characteristic entity
    • for a larger number of Characteristics you could use Microsoft Flow to populate them into your Requirement Characteristic entity. Source for this Characteristics list to be picked up by Flow could be a new sub-entity from your newly schedulable entity (NewSchedulableEntity 1:n NewSchedulableEntity.Characteristics). If you want to make Service Tasks schedulable you could alternatively use the Service Task Type and place a new Subgrid “Service Task Type Caracteristics” there.

Sources & more information:

Share it on