Friday, October 20, 2017

Dynamics 365 V9.0 Optimum space... Issue resolution and workaround!!! Tips and Tricks

In my previous blog, we had discussed the issue of white space in D365 screens. Although there is not a direct solution to the issue; there is definitely a work around which can be a solution for one having big screens and laptops... I had posted this blog in facebook and other groups from which I received  some good comments and suggestions. #OliverFlint suggested a solution which resolves this issue. In this post, we will discuss the solution/workaround and discuss the pros/cons of the approach.


Step 1: The simple solution is to adjust the screen resolution of the display to a  higher resolution (1920 x 1080 or 1440 x 900)

Step 2: If the above step did not resolve the issue, then change the size of texts, apps and other items to 100%



This should resolve the issue for laptops and  monitors with Higher screen resolution. In my HP 15.6 True HD Laptop, performing step 1 did not resolve the issue but step 2 did resolve the issue and below is the result. But the Text size, App size was not set to recommended size and looked very small. I am not comfortable and felt a little stressed and on my eyes too.


Dell 24 Inch HD monitor: Perfect resolution to the issue

Dell 13.3 HD Laptop: No resolution even with maximum screen resolution and the texts and apps looked really small.

Although this solution may resolve the issue of Workspace, but I feel it will be good if the solution worked in lower resolution monitors too. According to the below site 45% of the computer users are on low resolution monitors where the D365 screens may still be an issue! Sales person on the go carrying small laptops may still face the issue!!



Happy to discuss!!

Wednesday, October 18, 2017

Dynamics 365 V9.0 Optimum space ??

One of the big selling point of Microsoft for its new Version 9.0 of Dynamics 365 application is reducing white space. Although they have reduced a lot of white space, introduced text wrap and Default user message for empty section etc, I still feel that there are many blank spaces in the product. If you see the below screenshot there are many white spaces and new grey spaces introduced. You can also see that the body of the form (where most of the users work) has tremendously reduced. Now that is what as a end user I would hate, reducing my work space.




Now i did a small exercise and tried removing manually some of the empty spaces from the screen using paint. In the below screen all that is in red is the space I could save. On the right side I have shown places where I could shrunk some space. This is what as an end user (many of my clients) have asked and Microsoft fails every time to achieve this. I hope my thought process concurs with others!!

Happy to discuss and comments!!

Friday, October 13, 2017

Dynamics 365 Portals - Multiple Language Support

Microsoft Portal is a great feature of Dynamics 365 to extend the application to non-users like customers, vendors and channel partners. Portals can be enabled for a customer to browse through knowledge base articles, see information about the products and contracts or to create a service request or a case.
In this post we will see how to create portals in multiple languages. Portals by default come in English language and we will see how to enable Spanish Language to the portal.

Step 1: Enable Spanish Language in D365 application

Navigate to Settings>Adminstration>Languages and select the language that has to be enabled. In our example, Spanish is selected and click on "Apply". Now this process is going to take some time as it creates the necessary language settings.



Step 2: Add Language to the portal

Now navigate to Portal>> Websites and Select Portal for example "Customer Self-Service Portal". Scroll down and go to section "Supported Languages" and click on the "+" sign to add a new language record.



In the resulting new "Website Language" page  add the portal language (lookup) and mark it as published. By default the lookup does not display any language (product bug) hence perform the below step to show the language values

  • Click on form editor
  • Select the lookup and click on properties
  • Click on "Event" Tab and disable the "adx.multilanguage/adx.website.js" 

This setting should add the language to the "Supported Language" grid


Step 3: Add Content Snippets and Web link sets

Adding the language will create content snippet and web link records for Spanish language. Open each of the record and modify the content to reflect Spanish



Step 4: Update Webpages

Webpages are other child pages of the portal. In our example, let us see how the KnowledgeBase webpage of the customer service portal is updated with Spanish content

Navigate to Portal>>Content>>Webpages and open Knowledge Base Home page

When the form is loaded, scroll down a little to find "Localized Content" section. In this section you will see the Spanish line item added to the localized content. Open the record to update localized content.




On the resulting "Web page: Content page" scroll down and locate "Content" section. Update the Spanish content


