AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.09.2009, 14:34   #21  
datfi is offline
datfi
Участник
 
240 / 15 (1) ++
Регистрация: 20.08.2009
Адрес: Россия, Сыктывкар
Цитата:
Сообщение от slivka_83 Посмотреть сообщение
Этот ключь разрешает передавать дополнительные параметры в адресной строке (браузера) на формы CRM. Если не включить этот флаг при добавлении параметра в адресноую строку форма свалится с ошибкой
Ишь как завернул Спасибо.
Старый 14.09.2009, 09:43   #22  
datfi is offline
datfi
Участник
 
240 / 15 (1) ++
Регистрация: 20.08.2009
Адрес: Россия, Сыктывкар
!
Господа убил все выходные не смог разобраться что не так с этим кодом.
Вроде все поменял как надо на salesorder и на salesorderdetail. Письмо открывается а описание не вставляется.

Вот код в ISV

Код:
var url = '/' + ORG_UNIQUE_NAME + '/activities/email/edit.aspx?pId=' + crmForm.ObjectId + '&pType='+crmForm.ObjectTypeCode+ '&pName=' + crmForm.all.name.DataValue + '&FillWithSalesOrderDetails=1'; window.open(url);
Вот кот на e-mail
Код:
function InsertDescription()
{
	var descrFrame = document.getElementById('descriptionIFrame');

	if(descrFrame.readyState != 'Complete')
		return;

	var salesorderid = '';
	if (crmForm.all.regardingobjectid.DataValue != null && crmForm.all.regardingobjectid.DataValue[0] != null)
		salesorderid = crmForm.all.regardingobjectid.DataValue[0].id;
	else
		return;


	var textbody = "sрошу выставить счет по данным продуктам:";

	var xml = "<?xml version='1.0' encoding='utf-8'?>"+ 
	"<soap:Envelope xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'"+
	" xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'"+
	" xmlns:xsd='http://www.w3.org/2001/XMLSchema'>"+ 
	GenerateAuthenticationHeader()+
	"<soap:Body>"+ 
	"<Fetch xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>"+ 
	"<fetchXml>&lt;fetch mapping='logical'&gt;"+
	"&lt;entity name='SalesOrderDetail'&gt;"+
	"&lt;attribute name='productdescription'/&gt;"+
	"&lt;attribute name='quantity'/&gt;"+
	"&lt;attribute name='productid'/&gt;"+
	"&lt;attribute name='uomid'/&gt;"+
	"&lt;filter type='and'&gt;"+
	"&lt;condition attribute='SalesOrderid' operator='eq' value='" + salesorderid + "'/&gt;"+
	"&lt;/filter&gt;"+
	"&lt;/entity&gt;"+
	"&lt;/fetch&gt;</fetchXml>"+ 
	"</Fetch>"+ 
	"</soap:Body>"+ 
	"</soap:Envelope>";
	
	var xHReq = new ActiveXObject("Msxml2.XMLHTTP");
	xHReq.Open("POST", "/mscrmservices/2007/CrmService.asmx", false);
	xHReq.setRequestHeader("SOAPAction","http://schemas.microsoft.com/crm/2007/WebServices/Fetch");
	xHReq.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
	xHReq.setRequestHeader("Content-Length", xml.length);
	xHReq.send(xml);
	var resultXml = xHReq.responseXML;


	var resultSet = resultXml.text;
	resultSet.replace('&lt;','<');
	resultSet.replace('&gt;','>');

	var oXmlDoc = new ActiveXObject("Microsoft.XMLDOM");
	oXmlDoc.async = false;
	oXmlDoc.loadXML(resultSet);
	var results = oXmlDoc.getElementsByTagName('result');

	//debugger;

	for (var i=0; i < results.length;i++)
	{
		textbody = textbody + "<br/>"+ 
		(results[i].selectSingleNode('./productid') == null ? "" : results[i].selectSingleNode('./productid').getAttribute('name')) + 
		" " + (results[i].selectSingleNode('./productdescription') == null ? "" : results[i].selectSingleNode('./productdescription').nodeTypedValue) 

+
		" в количестве " + (results[i].selectSingleNode('./quantity') == null ? "" : results[i].selectSingleNode('./quantity').nodeTypedValue) +
		" " + (results[i].selectSingleNode('./uomid') == null ? "" : results[i].selectSingleNode('./uomid').getAttribute('name'));
	}

	var descrWindow = document.frames['descriptionIFrame'];
	descrWindow.document.body.innerHTML = textbody;
}


