Advertisements

Archive

Posts Tagged ‘Dynamics Portals’

Dynamics/ADX Portals – Create Notes using SDK

As part of an integration requirement, we had to create ‘Notes’ (i.e., Annotation) with attachment using SDK.

Key Notes:

  • ‘Subject’ and ‘Notetext’ field values of Portal Notes follows a specific pattern than that of Dynamics.  Values must be set as follows:
    • SubjectNote created on {DateTime.Now.ToString()} by {Portal User Name} [contact:{PortalUserGUID}]
      • If the Portal user name is ‘Rajeev P’ and Portal user GUID(i.e.,Contact record’s GUID) is ‘2510ae27-7289-e911-a958-001dd800d97c’, Subject will be Note created on {DateTime.Now.ToString()} by Rajeev P [contact:2510ae27-7289-e911-a958-001dd800d97c]
    • Notetext*WEB*
  • If you don’t pass Portal User’s GUID in ‘Subject’ field, Portal shows the Notes record created by as User whom the Portal was configured.

Code to create Annotation:

Below is the code snippet

var noteSubject = “Note created on {DateTime.Now.ToString()} by Rajeev P [contact:2510ae27-7289-e911-a958-001dd800d97c]“;

var entAnnotation = new Entity(“annotation”);
entAnnotation[“subject“] = noteSubject;
entAnnotation[“notetext“] = “*WEB*”;
entAnnotation[“filename”] = {File_name}; // Set FileName
entAnnotation[“documentbody”] = {Base64String}; // Pass document body in Base64 format
entAnnotation[“isdocument”] = true;
entAnnotation.Attributes[“objectid”] = new EntityReference({RegardingSchemaName}, {RegardingGuid}); // Set Schema and GUID
entAnnotation.Attributes[“objecttypecode”] = {RegardingSchemaName}; // Set Schema

var noteId = crmService.Create(entAnnotation);

  • Note : Replace values in {} with actual values.

🙂

 

 

Advertisements

Dynamics Portals – Display Plug-in error messages

You would have got “An unknown failure has occurred…” many times in your portal when there was exception thrown by your Dynamics CE plug-in code.

Now in Dynamics Portals, we can show the plug-in error in following portal screens by adding “Site/EnableCustomPluginError” entry in Dynamics CE Portals -> Site Settings

  • Entity list
    • Retrieval of records
  • Entity form
    • Retrieve
    • Create/Update and so on
  • Web forms
    • Retrieve
    • Create/Update and so on

Lets see the approach and steps.

  • I have created and registered a plug-in with logic to intentionally throw an exception on ‘Case’ Create.

Portal_Plugin_Error_4

  • Go to your Portal and try to create a Case and you would get below generic exception “An unknown failure…”

Portal_Plugin_Error_1

  • Now open your Dynamics CE application, navigate to Portals -> Site Settings and create a new Site Setting with Name “Site/EnableCustomPluginError” and Value true.

Portal_Plugin_Error_2

  • Go back to your Portal and try to create a Case and you would get actual Plug-in error.

Portal_Plugin_Error_3

🙂

Dynamics Portals – Entity List ‘Map View’

February 16, 2019 4 comments

Dynamics Portal’s Entity List has an option to pin the records on a Map based on the Address of those records.

How does ‘Map View’ looks on Portal:

  •  With ‘Map View’ enabled, you will get a Map (bing/google) and matching records will be pinned on the map (i.e., Refer 1 pinned on the Map below).

Portal_Map_1

How to set up ‘Map View’:

  • On the ‘Entity List’ form, check the ‘Map Enabled’ checkbox.
  • In ‘Entity Field Mappings’, map the address fields from ‘Contact’ entity (As my entity list mapped to Contact).

Portal_Map_3

  • Under ‘Settings’ section, provide below details
    • Map Type : Bing/Google (I chose ‘Bing’ for this article)
    • Credentials : Bing API credentials (You need to login here with your Live/Outlook account and generate the Key)
    • Portal_Map_5
    • Default Center Latitude : This is important. Geo coordinates where you want your map start from (I took ‘New Jersey’ coordinates as Default)
    • Default Center Longitude : This is important. Geo coordinates where you want your map start from (I took ‘New Jersey’ coordinates as Default)
    • Save
  • On Portal, you will notice a Map loaded with ‘Default Center Latitude’ and ‘Default Center Longitude’ (i.e., ‘New Jersey’ in this example).

Portal_Map_6

  • In the ‘Address’ search box, provide ‘New York’ and click ‘Search’.

Portal_Map_1

  • As I configured Contact ‘Rajeev Pentyala’ with ‘New York’ coordinates (Refer screen below), Contact showed up in above screen.

