Dynamics 365 Tag - Page 10 of 10 - - Page 10

Tag Archives: Dynamics 365

Send Custom Emails using SendGrids API

Introduction: In this blog we will demonstrate how to send custom emails using SendGrids API. Scenario: If we want to send custom emails to customers stored in Dynamics 365 with different email body for every customer based on their data stored in CRM, it is not possible to do so by using the normal Email Editor as it has some limitations while displaying dynamic content. One way of doing this is by creating a console app which will use SendGrids API to send out custom emails for every customer. Pre-Requisites: Visual Studio SendGrid Account Implementation: Step 1: For this demonstration we will see how to send out a mail to a single email. First we create a Console App in Visual Studio Step 2: Once the Project is created Right Click on the Project and select Manage Nuget Packages Browse to the latest Nuget packages and install SendGrid package Step 3: Next we have to create an API Key in SendGrid. Just give a name for a key and Click on Create Key which will generate a unique key. Store this key which will be used in the Code Step 4: Below is the Code to send email: using SendGrid; using SendGrid.Helpers.Mail; using System.Threading.Tasks; namespace SendGridConsoleApp { class Program { static void Main(string[] args) { string sendGridAPIKey = “EnterKeyHere”; Execute(sendGridAPIKey).Wait(); } static async Task Execute(string _apiKey) { var client = new SendGridClient(_apiKey); var from = new EmailAddress(“test@gmail.com”, “From UserName”); var subject = “MAIL Send Through SendGrid”; var to = new EmailAddress(“test@gmail.com”, “To UserName”); var plainTextContent = “Example PlainText”; var htmlContent = @”<!DOCTYPE html><html><head><style> table { border-collapse: collapse; width: 100%; } th, td { text-align: left; padding: 8px; } tr:nth-child(even){background-color: #f2f2f2 } th { background-color: #4CAF50; color: white; } </style></head><body><h2>Important Details</h2> <table><tr> <th>Firstname</th> <th>Lastname</th> <th>Email Address</th></tr> <tr><td>Peter</td><td>Griffin</td><td>pgriffin@gmail.com</td></tr> <tr><td>Lois</td><td>Griffin</td><td>Lois@gmail.com</td></tr><tr> <td>Joe</td><td>Swanson</td><td>joe@gmail.com</td> </tr><tr><td>Cleveland</td><td>Brown</td> <td>clev@gmail.com</td></tr></table></body></html>”; var msg = MailHelper.CreateSingleEmail(from, to, subject, plainTextContent, htmlContent); var response = await client.SendEmailAsync(msg); }}} Step 5: Once the Console App is run the email is send below shown is the sample of the Email sent While running this for multiple customers we can create different HTML body content for each customer and pass it to the CreateSingleEmail function.This approach can also be used to send bulk emails to customers.

Keep access to Assigned records in D365

Introduction: At times, you are asked to assign certain CRM records to other users and you just have to do it as a part of the process. But let’s face it, you still wonder what might have happened to the record after you assigned it to them but your security roles won’t let you access those. There’s a general D365 setting for this too! You can share your D365 records with other but still retain rights to yourself so keep track of what happened with those later on Setting: Navigate to Settings > Administration > System Settings In General tab, look for the Setting where it reads as ‘Set whether reassigned records are shared with the original owner’ (quite self-explanatory) Assign Record and check Share Rights: Now, assigning a records from Priyesh to John as shown below – Priyesh would still have rights to the record. Check the Share status of the same. The record will be owner by John but will be shared with Priyesh too.

D365 Unified Interface: Enabling embedded legacy dialogs

Introduction: Quite simply put, some of the embedded dialogs like the Advanced Find, Merge Records, Assign & Edit record windows which are not by default visible on the Unified Client Like when you multi-select records, you can’t see the typical Merge, Edit buttons on the ribbon. Here’s how you enable them. System Settings: In your Web Application’s system settings, you have an option under general where you can enable these buttons in the Unified Interface. Now, you can retain those buttons in the Unified Interface as well. Have a great time exploring Unified Interface!

Calculated Currency Field doesn’t support Min or Max values

Introduction: This is an observation I made when one of our clients wanted to have a limit on the calculated fields. Let’s say, a lower limit of the currency field that is expected to throw an error (or somehow not allow) the currency going in negative values for a calculated field. Observation: Now, I want to keep the Minimum Value as $0. I’ll keep the Minimum value as 0 so that when I can make it as Calculated Field, the Minimum Value gets locked by $0 I’ve entered. See screenshot below: But, as soon as I make it as Calculated Field and click on Save, this happens- It still appears that I will save it as 0 But, it creates the field, locks the minimum field and then defaults it back to the original minimum value. Bottom line: We cannot have our own Minimum Value on the Calculated Currency fields. But however, I found that this is allowed for other calculated fields. Like the Whole Number.

Delegating Time Entries in D365 PSA

Overview: Often you miss doing your time entries in PSA for the work done and go on a leave! You either then need to just struggle to find a system and do it yourself or raise some other kind of request to make sure billing is done right. But, you can delegate time entries to a colleague and it is all taken care of. Assigning Delegates in PSA: In Project Service, you can see the entity Delegates. In this entity, all you need to do is create a Delegate record as shown below You can either delegate a fellow resource for Time Entries or for the Expense entries. In this case, I’ll let Somesh make Time Entries on my behalf and hence make him my Delegate in PSA for a week on which I’m on PTO. Entering Time Entries as Delegates: Now, looking at Somesh’s angle, if he has needs to make time entries on my behalf. He would need to go to Time Entries, then he will need to look at the ribbon for his name and change the user to Priyesh Wagh. Once the other user is selected, their Timesheet appears and all the time entries by the other user appear. Here, Somesh can make time entries just as he would usually do for himself and they would actually be registered for the Resource Priyesh Wagh.

Closing Blind Shift in MPOS and CPOS in Dynamics 365 for Retail

Manual For closing Blind shift in POS: Blind shifts terminate the currently ongoing shift and when logged in a new shift opens. In this blog we shall see how to close the blind shift. Steps: 1. Login to the POS 2. Open a new shift or continue with the existing one. 3. Click on Show blind closed shifts. 4. Select the shift you want to close. 5. At the bottom click on declare. 6. Declare the starting amount and the tender amount. 7. Click on close shift. This is how blind shifts can be closed.

User Privileges on SharePoint – D365 Document Integration

Overview: Often, we wonder what could be wrong where we see a generic error on Documents in Dynamics 365. Something like this – That’s when you wonder if all the privileges in D365 Security Roles for SharePoint Site or Document entity are correct or not? In fact, it’s the SharePoint privileges that you must look into. Privileges On SharePoint: Even if the error indicates that you don’t have access in D365, it is actually the SharePoint site that’s missing permissions. Here’ where you need to check for the O365 User’s SharePoint privileges: Navigate to SharePoint Admin Center in the Office 365 Admin center Next, in any of the intended SharePoint sites, navigate to the Gear Icon and then Site Settings. In Site Settings, navigate to People and groups under Users and Permissions area. Check that you might not have the intended user in that list. You can then click on Add and add the user in the list. You can either add an individual user or ‘Everyone Except external users’. and confirm that you see them in the list now. Confirm Permissions: Now, you can ask the users to check and they should be good to go. Hope this helps!

Xrm.Panel in D365

Overview Xrm.Panel is a new additional to the client-side scripting in Dynamics 365. This feature is still in preview in the D365 December 2016 update. Panel is a simple static place on your D365 web client which loads a Web Page inside it. Perhaps, the best use of the same could be a Web Chat application implementation. Implementation Simple – I’ve made a JS Web Resource that has a function to call the Xrm.Panel.loadPanel(url, title); method and I’ve invoked the same on change of a Phone Number. Here’s a simple JS snippet I’ve written: oAccountCustomization = { loadPanel: function() { “use strict”; Xrm.Panel.loadPanel(“https://cft89.crm.dynamics.com//WebResources/new_SamplePage”, “Hello”); } }; And redirected it to another HTML page in my own D365. Then, I’ve added this to the onChange of the PhoneNumber on the Account record. And saved and Published the customization. Seeing it work: Now, when I change the Phone Number field on the Account, the slider appears on the right hand side of the page. You can click on the arrow to bring it in focus. Here we go! The Panel is now seen. Remember, this works only on the Web Client.

How to Change button text or description of the system entity or managed entity

We have a requirement that we want to change button text and description for case entity to the incident. Since the case is system entity which is managed, dynamics 365 not allowed you to make any modification in button text or description. For the unmanaged entity, you can make a modification with the help of third party tool like ribbon workbench. In this article, we will see how to change button text of system entity (managed). Kindly follow below steps. Create a new solution and add selected entity in that solution. In my example, I want only case entity. Make sure you have checked “include entity metadata”. Click on export translation The zip file will be downloaded to your system. Extract that zip file in your local system. Open CrmTranslations file in excel Select Display String sheet Find text that you want to replace. I want to replace all case word with incident. Make necessary changes and save the file. Again zip CrmTranslations folder and click on import Translation. Import zip file to the solution Publish the solution and go to entity form. You can see button text and description changed to the incident. Similar way you can do it for another system (Managed) entity.  

SEARCH :

FOLLOW CLOUDFRONTS BLOG :

[gravityform id="36" ajax="true"]

FOLLOW CLOUDFRONTS BLOG :