if (crmForm.FormType == 1 && window.location.href.indexOf('FillWithSalesOrderDetails=1') != -1)
{
	var descrFrame = document.getElementById('descriptionIFrame');
	descrFrame.attachEvent('onreadystatechange',InsertDescription);
}
Гляньте своим зорким глазом. что может быть не так. Могут быть проблемы из-за того что у меня русская локализация?

Последний раз редактировалось datfi; 14.09.2009 в 09:55.
Старый 14.09.2009, 09:59   #23  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Обращаю внимание на строку, которой вызывается окно открытия. Везде должен быть кодированный амперсанд. Не &, а &amp;. Возможно, проблема в этом заключается. ISV.Config - нормально загружается?
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 14.09.2009, 10:05   #24  
datfi is offline
datfi
Участник
 
240 / 15 (1) ++
Регистрация: 20.08.2009
Адрес: Россия, Сыктывкар
Цитата:
Сообщение от a33ik Посмотреть сообщение
Обращаю внимание на строку, которой вызывается окно открытия. Везде должен быть кодированный амперсанд. Не &, а &amp;. Возможно, проблема в этом заключается. ISV.Config - нормально загружается?
ISV грузится нормально без проблем.

&, а &amp - это в коде в ISV менять?
Заранее извеняюсь за свою неграмотность С кодом не работал вообще...
Старый 14.09.2009, 10:14   #25  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Цитата:
Сообщение от datfi Посмотреть сообщение
ISV грузится нормально без проблем.

&, а &amp - это в коде в ISV менять?
Заранее извеняюсь за свою неграмотность С кодом не работал вообще...
Поскольку ISV.Config - это по сути xml, то всякие системные символы вроде &, <, > - необходимо заменять.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 14.09.2009, 10:21   #26  
datfi is offline
datfi
Участник
 
240 / 15 (1) ++
Регистрация: 20.08.2009
Адрес: Россия, Сыктывкар
Цитата:
Сообщение от a33ik Посмотреть сообщение
Поскольку ISV.Config - это по сути xml, то всякие системные символы вроде &, <, > - необходимо заменять.
Теперь Вы меня совсем запутали в ISV поменял вот так

var url = '/' + ORG_UNIQUE_NAME + '/activities/email/edit.aspx?pId=' + crmForm.ObjectId + '&amp;pType='+crmForm.ObjectTypeCode+ '&amp;pName=' + crmForm.all.name.DataValue + '&amp;FillWithSalesOrderDetails=1'; window.open(url);

результата не дало.

>символы вроде &, <, > - необходимо заменять
немного не понял как заменять и где
Старый 14.09.2009, 10:47   #27  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
В коде OnLoad строку

if(descrFrame.readyState != 'Complete')
return;

поменяйте на

if(descrFrame.readyState != 'сomplete')
return;

Регистр - имеет значение. У меня всё заработало. Учитесь отладке. Без этого никак.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 14.09.2009, 10:56   #28  
datfi is offline
datfi
Участник
 
240 / 15 (1) ++
Регистрация: 20.08.2009
Адрес: Россия, Сыктывкар
Thumbs up
Цитата:
Сообщение от a33ik Посмотреть сообщение
В коде OnLoad строку

if(descrFrame.readyState != 'Complete')
return;

поменяйте на

if(descrFrame.readyState != 'сomplete')
return;

Регистр - имеет значение. У меня всё заработало. Учитесь отладке. Без этого никак.
а ларчик просто открывался Спасибо, a33ik.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Microsoft Dynamics CRM Team Blog: Troubleshooting the Microsoft Dynamics CRM E-mail Router Blog bot Dynamics CRM: Blogs 0 09.01.2009 06:03
Отправка e-mail sergeyjb Dynamics CRM: Разработка 4 03.10.2008 13:36
Microsoft Dynamics CRM Team Blog: Microsoft Dynamics CRM E-mail Router and Exchange 2007: Keeping it Secure Blog bot Dynamics CRM: Blogs 0 14.07.2008 13:05
Отправка E-mail Temnozor Dynamics CRM: Администрирование 0 31.03.2006 13:05
Отправка Direct e-mail sasha_sto Dynamics CRM: Функционал 0 31.10.2005 12:03

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 14:02.