Как перенаправить на любой веб-ресурс по нажатию кнопки в MS Dynamics CRM Online?

Я сталкиваюсь с проблемой при перенаправлении на любой веб-ресурс HTML.

Я добавил HTML-страницу в качестве имени веб-ресурса "new_My_ProductList" в решении.

Я создал кнопку "Перейти к моему продукту" на ленте и установил следующую функцию файла JS в качестве команды. Это откроет окно.

function RedirectToLowStockList() {
          window.open('WebResources/new_My_ProductList', '_blank', 'scrollbars=1,menubar=no,height=500,width=1000,resizable=1,toolbar=no,status=1');
}

Вышеуказанная функция отлично работает, когда URL выглядит так: " https://mydomain.crm.dynamics.com/WebResources/new_My_ProductList"

Но иногда он генерирует неправильный URL и показывает ошибку 404

Вот пример неправильного URL:

1- https://mydomain.crm.dynamics.com/_root/WebResources/new_My_ProductList

2- https://mydomain.crm.dynamics.com/_form/WebResources/new_My_ProductList

Мы видим, что в URL автоматически добавлено 2 ключевых слова "_root" и "_form".

Кто-нибудь может предложить мне решение? Если вышеуказанный способ не подходит, кто-нибудь может предложить мне соответствующее решение?

2 ответа

Решение

Вместо этого используйте функцию SDK.

Xrm.Utility.openWebResource(webResourceName,webResourceData,width, height)

Ваша лента должна поддерживать директиву $webresource:. Из документации Microsoft:

По возможности используйте директиву $ webresource. Только ссылки, которые используют директиву $ webresource в командах карты сайта или ленты, устанавливают зависимости. Зависимости не создаются, когда веб-ресурсы ссылаются друг на друга.

Если вы не знакомы с редактированием решения XML, вы можете установить этот инструмент Ribbon Workbench, чтобы помочь вам.

Если вы все еще не уверены, вы можете использовать Xrm.Utility.openWebResource(webResourceName, webResourceData, width, height), Его использование задокументировано здесь.

Другие вопросы по тегам