Solution with ID doesn’t not exist error while using “Applying Solution Upgrade” in Dynamics 365 (CRM 2016 Update 1)

We had a requirement to delete few of the components from the solution and we followed the new feature that is now available for this in product, starting from CRM 2016 Update 1.

https://nishantrana.me/2016/10/16/how-to-delete-components-from-managed-solution-in-dynamics-crm-2016-without-using-holding-solution/

However, we ran into the following error while trying to apply solution upgrade i.e. Solution with ID does not exist.

First time it worked properly and deleted the components from the TEST environment. Then we removed few more components and tried applying this updated solution again to remove those remaining components from our TEST environment, that is when we got this issue.

The issue happens because of certain orphan records which still exist in the database and references the old deleted solution.

Below is the fix for this issue (i.e. update those records in the database).

http://ronaldlemmen.blogspot.de/2015/11/solution-with-id-86ac16ec-41d7-4685.html

http://code2life.blogspot.in/2016/09/crm-2016-sp1-solution-import-failed.html

However as in our case, as it was online we ended up creating the product support ticket to do the same

Other issues that we faced in CRM 2016 Update 1 

Hope it helps..

Few more interesting issues in New Form Rendering in CRM 2016 Update 1

We recently upgraded to CRM 2016 Update 1 and there seems to be noend to the different product issues that we are facing.

The latest ones are missing scroll bar in BPF when a particular stage has large number of fields in it and the other one being “Click to enter” info appearing at wrong place in BPF for fields.

Legacy Form Rendering

The same form in New Form Rendering

Below are the other issues that we have faced in New Form Rendering till now

https://nishantrana.me/2016/12/09/bug-in-new-form-rendering-crm-2016-update-1-add-new-button-not-working-for-opportunity-product-sub-grid-in-opportunity-form/

https://nishantrana.me/2016/11/28/onchange-event-getting-fired-on-setvalue-in-crm-2016-update-1-new-form-rendering/

https://nishantrana.me/2016/11/25/recommended-field-showing-up-as-required-field-issue-in-dynamics-365/

Well it seems like in Dynamics 365 we do not have the issue with scroll bar for new form rendering but the click to enter bug still seems to exist

bug

Hope it helps..

Add hyperlink (and button) in Form Notification in Dynamics 365 (CRM 2016 and earlier)

Recently we were working on a requirement wherein we wanted to add a hyperlink to the Notification that we were showing on the form.

For this we can use the following Jscript library

https://notifyjs.codeplex.com/

The JScript code:

Output:

Clicking on Details opens the page specified in the callback function.

The other option is to show hyperlink within a web resource and putting it inside the form.

https://nishantrana.me/2012/02/09/showing-related-entity-information-in-header-as-hyperlink-crm-2011/

Hope it helps..

Inviting existing Contacts to Portal in Dynamics 365

For inviting existing contact records as user of the portal we can follow the below steps.

Open an existing contact record and click on Create Invitation button

This creates the invitation record along with the invitation code.

Select and run the Send Invitation workflow.

The steps for the workflow are as below.

The contact\user receives the link for the confirmation

Clicking on the link opens the portal wherein user\contact can redeem the Invitation Code and Register.

User can set up username and password during registration.

Once registered user can access the portal and update the profile further and can also change the password, email etc.

The Contact record in CRM gets updated accordingly.

Hope it helps..

Setting up Portal Trial in Dynamics 365

Create your dynamics 365 trial as a first step (if not already created)

https://signup.microsoft.com/Signup?OfferId=bd569279-37f5-4f5c-99d0-425873bb9a4b&dl=DYN365_ENTERPRISE_PLAN1&Culture=en-us&Country=us&ali=1

Once trial is set up successfully, open the admin center for Dynamics 365 and select Applications and click on Manage to configure the portal.

Provide details for the portal

Click on Accept

Grant Permission to the Portal

We’d get the below message

After some time

Clicking on here takes us to the manage your solutions page

Once configured we’d see the following area\groups\sub groups added to site map specific to portals

Portal : 

myportal

 

Hope it helps..

“getRequiredLevel is not a function” error while creating a new contact record in Dynamics 365.

We were getting the strange getRequiredLevel is not a function error while creating a new record (in New Form Rendering)

After debugging, we figured out that it was failing for the following field “mapcontrollink”.

We commented out the entire section and imported it back (unsupported). This fixed the issue.

Strangely enough we couldn’t find that field in the Vanilla version, in our case it is the upgraded environment so that could be reason of having that extra field.

Hope it helps..

Using MediaWiki API for Showing content of Wikipedia page inside Dynamics 365 form

Hi,

Recently we had a requirement to show content of Wikipedia page and display it inside CRM in one of the entities form.

For this purpose, we can make use of “MediaWiki web service API.”

https://www.mediawiki.org/wiki/API:Main_page

To create the query, we can use the below tool

