07.07.2013, 02:48 | #1 |
Участник
|
Использование FetchUtil в JS для CRM 2011 работает только на сервере
Добрый день.
Кто использовал FetchUtil подскажите, используется IE10: Пробовал этот код: http://community.dynamics.com/crm/b/...x#.UdiN__nwmUa и этот: http://mmcrm.ru/?p=2569 Использую FetchUtil для автоматического формирования подписи при создании эл. письма. На онлоад повесил код: Код: function fetchOnLoad() { var _sOrgName = "Organisation"; var _sServerUrl = Xrm.Page.context.getServerUrl(); if(Если создание формы) { var sFetch = "<fetch mapping='logical' count='10'>" + "<entity name='systemuser'>" + "<attribute name='firstname'/>" + "<attribute name='lastname'/>" + "<attribute name='middlename'/>" + "<attribute name='jobtitle'/>" + "<attribute name='mobilephone'/>" + "<attribute name='address1_telephone1'/>" + "<attribute name='internalemailaddress'/>" + "<filter type='and'>" + "<condition attribute='systemuserid' operator='eq-userid'/>" + "</filter>" + "</entity>" + "</fetch>"; _oService = new FetchUtil(_sOrgName, _sServerUrl); _oService.Fetch(sFetch, myCallBack); } } function myCallBack(res){ //Тут код, который формирует html для последующей подстановки в тело сообщения. } Ставил алерты, судя по ним выскакивает сообщение об ошибке в FetchUtil.prototype._HandleErrors = function (xmlhttp) в скрипте FetchUtil.js xmlhttp приходит пустой. Может у кого-то будут идеи или кто-то уже сталкивался с похожей проблемой, буду весьма признателен за помощь. |
|
07.07.2013, 21:27 | #2 |
Участник
|
Думаю ошибка здесь:
var _sServerUrl = Xrm.Page.context.getServerUrl(); Эта штука возвращает имя сервера и организацию. http://servername/orgname А Ваши пользователи могут подключаться по другому адресу. Для решения проблемы я пользуюсь таким способом Support.GetServerPath = function () { var tserverpath = window.location.href; var serverpath = ""; var slashnumber = 0; for (var i = 0; i < tserverpath.length && slashnumber < 4; i++) { if (tserverpath.charAt(i) == '/') slashnumber++; serverpath += tserverpath.charAt(i); } return serverpath; } получаю URL сервера из адресной строки. Только проверьте нужен ли последний слеш в адресе. Не помню возвращает ли его Xrm.Page.context.getServerUrl() P.S. Донецку привет. Последний раз редактировалось g.Naukovych; 07.07.2013 в 21:33. |
|
|
За это сообщение автора поблагодарили: Roman08 (1), Буденый (1). |
08.07.2013, 10:58 | #3 |
Участник
|
g.Naukovych привет и спасибо из Донецка
Проблема действительно заключалась в том, что формировалась некорректная ссылка, рабочий код для моего скрипта: Код: var tserverpath = window.location.href; var serverpath = ''; var slashnumber = 0; for (var i = 0; i < tserverpath.length , slashnumber < 4; i++) { if (tserverpath.charAt(i) == '/') slashnumber +=1; serverpath += tserverpath.charAt(i); } |
|
Теги |
fetchutil, crm2011 |
|
|