Step 5 : Restart Portal
- Go to Office365 Portal and navigate to Admin
- Select Dynamics 365 and navigate to Dynamics 365 Administration Center
- Go to Applications Tab
- Select the Poral and Click in Manage


In the resulting page- Click on the Portal Actions>>"Restart Portal" Tile




Result
1) Language code added in the weburl
2) Language optionset added in the webpage



3) On Selection of Spanish, the contents are updated

Thursday, October 5, 2017

Advanced Find Update in D365 V9.0 or July update

Advanced find

Advanced find now has the option to build a NOT IN query. For example, users can query for all cases that do not have a related task.
To do this, users launch advanced find from the icon on the navigation bar. In the query, they choose what type of record to look for, and then select a related record type to see the Does not contain data operator.
Advanced find>> Select "Account" Entity
In the filter section, select the related entity, in this example  the Task entity. Now in the earlier version there was no option available to select options at that level. In V9.0 you can see filter in here which has options "Contains data" and "Does not contain data" in the related record type



Thursday, September 7, 2017

Data Export Service

  • The ability to replicate Dynamics 365 data to an external SQL database provides a lot of flexibility for generating reports. Data Export is an add-on service made available as a Microsoft Dynamics 365 (online) solution that adds the ability to replicate Dynamics 365 (online) data to a Microsoft Azure SQL Database store in a customer-owned Microsoft Azure subscription. The supported target destinations are Microsoft Azure SQL Database and Microsoft Azure SQL Server on Microsoft Azure virtual machines. Data Export intelligently synchronizes the entire Dynamics 365 schema and data initially and thereafter synchronizes on a continuous basis as changes occur (delta changes) in the Microsoft Dynamics 365 (online) system.
  • The Data Export service provides an interface for managing configuration and ongoing administration of this service from within Dynamics 365 (online). Developers can write code to interact with this service. 
More information:  Data Export service

Tuesday, September 5, 2017

Sending Dynamics fields to Docusign with D365, Using Merge fields in Docusign



Send Dynamics fields to DocuSign from D365 -  Merge fields in DocuSign

DocuSign, one of the leading solution to the e-signature platform that is available as a standard product with ready-made integration to Dynamics CRM/365. This post's objective is to explore how to send the document by pulling the dynamics fields from CRM to DocuSign template. By doing this the fields like Name, address, ID, dates can be pulled dynamically from the DocuSign

Example Use cases 
- While sending opportunities/orders for sign-off (using DocuSign) add Client Name, Address, Account Number, price/details about the order automatically to the template before sending it for sign off
- While sending contracts with details about the customer (eg., name, address etc) the customer fields can be added dynamically from CRM record


Scenario
For this blog let us consider a scenario where a contract is required to signed-off by the customer before an opportunity is closed

Step 1 - Opportunity record is created and customer record is associated to the opportunity record
Step 2 - Open the opportunity record and select the template to be sent for e-signature
Step 3 - From opportunity record, select more buttons and click on "Send with DocuSign" button
Step 4 - System logs into DocuSign and opens the selected template
Step 5 - User verifies the document and clicks on "Send for Esignature"

These are the steps that would have to be performed by the user to send a dynamic template to the customer for signature. The below sections will tell us the steps to "Configure" this functionality. I have seen lot of customers who have heavily customized to achieve this functionality but this blog will help you understand how this whole functionality can be developed without programming.

Pre-requisite - DocuSign add-on has to be installed in the CRM application

Step 1 -Create a custom entity for DocuSign Template, This will be used to select a template required for the Opportunity which is to be sent.
Step 2 – Import a template and Creating Merge Fields in DocuSign Template
Step 3 - Create CRM Action and add merge fields
Step 4 – Assign the Action in DocuSign settings to the Opportunity Record

Step 1 Create an Entity for Tracking DocuSign Template

This is an optional step. Let us assume there are multiple templates available within the organization and the template will have to sent according to the customer’s language or product. This entity lookup (when placed on Opportunity entity) will send the envelope id dynamically to the DocuSign which will enable that particular envelope to be opened. Optionally if there is only one envelope id, that can be hardcoded in the workflow.
Create the entity with the following fields
a)       Template Name
b)      Envelope ID
This entity will need to be placed on the opportunity entity as a lookup where the user can use it to select the Envelope that is to be sent to the customer

