Category Archives: D365 General
How to Setup POP3/SMTP email configuration in Dynamics CRM
Introduction: This blog explains how to Setup POP3/SMTP email configuration in Dynamics CRM. Steps to be followed: Step 1: Create new Email Server profile. a. Go to Settings –> Email Configuration –> Email Server Profile. b. Click on +New –> POP3/SMTP server. c. Fill Details in the form. Name: Gmail Incoming Server Location: pop.gmail.com Outgoing Server Location: smtp.gmail.com Now Go in Advanced Tab and Provide this Port values for Incoming and Outgoing Port. Incoming Port: 995 Outgoing Port: 587 d. Save. Step 2: Go to Email Configuration settings and then change Server Profile. Step 3: a. Go to Mailboxes. b. Select the user for whom you want to activate. c. Add following details. Email Address: Enter your Gmail’s Email Address. In Credentials Allow to use Credentials for Email Processing and Provide your Gmail User Name and Password. d. Click on Approve Email e. Click on Test & Enable Mailbox. You may get following error. REASON: Due to hidden settings within Gmail that may be blocking connections from third party apps. SOLUTION: a. Make sure you access these links while logged into the Gmail account, and make sure they’re turned on/enabled. https://www.google.com/settings/security/lesssecureapps https://accounts.google.com/DisplayUnlockCaptcha b. After enabling again go to mailbox and Click on Approve Email and Test & Enable Mailbox. c. Incoming and Outgoing Email Status is Success.
Share Story :
Calling unbound actions using Xrm.WebApi in D365 v9
Introduction: In this blog we will be demonstrating how to call an unbound action using Xrm.WebApi which provides properties and methods to use Web API to create and manage records and execute Web API actions and functions in Customer Engagement The available methods are createRecord, deleteRecord, retrieveRecord, retrieveMultipleRecords,execute and executeMultiple.The execute method executes a single action, function or CRUD operation. Implementation: The syntax for execute method is as follows: Xrm.WebApi.online.execute(request).then(successCallback,errorCallback); Note: This method isn’t supported for Unified Interface and it is only for online mode hence we have to use Xrm.WebApi.online object to execute the method, else it will fail. Step 1: First we create an unbound action. Here in our example we have created an action with the name “new_ActionTest” and we have activated it. In the action steps we have written a step to create a new contact with the name “Jessy David”. Here in our action we an Integer parameter. Any steps can be added as required. Step 2: Below shown code is function used to call the unbound action. Here “boundParameter” parameter is an optional String parameter, we have specified it as null as our action is not bound to any entity. “operationName” is an optional String parameter which is the name of the action.“operationType” is an optional Number parameter which indicates the type of operation we are executing is an Action hence we have specified 0. We can specific 1 for Functions and 2 for CRUD operations. When we run this, the action is called and a new contact is created according to the steps mentioned.
Share Story :
Filter records in PowerApps based on the current user of Dynamics CRM
Starting from sales until delivery, Microsoft Dynamics 365 offers successful deployment of various business processes. The partners of Microsoft Dynamics 365 list the apps in the app source developed for a specific business need or for a particular business vertical hence showing their expertise. The dynamics 365 application development team has experts who are specialized in developing sophisticated business apps for their partners. The entire lifecycle of the business is supported through Microsoft Dynamics 365 right from developing the apps to listing them in the AppSource and giving support which lets you focus on the core business strategies instead of things which are less important. The qualified team of experts understand your requirements initially and then further work on improving each and every aspect of your business Introduction: This blog explains how to Filter records in PowerApps based on the current user of Dynamics CRM. Steps to be followed: Step 1: Add user entity. For that go to View –> Data sources –> Select Dynamics 365 connection. Select user entity –> click on connect. Step 2: Now select Browse Screen and add Label control on Browse screen. Set its visible property to false. Set Text property to: LookUp(Users,internalemailaddress=User().Email,systemuserid) Step 3: Select Browse Gallery and set its Items Property to : Search(Filter(Cases,_ownerid_value = Label1.Text), TextSearchBox1.Text, “description”) (Here Label1 is the name of Label which we have added in previous step && _ownerid_value stores the owner of that particular case record) I have selected _ownerid_values because owner field stores the user value according to which we want to filter the case records. By following above steps you will be able to filter records based on current user.
Share Story :
Connecting to Dynamics 365 v9 “metadata reference cannot be resolved” issue fix
Introduction: In the blog we will be discussing about the error while connecting to Dynamics 365 version 9 using console app. Implementation: In our example we will show how to connect to Dynamics 365 using a Console app in v 8.2 and when the same code is used to connect to version 9 we get an error. We will also discuss about how to resolve the issue Step 1: The code show below is used to connect to Dynamics 365 version 8.2 using Console App. Step 2: When we run the above code, we get the following output. Step 3: Now we change the credentials and try connecting to Dynamics 365 v 9 with the same code, we get the following error. Step 4: To solve this issue there are two ways, in the first method, set the Target framework to “.NET Framework 4.6.2 or above”. Step 5: After changing the target version build the solution again and run the app.The connection to Dynamics 365 version 9 environment will be successful. Step 6: The second method is by using the below code before making a connection. TLS stands for “Transport Layer Security,” and is a protocol that is an industry standard designed to protect the privacy of information communicated over the Internet.
Share Story :
Open report from custom ribbon button on entity form
Introduction: This blog explains how to open report from custom ribbon button on entity form. Steps to be followed: 1. Add custom button on entity form using Ribbon Workbench. (If you don’t have ribbon workbench solution installed, you can install it from here. ) 2. Once button is added on form, navigate to the Quote entity and run the report. Take note of the URL, it should look something like this. (I am doing it for quote entity) URL: https://portals1.crm.dynamics.com/crmreports/viewer/viewer.aspx?action=run&context=records&helpID=Quote.rdl&id=%7b18c85c59-7d04-e711-80e6-00155db8652a%7d&records=%7bBD891D3F-C92C-E811-A831-000D3A37CC26%7d&recordstype=1084 Specifically note the items I’ve bolded, these are the report name, report unique identifier, and the entity type code of the main entity. 3. code to our new JavaScript web resource. function OpenQuoteReport() { debugger; var rdlName = “Quote.rdl”; //Replace with your report name var entityType = “1084”; //Replace var entityGuid = Xrm.Page.data.entity.getId(); var reportGuid = “18C85C59-7D04-E711-80E6-00155DB8652A”; //Replace with your report guid var url = Xrm.Page.context.getClientUrl() + “/crmreports/viewer/viewer.aspx?action=run&context=records&helpID=” + rdlName + “&id={” + reportGuid + “}&records=” + entityGuid + “&recordstype=” + entityType; window.open(url, null, 800, 600, true, false, null); } 4. Create Command i.e. add JavaScript web resource to the button using Ribbon Workbench. 5. Add command on button. 6. Publish. 7. Now go to Quote entity and click on the custom button which you have created, your report will get open.
Share Story :
Design Marketing Emails in Dynamics 365 for Marketing
Introduction: In this blog we will see how to create a marketing email in Dynamics 365 for marketing preview. Dynamics 365 for marketing provides an easy drag and drop tool to design marketing emails with dynamic personalized content. Implementation: Step 1: We navigate to Marketing Emails and Click on New. We can see there are a number of pre defined email templates The templates are also categorized by purpose Step 2: At the top of the page we see three required fields Name, Subject and Form. The Name is the internal name for the designed email, Subject is the message that will be displayed in the emails subject and the From is the Dynamics 365 user who email recipients will see as the sender Step 3: In the toolbox we can see content blocks which can be used to design the email. We can add text, images , buttons etc as shown below. We can also add Surveys and Marketing Pages to the email which creates a button and on click the user is navigated to the Survey form and marketing page respectively. Step 4: The assist-edit button </> can be used to add dynamic content to the email. Step 5: Once the email is designed as per the requirement in the HTML tab we can see the code is auto-generated. In the preview tab we can see how the email would look in different clients like Desktops, Tablets and mobiles Step 6: It is important point to note is that every email message must include both a subscription centre link and your organizations physical address. These are required by the law in many jurisdiction and Dynamics 365 wont let you publish any marketing email that doesn’t have them. Email templates include them already but when we are working with a blank template you must add them yourself. Step 7: Once the email designing is done we can check for error by clicking on the button in the navigation bar. We can also Test send the email.
Share Story :
Dynamics 365 Client Diagnostics
Main cause of Performance Issues: Bandwidth and latency are the primary characteristics which affects the performance of Dynamics 365 client application on the web browser and other apps like D365 for Outlook It is also important to note that even if there is high bandwidth, the performance may be still slow because of latency issues. Let us define these two terms: Bandwidth is the width or capacity of a specific communications channel. Latency is the time required for a signal to travel from one point on a network to another, and is a fixed cost between two points. An application designed to send a request, wait for a reply, send another request, wait for another reply, and so on, will wait at least five seconds for each packet exchange, regardless of the speed of the server. How to Check Latency in D365 Online Applications: Dynamics 365 includes a basic diagnostic tool that analyzes the client-to-organization connectivity and produces a report. To run the Dynamics 365 Diagnostics tool, follow these steps. On the user’s computer or device, start a web browser, and sign in to a Dynamics 365 organization. Enter the following URL, https://myorg.crm.dynamics.com/tools/diagnostics/diag.aspx, where myorg.crm.dynamics.com is the URL of your Dynamics 365 (online) organization. Click Run You can see the results like below: What to make of this? The report displays a table with test and benchmark information. Of particular importance is the Latency Test row value. This value is an average of twenty individual test runs. Generally, the lower the number, the better the performance of the client. Although users may receive a satisfactory experience by using connections with more latency, for best application performance we recommend that the value be 150 ms (milliseconds) or less Other Notes: One of the reasons of high latency is that sometimes D365 tenant is setup in a region far from the home region. For e.g. Customers in USA using D365 which is setup in Australia. This will result in high latency for the end users. In these scenarios where most of the customers are in USA, you can contact Microsoft Support to help move your tenant to USA or nearby region. Best practices for improving application performance Maximize how quickly your forms load. More information: Optimize form performance Make sure you aren’t using legacy form rendering, which can make forms take significantly longer to load. More information: System Settings dialog box – General tab
Share Story :
Cause and Solution for Scribe MSMQ not receiving Message from AX
Issue: Microsoft Message Queuing (MSMQ) service running on Server might be unable to receive messages. Therefore, messages stay in “Waiting to connect” state in the outgoing queue of the sending computers. Cause: Issue occurs on 2 scenarios- During computer start, MSMQ service tries to bind to machine IP for listening which is still not acquired by DHCP. This might happen when DHCP takes some time acquiring IP due to any network latency or service start timing between DHCP and MSMQ. In this case MSMQ starts listening to the loopback address i.e. 127.0.0.1. DHCP acquired IP correctly and MSMQ listening on that IP as well. However, at some later point, DHCP IP renewal happens and now machine IP is different from the last one. In this case MSMQ is still listening on the older IP. So, when a new message comes for any old IP, it is never seen by MSMQ service. Verify Scenario: In Command Prompt, type following command and check the result netstat –abno | findstr 1801 If the system is facing this problem, output resembles the following in first scenario: TCP 127.0.0.1:1801 0.0.0.0:0 LISTENING xxxx TCP [::1]:1801 [::]:0 LISTENING xxxx Output resembles the following in second scenario: TCP y.y.y.y:1801 0.0.0.0:0 LISTENING xxxx where, y.y.y.y is the IP address which MSMQ port is listening to but this is different from the IP it should listen to. Resolution: Restart Message Queuing Service If Point 1 don’t resolve the issue, Install this Metadata hotfix. https://support.microsoft.com/en-us/hotfix/kbhotfix?kbnum=2554746&kbln=en-US
Share Story :
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!
Share Story :
Create a marketing segment in Dynamics 365 for Marketing
Introduction: In this blog we will be discussing about marketing segments in Dynamics 365 for Marketing Preview.Marketing is basically promoting some products or services which an individual or organization has to offer. While marketing the main aim to decide a target audience. Once the audience is know, the marketing content can be tailored to target that specific group of people. A market segment is the collection of contacts that you target in a marketing campaign. There are three types of segments a follows: Static Dynamic Compound Implementation: Static Segments: Members in the static segments are added explicitly. These members can be added by the marketer based on the personal interaction that he/she had with the customer. Step 1: Here we created a new static segment in the definitions tab we select the members using the check box as shown below. Initially the segment is in the Draft state. A point to be noted is that segment names can’t have blank spaces. Step 2: Then we save and click the Check for Error on the top ribbon which validates the changes done as shown Step 3: After the validation is passed successfully we can click the Go Live button on the top of the ribbon. Dynamic Segments: The members in dynamic segment keep on changing based on the criteria that is setup. Every time a new contact is added to the system and it fulfills the condition specified in the query, it gets added to the dynamic segment. Step 1: In the designer at the bottom of the page we can see the total segment size which is the total number of members who will be added in the segment. In dynamic segments we design rules using the Designer or Flow or Query. Once we design the view using the designer we can see in the Query tab the query is populated. There are three operators that can be used is, is not and contains. Compound Segments: The third and final type of segment is the compound segment.Compound segments make use of static and dynamic segments which are live. As seen in the image below first we have to select the segment from the drop down and only the segments that are live will appear in the drop down list. Once the segment is selected we click on the arrow and then select one of Union/Exclude/Intersect. Finally, we see at the top of each segment how many members are included or excluded. Conclusion: These segments are used in customer journeys when we want to send marketing emails to a particular group of people.
