Latest Microsoft Dynamics 365 Blogs | CloudFronts - Page 7

Timezone effect on Work Hours

Introduction: Work Hours mentioned under a User/Bookable Resource aren’t the same as they show. Ever wondered what is Cross Day on Work Hours for a Bookable Resources in Dynamics 365 PSA or Field Service? Or even User record for that matter? And why not the actual Work Hours a resource is set to? You should see this – instead of this – Reasoning: So, The Bookable Resource’s time zone is GMT. And so is the same time zone of the logged in user i.e. GMT. In that case, you’ll see the actual time set for the user i.e. 8am to 5pm. But, let’s say, you are in a different time zone – Sydney, for example. And you are viewing Work Hours for a Bookable Resource who was set in some other time zone, their time conversion to your time will result in “crossing the day” over and hence, you see “Cross Day”.

Share Story :

Forcing Fields on BPF to be required programmatically

Overview: I had a requirement where I needed to make certain fields on BPF as required. So, I tried accessing the control using Xrm.Page.getControl(“header_process_description”) and then getAttribute().setRequiredLevel(“required”) on it would serve my purpose. But actually, not! To set perspective, the code runs and make the field required too. But there’s a catch! Required fields on the BPF are supposed to throw an error when you are trying to move to the next stage without filling in the required fields. But, using the code I’m talking about above (sample shown below), will force you to save the form entirely. Let alone moving the stages further. That when ‘How Did You Hear About Us?’ field has Employee Referral as value, make Purchase Process field required. Field is on the BPF But asks you to save on the form Workaround: The easiest workaround to this is using the conditional branching of your business process flow – You can use conditional branching of the BPF itself – You can replicate the same stage twice, one having your required field and other having that same field as optional However, limitations I found with this approach is – I couldn’t use the same for the first stage of the BPF The condition had to be from the previous stage itself   P.S.: Business Rules isn’t a solution as well. Also, I tried to inverse the logic by first making the field required in the BPF itself and then trying to make it not required using code. That doesn’t work either.

Share Story :

Email in Unified Interface as a separate app in D365

Introduction: Email in Unified Interface Dynamics 365 is also available as a separate app! Here’s how you can get it. By default, the new email capabilities are already available in the Unified Interface of D365. But you can have it as a separate app if you’d like. Installing the App: Here’s how you get it – 1. Navigate to the Instance Picker on the D365 Admin Centre, then go to Solutions area on the instance picker. 2. Once installed, it will appear as Installed. Provide Users access to the app & access it: The following security role should be provided to the users for them to access it – You can access the application from here. And here it is – Just a better way around than going into UCI and then looking for emails.

Share Story :

Estimated Revenue field behavior of Opportunity Entity

Overview: Now, you often must have noticed that the field Est. Revenue on Opportunities is either locked or is open to enter value into it. There’s a reason for this as well. Revenue Field: So basically, there is a field on the Opportunity that drives this operation. It is called as Revenue field! System Calculated- If you select System Calculated, the Opportunity Lines’ Total Amount will add up to the Est. Revenue field and the field will be locked for you. User Provided- If you select User Provided, the Est. Revenue field will be unlocked with whatever value it already has and you can change the same. It will no longer be driven of the Opportunity Lines.

Share Story :

Business Recommendation in D365 using Business Rule

Introduction: Business Recommended a cool feature in Business Rules which came out last year in D365 that can be used by simple configuration in Business Rules rather than writing JS code to achieve the same. Here’s how we do it – Setting Up Business Rule for Recommendation: Now, can you setup a Business Rule as below which can be shown on a certain condition Select Add Recommendation is a Business Rule condition is met. And then define the Recommendation you added to the condition Click Apply. Then, inside the Details of the Recommendation, we can set the value of the Price List which will take effect if the user selects Apply on the Recommendation. Seeing Recommendation work: Now as designed, Recommendation is supposed to show up when you select the Relationship Type as Customer. Recommendation is designed to not appear for other values of Relationship Type other than Customer. Recommendation would ask you to Apply the default Retail price list if you select Relationship Type as customer. Once you click on the blue ‘info’ icon on the field, a recommendation will pop-up asking if you want to apply a default price list for the same. On clicking Apply, the specified action will be performed. In this case, the Product Price List will be set. Pretty easier than writing code!

Share Story :

D365 PSA: Impact of Project Closure on Bookings

Introduction: Let’s look on a high-level of what Project Closure has impact on the Bookings on the Schedule Board. Now, while working in D365 PSA, I encountered that I needed to mark a Project as Completed even when I had some bookings in the future. This led me to notice its effect on the Bookings (Bookable Resource Bookings records) I’ve created which also span a little into the future. Project Booking for a Resource: Now, let’s see the below scenario, Brian is booked on Archer Pens Project according to the following 13 and 5 hours (8 hours) on 9th July 2018 10 hours on Monday, 10th July 2018 10 hours on Tuesday, 11th July 2018 5 hours on 12th July 2018 9th July 2018- 10th July 2018- 11th July 2018- 12th July 2018- Now, if I mark the Project as completed today i.e. 10th July 2018 and the End Date being tomorrow i.e. 11thJuly 2018. Let’s see what happens – I marked the Project as Completed (went past the Complete stage in the Business Process Flow) as seen below – Deletion of Bookings: Once I mark the Project as Completed, the Bookings for today, 10th July and all the future Bookings will be deleted. Only historic Bookings before today will remain in the system. If I check back, 10th July will have no Bookings 11th July will have no Bookings And 12th July too will have no Bookings anymore What remains is only for 9th July because it is before the date I closed the Project Note: I also tried to observe if today’s bookings have any end time before I actually Closed the Project. Meaning, a booking ending at 10 am and I Close the Project later at 12pm, it would still delete today’s Booking for the day. So, close Projects carefully if you feel you need to close them in advance, just in case.

