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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.06.2009, 12:14   #1  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Цитата:
Сообщение от Murzin Andrey Посмотреть сообщение
Здравствуйте, уважаемые.
Пытаюсь сделать, результат следующий: название ставится, телефон нет.
Вопрос как вставить телефон.

// Check for errors.
var errorCount = resultXml.selectNodes('//error').length;
if (errorCount != 0)
{
var msg = resultXml.selectSingleNode('//description').nodeTypedValue;
alert(msg);
}
// Display the retrieved value.
else
{
alert(resultXml.selectSingleNode("//q1:telephone1").nodeTypedValue);

crmForm.all.telephone1.DataValue = alert(lookupItem[0].telephone1);
}
Вы не используете значение которое получили из сервиса.
Код:
crmForm.all.telephone1.DataValue = resultXml.selectSingleNode("//q1:telephone1").nodeTypedValue;
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional

Последний раз редактировалось Артем Enot Грунин; 03.06.2009 в 12:18.
Старый 03.06.2009, 12:38   #2  
Murzin Andrey is offline
Murzin Andrey
Участник
 
12 / 10 (1) +
Регистрация: 03.06.2009
Адрес: Россия
Цитата:
Сообщение от Артем Enot Грунин Посмотреть сообщение
Вы не используете значение которое получили из сервиса.
Код:
crmForm.all.telephone1.DataValue = resultXml.selectSingleNode("//q1:telephone1").nodeTypedValue;
Делаю с таким кодом, пишет ошибку "An unexpected error occurred"


Кто делал похожую работу, может покажете код )). Буду оч. благодарен.
Старый 03.06.2009, 12:54   #3  
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
Цитата:
Сообщение от Murzin Andrey Посмотреть сообщение
Делаю с таким кодом, пишет ошибку "An unexpected error occurred"


Кто делал похожую работу, может покажете код )). Буду оч. благодарен.
Весь свой код приведите, пожалуйста, для работы над ошибками.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 03.06.2009, 13:01   #4  
Murzin Andrey is offline
Murzin Andrey
Участник
 
12 / 10 (1) +
Регистрация: 03.06.2009
Адрес: Россия
Спасибо, разобрался. Заработало.

Только теперь другая проблема. При выборе бизнес-партнера появляются сообщения со значениями искомых полей. Как их убрать? ))

Код такой:

var lookupItem = new Array;

lookupItem = crmForm.all.customerid.DataValue;

var accountid = "lookupItem[0].id";
var authenticationHeader = GenerateAuthenticationHeader();

// Prepare the SOAP message.
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'>"+
authenticationHeader+
"<soap:Body>"+
"<Retrieve xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>"+
"<entityName>account</entityName>"+
"<id>"+lookupItem[0].id+"</id>"+
"<columnSet xmlns:q1='http://schemas.microsoft.com/crm/2006/Query' xsi:type='q1:ColumnSet'>"+
"<q1:Attributes>"+
"<q1:Attribute>telephone1</q1:Attribute>"+
"</q1:Attributes>"+

"<q1:Attributes>"+
"<q1:Attribute>name</q1:Attribute>"+
"</q1:Attributes>"+

"</columnSet>"+
"</Retrieve>"+
"</soap:Body>"+
"</soap:Envelope>";
// Prepare the xmlHttpObject and send the request.
var xHReq = new ActiveXObject("Msxml2.XMLHTTP");
xHReq.Open("POST", "/mscrmservices/2007/CrmService.asmx", false);
xHReq.setRequestHeader("SOAPAction","http://schemas.microsoft.com/crm/2007/WebServices/Retrieve");
xHReq.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
xHReq.setRequestHeader("Content-Length", xml.length);
xHReq.send(xml);
// Capture the result.
var resultXml = xHReq.responseXML;

// Check for errors.
var errorCount = resultXml.selectNodes('//error').length;
if (errorCount != 0)
{
var msg = resultXml.selectSingleNode('//description').nodeTypedValue;
alert(msg);
}
// Display the retrieved value.
else
{
alert(resultXml.selectSingleNode("//q1:telephone1").nodeTypedValue);
alert(resultXml.selectSingleNode("//q1:name").nodeTypedValue);

crmForm.all.telephone1.DataValue = resultXml.selectSingleNode("//q1:telephone1").nodeTypedValue;
crmForm.all.companyname.DataValue = resultXml.selectSingleNode("//q1:name").nodeTypedValue;
}
Старый 03.06.2009, 13:05   #5  
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
Цитата:
Сообщение от Murzin Andrey Посмотреть сообщение
Спасибо, разобрался. Заработало.

