В CRM у нас есть список проектов, и на нашем сетевом диске есть соответствующие файлы с этими проектами. Не хотел настраивать Sharepoint из-за проблем, которые у нас были с ним в прошлом.
В любом случае, в каждую из этих записей проекта мы хотим добавить сетевой URI для файлов этого проекта, чтобы пользователь мог щелкнуть ссылку из записи CRM и перейти к этой ссылке. Так что-то типа X:\Projects\contoso
.
наткнулся на это предложение для выполнения этого:
http://blog.zealots.solar/?p=54
В основном состоит из создания HTML-страницы и вставки ее в виде веб-ресурса в форму, что делает ее iframe.
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<a id="doclink" style="border: 0px currentColor;" href="http://www.example.com" target="_blank">
<img style="border: 0px currentColor;" src="stsr_folders_icon.png">
</a>
<script language="javascript" type="text/javascript">
var linkval = window.parent.Xrm.Page.data.entity.attributes.get("stsr_documents").getValue();
var a = document.getElementById('doclink');
a.href = "file:"+linkval;
</script>
</body>
</html>
Конечно, обновление window.parent.Xrm.Page.data.entity.attributes.get("stsr_documents")
и <img src=
. Он берет значения URI из поля stsr_documents
и добавляет его к изображению.
Он выполняет добавление и генерацию правильного file:///X:/Projects/contoso
. Вы можете ввести этот URL в браузер, и он откроет каталог.
Однако, просто нажав на нее, вы получите следующие ошибки:
Not allowed to load local resource: file:///X:/Projects/contoso
в
Хром 73.0
- Нет ошибки в Edge 42 (URI
file:X:/Projects/contoso
), но он ничего не делает
- IE 11 тоже самое что и Edge: тот же URI, без ошибок, просто ничего не происходит
- Firefox 66: то же самое ... без ошибок и ничего не происходит; URI
file:///X:/Projects/contoso
Чтобы быть ясным: Я не спрашиваю, почему ошибка возникает или почему она не работает. Из обилия вопросов относительно этого довольно ясно, что это функция безопасности довольно Многие современные браузеры не загружают локальные ресурсы. Так много я получаю.
Что мне интересно, так это обходной путь, если он есть. Некоторые предлагают настроить веб-сервер, но я не уверен, как это будет работать, если у меня нет доступа к веб-серверу CRM.
Какие еще могут быть решения?