Share Story :

Customizing the Booking card information on Scheduled Board – D365 PSA/Field Service

In order to help your organization manage complex service management track assets and inventory, identify and dispatch resources, and manage service order Microsoft has given D365 field service which is an end to end solution that turns out to be an integral part of your day to day business. It provides customers with proactive updates and self service portals that helps is tracking of technicians hence giving customers a smooth and positive experience at every step. Detecting troubleshooting and resolving issues has been made possible through Dynamic 365 field service due to which a technician is dispatched only when it is necessary. A real time guidance is provided in order to build customer trust and improve resolution time which empowers technicians with a 360 degree view of the customers. Introduction: Sometimes, stock Schedule Board doesn’t quite do justice by default to your bookings and how Dispatchers see this information today. Out-of-the-box information on a Bookable Resource Booking looks like this – What if you want to modify this information and show what’s relevant to Dispatchers? Modifying the Schedule Board: You can modify the details of what you need to see on the booking by modifying/configuring some details as shown below: First, this is how the default Booking Template looks like – Double-click on the board you want to make changes to (Or, navigate to Tab Settings). As in picture 1 above, double-click on Initial Public View to open the Tab Settings area, then look for Schedule Types section and look for Work Order / Project entity (depending on which entity’s Bookings you want to effect.) In the Booking Template section, write this sample code which will show different information other than what comes out-of-the-box. Sample Code: Customer:{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_account_msdyn_workorder_ServiceAccount.name} WO Name: {msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_name} Type: {msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_workordertype} 5. Once finished, click Apply. The Schedule Board will refresh and you’ll see the updated information as shown below: And very simple, you’ve modified the Booking Template without much hassle or complex coding.

Share Story :

Scheduling Project Tasks in Dynamics 365 PSA

Overview: Out-of-the-box, it is not possible to Book a task a on the Schedule Board, instead what you get at the easiest disposal is to allocate partitions of the Project to the resources and not the items from the WBS! Well, as a workaround, I’ve enabled the Project Task entity for Resource Scheduling using the PSA OOB feature to make this happen. Enabling Project Task Entity for Resource Scheduling: To be able to schedule a Project Task on the Schedule Board, we must first expose the entity itself for this capability. Here’s how you do it – Navigate to Resource Scheduling once you are using PSA and then select Administration. Then, select Enable Resource Scheduling for Entities Then, look carefully that the only entities enabled are the Project and Work Order (Field Service) Now, you want to add Project Task entity so that you can directly use Project Task to schedule on the Board. Make sure you make your selection as per below and click on Publish Customization Once Published, Project Task will appear in the Enabled Entities list Scheduling on the Project Task on Schedule Board: Assume you have some Project Tasks to Schedule, you can simply use those as you would do for Project and Work Order and you can schedule in the usual way thus, achieving Scheduling on Project Tasks from WBS instead of the Project.

Share Story :

Invoice Schedule generation on Quote Lines – D365 PSA

Overview: Let’s say you have a Quote which has Quote Lines and then you generate the Invoice schedule for your Time & Materials project. What decides the number of Invoice Schedules to be generated for a Quote Line record? Let’s review. Quote Lines: Now, I have a Quote Line which has Invoicing Schedule from 28th May 2018 to 6th August 2018. How did this come to be? The reason is as below: 1. The Invoice Schedule is based on Quote’s Requested Delivery Date which is 10th August 2018. 2. Now, my Invoice Frequency is weekly. 3. On top of that, my Invoice is set to generate on Monday of the week 4. And finally, since 6th August is the last Monday before the 10th August 2018, the Invoices should be generated up until then! Hence, the last Invoice will be generated on 6th August 2018 according to Quote’s Requested Delivery Date.

Share Story :

Filtering Records on BPF unlike on Form – D365

Introduction: Working with D365 is best when you’re trying to use as much OOB stuff as possible. Simplest configurations like selecting a view for your Lookup field is easily possible on the D365 Form. However, this is not possible on the fields on the Business Process Flow Use of addPreSearch() and addCustomFilter() on BPF Fields: Now, since you have this field on the BPF and want to add filter to Lookup records, you’ll need to use JS customization to achieve this and add your filter’s criteria in the code to show results as expected. Let’s say you see all the lookup records on the field on the BPF 2. I want to see only Semi Annually type of Plans on the Lead. And I can’t simply do this from the Field’s Properties like on the form. Because, it’s not available. 3. Hence, I’ll write JS code as follows to achieve this: // JavaScript source code var oOFFormCustomization = { preFiltering: function () { “use strict”; if (Xrm.Page.getControl(“header_process_cf_defaultplan”) != null) { Xrm.Page.getControl(“header_process_cf_defaultplan”).addPreSearch(oOFFormCustomization.preSearchProductFamily); } else return; }, preSearchProductFamily: function () { “use strict”; var fetchQuery = ‘<filter type=”and”>  <condition attribute=”cf_plantype” operator=”eq” value=”979570001″ /><condition attribute=”statecode” operator=”eq” value=”0″ /></filter>’; Xrm.Page.getControl(“header_process_cf_defaultplan”).addCustomFilter(fetchQuery); } }; 4. And I register the method on Page Load of the Form. 5. And I see these results once it successfully filters!

Share Story :

SEARCH BLOGS:

FOLLOW CLOUDFRONTS BLOG :


Categories

Secured By miniOrange