XrmToolBox
https://dynamics-chronicles.com/
enDataverse : Multi-Table lookups
https://dynamics-chronicles.com/article/dataverse-multi-table-lookups
<span property="schema:name" class="field field--name-title field--type-string field--label-hidden">Dataverse : Multi-Table lookups</span>
<span rel="schema:author" class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/amaury-veron" lang="" about="/user/amaury-veron" typeof="schema:Person" property="schema:name" datatype="" class="username">Amaury Veron</a></span>
<span property="schema:dateCreated" content="2022-03-09T14:44:59+00:00" class="field field--name-created field--type-created field--label-hidden">Wed, 03/09/2022 - 15:44</span>
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-above">
<div class="field__label">Body</div>
<div property="schema:text" class="field__item"><p>Today we take a look at a great feature released last year: Dataverse : Multi-Table lookups.</p>
<p>The Multi-Table Lookup is a type of Column in Dataverse similar to the Lookup type... except that it allows to look up records in multiple Tables at once, rather than in a single Table. Some out-of-the-box Columns already exist with a similar feature such as the "Customer" Column which allows to lookup records in "Account" and "Contact" Tables.</p>
<p>This feature allows to create and manage <u>Custom</u> Columns with that kind of functionality.</p>
<p>Microsoft has not provided yet a graphical interface to manage the Multi-Table Columns. The management of these Columns could be done using the Web API. The documentation can be found here: <a href="https://docs.microsoft.com/en-us/powerapps/developer/data-platform/webapi/multitable-lookup#use-the-multi-table-lookup-apis">https://docs.microsoft.com/en-us/powerapps/developer/data-platform/webapi/multitable-lookup#use-the-multi-table-lookup-apis</a>. The API allows to make operations such as: create and delete these Columns, retrieve metadata information, add or remove relationships in one Column, update the metadata of a relationship, ...</p>
<p>An XrmToolBox plugin exists to help use these Columns, the "Polymorphic Lookup Manager" plugin:</p>
<p><img alt="Dataverse : Multi-Table lookups" data-entity-type="file" data-entity-uuid="6b72f202-1da3-4b12-af3b-4a3c3b831f07" height="139" src="/sites/default/files/inline-images/Plugin%20banner.png" width="1055" class="align-left" /></p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p>This plugin allows to manage the Columns with a graphical interface and to use all operations available in the API.</p>
<p>In the interface, you can select the Table on which the Multi-Table Column is created, the Tables that it references, the characteristics of the relationships, ...:</p>
<img alt="Dataverse : Multi-Table lookups" data-entity-type="file" data-entity-uuid="e1e68c5b-2672-4413-a57d-fa1b03ba7082" height="573" src="/sites/default/files/inline-images/Plugin%20new%20Form_0.png" width="1168" class="align-center" />
<p>For a small demo, I have created a Table called "TestAVE" and in it I want to create two custom Columns:</p>
<ul>
<li>My Simple Lookup: A usual Lookup Column, referencing the Table Contact. I create it only to compare it with the Multi-Table Lookup Column.</li>
<li>My Polymorphic Lookup: A Multi-Table Lookup Column, referencing multiple Tables. For the demo, I use references to the following Tables:
<ul>
<li>Account</li>
<li>Campaign </li>
<li>Case</li>
<li>Contact</li>
<li>Lead</li>
<li>Opportunity</li>
</ul>
</li>
</ul>
<p> </p>
<img alt="Dataverse : Multi-Table lookups" data-entity-type="file" data-entity-uuid="e253353f-0ef3-4e13-a282-d2bbf0f30910" src="/sites/default/files/inline-images/Plugin%20Create%20new%20field%20Form.png" class="align-center" />
<p>Button "Create Polymorphic Lookup" allows to create the Column once the configuration is made.</p>
<p>The Column is displayed in the PowerApps configuration site (make.powerapps.com). I add it to the Main Form of the Table. One interesting point is that this Multi-Lookup Column almost looks like an usual Lookup Column. The graphical interface only shows one Table that it references. And little customizations can be done on it.</p>
<p>Here are printsceens for the configuration of the Multi-Table Lookup:</p>
<img alt="Config Poly Lookup" data-entity-type="file" data-entity-uuid="7bca4e22-3bcf-42f4-bcbc-31200825b7d3" height="740" src="/sites/default/files/inline-images/Config%20Poly%20Lookup.png" width="275" class="align-center" /><img alt="My Poly Lookup" data-entity-type="file" data-entity-uuid="93616f31-f965-41be-becf-9b30d473b941" height="486" src="/sites/default/files/inline-images/My%20Poly%20Lookup_0.png" width="945" class="align-center" />
<p> </p>
<p>And here are printsceens for the configuration of the Simple Lookup:</p>
<img alt="Config Simple Lookup" data-entity-type="file" data-entity-uuid="ae843171-a383-4e5e-8f69-65602d64e56f" height="721" src="/sites/default/files/inline-images/Config%20Simple%20Lookup.png" width="262" class="align-center" /><img alt="My Simple Lookup" data-entity-type="file" data-entity-uuid="87f65070-9654-4c0a-a985-a40a6d466843" height="483" src="/sites/default/files/inline-images/My%20Simple%20Lookup.png" width="936" class="align-center" />
<p>We can hardly find differences between the two types of Column.</p>
<p>Here is a printscreen of the appearance of the Multi-Table Lookup Column in a Model-Driven App:</p>
<img alt="Dataverse : Multi-Table lookups" data-entity-type="file" data-entity-uuid="ee0ea747-bd00-48c3-b4f8-c8d530545d5e" height="353" src="/sites/default/files/inline-images/Selection%20in%20Multi-Table%20Lookup.png" width="1173" class="align-center" />
<p>It looks just like the "Customer" Column.</p>
<p>You can select the Table in which you want to lookup a record, and then just select your record!</p>
<p> </p>
<p>As mentioned above, the XrmToolBox plugin also allows to update and delete these Multi-Table Columns!</p>
<img alt="Plugin update and delete field" data-entity-type="file" data-entity-uuid="9a48b7da-35b7-4e8a-aa7d-d3d8b09702fb" src="/sites/default/files/inline-images/Plugin%20update%20and%20delete%20field.png" class="align-center" />
<p> </p>
<p> </p>
<p>This Multi-Table Column can be really great. I hope you will enjoy it !</p>
<p>I guess Microsoft will provide a graphical interface in the future to manage these Columns. Meanwhile, XrmToolBox provides a great plugin to manage them.</p>
<h2 class="title">Dataverse : Multi-Table lookups</h2>
</div>
</div>
Wed, 09 Mar 2022 14:44:59 +0000Amaury Veron470 at https://dynamics-chronicles.comAPICustomizationToolsXrmToolBoxhttps://dynamics-chronicles.com/article/dataverse-multi-table-lookups#commentsXrmToolBox Presentation - Org Settings Updater
https://dynamics-chronicles.com/article/xrmtoolbox-presentation-org-settings-updater
<span property="schema:name" class="field field--name-title field--type-string field--label-hidden">XrmToolBox Presentation - Org Settings Updater</span>
<span rel="schema:author" class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/danny-rodrigues-alves" lang="" about="/user/danny-rodrigues-alves" typeof="schema:Person" property="schema:name" datatype="" content="Danny Rodrigues Alves" class="username">Danny Rodrigue…</a></span>
<span property="schema:dateCreated" content="2022-01-05T13:24:10+00:00" class="field field--name-created field--type-created field--label-hidden">Wed, 01/05/2022 - 14:24</span>
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-above">
<div class="field__label">Body</div>
<div property="schema:text" class="field__item"><blockquote>
<p>The <em>Org Settings Updater</em> tool enables to update the settings of your Dataverse environment without the need to use REST calls. </p>
</blockquote>
<h4>Description</h4>
<img alt="OrgSettings" data-entity-type="file" data-entity-uuid="897df467-42d7-48b9-b8ad-d2b7f999c13e" src="/sites/default/files/inline-images/OrgSettings.png" class="align-center" />
<p>While googling to find a resolution to a Dynamics 365 problem, it occurs quite often that someone one a blog post refers to "update the organization settings". In a nutshell, an organization setting enables to make a change quite deep in the CRM's configuration, changes that aren't available through the classic administration panel. For on-premises organizations, those settings can be updated directly in the DB, but for online environments, this isn't a possibility.</p>
<p>To resolve this issue, <a href="https://github.com/LinkeD365">Carl Cookson</a> (aka LinkeD365) took over Sean McNellis tool <a href="https://github.com/seanmcne/OrgDbOrgSettings/">OrgDbOrgSettings</a> and package it into a XrmToolbox plugin. The plugin lists the organization's settings and enables CDS administrators to update them easily. There is even a small description of the settings and the default parameter value.</p>
<img alt="XrmToolBox Presentation - Org Settings Updater" data-entity-type="file" data-entity-uuid="aa63a022-abf3-427d-989e-ad171e3709e0" src="/sites/default/files/inline-images/OrgSettingsScreen_0.png" class="align-center" />
<p>In the main list of settings, green lines indicate that the settings have been customized. If the line is red, it is because the settings have been modified by the user but not yet committed to CRM.</p>
<p> </p>
<p>Note that with the icon <img alt="XrmToolBox Presentation - Org Settings Updater" data-entity-type="file" data-entity-uuid="f24cd553-a0b2-4d96-bb8a-3499b097570d" src="/sites/default/files/inline-images/OrgSettingsCompareIcon.png" />, two environments can be loaded at the same time. Their settings can be compared and copied from one to another.</p>
<h4>Links</h4>
<ul>
<li><a href="https://github.com/LinkeD365/OrgSettings">Project's GitHub page</a></li>
<li><a href="https://www.xrmtoolbox.com/plugins/LinkeD365.OrgSettings/">XrmToolBox's plugin page</a></li>
<li><a href="https://linked365.blog/2020/06/18/d365-org-db-settings-xrmtoolbox-addon/?utm_source=rss">Author's blog post</a></li>
</ul>
<h2 class="title">XrmToolBox Presentation - Org Settings Updater</h2>
</div>
</div>
Wed, 05 Jan 2022 13:24:10 +0000Danny Rodrigues Alves513 at https://dynamics-chronicles.comXrmToolBoxhttps://dynamics-chronicles.com/article/xrmtoolbox-presentation-org-settings-updater#commentsAggregate using XrmToolBox FetchXml Builder
https://dynamics-chronicles.com/article/aggregate-using-xrmtoolbox-fetchxml-builder
<span property="schema:name" class="field field--name-title field--type-string field--label-hidden">Aggregate using XrmToolBox FetchXml Builder</span>
<span rel="schema:author" class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/pham-ba-son" lang="" about="/user/pham-ba-son" typeof="schema:Person" property="schema:name" datatype="" class="username">Pham Ba Son</a></span>
<span property="schema:dateCreated" content="2021-12-01T04:28:28+00:00" class="field field--name-created field--type-created field--label-hidden">Wed, 12/01/2021 - 05:28</span>
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-above">
<div class="field__label">Body</div>
<div property="schema:text" class="field__item"><p><em>Aggregate using XrmToolBox FetchXml Builder</em></p>
<p><span><span><span>Since the introduction of Dataverse, many utilities has been added to us developers' arsenal. One of them is the ability to use aggregate function with FetchXml. This eliminates the need to invoke LINQ operation or manual iteration in certain situations.</span></span></span></p>
<p><span><span><span>FetchXml now supports these following operations:</span></span></span></p>
<ul>
<li><span><span><span>Sum</span></span></span></li>
<li><span><span><span>Average</span></span></span></li>
<li><span><span><span>Min</span></span></span></li>
<li><span><span><span>Max</span></span></span></li>
<li><span><span><span>Count</span></span></span></li>
</ul>
<p><span><span><span>On top of those, Group By and Multiple Aggregation is also available (works on datetime field as well). This makes query using FetchXml becomes more versatile.</span></span></span></p>
<p><span><span><span>To ensure query performance, queries that return aggregate values are limited to 50000 records. Working with a sizable tables will need to be well designed.</span></span></span></p>
<h2><strong>Aggregate query in FetchXml Builder</strong></h2>
<p>FetchXml Builder is a very handy tool offered by XrmToolBox used by many developer to build fetchXml querry. Select aggregate option for the root level of the querry enables aggregate on entity's attribute.</p>
<p><img alt="Aggregate using XrmToolBox FetchXml Builder" data-entity-type="file" data-entity-uuid="0c9f6f26-f764-498b-9fb0-c390d0660ad6" src="/sites/default/files/inline-images/Option_0.png" /></p>
<p>Settings options on attribute level</p>
<p><img alt="Aggregate using XrmToolBox FetchXml Builder" data-entity-type="file" data-entity-uuid="a770932a-90c4-48df-b483-18f91e8a7590" src="/sites/default/files/inline-images/aggregate.png" /></p>
<p>Possible attribute aggregation</p>
<p><img alt="Aggregate using XrmToolBox FetchXml Builder" data-entity-type="file" data-entity-uuid="85e7b61e-60cb-4330-98b1-ccc3884fed6c" src="/sites/default/files/inline-images/aggregation%20values.png" /></p>
<h2 class="title">Aggregate using XrmToolBox FetchXml Builder</h2>
</div>
</div>
Wed, 01 Dec 2021 04:28:28 +0000Pham Ba Son500 at https://dynamics-chronicles.comXrmToolBoxhttps://dynamics-chronicles.com/article/aggregate-using-xrmtoolbox-fetchxml-builder#commentsD365 : How to embed a Power BI dashboard to an entity form by keeping filters
https://dynamics-chronicles.com/article/d365-how-embed-power-bi-dashboard-entity-form-keeping-filters
<span property="schema:name" class="field field--name-title field--type-string field--label-hidden">D365 : How to embed a Power BI dashboard to an entity form by keeping filters</span>
<span rel="schema:author" class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/david-uhlmann" lang="" about="/user/david-uhlmann" typeof="schema:Person" property="schema:name" datatype="" class="username">David Uhlmann</a></span>
<span property="schema:dateCreated" content="2021-10-21T17:21:22+00:00" class="field field--name-created field--type-created field--label-hidden">Thu, 10/21/2021 - 19:21</span>
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-above">
<div class="field__label">Body</div>
<div property="schema:text" class="field__item"><p><em>D365 : How to embed a Power BI dashboard to an entity form:</em></p>
<p>If you use Dynamics 365 CE CRM and Power BI for Business Intelligence / Reporting you most likely know how to add a Dashboard to your CRM system. The whole process is so straightforward that I will not repeat here. However, if you want to embed a Power BI dashboard into lets say the account form, and apply filters automatically for this specific account, matters get a bit more complicated. Anyways,... If you know how to do it its a rather straight forward process.</p>
<p>You can also consult <a href="/article/study-power-bi-embedded-integration-dynamics-365">this article</a> that give you more details on embeding scenarios or try to check on our <a href="/category/power-bi">dedicated section about Power BI</a>. </p>
<p>This quick tip will show you how to do it. To achieve this you need four things:</p>
<p>- XrmToolBox with a tool called "Power BI Embedder"</p>
<p>- An (I would suggest empty) element on your Dynamics form (in my case account form)</p>
<p>- A report (important not a dashboard!) that you want to embedd into your form</p>
<p>- An understanding what should be filtered, for example opportunities for a specific account</p>
<p>So let's get started:</p>
<p>First we need to create an empty element in the account form.</p>
<img alt="D365 : How to embed a Power BI dashboard to an entity form" data-entity-type="file" data-entity-uuid="989674da-e2dd-4670-8ac3-e8e6ad08ade2" src="/sites/default/files/inline-images/Screenshot%201-%20Account%20Form.png" class="align-center" />
<p>In my case here the Power BI element is already embedded, but you just need to create an empty element and give it a proper name.</p>
<p>Next you need to log in into your Power BI Service Account, and go to the report you want to embedd into the form. In doing so you need some information: Group ID and Report ID of the report you want to embedd, PBI Tabe and Column names that you want to filter and the technical name of the attribut you want to use for filtering. This will all be used and explained in a moment.</p>
<p>So first we jump to Power BI Service:</p>
<img alt="Power BI Service" data-entity-type="file" data-entity-uuid="03b3b185-1d8a-4a55-ab3a-27c9fe495603" src="/sites/default/files/inline-images/Screenshot%201-%20Report%20Power%20BI.png" class="align-center" />
<p>If you are on the report (click to workspace, your respective workspace and then on the report) you see two IDs in the URL. One is group ID (after "groups) and the second one is the report ID (after "reports"). Copy those two and save them somewhere. </p>
<p>Next we open our XTB (respectively "Power BI Embedder") and connect to the environment where we want to embedd the Power BI report. We select the entity, form, tab and the space we generated earlier:</p>
<img alt="XRM Toolbox" data-entity-type="file" data-entity-uuid="53b97401-03ee-46b2-bc30-e80505d7102b" src="/sites/default/files/inline-images/Screenshot%201-%20XRM%20Toolbox_0.png" class="align-center" />
<p>Inside the XrmToolBox we enter those two stored IDs that we got from the Power BI service earlier. Also, we need to tell the tool how we want to filter the report on the form. In my demo case, I want to add a piechart that gives all opportunities for the account record that is cuurrently displayed to the user. For this you need to give the names for your Power BI table and column, in my case "Opportunitiy" and "parentaccountid" and then choose the technical name that you want to use for filtering. As Opportunity and Account are connected via "parentaccountid" <-> "accountid" we select "accountid" and then press "Publish Report" on the top.</p>
<p>And yes,.. that is basically it. If you have not messed up anything up to this point the tool will now embedd the Power BI report into your form:</p>
<img alt="D365 : How to embed a Power BI dashboard to an entity form" data-entity-type="file" data-entity-uuid="6e6532be-3b40-4d4d-8c12-987155b028dd" src="/sites/default/files/inline-images/Screenshot%201-%20Power%20BI%20on%20form.png" class="align-center" />
<p>After all this, you can enjoy presenting those nice Power BI dashboards to your users and/or clients.</p>
<h2 class="title">D365 : How to embed a Power BI dashboard to an entity form</h2>
</div>
</div>
<div class="field field--name-field-image field--type-image field--label-above">
<div class="field__label">Image</div>
<div class="images-container clearfix">
<div class="image-preview clearfix">
<div class="image-wrapper clearfix">
<div class="field field--name-field-image field--type-image field--label-above field__item">/sites/default/files/2021-10/digital-marketing-1725340_0.jpg</div>
</div>
</div>
</div>
</div>
Thu, 21 Oct 2021 17:21:22 +0000David Uhlmann455 at https://dynamics-chronicles.comDataverse : How to change format of existing columns
https://dynamics-chronicles.com/article/dataverse-how-change-format-existing-columns
<span property="schema:name" class="field field--name-title field--type-string field--label-hidden">Dataverse : How to change format of existing columns</span>
<span rel="schema:author" class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/danny-rodrigues-alves" lang="" about="/user/danny-rodrigues-alves" typeof="schema:Person" property="schema:name" datatype="" content="Danny Rodrigues Alves" class="username">Danny Rodrigue…</a></span>
<span property="schema:dateCreated" content="2021-10-14T13:44:59+00:00" class="field field--name-created field--type-created field--label-hidden">Thu, 10/14/2021 - 15:44</span>
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-above">
<div class="field__label">Body</div>
<div property="schema:text" class="field__item"><p><em>Dataverse : How to change format of existing columns</em></p>
<h3>On-line</h3>
<blockquote>Via the Web API, we can now change the format of existing fields/columns in Microsoft Dataverse</blockquote>
<h3>Description</h3>
<p>Announced in a <a href="https://powerapps.microsoft.com/en-us/blog/change-the-format-of-existing-text-integer-and-datetime-data-types-to-compatible-formats-2-new-formats/">Power Apps blog post</a>, it is possible to change the format of an existing field!</p>
<p>Until now, once fields have been created with their Data type it was impossible to convert them. For example, you may have created a field under the <em>Text</em> type and later on realize that it is used to store <em>Email</em> addresses. The only way was to create a new field, transfer all data from the old field to the new one and then delete the old field. Not ideal...</p>
<p>To resolved this complex process, Microsoft issued a new API to transform the format for <em><strong>Text</strong></em>, <em><strong>Integer</strong></em>, or <em><strong>DateTime </strong></em>data types. Note that this API will not transform nor <em>touch</em> the data of the fields/columns! As stated by Microsoft: <em>it will simply instruct the client to display the content in the selected format</em>.</p>
<p>Therefore, not all transitions are available. For example, a <em>Text</em> data type column cannot be transformed into a <em>DateTime </em>data type. With the table below, transitions can only be made for the same <em>Column Type</em>:</p>
<table border="1" cellpadding="1" cellspacing="1" style="width: 500px;">
<tbody>
<tr>
<td><strong>Column Type</strong></td>
<td><strong>Platform format</strong></td>
<td><strong>FormatName</strong></td>
</tr>
<tr>
<td>Text</td>
<td>text</td>
<td>Text</td>
</tr>
<tr>
<td> </td>
<td>email</td>
<td>Email</td>
</tr>
<tr>
<td> </td>
<td>textarea</td>
<td>TextArea</td>
</tr>
<tr>
<td> </td>
<td>url</td>
<td>Url</td>
</tr>
<tr>
<td> </td>
<td>tickersymbol</td>
<td>TickerSymbol</td>
</tr>
<tr>
<td> </td>
<td>versionnumber</td>
<td>VersionNumber</td>
</tr>
<tr>
<td> </td>
<td>phone</td>
<td>Phone</td>
</tr>
<tr>
<td> </td>
<td>json</td>
<td>Json</td>
</tr>
<tr>
<td> </td>
<td>richtext</td>
<td>RichText</td>
</tr>
<tr>
<td>Memo / Multiline Text</td>
<td>text</td>
<td>Text</td>
</tr>
<tr>
<td> </td>
<td>email</td>
<td>Email</td>
</tr>
<tr>
<td> </td>
<td>textarea</td>
<td>TextArea</td>
</tr>
<tr>
<td> </td>
<td>internalextentdata</td>
<td>Text</td>
</tr>
<tr>
<td> </td>
<td>json</td>
<td>JSON</td>
</tr>
<tr>
<td> </td>
<td>richtext</td>
<td>RichText</td>
</tr>
<tr>
<td>Whole Number</td>
<td>none/string.Empty</td>
<td>None</td>
</tr>
<tr>
<td> </td>
<td>duration</td>
<td>Duration</td>
</tr>
<tr>
<td> </td>
<td>timezone</td>
<td>TimeZone</td>
</tr>
<tr>
<td> </td>
<td>language</td>
<td>Language</td>
</tr>
<tr>
<td> </td>
<td>locale</td>
<td>Locale</td>
</tr>
<tr>
<td>Date and Time</td>
<td>date</td>
<td>Date</td>
</tr>
<tr>
<td> </td>
<td>datetime</td>
<td>DateAndTime</td>
</tr>
</tbody>
</table>
<p>At the time of this article, there is no UI interface to interact with this API. The only way is to use the API via <em>code</em>.</p>
<blockquote>
<p>UI functionality will be available in the fullness of time</p>
</blockquote>
<h3> </h3>
<h3>Example</h3>
<p>We have the following field in the <em>Contact</em> table:</p>
<img alt="Dataverse : How to change format of existing columns" data-entity-type="file" data-entity-uuid="1e22a800-039f-4130-b948-69a4e91dd9de" src="/sites/default/files/inline-images/a_0.png" class="align-center" />
<p>In the form, the field is displayed as a simple text field:</p>
<img alt="Dataverse : How to change format of existing columns" data-entity-type="file" data-entity-uuid="69c12f18-7c9a-4138-acda-7b8f03097235" src="/sites/default/files/inline-images/b_1.png" class="align-center" />
<p>But as you can see, the text field is used to store email addresses! So we will change the type of the column to <em>Email</em> and the form will display the column with a button that, when clicked, launches your default email client and inserts the address in the To: field.</p>
<ol>
<li>First thing to do is to retrieve the <em>MetadataId</em> for the <em>Contact</em> table. To do that, we use the Web API with the link /<strong>api/data/v9.2/EntityDefinitions?$select=SchemaName</strong>
<ol>
<li><img alt="Dataverse : How to change format of existing columns" data-entity-type="file" data-entity-uuid="064cc578-12dc-4fe3-8334-f1fb0d8f9b78" src="/sites/default/files/inline-images/c.png" /><br />
<br />
</li>
</ol>
</li>
<li>Then we perform another call to the Web API to retrieve the ID of the column we want to convert: <strong>/api/data/v9.2/EntityDefinitions(608861bc-50a4-4c5f-a02c-21fe1943e2cf)/Attributes?$select=SchemaName</strong>
<ol>
<li><img alt="Dataverse : How to change format of existing columns" data-entity-type="file" data-entity-uuid="2ffb9e92-919c-4e36-ad4b-8127d26505e9" src="/sites/default/files/inline-images/d.png" /><br />
<br />
</li>
</ol>
</li>
<li>Now we can make the HTTP PUT call to update the type of the column. For that, we will use XrmToolBox's plugin WebAPI Launcher
<ol>
<li>The <em>URL </em>is: <strong>/api/data/v9.2.21091.138/EntityDefinitions(608861bc-50a4-4c5f-a02c-21fe1943e2cf)/Attributes(69f51227-b126-ec11-b6e5-6045bd8b0ca8)</strong></li>
<li>The request JSON content is:
<pre>
<code class="language-json">{
"@odata.type": "Microsoft.Dynamics.CRM.StringAttributeMetadata",
"FormatName": {
"Value": "Email"
}
}</code></pre>
<ol>
<li>Note that <em>Email</em> comes from the <em>FormatName</em> in the table above.</li>
</ol>
</li>
<li><img alt="Dataverse : How to change format of existing columns" data-entity-type="file" data-entity-uuid="eea82f85-0553-4cc4-84e3-52b8bd88c9e7" src="/sites/default/files/inline-images/e.png" /><br />
</li>
</ol>
</li>
<li>That's it! If we can back to the form, the field is now displayed as an Email!
<ol>
<li><img alt="Dataverse : How to change format of existing columns" data-entity-type="file" data-entity-uuid="c4518797-5341-4db4-a0fd-9bdaba5c1939" src="/sites/default/files/inline-images/f.png" /></li>
</ol>
</li>
</ol>
<h3>XrmToolBox plugin </h3>
<p>If you want you can use a great XrmToolBox plugin of Matt Beard named Format Changer, you can fint it <a href="https://www.xrmtoolbox.com/plugins/DataverseFormatChanger">here </a>on directly from the plugin gallery of XTB. </p>
<p>This tool is based on this new feature and will allow you to deal with format changes. ;)</p>
<h3>Reference</h3>
<ul>
<li><a href="https://powerapps.microsoft.com/en-us/blog/change-the-format-of-existing-text-integer-and-datetime-data-types-to-compatible-formats-2-new-formats/">Power Apps Blog post</a></li>
<li><a href="https://docs.microsoft.com/en-us/powerapps/developer/data-platform/data-type-format-conversions">Dataverse Developer's documentation</a></li>
</ul>
<h2 class="title">Dataverse : How to change format of existing columns</h2>
</div>
</div>
Thu, 14 Oct 2021 13:44:59 +0000Danny Rodrigues Alves469 at https://dynamics-chronicles.comAPIData ManipulationProgrammingToolsTutorialXrmToolBoxhttps://dynamics-chronicles.com/article/dataverse-how-change-format-existing-columns#commentsXrmToolBox : Slim Solution overview
https://dynamics-chronicles.com/article/xrmtoolbox-slim-solution-overview
<span property="schema:name" class="field field--name-title field--type-string field--label-hidden">XrmToolBox : Slim Solution overview</span>
<span rel="schema:author" class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/maxime-bonnot" lang="" about="/user/maxime-bonnot" typeof="schema:Person" property="schema:name" datatype="" class="username">Maxime Bonnot</a></span>
<span property="schema:dateCreated" content="2021-10-11T12:31:25+00:00" class="field field--name-created field--type-created field--label-hidden">Mon, 10/11/2021 - 14:31</span>
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-above">
<div class="field__label">Body</div>
<div property="schema:text" class="field__item"><p><em>XrmToolBox : Slim Solution overview</em></p>
<p>Have you ever faced a solution which you had to export as managed but which had plenty of issues when you imported it, mostly due to dependencies from whoknowswhere.</p>
<p>Then you probably had to download the log file, understand the issue and manually go to the remove or add a components to this solution before starting to export it again as managed.</p>
<p>If you are lucky (or super skilled) everything install succesfully but sometimes it throw another error (perhaps because of your previous add or remove that bring another dependency).</p>
<p>Well, I am talking of the worse scenario but you can not deny that in large scale project where several developer are working, this happen and it can become time consuming and somehow pretty irritating to find the proper components to include or to not include within the solution.</p>
<p>As developper we obviously know the best practice which consist to embed systematically and exclusively usefull components. Those are custom components and modified manage components. </p>
<p>In reality, on a large scale project with many little development and several developers, this is more complicated than that and we can get easily lost without a proper overview.</p>
<p>In order to get rid of those embarassing moments, XrmToolBox propose to us a tool called Slim Solution which, as indicate by its name (or not), allow us to have a proper overview of what's needed and where you should check whether components are truly needed or not.</p>
<h4 class="text-align-center"><strong>Here is a short introduction regarding this tool step per step ;</strong></h4>
<p>1 - Go to Xrm Tool Box <br />
<em>If you don't have it, no worries, here is the link to download it : </em><a href="https://www.xrmtoolbox.com/"><strong>right here</strong></a></p>
<p>2 - Go into the Tool Library <br />
<img alt="XrmToolBox : Slim Solution overview" data-entity-type="file" data-entity-uuid="0ec907ba-3c45-4aa9-bed0-d124fa717b5a" height="148" src="/sites/default/files/inline-images/ToolLibrary.png" width="486" /></p>
<p>3 - Check for Slim Solution and Install it<br />
<img alt="XrmToolBox : Slim Solution overview" data-entity-type="file" data-entity-uuid="02e1b88c-ebf3-424b-a413-992f396e28be" height="84" src="/sites/default/files/inline-images/slimsol_0.png" width="487" /></p>
<p>4 - Check for Slim Solution in Tools and open it (connect to your system if you didn't do it so far) ;<br />
<img alt="XrmToolBox : Slim Solution overview" data-entity-type="file" data-entity-uuid="134dabe2-9440-44d7-a3b3-88f29f7f5ba2" src="/sites/default/files/inline-images/SlimSolution.png" /></p>
<p>5 - Here we are ! Click on Load Solutions : <br />
<img alt="XrmToolBox : Slim Solution overview" data-entity-type="file" data-entity-uuid="fbd77516-8aa1-4f2f-adeb-384695b0fd93" src="/sites/default/files/inline-images/loadsolution.png" /><br />
Here you can see the full list of solution within the system you are connected to.</p>
<p>6 - Select the solution that you wish to check in order to make it lighter and click on Check Solution :<br />
<img alt="Suggest" data-entity-type="file" data-entity-uuid="c23e5a0b-7c52-443d-a0ba-12e1a34d639f" height="136" src="/sites/default/files/inline-images/Suggestion.png" width="1297" /></p>
<p>As you can observe, it index all components within the solution and even gives suggestion which helps to have a proper overview of what to keep and what to remove from the solution.</p>
<p>This make indeniably the clean up way easier and it's always good to check your solution before delivering. <strong>As slim the solution is, as less issue you will get !</strong></p>
<h2 class="title">XrmToolBox : Slim Solution overview</h2>
</div>
</div>
Mon, 11 Oct 2021 12:31:25 +0000Maxime Bonnot475 at https://dynamics-chronicles.comXrmToolBoxhttps://dynamics-chronicles.com/article/xrmtoolbox-slim-solution-overview#commentsXrmToolBox - Dataverse export Entity Relation Diagram
https://dynamics-chronicles.com/article/xrmtoolbox-dataverse-export-entity-relation-diagram
<span property="schema:name" class="field field--name-title field--type-string field--label-hidden">XrmToolBox - Dataverse export Entity Relation Diagram</span>
<span rel="schema:author" class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/vo-sy-lien-thanh" lang="" about="/user/vo-sy-lien-thanh" typeof="schema:Person" property="schema:name" datatype="" class="username">Vo Sy Lien Thanh</a></span>
<span property="schema:dateCreated" content="2021-05-04T14:47:49+00:00" class="field field--name-created field--type-created field--label-hidden">Tue, 05/04/2021 - 16:47</span>
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-above">
<div class="field__label">Body</div>
<div property="schema:text" class="field__item"><p><em>Dataverse export Entity Relation Diagram:</em></p>
<p>In Dynamics 365, we have many entities with relationships. Sometimes, we need to see the overview of those relationships in a more graphical way. We have some popular ways to archive this:</p>
<ul>
<li>Use medata to generate (Official docs by Microsoft)<br />
For more information you can go to this article <a href="https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/developer/use-metadata-generate-entity-diagrams#generate-entity-diagrams-with-the-metadata-diagram-tool">Use metadata to generate entity diagrams</a></li>
<li>Use Entity Relation Diagram Creator tool from XrmToolBox: I will show you how to do it in this article!</li>
</ul>
<p><strong>Prerequisite:</strong> Know how to install XrmToolBox. Or you can go to <a href="https://dynamics-chronicles.com/article/xrmtoolbox-view-designer">XrmToolBox - View Designer</a> to see how to use XrmToolBox</p>
<h4>Step 1: Install Entity Relation Diagram</h4>
<img alt="Dataverse export Entity Relation Diagram" data-entity-type="file" data-entity-uuid="cedb6eec-7a2f-4849-bf24-f06c789b530e" src="/sites/default/files/inline-images/Untitled_16.png" class="align-center" />
<h4>Step 2: Overview main feature of the tool</h4>
<img alt="Dataverse export Entity Relation Diagram" data-entity-type="file" data-entity-uuid="3367bcd7-9638-463f-b3f3-9fe8f9380a8e" src="/sites/default/files/inline-images/Untitled_20.png" class="align-center" />
<h4>Step 3: Load solution or load entity</h4>
<p>In this tool you can load all entities in the environment or you can just load entity in the solution.</p>
<img alt="Load entities or load solution" data-entity-type="file" data-entity-uuid="265829e7-84ea-41b8-baef-5140cb7ba0c4" src="/sites/default/files/inline-images/Untitled_21.png" class="align-center" />
<h4>Step 4: Add setting before generate diagram</h4>
<img alt="Dataverse export Entity Relation Diagram" data-entity-type="file" data-entity-uuid="849f4f35-58d5-452f-93cf-118ee275bddd" src="/sites/default/files/inline-images/Untitled_22.png" class="align-center" />
<p>Explain each options:</p>
<table border="1" cellpadding="1" cellspacing="1" style="width: 712px;" class="align-center">
<tbody>
<tr>
<td style="width: 317px;">Field to show</td>
<td style="width: 382px;">
<p>Five options:</p>
<ul>
<li>Custom fields from publisher</li>
<li>Custom fields from all publisher</li>
<li>All fields</li>
<li>Key field only</li>
<li>No fields</li>
</ul>
</td>
</tr>
<tr>
<td style="width: 317px;">Show collapsed entities</td>
<td style="width: 382px;">Show entities in collapsed view</td>
</tr>
<tr>
<td style="width: 317px;">Show data types in entities</td>
<td style="width: 382px;">Show fields with data type</td>
</tr>
<tr>
<td style="width: 317px;">Show friendly names in entities</td>
<td style="width: 382px;">Show entity display name (rarely use)</td>
</tr>
<tr>
<td style="width: 317px;">Show fieldname in relationship</td>
<td style="width: 382px;">Show relationship field name</td>
</tr>
<tr>
<td style="width: 317px;">Show name of many-to-many relationship</td>
<td style="width: 382px;">Show relationship name</td>
</tr>
<tr>
<td style="width: 317px;">Show related entities outside solution (Ghosted relationship)</td>
<td style="width: 382px;">If you choose to create a diagram from solution and you need to know the relationship of an entity in solution with the entity outside of currently selected solution</td>
</tr>
<tr>
<td style="width: 317px;">Hide unpublished customizations</td>
<td style="width: 382px;"> </td>
</tr>
</tbody>
</table>
<h4>Step 5: Generate entity relation diagram</h4>
<p>After click "Create Entity Relation Diagram" button you will get a diagram</p>
<img alt="Diagram example" data-entity-type="file" data-entity-uuid="b1d0241e-0864-4967-9771-5fa5d4979b37" src="/sites/default/files/inline-images/Untitled_23.png" class="align-center" />
<h4>Step 6: Save diagram as Image or .ERD file</h4>
<p>In this tool, you can export diagram to an .ERD file or an image.</p>
<p>You can click "Save Diagram" or "Save Diagram as" to save as .ERD file</p>
<img alt="Save option" data-entity-type="file" data-entity-uuid="a67a88f8-fdf4-4423-9202-a6f45187a820" src="/sites/default/files/inline-images/Untitled_24.png" class="align-center" />
<p>With this file, you can open it later on using this tool by clicking "Open Diagram" button</p>
<img alt="Open existing diagram" data-entity-type="file" data-entity-uuid="816ec268-3fec-410f-a654-2fc75b93f386" src="/sites/default/files/inline-images/Untitled_25.png" class="align-center" />
<p>Or you can also save the diagram as an image to share with other team members by clicking "Take image"</p>
<img alt="Save as image" data-entity-type="file" data-entity-uuid="7ece8e34-3a1e-4c0e-be7c-d3faa28e25db" src="/sites/default/files/inline-images/Untitled_26.png" class="align-center" />
<p>Hope this tool will help you!</p>
<h2 class="title">Dataverse export Entity Relation Diagram</h2>
</div>
</div>
Tue, 04 May 2021 14:47:49 +0000Vo Sy Lien Thanh342 at https://dynamics-chronicles.comXrmToolBoxhttps://dynamics-chronicles.com/article/xrmtoolbox-dataverse-export-entity-relation-diagram#commentsXrmToolBox - View Designer
https://dynamics-chronicles.com/article/xrmtoolbox-view-designer
<span property="schema:name" class="field field--name-title field--type-string field--label-hidden">XrmToolBox - View Designer</span>
<span rel="schema:author" class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/vo-sy-lien-thanh" lang="" about="/user/vo-sy-lien-thanh" typeof="schema:Person" property="schema:name" datatype="" class="username">Vo Sy Lien Thanh</a></span>
<span property="schema:dateCreated" content="2021-04-12T06:18:14+00:00" class="field field--name-created field--type-created field--label-hidden">Mon, 04/12/2021 - 08:18</span>
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-above">
<div class="field__label">Body</div>
<div property="schema:text" class="field__item"><p><strong>View</strong> are used to display list of records for the user. <strong>XrmToolBox - View Designer</strong> can be a tool that help you to edit the views.</p>
<p>I would like to show you a plugin in XrmToolBox which can help you to design views in Dynamics 365 and basic knowledge about View. With this tool you can modify complex query which configuration on CRM can not achieve.</p>
<h3>1. Quick presentation of a view definition</h3>
<ul>
<li>Layout: Uses XML format and define how the View are shown to the user. You can see an example for layout in the code snippet below</li>
</ul>
<pre>
<code class="language-xml"><grid name="resultset" object="2" jump="fullname" select="1" icon="1" preview="1" >
<row name="result" id="contactid" >
<cell name="fullname" width="300" />
<cell name="emailaddress1" width="150" />
<cell name="parentcustomerid" width="150" />
<cell name="telephone1" width="125" />
</row>
</grid></code></pre>
<ul>
<li>Query: Also based on XML format, it uses a syntax named "FetchXml". This XML indicate the DB query executed behind the view. </li>
</ul>
<pre>
<code class="language-xml"><fetch version="1.0" output-format="xml-platform" mapping="logical" count="50" >
<entity name="contact" >
<attribute name="fullname" />
<order attribute="fullname" descending="false" />
<attribute name="parentcustomerid" />
<filter type="and" >
<condition attribute="statecode" operator="eq" value="0" />
</filter>
<attribute name="telephone1" />
<attribute name="emailaddress1" />
<attribute name="contactid" />
</entity>
</fetch></code></pre>
<h3>2. <strong>XrmToolBox - View Designer</strong></h3>
<p>As I mentioned in the beginning of this article, <strong>View Designer </strong>is a <strong>plugin</strong> in <strong>XrmToolBox</strong>. It will help you to change the layout, filter and definition of the View. You can also preview your design with this tool.</p>
<h4>a/ How to install?</h4>
<ul>
<li><em><strong>Step 1:</strong></em> Install XrmToolBox. You can go to <a href="https://github.com/MscrmTools/XrmToolBox/releases/">https://github.com/MscrmTools/XrmToolBox/releases/</a> to get lastest version of XrmToolBox</li>
</ul>
<img alt="XrmToolBox - View Designer" data-entity-type="file" data-entity-uuid="fda86900-2359-4032-9383-f8213146f3e7" src="/sites/default/files/inline-images/Untitled_7.png" class="align-center" />
<ul>
<li><em><strong>Step 2:</strong></em> Unzip the downloaded file then open <strong>XrmToolBox.exe</strong></li>
</ul>
<img alt="XrmToolBox - View Designer" data-entity-type="file" data-entity-uuid="87277fdc-58bb-4725-8c6e-b6da8cb503d3" src="/sites/default/files/inline-images/Untitled_8.png" class="align-center" />
<ul>
<li><strong><em>Step 3:</em></strong> Open Tool Library and search for <strong>View Designer </strong>then install the plugin</li>
</ul>
<img alt="Install View designer" data-entity-type="file" data-entity-uuid="cbe70fac-4a5b-479c-b3fe-824c0c5b1822" src="/sites/default/files/inline-images/Untitled_9.png" class="align-center" />
<ul>
<li>After installed, you will have something like this</li>
</ul>
<img alt="View designer after install" data-entity-type="file" data-entity-uuid="fbee755b-0442-4aad-b595-d4c4c7f8f5f1" src="/sites/default/files/inline-images/Untitled_10.png" class="align-center" />
<h4>b/ How to use?</h4>
<ul>
<li>Connect to your Dataverse organization and Open <strong>View designer tool</strong></li>
</ul>
<img alt="XrmToolBox - View Designer" data-entity-type="file" data-entity-uuid="7a5fc6ba-2ae3-4ad5-abd6-4bb0c6407827" src="/sites/default/files/inline-images/Untitled_11.png" class="align-center" />
<ul>
<li>Open a View in CRM</li>
</ul>
<p>Click <strong>Open </strong>button</p>
<img alt="Open Button" data-entity-type="file" data-entity-uuid="f4c9a07a-187e-4c50-8ac6-125bb65931a0" src="/sites/default/files/inline-images/Untitled_12.png" class="align-center" />
<p> Enter entity name and select the view, then click OK button</p>
<img alt="Select entity and view name" data-entity-type="file" data-entity-uuid="ccb403cc-5bc4-42a6-9d5f-c1e7a96780ab" src="/sites/default/files/inline-images/Untitled_13.png" class="align-center" />
<p>View will be load to the View designer</p>
<img alt="View" data-entity-type="file" data-entity-uuid="0a32a4a2-9825-4fd3-a365-9bd916877a06" src="/sites/default/files/inline-images/Untitled_14.png" class="align-center" />
<ul>
<li>You will be able to preview data</li>
</ul>
<img alt="XrmToolBox - View Designer" data-entity-type="file" data-entity-uuid="4c77c063-b90d-42e5-8713-9fece87cae60" src="/sites/default/files/inline-images/Untitled_15.png" class="align-center" />
<ul>
<li>And edit the query (FetchXml)</li>
</ul>
<p>Click <strong>Edit Query</strong> button, it will open FetchXml builder. You can find more information of FetchXml Builder at <a href="https://dynamics-chronicles.com/article/xrmtoolbox-fetchxml-builder">https://dynamics-chronicles.com/article/xrmtoolbox-fetchxml-builder</a></p>
<img alt="Open fetchxml" data-entity-type="file" data-entity-uuid="2b22dcc4-4797-476a-a3cf-1dae97372414" src="/sites/default/files/inline-images/Untitled_17.png" class="align-center" />
<p> After changing FetchXml, Click <strong>Return FetchXml</strong> button to apply filter to the view.</p>
<img alt="return fetchxml" data-entity-type="file" data-entity-uuid="5eeefa48-bb6d-4a62-b434-4c212eed42c2" src="/sites/default/files/inline-images/Untitled_18.png" class="align-center" />
<ul>
<li>Edit Layout, Select column and Live Preview</li>
</ul>
<p>You can edit view's layout by clicking <strong>Edit Xml</strong> button and select which column can display by clicking <strong>Select Columns</strong> button.</p>
<p>To Live Preview, click <strong>Live Preview</strong> button</p>
<img alt="related feature" data-entity-type="file" data-entity-uuid="7027ef2a-09e6-4d6f-b15a-cb0b1762323c" src="/sites/default/files/inline-images/Untitled_19.png" class="align-center" />
<h3>3. Notices</h3>
<ul>
<li>After changes, you need to click <strong>Publish</strong> button to publish all changes</li>
<li>You should only add column that included in the FetchXML</li>
<li>You can only change the filter with static value. To use dynamics value in the filter, you need to implement they in source code.</li>
</ul>
<h2 class="title">XrmToolBox - View Designer</h2>
</div>
</div>
Mon, 12 Apr 2021 06:18:14 +0000Vo Sy Lien Thanh313 at https://dynamics-chronicles.comXrmToolBoxCustomizationhttps://dynamics-chronicles.com/article/xrmtoolbox-view-designer#commentsGlobal ribbon Customization in Dynamics 365
https://dynamics-chronicles.com/article/global-ribbon-customization-dynamics-365
<span property="schema:name" class="field field--name-title field--type-string field--label-hidden">Global ribbon Customization in Dynamics 365</span>
<span rel="schema:author" class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/nguyen-thanh-khoi" lang="" about="/user/nguyen-thanh-khoi" typeof="schema:Person" property="schema:name" datatype="" class="username">Nguyen Thanh Khoi</a></span>
<span property="schema:dateCreated" content="2021-03-30T08:55:56+00:00" class="field field--name-created field--type-created field--label-hidden">Tue, 03/30/2021 - 10:55</span>
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-above">
<div class="field__label">Body</div>
<div property="schema:text" class="field__item"><p><strong>Global ribbon Customization in Dynamics 365</strong></p>
<p>Global Ribbon Buttons are the buttons that display on top-right corner of Dynamics Interface and on whatever entity form. Some OOTB global button are: Advanced Find, Search, Task Flow, Assistant,... This trick will show you how to customize Global button.</p>
<img alt="Global ribbon Customization in Dynamics 365" data-entity-type="file" data-entity-uuid="1e755b1d-81db-4315-9546-c6c45b87ab09" height="499" src="/sites/default/files/inline-images/Image%201.png" width="770" class="align-center" />
<p><strong>First</strong>, we should create a light solution for ribbon customization then add "<strong>Application Ribbons</strong>" component. We should only add needed component to this solution so it will be faster when we load solution as well as publish in Ribbon Workbench.</p>
<img alt="Add Application Ribbon component to solution" data-entity-type="file" data-entity-uuid="2a346d5b-f205-41d2-aca1-00d19d56ccd6" height="480" src="/sites/default/files/inline-images/Image%202.png" width="719" class="align-center" />
<p>Then, Open tool <strong>Ribbon Workbench</strong> in <strong>XrmToolBox </strong>then load the created solution. In my case, this is solution named "ribbon". To have more information on Ribbon Workbench <a href="/article/first-step-simple-reminder-ribbon-and-ribbon-workbench">check this tricks</a>.</p>
<img alt="Load solution in Ribbon Workbench" data-entity-type="file" data-entity-uuid="267a1231-628b-4559-87db-70d741b059b8" src="/sites/default/files/inline-images/Image%203.png" class="align-center" />
<p>Every thing related customization of global button such as: show/hide button, change behavior, create/remove button,... will display at group <strong>Mscm.GlobalTab</strong>. To find this group, slide scrollbar of Home section to find the group to the right.</p>
<img alt="Global ribbon Customization in Dynamics 365" data-entity-type="file" data-entity-uuid="3aee60b3-2b74-4a81-adf9-7e3c01aa9575" src="/sites/default/files/inline-images/Image%204.png" class="align-center" />
<p>Drop a new button into <strong>Mscm.GlobalTab</strong> group area.</p>
<img alt="Global ribbon Customization in Dynamics 365" data-entity-type="file" data-entity-uuid="f242430a-62c8-4496-b6d0-99e5d14eba9d" height="503" src="/sites/default/files/inline-images/Image%205.png" width="1021" class="align-center" />
<p>Next, customize your ribbon as you want. Here I will implement a global button that will call a JavaScript action whenever it is clicked so I add a new command then add JavaScript action to command.</p>
<img alt="Call JavaScript action from command" data-entity-type="file" data-entity-uuid="8029710d-9995-44d6-9353-f474ed19d93c" height="326" src="/sites/default/files/inline-images/Image%206.png" width="1073" class="align-center" />
<p>The snip code of function RibbonAction:</p>
<pre>
<code class="language-javascript">static RibbonAction(formContext)
{
alert("Hello");
}</code></pre>
<p><strong>Finally</strong>, we publish the ribbon customization to Dynamics 365. If your solution has a lot of components, the publishing will take long time and in some case, it could get the error so the "best practice" is create a new solution only for Ribbon customization purpose and just add the needed thing to the solution.</p>
<p><strong>Note</strong>: <em>you need reload the latest resource by pressing <strong>Ctrl+F5 to</strong> view the change after you publish solution.</em></p>
<p>Here is the result: The new button will display next to the setting icon and JavaScript action is executed when click the button</p>
<img alt="Global ribbon Customization in Dynamics 365" data-entity-type="file" data-entity-uuid="2ad7808d-7d15-48be-92a7-071e6345e368" height="574" src="/sites/default/files/inline-images/Image%207.png" width="808" class="align-center" />
<p>If you have any thing want to discuss, please add a comment :)</p>
<h2 class="title">Global ribbon Customization in Dynamics 365</h2>
</div>
</div>
Tue, 30 Mar 2021 08:55:56 +0000Nguyen Thanh Khoi296 at https://dynamics-chronicles.comCustomizationXrmToolBoxTutorialFirst Stephttps://dynamics-chronicles.com/article/global-ribbon-customization-dynamics-365#commentsPresentation of XrmToolBox Bulk Data Updater
https://dynamics-chronicles.com/article/presentation-xrmtoolbox-bulk-data-updater
<span property="schema:name" class="field field--name-title field--type-string field--label-hidden">Presentation of XrmToolBox Bulk Data Updater</span>
<span rel="schema:author" class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/amaury-veron" lang="" about="/user/amaury-veron" typeof="schema:Person" property="schema:name" datatype="" class="username">Amaury Veron</a></span>
<span property="schema:dateCreated" content="2021-02-17T13:54:24+00:00" class="field field--name-created field--type-created field--label-hidden">Wed, 02/17/2021 - 14:54</span>
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-above">
<div class="field__label">Body</div>
<div property="schema:text" class="field__item"><p><em>XrmToolBox Bulk Data Updater</em></p>
<p>Today, let's have a look at another great plugin in XrmToolBox, the "Bulk Data Updater". As the name indicates, this plugin allows you to update records in the CRM in bulk.</p>
<p>Using FetchXML queries or CRM views, you can select the records to update. And you can define an action to perform on these records.</p>
<p>Let's have a deeper look to the plugin. Below is the window of the plugin, with a division in 5 different parts:</p>
<img alt="XrmToolBox Bulk Data Updater" data-entity-type="file" data-entity-uuid="22eb88b8-23aa-4392-81dc-70efa8c68239" height="488" src="/sites/default/files/inline-images/Plugin%20overview.png" width="968" class="align-center" />
<p> </p>
<p>"Part 1" gives commands to close the plugin, to cancel a bulk operation, or to filter the attributes to show (in "Part 4").</p>
<p>"Part 2" lets you open records. You can do it in four different manners:</p>
<ul>
<li>Use XrmToolBox "FetchXML Builder" to create a FetchXML query</li>
<li>Edit an FetchXML query directly in the plugin</li>
<li>Open records of a CRM View</li>
<li>Open a FetchXML query stored on your computer</li>
</ul>
<p>The records opened with "Part 2" are displayed in "Part 3". In "Part 3" you can choose to run the bulk update:</p>
<ul>
<li>either on all records displayed</li>
<li>or only on the records you select. Use the "Ctrl" key or the "Shift" key to select multiple records</li>
</ul>
<p>The most interesting part is yet to come...: in "Part 4". "Part 4" allows to define the bulk operation to be performed. There are 4 tabs:</p>
<ul>
<li>Tab "Update": here you can select multiple attributes and give a value to set for each of them. You can set an attribute to <em>null</em>. And you can also "touch" an attribute. To "touch" an attribute doesn't change its value, but its acts as if it had. This can be used to trigger workflows or plugins on records, which is great.</li>
<li>Tab "Assign": to assign selected records to a Team or a User in bulk</li>
<li>Tab "Set State": to set the state of selected records in bulk</li>
<li>Tab "Delete": to delete selected records in bulk</li>
</ul>
<p>In "Part 5", you can set the batch size, the time to wait between two batch requests. And you can launch the operation.</p>
<p> </p>
<p>This plugin is really simple to use so I recommend it! The "touch" functionality is also really nice to trigger processes in bulk.</p>
<h2 class="title">XrmToolBox Bulk Data Updater</h2>
</div>
</div>
Wed, 17 Feb 2021 13:54:24 +0000Amaury Veron208 at https://dynamics-chronicles.comXrmToolBoxhttps://dynamics-chronicles.com/article/presentation-xrmtoolbox-bulk-data-updater#comments