Только теперь другая проблема. При выборе бизнес-партнера появляются сообщения со значениями искомых полей. Как их убрать? ))

Код такой:

var lookupItem = new Array;

lookupItem = crmForm.all.customerid.DataValue;

var accountid = "lookupItem[0].id";
var authenticationHeader = GenerateAuthenticationHeader();

// Prepare the SOAP message.
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'>"+
authenticationHeader+
"<soap:Body>"+
"<Retrieve xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>"+
"<entityName>account</entityName>"+
"<id>"+lookupItem[0].id+"</id>"+
"<columnSet xmlns:q1='http://schemas.microsoft.com/crm/2006/Query' xsi:type='q1:ColumnSet'>"+
"<q1:Attributes>"+
"<q1:Attribute>telephone1</q1:Attribute>"+
"</q1:Attributes>"+

"<q1:Attributes>"+
"<q1:Attribute>name</q1:Attribute>"+
"</q1:Attributes>"+

"</columnSet>"+
"</Retrieve>"+
"</soap:Body>"+
"</soap:Envelope>";
// Prepare the xmlHttpObject and send the request.
var xHReq = new ActiveXObject("Msxml2.XMLHTTP");
xHReq.Open("POST", "/mscrmservices/2007/CrmService.asmx", false);
xHReq.setRequestHeader("SOAPAction","http://schemas.microsoft.com/crm/2007/WebServices/Retrieve");
xHReq.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
xHReq.setRequestHeader("Content-Length", xml.length);
xHReq.send(xml);
// Capture the result.
var resultXml = xHReq.responseXML;

// Check for errors.
var errorCount = resultXml.selectNodes('//error').length;
if (errorCount != 0)
{
var msg = resultXml.selectSingleNode('//description').nodeTypedValue;
alert(msg);
}
// Display the retrieved value.
else
{
alert(resultXml.selectSingleNode("//q1:telephone1").nodeTypedValue);
alert(resultXml.selectSingleNode("//q1:name").nodeTypedValue);


crmForm.all.telephone1.DataValue = resultXml.selectSingleNode("//q1:telephone1").nodeTypedValue;
crmForm.all.companyname.DataValue = resultXml.selectSingleNode("//q1:name").nodeTypedValue;
}
Все alert() конструкции убеите и будет Вам счастье.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 03.06.2009, 13:34   #6  
Murzin Andrey is offline
Murzin Andrey
Участник
 
12 / 10 (1) +
Регистрация: 03.06.2009
Адрес: Россия
Так идём дальше
Всё работает, нормально, НО только если искомое поле заполнено.
Если хоть одно поле пустое, то код не работает, ничего не вставляется.
Как быть?
Старый 03.06.2009, 13:39   #7  
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
Цитата:
Сообщение от Murzin Andrey Посмотреть сообщение
Так идём дальше
Всё работает, нормально, НО только если искомое поле заполнено.
Если хоть одно поле пустое, то код не работает, ничего не вставляется.
Как быть?
Сделайте проверку вроде такой:

Код:
if (crmForm.all.customerid.DataValue != null && crmForm.all.customerid.DataValue[0] != null)
{
//вытаскивание телефона, запись в необходимое поле
}
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Где найти веб-форму Преобразования интереса? Impulse Dynamics CRM: Разработка 2 28.09.2008 13:55
Ошибка при создании веб-ссылки в MS VS? Alexey-IT Dynamics CRM: Разработка 1 12.01.2008 03:24
Через веб не отображается полученная почта Hungrymar Dynamics CRM: Администрирование 14 19.12.2006 10:09
Не могу отправить почту через веб-интерфейс Hungrymar Dynamics CRM: Администрирование 0 18.11.2006 09:44
Ошибки в веб интерфесе DiMish Dynamics CRM: Администрирование 5 29.11.2005 17:50
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

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

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