Step 2  Import a template and Create Merge Fields in DocuSign Template


Let us assume that the below template is to be added and all the fonts in the red are to be added as dynamic fields from Dynamics CRM


                     I.            Login to CRM and navigate to Settings> DocuSign>> DocuSign Admin
                   II.            From the resulting page click on the “GO TO DOCUSIGN”  button and this opens the DocuSign Admin Page
                 III.            Navigate to Templates>Click on New Button to create a new Envelope/Template

                IV.            Upload the template to the “Add Documents to the Envelope” Section
                  V.            Now in the “Add recipients to the Envelope” Section> Under Role field> Enter the “role name” (remember this name we will use this in Process Action), in our case we are using ‘sales’ as the role name and Click “Next”
                VI.            The template which was uploaded will be opened in an iFrame with options to drag and drop fields from left navigation pane
               VII.            We need to Create the below fields to be added in the template
a.       Full Name
b.       First Name
c.       Opportunity Title
d.       Owner
e.       Address



             VIII.            Create all Custom Field as shown below. Once created it will be available to drag and drop from the left navigation pane

                 IX.            Drag and drop all the custom fields that were created by you on the template where ever necessary
                                                                           i.      Note down the DataLabel for each of the fields that you have dragged, These values have to be referred in the Process Action which will be create shortly. In the below screen for Full Name field the Data label is “fullname”. Similarly capture the Data Label for other custom fields that have been created for the template


                   X.            Copy Envelope ID – once the template is created open the template and copy the template id. We will need this in our Process Action. Use this template ID in the custom entity record created in step 1

Step 3 Creation of Microsoft Dynamics Process Action

The next step is to create a process Action in Microsoft Dynamics CRM which will bind these custom attributes created in DocuSign to CRM attributes and push the dynamic values to the Template.
                     I.            Dynamics CRM>> Settings>Process>Click on New Process> Select Type as ‘Action’> Select Entity “Opportunity” or any other entity where the process has to be triggered
                   II.            In the resulting process page, Enter process Argument
a.       Name EnvelopeURL
b.       Type – String
c.       Direction – Output
d.       Required- checked


Action Step 1 – Create Envelope

a)       Next step is to Add process Steps – Create Envelope Step
b)      Add Step>>DocuSign Integration>>DocuSign.DSIntegrationActivity.CreateEnvelope


aca) Create Envelope step is added as below
b)      Click on Set Properties
c)       In the resulting window add TemplateId. This can be a static envelope id if the requirement is to send only one template id or use the Form Assistant to bring in our envelope Id from the custom entity created in step 1 (DocuSign Template)

d)      Save and Close


Action Step 2 – Add Document (this step is needed if you a document from notes>attachment needs to be sent to DocuSign for esignature)

a)       Next step is to Add process Steps – Add Document Step
a.       Add Step>>DocuSign Integration>>DocuSign.DSIntegrationActivity.AddDocument
b)      Create Envelope step is added as below
c)       Click on Set Properties
d)      In the resulting window add Envelope from form assistant as shown below (From Assistant>Local Values>Create Envelope> Envelope)
e)      Save and Close



Action Step 3 – Add Recipient

a)       Next step is to Add process Steps – Add Document Step
a.       Add Step>>DocuSign Integration>>DocuSign.DSIntegrationActivity.AddRecipient
b)      Add Recipient step is added as below
c)       Click on Set Properties
d)      In the resulting window add Envelope from form assistant as shown below (From Assistant>Local Values>Create Envelope> Envelope)
e)      Name – Add the name of the recipient (Dynamically pull it from Opportunity)
f)        Email – The email address of the recipient (In this case Opportunity’s Contact)
g)       Role – The role we defined in the recipient “Sales” in step 2 Template creation – This role will map the above email, name etc. to the recipient in the DocuSign Template defined in step 2


Action Step 4 – Add Merge Fields