https://en.wikipedia.org/wiki/Special%3aApiSandbox

The html source code


<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script type="text/javascript">

function SetWikiContent() {

// get country name from crm form
if (Xrm.Page.getAttribute("new_name") != null) {

var title = Xrm.Page.getAttribute("new_name").getValue();

// set the url
var url = "https://en.wikipedia.org/w/api.php?format=json&action=parse&page=" + title + "&prop=text&section=0&callback=?";

$.getJSON(url, function (data) {
for (text in data.parse.text) {
var text = data.parse.text[text].split("
");
var pText = "";

for (p in text) {
//Remove html comment
text[p] = text[p].split("<!--");
if (text[p].length > 1) {
text[p][0] = text[p][0].split(/\r\n|\r|\n/);
text[p][0] = text[p][0][0];
text[p][0] += "
 ";
}
text[p] = text[p][0];

//Construct a string from paragraphs
if (text[p].indexOf("
") == text[p].length - 5) {
var htmlStrip = text[p].replace(/<(?:.|\n)*?>/gm, '') //Remove HTML
var splitNewline = htmlStrip.split(/\r\n|\r|\n/); //Split on newlines
for (newline in splitNewline) {
if (splitNewline[newline].substring(0, 11) != "Cite error:") {
pText += splitNewline[newline];
pText += "\n";
}
}
}
}
pText = pText.substring(0, pText.length - 2); //Remove extra newline
pText = pText.replace(/\[\d+\]/g, ""); //Remove reference tags (e.x. [1], [4], etc)

Xrm.Page.getAttribute('new_wikiinfo').setValue(pText);
}
});
}
}

</script>
</head>
<body onload="SetWikiContent();">
</body>
</html>

The helpful article

http://stackoverflow.com/questions/8555320/is-there-a-clean-wikipedia-api-just-for-retrieve-content-summary

Hope it helps..

Simple Bing Map HTML Web Resource to show Country location in Dynamics 365

Just sharing a HTML Web resource code to show Country location inside the map using name of the country.

Source Code: –


<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>My Bing Map</title>
<script charset="UTF-8" type="text/javascript" src="https://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0&s=1"></script>
<script type="text/javascript">
var map = null;

// get the bing map key https://msdn.microsoft.com/en-us/library/ff428642.aspx
var credentials = "AvYH87t36Tv3ybyYagU9HUZKjsrWO2Hcup3nu1fmNhpenHKO_xxxxx";

function GetMap() {

// countryName - name of the country from the CRM's form
var countryName = parent.Xrm.Page.getAttribute("new_name").getValue();

// calling virtual earth api
var geocodeRequest = "https://dev.virtualearth.net/REST/v1/Locations?countryRegion=" + countryName + "&key=" + credentials + "&jsonp=GeocodeCallback";

CallRestService(geocodeRequest);
}

function GeocodeCallback(result) {

if (result && result.resourceSets && result.resourceSets.length > 0 && result.resourceSets[0].resources && result.resourceSets[0].resources.length > 0) {

var coordinates = result.resourceSets[0].resources[0].point.coordinates;
var centerPoint = new Microsoft.Maps.Location(coordinates[0], coordinates[1]);

map = new Microsoft.Maps.Map(document.getElementById("mapDiv"),
{
credentials: credentials,
center: centerPoint,
mapTypeId: Microsoft.Maps.MapTypeId.road,
zoom: 5
});

var pushpin = new Microsoft.Maps.Pushpin(map.getCenter());
map.entities.push(pushpin);
}
}

function CallRestService(request) {
var script = document.createElement("script");
script.setAttribute("type", "text/javascript");
script.setAttribute("src", request);
document.body.appendChild(script);
}
</script>
</head>
<body onload="GetMap();">
<div id='mapDiv' style="position: relative; width: 600px; height: 300px;"></div>
</body>
</html>

Check this helpful post as well

https://blogs.bing.com/maps/2015/03/05/accessing-the-bing-maps-rest-services-from-various-javascript-frameworks/

Hope it helps..

Deployment Manager – To create a new organization, the wizard must remove the current organization in Dynamics 365 message.

While creating a new organization using Deployment Manager we got the below message

It was because we had entered the Workgroup Product key which restricts it to only organization.

https://technet.microsoft.com/en-us/library/hh699677.aspx

Changing the product key to the server one, allowed creating the new organizations.

Hope it helps..

Not able to register Image for Plugin in Microsoft Dynamics 365 Developer Toolkit (Public Beta 1)

Hi,

While using Developer Toolkit for Dynamics 365 we got strange issue today, the Images were not getting registered for Plugins.

In fact, in the Create New Plugin dialog box we couldn’t see the option of adding images like previous version.

Previous version –

To get more details on the new toolkit refer the below article

http://butenko.pro/2016/11/developer-toolkit-dynamics-365-public-beta-1-whats-new/

Hope it helps..