{"id":3576,"date":"2016-09-08T17:49:15","date_gmt":"2016-09-08T12:19:15","guid":{"rendered":"https:\/\/www.inogic.com\/blog\/?p=3576"},"modified":"2016-09-08T17:49:15","modified_gmt":"2016-09-08T12:19:15","slug":"different-areas-in-dynamics-crm-where-users-can-access-external-pages","status":"publish","type":"post","link":"https:\/\/www.inogic.com\/blog\/2016\/09\/different-areas-in-dynamics-crm-where-users-can-access-external-pages\/","title":{"rendered":"Different Areas in Dynamics CRM Where Users Can Access External Pages"},"content":{"rendered":"<p style=\"text-align: justify;\"><strong>Introduction<\/strong><\/p>\n<p style=\"text-align: justify;\">There could be different scenarios where client may want to view, access, or pass data to external pages from within Dynamics CRM.<\/p>\n<p style=\"text-align: justify;\">External pages refer to the pages that are not part of Dynamics CRM. It can be defined as pages that you can access via an internet (with an extension like .aspx, .html, etc).<\/p>\n<p style=\"text-align: justify;\">In Dynamics CRM, we always have an option to create and use HTML pages through webresource but sometimes there is requirement to have an external page for a user to work with it. Users can have different requirements for it;<\/p>\n<ul style=\"text-align: justify;\">\n<li>They may only require to only see the pages.<\/li>\n<li>They may require to see and also may want to interact with page.<\/li>\n<li>They may require to pass the CRM data to external page.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">In this blog we have consolidated all the different areas in Dynamics CRM where we can actually add external pages. This may help you to choose right area to display your page in order to access external pages from Dynamics CRM.<\/p>\n<p style=\"text-align: justify;\">There are 5 different areas mentioned below;<\/p>\n<p style=\"text-align: justify;\"><strong>1. IFRAME on entity forms:<\/strong><\/p>\n<p style=\"text-align: justify;\">The form of entity is one of the areas where we can add\/show an external page. You can add an Iframe control on the form and you can pass the URL for that Iframe. So when you open a record of that entity the external page gets loaded into that Iframe.<a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/IFRAME-on-entity-forms-1.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-3584\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/IFRAME-on-entity-forms-1.png\" alt=\"IFRAME on entity forms \" width=\"624\" height=\"145\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">In some situations, you might want to pass some data from Dynamics CRM to external page.<\/p>\n<p style=\"text-align: justify;\">You can check the below option to pass this information to page and on the external page you will get that information from the querystring (Record GUID and Object type code).<\/p>\n<p style=\"text-align: justify;\"><strong>Dat<\/strong><strong>a passed to querystring<\/strong>: GUID of record (id), entity type code (typename), user language code (userlcid), organization language code (Orglcid), and Organization name (orgname).<a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Data-passed-to-querystring-2.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-3578\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Data-passed-to-querystring-2.png\" alt=\"Data passed to querystring \" width=\"457\" height=\"628\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">\u00a0Here is how the page looks like on Dynamics CRM form:<a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Dynamics-CRM-form-3.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-3581\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Dynamics-CRM-form-3.png\" alt=\"Dynamics CRM form\" width=\"623\" height=\"285\" \/><\/a><strong>2. IFRAME on Dashboard:<\/strong><\/p>\n<p style=\"text-align: justify;\">In similar fashion, using IFRAME control you can add\/show page on dashboard. We will need to insert an IFRAME control on dashboard and specify the URL for that IFRAME.<a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/IFRAME-on-Dashboard-4.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-3583\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/IFRAME-on-Dashboard-4.png\" alt=\"IFRAME on Dashboard\" width=\"624\" height=\"442\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">In same way, you can pass the information to page. But in this case you will get only organization language, user language, and organization unique name. You won\u2019t get record GUID and entity type code in this case since we are opening through a dashboard.<\/p>\n<p style=\"text-align: justify;\"><strong>Data passed to querystring<\/strong>: organization language (Orglcid), user language (userlcid) and organization unique name (orgname).<\/p>\n<p style=\"text-align: justify;\">Here is how the page looks like on Dashboard:<a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Data-passed-to-querystring-in-CRM-5.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-3580\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Data-passed-to-querystring-in-CRM-5.png\" alt=\"Data passed to querystring in CRM\" width=\"624\" height=\"284\" \/><\/a><strong>3. Form Navigation:<\/strong><\/p>\n<p style=\"text-align: justify;\">The navigation area of any entity is the one area where we can add a link to open external page.<\/p>\n<p style=\"text-align: justify;\">Edit form and click on Navigation to enable the navigation pane of form to edit it.<\/p>\n<p style=\"text-align: justify;\">From this screen, we can add external page to navigation area by using \u201cNavigation Link\u201d button.<\/p>\n<p style=\"text-align: justify;\">This button opens a window with option to select a Web resource or URL. If we want to open an external page then we have to go with External URL option.<a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Form-Navigation-6.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-3582\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Form-Navigation-6.png\" alt=\"Form Navigation\" width=\"624\" height=\"421\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">In this case we cannot pass any data to page. Supported way is not available for this option.<a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/pass-any-data-to-page-7.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-3585\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/pass-any-data-to-page-7.png\" alt=\"pass any data to page \" width=\"624\" height=\"167\" \/><\/a><strong>4. Sitemap:<\/strong><\/p>\n<p style=\"text-align: justify;\">We can also add link to open URL from Sitemap area. We have to edit the &lt;subarea&gt; to open URL.<\/p>\n<p style=\"text-align: justify;\">\u00a0 &lt;SubArea Id=&#8221;Inogic_sitemap&#8221; Url=&#8221;https:\/\/www.inogic.com&#8221; Description=&#8221;Inogic&#8221; Title=&#8221;Inogic&#8221; AvailableOffline=&#8221;false&#8221; PassParams=&#8221;true&#8221; Sku=&#8221;All&#8221; \/&gt;<\/p>\n<p style=\"text-align: justify;\">With this option we can pass Dynamics CRM data as a querystring to link. We have to add a \u201cPassParams\u201d attribute with value as \u201ctrue\u201d to Subarea element.<\/p>\n<p style=\"text-align: justify;\"><strong>Data passed to querystring:<\/strong> organization language (Orglcid), user language (userlcid) and organization unique name (orgname).<a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Data-passed-to-querystring-8.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-3579\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Data-passed-to-querystring-8.png\" alt=\"Data passed to querystring\" width=\"624\" height=\"157\" \/><\/a><strong>5. Ribbon<\/strong>:<\/p>\n<p style=\"text-align: justify;\">The ribbon is one area where we can open URL by clicking on ribbon button. We have to add button and need to define an action to open any particular URL.<\/p>\n<p style=\"text-align: justify;\">You can find several articles on customizing ribbon. We have to modify the &lt;RibbonDiffXML&gt; element to customize the ribbon.<\/p>\n<p style=\"text-align: justify;\">Below is the excerpted part from &lt;RibbonDiffXML&gt;,<\/p>\n<pre class=\"lang:default decode:true \">&lt;CommandDefinitions&gt;\n    &lt;CommandDefinition Id=\"ikl.Form.account.MainTab.Save.OpenLink.Command\"&gt;\n      &lt;EnableRules \/&gt;\n      &lt;DisplayRules \/&gt;\n      &lt;Actions&gt;\n        &lt;Url Address=\"https:\/\/www.inogic.com\" PassParams=\"true\" WinMode=\"0\"&gt;\n          &lt;CrmParameter Value=\"PrimaryControlId\" Name=\"id\" \/&gt;\n        &lt;\/Url&gt;\n      &lt;\/Actions&gt;\n    &lt;\/CommandDefinition&gt;\n&lt;\/CommandDefinitions&gt;<\/pre>\n<p style=\"text-align: justify;\">Similar to Sitemap, to pass parameters to URL we have to add \u201cPassParams\u201d attribute with value as true.<\/p>\n<p style=\"text-align: justify;\"><strong>Data passed to querystring<\/strong>: We have so much parameters that we can pass to URL through querystring. We can pass CRM data using CrmParameter, we can even pass BoolParameter, StringParameter, DecimalParameter. For more information you can refer following link <a href=\"https:\/\/msdn.microsoft.com\/en-us\/library\/gg328363.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/msdn.microsoft.com\/en-us\/library\/gg328363.aspx<\/a> .<\/p>\n<p style=\"text-align: justify;\">With this option we can open page either in new window or in current window.<a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Data-passed-to-querystring-Ribbon-9.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-3577\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2016\/09\/Data-passed-to-querystring-Ribbon-9.png\" alt=\"Data passed to querystring - Ribbon \" width=\"623\" height=\"100\" \/><\/a><\/p>\n<p style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Conclusion:<\/strong><\/span><\/p>\n<p style=\"text-align: justify;\">This blog discusses about the different areas to use external pages from Dynamics CRM. Whenever you want to add an external page into Dynamics CRM consider all these areas and decide appropriate area to use your page.<\/p>\n<p style=\"text-align: justify;\">Wait is over &#8211; <a href=\"https:\/\/www.inogic.com\/blog\/2016\/09\/maplytics-august-release-unlock-locational-intelligence-within-dynamics-crm\/\" target=\"_blank\" rel=\"noopener noreferrer\">Maplytics August Release<\/a> now available\u00a0&#8211; Try Today!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction There could be different scenarios where client may want to view, access, or pass data to external pages from within Dynamics CRM. External pages refer to the pages that are not part of Dynamics CRM. It can be defined as pages that you can access via an internet (with an extension like .aspx, .html,\u2026 <span class=\"read-more\"><a href=\"https:\/\/www.inogic.com\/blog\/2016\/09\/different-areas-in-dynamics-crm-where-users-can-access-external-pages\/\">Read More &raquo;<\/a><\/span><\/p>\n","protected":false},"author":13,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[13,19,25],"tags":[75,1771,1772],"class_list":["post-3576","post","type-post","status-publish","format-standard","hentry","category-customizations","category-dynamics-crm","category-dynamics-crm-2016-update-1","tag-access-external-pages-from-dynamics-crm","tag-use-aspx-pages-from-dynamics-crm","tag-use-html-pages-from-dynamics-crm"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/posts\/3576","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/comments?post=3576"}],"version-history":[{"count":0,"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/posts\/3576\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/media?parent=3576"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/categories?post=3576"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/tags?post=3576"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}