a)       This is the main step where we associate the custom DocuSign fields with the CRM attributes
a.        Add Step>>DocuSign Integration>>DocuSign.DSIntegrationActivity.AddRecipient
b)      Add Merge step is added as below
c)       Click on Set Properties
d)      In the resulting window add Envelope from form assistant as shown below (From Assistant>Local Values>Create Envelope> Envelope)
e)      Add Recipient ID from form assistant as shown below (From Assistant>Local Values>  Add and Map Recipient> RecipientId)
f)        Tag Label – Enter the Custom field, Data Label value which we created in Custom field creation in step 3 (while creating Templates). For example, for the Full Name field we created the docusign custom field with datalabel ‘fullname’
g)       Value – This is the field from Dynamics, Use the form assistant to pull Full name of the opportunity
h)      Similarly create merge field step for all the custom fields (in our example, First Name, Opportunity Topic, Owner, Address, etc.)


Action Step 5 – Get Signature

a)       Next step is to Add process Steps – Add Document Step
a.       Add Step>>DocuSign Integration>>DocuSign.DSIntegrationActivity.Get.Signature
b)      Add Recipient step is added as below
c)       Click on Set Properties
d)      In the resulting window add Envelope from form assistant as shown below (From Assistant>Local Values>Create Envelope> Envelope)
e)      One Click Send – False
f)        One Click Options – prepare







Action Step 6– Envelope URL

a)       Click on Add Step and Add “Assign Value”
b)      Assign Value is added as below
c)       Click on Set Properties
d)      Add Statement Label as “Envelope URL”
e)      Name: auto populates
f)        Value – use the form assistant to pull Get Signature Step>Envelope URL

Step Save and Activate the Action


Step 4 Assign This action to the Opportunity Entity

1)      CRM>Settings>DocuSign Admin> Entities> Navigate to Opportunity and Select the Action you created in “Send with DocuSign” Column


Output/Results


Navigate to Opportunity>Navigation toolbar>> Send with DocuSign
DocuSign window opens up with the template

1)      The selected template automatically opens up
2)      Contact name and email address is dynamically pulled from Add.Recipeint Step (role=sales)
Click on Next


All the fields populated dynamically from CRM to DocuSign. This document can be sent to the recipient for signing.




Monday, August 28, 2017

Tuesday, August 22, 2017

Multiselect Option Set

The July update of Dynamics 365 introduces Multi select option sets. This feature can be used multiple options from a set. Most common examples of this requirement is customer interests, categories of a case, product categories. We have experience this kind of requirements in earlier projects and due to restrictions suggested sub-grids for such requirements or used two options or check boxes with complex logic to select multiple values. This new feature would be definitely value add to the customers. This feature is available in Salesforce as a standard functionality but it has many restrictions like displaying in a view or search function etc.

We will need to explore how this new feature works in Advanced find and searches, which of course is an extension to this feature. We will need to find how this field values are displayed in a view, report, how this behaves with BPF and business rules. 

First to begin with lets see how this field can be created.

Navigation>>Settings>>Customizations>>Customize the System>>Entities>>Fields>> New button and select Data Type = Multiselect Option Set and add options like a normal option set. Then add it on the form and publish...
















Output: Semicolon separated values of selected options

Advanced Find : 
- When all the options above are selected the result is displayed when "Equals" operator is selected
- You can use "Contains Value" to check for one value

Views/Reports: 
- Can add multiselect column in the view
- values displayed as semicolon separated values in the above example the value "Motor cycle; Van; Mini Van; SUV"


Monday, August 21, 2017

Understanding Product Catalog in Dynamics 365 Customer Engagement (Dynamics CRM)

What is a Product Catalog?

Product catalog, as the name suggests its a catalog of the products with its unit and price information. The product catalog helps you create, manage and classify the products in the  D365.  The product catalog helps you
  • Define hierarchy of product
  • Define product family 
  • Configure Product properties (size, color, other features)
  • Group the product into bundles
  • Define related products (Substitute, Cross Sell, Up sell)
  • Define pricing and discounts
  • Define units and unit group
In the later sections we will discuss the above defined features with an example. 

Product :  product is either a physical inventory item (such as lumber or a nail), or a service (such as a haircut or tree pruning) that a company sells. In Dynamics 365, there is a separate entity for tracking Service (part of Field service model). But the product can be used to track and manage service too.  
You enter product information in Opportunity, Quote, Orders, Case, Entitlement and Sales Literature.

Example, A product could be a laptop, Mouse or a user license for the Operating system.

Product Family -