banner



How To See In All Option Set Field Values In Unified Service Desk

I take commonly used the schedule board with Dynamics 365 Field Service or Project Service to schedule work orders or project tasks. Merely recently I've had a couple of requirements to schedule custom entities. This is possible using Universal Resource Scheduling. (URS) In this mail I'll explain my initial experiments with URS, if yous are considering making use of URS so hopefully the data hither may be of utilize.

As already mentioned URS is the scheduling engine used by Projection Service and Field Service, it shares many concepts such as organizational units, roles, skills and resources. Considering of this I won't embrace any of those in particular here! My focus will exist how to create a custom entity that can be scheduled.

I started my testing with Universal Resource Scheduling past looking at this link. (Y'all might discover it useful!)

https://docs.microsoft.com/en-u.s.a./dynamics365/customer-engagement/common-scheduler/schedule-anything-with-universal-resource-scheduling

In my testing I wanted to create a custom entity that could be scheduled, that involved creating multiple fields on the entity that would assistance dictate the scheduling logic. I and so fabricated the entity available for scheduling. And finally, I customized the resource requirements form, bookable resource booking course and a few other things. In this postal service I will cover details for each of these in turn….

Notation:
I am making an supposition in this postal service that the reading has a basic grasp of making customizations within PowerApps. (Sorry!)

Custom Entity and Boosted Fields

I started off by creating a custom entity and adding a number of fields. Yous tin meet my unproblematic entity beneath.

Tip:
I have shown my course displayed using the newer version of the form editor in wednesday.powerapps.com. But I did discover I "switched to classic" occasionally when adding my fields! This means the screen shots below may exist a mixture of representations from the new and old UIs.

I guess I should point out that adding whatever of the additional custom fields is optional. You could simple "chuck" your custom entity into a resource requirement and enter any scheduling information there. Simply I would suggest passing in durations, dates and locations may aid the process be much more polished.

On my entity I've added several fields specific to Universal Resource Scheduling. I volition describe each of these below and expand on their use later in this postal service;

Neil's Start Appointment & Neil'south Finish Date

The start and cease date fields are merely the dates that I wish to utilize for scheduling this entity. (Or at least the date range I volition use to effort to notice a suitable bookable resource from my resource request!)

Tip:
Later in this postal service I will show were we define which engagement fields to use for scheduling. Because my entity is completely new I had to create all the required fields. Depending on your requirements you maty observe some existing fields that can be used for these purposes!

Too notice that I opted for a appointment time field. I could accept opted for simply a date field if I wanted to use these dates as a range to search for potential date slots. (As in that scenario entering the fourth dimension might exist unnecessary!)


Neil's Duration

Additionally, I created a duration field. This is optional merely might be useful if you lot wanted to search for a complimentary ii-60 minutes timeslot within a start / end appointment range.

Observe that the duration field is a whole number field with a format of duration.

Neil's Territory

The use of territories is options, but you might find it useful to filter resources / "jobs" based on territory. Say you lot accept a team that works the north of the country and one that works in the s. Yous'd want to exist able to acceleration the correct people to these jobs.

My territory field is simply a lookup to the out of the box territory entity.

Neil's Lat & Neil's Long

Again, defining lat / long fields is optional. These fields can be used to display locations of "jobs" on the schedule board and calculate (approximate) travel time between jobs etc.

Plainly, you'll need to consider how to obtain this data! For case, assuming your custom entity is linked to a contact or account y'all may be able tot excerpt the information from them. In my "crude" example I just showed the fields on the course and manually entered the lat / long coordinates!

I did find the information type / formatting for these fields needed to be very specific to ensure it would exist available for use afterward. The information type for my coordinates is a floating signal number. Additionally, it needs to have a precision of v decimal places, a minimum possible value of -xc and maximum of 90.

Neil's Piece of work Location

Over again, work location is optional but i that may have a meaning bear on on how your entity is scheduled! This is an optionset that provides me with three possible options.

I volition explicate where this is used later but hither I volition draw the meaning of each option.

Onsite – Pregnant the piece of work volition be conducted onsite. (aka, at the lat / long coordinates that you can optionally define.)

Facility – Pregnant the work will be conducted at a facility.

Location Agnostic – Meaning we don't intendance well-nigh the location and this "chore" volition not need to testify on a map. Unless y'all need to represent "jobs" on a map this might be the nearly likely choice you will select.

You might be new to the concept of facility scheduling. (Details can be found at the link given below.) The concept here is we would schedule multiple "jobs" to be completed at a given location. Example might include, bookings for cars to be serviced or patients at a doctor'due south surgery etc. The work volition be conducted at a location and that location wil, have a chapters. Significant all the work is scheduled at the same facility until a capacity is reached.

https://docs.microsoft.com/en-the states/dynamics365/client-date/common-scheduler/facility-scheduling

My option fix is defined as a global selection set making use of an existing out of the box set called "Work Location".

Enable Custom Entity for Scheduling

Ok, so we accept created a custom entity and created whatever fields are required to aid scheduling. Now we demand to enable the entity for scheduling.

Nosotros do this in the assistants option in the resource scheduling app.

Then open up the "Resource Scheduling" App, navigate to settings and and so select the assistants option. Here you volition find the selection "Enable Resource Scheduling for Entities".

Inside the enable resource scheduling for entities option you'll need to get-go enable your entity for scheduling. Yous can run into beneath that you will select your entioty and then selection the relationships to be used to link to bookings and requirements. Assuming you are creating a new custom entity then yous volition probably non accept any existing relationships to these entities. Therefore, yous will select the "create new relationship" option in both cases.

Next you will click the "Publish Customization" push, this volition enable your entity for scheduling.

Setup Metadata

Your entity is now enabled to scheduling just you may need to edit the metadata to refine how the scheduling will behave.

Below you can run into that my custom entity is at present listed in the enabled entities. Double clicking on information technology will permit you lot to set / edit the meta information.

Below y'all can come across the metadata I defined for my custom entity. There are quite a few fields! (But not all are mandatory.) Also, as you will see later in this mail service, scrolling downwards the screen volition allow me to link my custom fields to the scheduling logic.

At that place are quite a few possible fields that can be maintained in the metadata. Unfortunately, I establish Microsoft'southward documentation a little "brusque" in this surface area! You lot can encounter beneath that it is suggest you lot review the tooltips of each field to understand its meaning. This suggest isn't as bad as it sounds as you can gain quite a flake of information by doing this. Additionally I found it useful to look at the out of the box metadata settings for projects and work orders. As that might assist you proceeds further insight.

Notice in a higher place that the note does mention the booking status field and the mappings. I didn't create a custom status field, but I did ready some mappings between my custom entity and the booking. I will mention that later in this post.

I didn't test out every combinations of settings for the metadata, but as the documentation is limited I will reference a few that I did prepare beneath;

Status Fields

Information technology is possible to define default condition fields for your bookings and requirements. Most of these should hopefully exist cocky-explanatory. For example, when a booking or requirement is cancelled what status should it be assigned. Ordinarily you lot might be selecting out of the box condition values simply this characteristic does requite you the power to define custom condition defaulting if required.

Resource Availability Retrieval Limit

If you accept a express number of resources, then perchance setting this option is required! But if y'all have large numbers of resources y'all might want to limit the number of suggestions offered to your dispatcher on the schedule assistant. Say you take one thousand engineers; would you really want the dispatchers to have to pick from possibly hundreds of bachelor resources? Limiting the pick might assist make their life a piddling easier!

Tip:
Notice beneath that I take hovered over the field characterization, the resulting tooltip (in this case) is quite useful!

Disable Requirement Car Cosmos for Bookings

The default for this selection is "no". And that may typically what you lot'd require only in my particular employ case I did modify this setting.

Typically, y'all will create a resources requirement from your custom entity and and then book this later. Either on the schedule board or by using the scheduling assistant. It is however also possible to simply create a booking directly from your entity. If you already know the required time / duration and that a resource is available why non go direct to the booking stage?

Doing this (with the default of no) would automatically create a respective resources requirement. In many circumstances I tin can see that this will be preferable as you'd always have a requirement and booking for each chore regardless of the sequence of events.

Yet in my use case I always wanted to directly book the "job". And then, I didn't need (or desire) a requirement record. This option allowed me to achieve that requirement. (Although I do still think that more than frequently than hot having both a requirement and a booking would brand sense!)

Available Duration Minimum

If yous desire to e'er book all of your "job" to one resource at the same time, then set up this field to 100%.

A lower value might be required if yous typically want to split up a requirement beyond multiple resources. Maybe you'd exist happy to give fifty% of the work to one person and 50% to another. How you set this field will depend on the nature of the work your trying to schedule.

I guess it will be common to always want the same person to start and finish the job, in which case 100% would be your required setting.

Enable Quick Book

Quick book can exist a very useful feature if you demand to directly book your jobs without using the resource requirement step.

I hadn't used quick book before, you might want to give it a effort. It is actually quite absurd! Instead of creating a resource requirement and and so booking that, with quick volume nosotros accept a book push on the entity to be scheduled. This then opens a panel on the correct mitt side of the screen which allows you to quickly volume the entity. Simply select the required engagement, a time slot and i of the available resource. You can then click book which creates a booking requirement and associated bookable resource booking without having to open either entity. If you need to do filtering of resource (etc) and so this choice might not be for y'all but for simple booking scenarios quick book provides a really unproblematic user interface.

Attribute Mapping

The attribute mapping section will define the mappings between your custom entity and the resource requirement. Information technology is this the "joins" the custom fields I described earlier to the resources requirement. You lot can come across below that I have linked each option to ane of my custom fields.

If your entity does not incorporate a field of a suitable blazon the selection will be greyed out. Hence why I described exactly what data type and formatting will be required for each i!

Resources Requirement & Bookable Resources Booking Form Changes

Adjacent I made a couple of actually simple form changes. We have just created a relationship betwixt our custom entity and resources requirements and bookable resource booking entities. This means that we tin can utilise the related option to navigate to either of these entities from our custom entity.

Tip:
Depending on your requirement adding a sub filigree for these related entities to your general tab might be useful!

That is peachy simply I wanted to be able to navigate to my custom entity from a resource requirement or a bookable resource booking. This was of particular relevance when I opened a booking from the schedule lath. Equally I'd want to be able to hands navigate to the entity being booked.

By creating the relationship a lookup will have been created between each of these entities. You can see below that I take added this lookup to the bookable resource booking. (I did exactly the same affair with the resource requirement form.)

Tip: Depending on your requirement also adding a quick view from your custom entity may be quiet useful. Equally users could so run into primal attributed from the entity being booked without having to actually navigate to information technology.

Below yous can see how I added the lookup field to my bookable resource booking form. The lookup field created merely had a brandish name that matched the name of my custom entity. I guess you could change that if required!

Schedule Board Changes

Assuming yous aren't using Project Service and Field Service you might want to make references to those "disappear" on your schedule board. Information technology might too be useful to accept a view of any requirements for your custom entity that need to exist scheduled.

Below y'all can come across that by default my schedule board includes all open requirements, projects and unscheduled piece of work orders. Assuming you lot want to use "only" URS without Field Service or project Service maybe you'd like some of these options to not be present.

Before we make changes to the schedule board you'll need to create a view that meets your requirements. Beneath you can see that I have created a view of open resource requirements for my custom entity. This is a organisation view on the resource requirement entity.

Tip: You could copy one of the existing views on resource requirements and elementary "tweak" that!

For my view I simply copied the existing open resources requirements view. I and then added additional filtering to ensure just open up requirements for my custom entity were included. You may also want to tailor the columns displayed to ensure just the data relevant to your users is displayed. Below you can run across my revised filtering on the view. With my custom entity added and besides a check as I merely want to include active record from my custom entity.

One time you lot've created a view that is suitable for y'all purposes you'll desire to add it to your schedule board. And perhaps hide the out of the box views. Detect below that I am only showing "Neil'south Custom Entity". To brand this alter click the cog on your dashboard. And then select "Open Tab Settings". (Highlighted below.)

In the tab settings scroll down to the bottom and open up the department headed "Requirements Panel". Firstly select the option that says "Hide default requirement panels". This will make the out of the box views disappear.

Y'all tin than enter whatever title you like for your view and pick it in the view selector. Pressing "+" will then added your view. You could (of class) add together multiple views, peradventure yous'd desire a separate view for high priority "jobs" or maybe you'd like to filter them into some other logical grouping.

Mappings on Bookable Resource Booking!

Next I did some additional mapping of fields manually! (This step is completely optional!!)

We saw previously that in the metadata I selected which of my custom fields to map to the resource requirement entity. In my instance I wanted to be able to also directly create a booking without having to starting time create a resources requirement. If yous need to practice this y'all might want to add some custom mappings to the bookable resource booking.

Tip: I did this change using the classic version of customizations. As I don't think you can (yet) alter the mappings directly in the new wed.powerapps.com!

To enter the mappings, I opened my custom entity and reviewed the relationships. I found the relationship that linked it with the bookable resource booking entity. And so in the mappings option I related my custom columns with appropriate columns on the bookable resource booking entity.

FYI:
I also mapped the proper noun field of my custom entity to the name field on the bookable resource booking entity. Every bit information technology seemed logical to me for both records to share the aforementioned proper name!

Migration of Solution from Sandbox to Product

All of the changes I take described above were completed inside a solution I'd created in my sandbox environment. Having made all the changes I decided to export as a managed solution and move into a product environment. Simply to check that the metadata (and other changes) exported as I expected! I thought I would share my feel of doing this with you ….

So outset I ran the solution checker on my solution .… it reported no problems. This is what I expected just I advise you to ever run the solution checker!!

I exported my solution every bit a managed solution and tried to import into production. Information technology failed! On my first attempt I found my import failed as I had an older version of Project Service installed in product. I mention this as yous might also want to check that your product instance and sandbox have the latest versions installed before you lot get-go.

Additionally when I fabricated my custom entity a schedulable entity two lookup fields and therefore two relationships were automatically created, one on resource requirements and ane on bookable resource booking. You will need to make sure you add together these automatically created fields and relationships into your solution. (Tip, They will all be new_ something!)

What you will observe is that your custom entity and whatsoever other changes you lot make to resource requirements and bookable resource bookings will import equally you'd expect. Additionally the entity meta data will import. You lot will nonetheless demand to repeat whatever configurations you lot make to the schedule board every bit they aren't included in your solution.

I hope this rather long and detailed post has been helpful to anyone experimenting with Universal Resource Scheduler … overall my experience of using information technology has been very positive. I'm very impressed with how easy my changes were and I will certainly be using it on a live projection very before long!

How To See In All Option Set Field Values In Unified Service Desk,

Source: https://neilparkhurst.com/2019/05/11/universal-resource-scheduling/

Posted by: basssignitere.blogspot.com

0 Response to "How To See In All Option Set Field Values In Unified Service Desk"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel