One of the really nice things about Microsoft Dynamics CRM being a web application is the ability to easily extend the functionality by creating links in the navigation bar to other web sites. This give users of CRM the ability to create their own html or aspx pages and present them to users as part of the main application.
We frequently use this to add FAQ pages to provide customized help instructions to users, and add-ons, such as our Interactions and Quick Call apps.
We have found that due to some changes from 3.0 to 4.0, the behavior of links in the sitemap has changed. With 3.0, when you put a link in the sitemap, it would launch that link in the CRM window, but if the page linked to was longer than the CRM window, a scroll bar would appear, allowing users to scroll the length of the page linked to.
With 4.0, when you add a link to the sitemap, it will still appear within the Microsoft CRM window; however, if the page linked to is longer than the CRM Window, no scroll bar will appear, preventing the user from full seeing the page.
One solution previously described on this blog was to have your link open a new window when it launches.
This solution is viable; however, some users may not like additional windows popping up. What do you do if you want to have the link open in the CRM window, as it did with 3.0?
A pretty simple solution is to create an html page with an iframe. You can do this in notepad. Something like this:
<head>
<title>Untitled Page</title>
</head>
<body style="width:100%; height:100%; background-color:#d6e8ff; margin:3 3 3 3">
<iframe id="frm" src="http:/sb00m/FAQ/FAQ.htm" frameborder=0 height=100% width=100%></iframe>
</body>
</html>
Change the src= link to link to your custom page/application. Then save this html page in the folder of the virtual directory for your custom webpage/application.
Then, just change your link in the sitemap to point to your new html page with the iframe, which will point to your custom webpage/app.
The result looks, feels, and functions exactly like it did in 3.0.

It seems working if the included file ´has the ASPX extension. It does not work with .htm though. Try renaming your include file to aspx and see if you get the scroll bars. It fixed the same problem in my environment.
Posted by: Michael Höhne | June 28, 2008 at 03:13 PM
I have a question. Obviousbly your creating a dashboard for this, now a related question for you. What if I want the dashboard to default to the current logged in user? I seem to be able to use the query ***select fullname from FilteredSystemUser where systemuserid = dbo.fn_FindUserGuid()*** which works fine in Visual Studio but it is failring on the reports and reportserver manager?
Posted by: Brad | July 09, 2008 at 11:47 AM
Hmm, I'm not having Michael's issue, but I've found that the height of the IFrame is not filling the content area, but rather has a height of approximately 150px. Any ideas for how to make the IFrame fill the content area with vertical and horizontal scroll bars? I'm considering going down the path of determining the parent's size through javascript.
Thanks for the post,
Phil
Posted by: Phil | March 13, 2009 at 12:50 PM
Phil,
You basically have two choices with Iframes--you can specify a set number of rows, or you can set it to automatically expand to fill the amount of available space on the form. For certain content, it can be somewhat difficult to get the size of the iframe to match content that you are displaying.
I would recommend that you post your question to the CRM or CRM Development forums, if you haven't already.
http://social.microsoft.com/Forums/en-US/category/dynamics/
Someone there may have some unique suggestions for your question.
Posted by: Joel Lindstrom | March 13, 2009 at 02:11 PM
Joel,
Thanks for the response -- it appears that I had some bogus style attributes set up that were causing the odd behavior. I now have everything working great, thanks.
Now the only issue is that this does not appear to work in Internet Explorer 8! Can you verify that you also have this issue? The scroll bars just don't show up -- not sure if it's because of the IFrame or if the child page is no longer triggering the overflow.
Best,
Phil
Posted by: Phil | March 25, 2009 at 06:55 PM
Phil,
I am using IE 8 on all of my computers, and I am not seeing this issue. I'm running 32-bit Windows Vista with IE8 RTM that came out last week. I did have some issues like you describe with the beta version and the version in the Windows 7 beta.
The only issue I see with CRM 4.0 on IE8 is I get an Activex error when I try to change user settings.
Posted by: Joel Lindstrom | March 25, 2009 at 10:20 PM
Any ideas for how to make the IFrame fill the content area with vertical and horizontal scroll bars? I'm considering going down the path of determining the parent's size through javascript.
Posted by: Online Adult Games | December 26, 2009 at 05:38 AM