Portal_Map_4

  • You can click on ‘Get Directions’ to get directions between Searched city (i.e., ‘New York’) and Default coordinates (i.e., New Jersey).

Portal_Map_2

🙂

Dynamics Portals – Entity List not rendering on Web Page

February 16, 2019 Leave a comment

Other day I faced a strange issue in my Portals, where my Entity list NOT rendering on the Web Page. The story goes as below.

  • I have an Entity List ‘Contact’ with 2 views configured.

Portal_WP_2

  • Created a ‘Web Page’ and set the ‘Entity List’ to ‘Contacts’ and ‘Published State’ set to ‘Published’

Portal_WP_1

  • Go to Portal and refresh the Web Page but there is no trace of ‘Entity List’

Portal_WP_3

  • Initially I suspected Cache Issue, hence I reopened and cleared the Cache but still no luck.

Portal_WP_4

Fix:

  • Portal’s ‘Content Editor’ came to my rescue.
  • On the Portal, navigate to the ‘Web Form’ and click on ‘Edit’ from ‘Content Editor’ menu.

Portal_WP_5

  • In the ‘Edit Contact List’ screen, set the ‘Entity List’ to the ‘Contacts’ entity list and Save.

Portal_WP_6

  • That’s solved the issue and I could see the ‘Contacts’ entity list rendered on the ‘Web Page’

Portal_WP_7

Note:

  • I don’t have reason or explanation what caused this behavior. Alternately you can try Restart the portal if you have O365 ‘Admin Center’ access.

🙂

Dynamics Portals – Entity List – Configure custom view names

February 16, 2019 Leave a comment

With the Dynamics Portals ‘Entity List’, its easy and seamless to port the Dynamics entity views to Portal.

In below screen, I configured ‘Active Contacts’ and ‘Inactive Contacts’ views in my Entity List and if you notice, the view names are defaulted to Dynamics view names (i.e.,Active Contacts, Inactive Contacts)

Portal_EL_1

What if we have to show custom labels for views in portal? its simple

  • Open ‘Entity List’ form from your Dynamics application
  • Views -> Advance settings
  • Set your desired text in ‘Display Name’ field

Portal_EL_2

  • Save
  • Go to Portal and refresh the Entity list web page

Portal_EL_3

🙂

 

Dynamics Portal – ‘No list could be found with the relative URL’ Error – Fix

November 13, 2018 Leave a comment

Recently I was working on Dynamics Portals and SharePoint integration and while uploading the document from ‘Case’ entity, I was getting below error

SP_Error_1

Reason:

  • ‘Document Management’ was not enabled for ‘Case’ entity.

Fix:

  • Make sure ‘Document Management’ is enabled for ‘Case’ entity
    • Connect to Dynamics 365 Application
    • Open Settings -> Customizations -> Customize the System
    • Select ‘Case’ Entity and make sure ‘Document Management’ is checked.

SP_4

  • Go to Settings -> Document Management Settings
  • In the ‘Select entities’ grid, make sure ‘Case’ entity is selected.

SP_1

  • Click ‘Next’ and ‘Select folder structure’

SP_2

  • Click ‘Next’ to complete the set up

SP_Error_2

  • Try uploading the document from Portal and should be able to upload the document.

SP_13

  • Try restarting the Portal if you still getting the exception.

🙂

Dynamics Portals – Restricting portal access by IP address

October 26, 2018 Leave a comment

The Dynamics 365 Portal is public when provisioned and accessible by anyone from any computer. Now we can restrict access to the portal from a list of IP addresses using ‘Set up IP address restriction’ page from your Portal Administration screen.

How it works:

  • To allow access to a portal from an IP address or a set of IP addresses, you can add the ‘Public’ IP addresses to the list. This allows the portal to be accessed only from the list of added IP addresses. If no IP address added, the portal will be accessible from all IP addresses.
  • When a request to the portal is generated from any user, their IP address is evaluated against the allow list. If the IP address is not on the list, the portal displays a web page with an HTTP 403 status code.
  • Only Public IP addresses are allowed and  Private IP address can’t be accessed by the portal.
  • If you try to access the portal from any other IP addresses, access will be denied and a web page with an HTTP 403 status code is displayed.

Steps to Add/Remove IP Addresses:

  • Login to your Dynamics 365 Administration Center
    • You must be having a Office 365 Global Administrator/ Dynamics 365 Service Administrator
  • Select your Instance and go to ‘Applications’ tab.
  • Select the ‘Portal Add-on’ from the ‘Applications’ list and click ‘Manage’

Portal_1

  • From the Portal Administration screen, select ‘Set up IP address restriction’

Portal_2

  • Click on + to add new IP address

Portal_3

  • To remove the IP address, use X from the grid.

Portal_4

🙂