Спасибо за ответ. Да, я тоже видел эту рекомендацию, но судя по всему, проблема не в ней.
Вот пример ресурса с обозначенной проблемой:
Код:
<HTML><HEAD>
<SCRIPT language=JScript>
function openCrmPage() {
var iframe = document.getElementById('crm-content-iframe');
iframe.src = "http://<host>/<org>/main.aspx?etc=1&extraqs=%3f_gridType%3d1%26etc%3d1%26id%3d%257bE99AE97C-2F68-E111-A75E-00155D011502%257d%26rskey%3d413117157&pagetype=entityrecord";
}
</SCRIPT>
<META charset=utf-8></HEAD>
<BODY style="PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; HEIGHT: 100%; PADDING-TOP: 0px" contentEditable=true onload=openCrmPage()><IFRAME style="WIDTH: 100%; HEIGHT: 100%" id=crm-content-iframe></IFRAME></BODY></HTML>
То же самое происходит и в ситуации, когда в iframe подставляем главную страницу (http://<host>/<org>/main.aspx).
Заметил еще одну особенность: если к веб-ресурсу обращаемся по имени машины, а в iframe прописываем ссылку, например, по "localhost" ribbon панель отображается. Похоже это как-то связано с тем, что в этом случае ссылки на объекты window друг друга не доступны - страницы в разных доменах. Но это конечно не выход из ситуации.
И не совсем понятно, как к этому относиться: Microsoft намеренно не хочет, чтобы страницы CRM отображались в iFrame? Но тогда почему такая странная реализация - не грузится ribbon. Да и вообще при наличии большого количества различных систем в компании невозможность отобразить окно бизнес-приложения в другой ИС - довольно странное ограничение. Либо все же эту проблему можно как-то обойти.