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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.11.2009, 09:56   #1  
spiderone is offline
spiderone
Участник
 
12 / 10 (1) +
Регистрация: 22.10.2009
CrmService.Create из java script
и сново я с вопросами.... наковырял вот такой вот кодик в MSDN
// Prepare values for the new contact.
var firstname = "Jesper";
var lastname = "Aaberg";
var donotbulkemail = "true";
var address1_stateorprovince = "MT";
var address1_postalcode = "99999";
var address1_line1 = "23 Market St.";
var address1_city = "Sammamish";
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>"+
"<Create xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>"+
"<entity xsi:type='contact'>"+
"<address1_city>"+address1_city+"</address1_city>"+
"<address1_line1>"+address1_line1+"</address1_line1>"+
"<address1_postalcode>"+address1_postalcode+"</address1_postalcode>"+
"<address1_stateorprovince>"+address1_stateorprovince+"</address1_stateorprovince>"+
"<donotbulkemail>"+donotbulkemail+"</donotbulkemail>"+
"<firstname>"+firstname+"</firstname>"+
"<lastname>"+lastname+"</lastname>"+
"</entity>"+
"</Create>"+
"</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/Create");
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);
}
// Open new contact record if no errors.
else
{
var contactid = resultXml.selectSingleNode("//CreateResult");
window.open("/sfa/conts/edit.aspx?id={"+contactid.nodeTypedValue+"}");
}
а вот ссылочка на него http://msdn.microsoft.com/en-us/library/cc677070.aspx
запись в стоке xHReq.Open("POST", "/mscrmservices/2007/CrmService.asmx", false); конечно же менял на свою
смотрел ответ от сервера приходит пустой .... хотя ответ должен быть соответственно ошибка возникает вот тут
var contactid = resultXml.selectSingleNode("//CreateResult");
window.open("/sfa/conts/edit.aspx?id={"+contactid.nodeTypedValue+"}");
в чем может быть дело в самом запросе ?
Старый 24.11.2009, 10:08   #2  
slivka_83 is offline
slivka_83
Консультант-джедай
Аватар для slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1,683 / 374 (16) ++++++
Регистрация: 18.12.2008
Адрес: default city
Цитата:
Сообщение от spiderone Посмотреть сообщение
запись в стоке xHReq.Open("POST", "/mscrmservices/2007/CrmService.asmx", false); конечно же менял на свою
На что меняли? и откуда запускаете его?
Цитата:
соответственно ошибка возникает вот тут
var contactid = resultXml.selectSingleNode("//CreateResult");
window.open("/sfa/conts/edit.aspx?id={"+contactid.nodeTypedValue+"}");
в чем может быть дело в самом запросе ?
Под данный запрос у Вас подходит хотя бы одна запись? Т.е. этот запрос должен в Вашем случаи что-то возвращать?
И ошибку может быть приведете?
__________________
Крокодил, крокожу и буду крокодить.
Человек человеку - волк , а зомби зомби - зомби.
Экстремал и буду экстремать!
Блога
Старый 24.11.2009, 10:32   #3  
spiderone is offline
spiderone
Участник
 
12 / 10 (1) +
Регистрация: 22.10.2009
1) менял xHReq.Open("POST", "/<Свой сервер>/2007/CrmService.asmx", false);
2) Писал в формах CRM на действие Oncahange от лукапа просто в качестве проверки сработает или нет
2) Объект контакт стандартый должно совпадать
да в ответ должно приходить что то вроде вот етого
<?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">
<soap:Body>
<CreateResponse xmlns="http://schemas.microsoft.com/crm/2007/WebServices">
<CreateResult>368c8b1b-851c-dd11-ad3a-0003ff9ee217</CreateResult>
</CreateResponse>
</soap:Body>
</soap:Envelope>
id контакта только что созданного 368c8b1b-851c-dd11-ad3a-0003ff9ee217
он я так понимаю и пытаеться получиться вот в этих строках


{
var contactid = resultXml.selectSingleNode("//CreateResult");
window.open("/sfa/conts/edit.aspx?id={"+contactid.nodeTypedValue+"}");
}

ошибка вылетает нужен объект
Старый 24.11.2009, 10:34   #4  
slivka_83 is offline
slivka_83
Консультант-джедай
Аватар для slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1,683 / 374 (16) ++++++
Регистрация: 18.12.2008
Адрес: default city
Цитата:
Сообщение от spiderone Посмотреть сообщение
1) менял xHReq.Open("POST", "/<Свой сервер>/2007/CrmService.asmx", false);
2) Писал в формах CRM на действие Oncahange от лукапа просто в качестве проверки сработает или нет
Тогда эту строку менять не надо
__________________
Крокодил, крокожу и буду крокодить.
Человек человеку - волк , а зомби зомби - зомби.
Экстремал и буду экстремать!
Блога
Старый 24.11.2009, 11:09   #5  
spiderone is offline
spiderone
Участник
 
12 / 10 (1) +
Регистрация: 22.10.2009
да в форме работает спасибо ) только вот я хотел после дабиться другого эфекта
вынести код на любую другую страницу ...
проблемка конечно первая возникает с получением authenticationHeader пробовал как то вот так
<?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\"><soap:Header><CrmAuthenticationToken xmlns=\"http://schemas.microsoft.com/crm/2007/WebServices\"><AuthenticationType xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">0</AuthenticationType><OrganizationName xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">sigma</OrganizationName><CallerId xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">722D32FD-3C99-DE11-9E89-00E04D6BB41A</CallerId></CrmAuthenticationToken></soap:Header>"
что то не очень удалось... делали что то подобное ?
Старый 24.11.2009, 11:12   #6  
slivka_83 is offline
slivka_83
Консультант-джедай
Аватар для slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1,683 / 374 (16) ++++++
Регистрация: 18.12.2008
Адрес: default city
Нет не делал. Попробуйте посмотреть как эта штука работает http://mmcrm.ru/?p=790
__________________
Крокодил, крокожу и буду крокодить.
Человек человеку - волк , а зомби зомби - зомби.
Экстремал и буду экстремать!
Блога
Старый 25.11.2009, 06:49   #7  
spiderone is offline
spiderone
Участник
 
12 / 10 (1) +
Регистрация: 22.10.2009
вот этот ласкуточек позволил пройти автаризацию
function generateHeader()
{
if (typeof(GenerateAuthenticationHeader) != "undefined")
{
return "<?sXml 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();
}
else
{
return "<?sXml 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\"><soap:Header><CrmAuthenticationToken xmlns=\"http://schemas.microsoft.com/crm/2007/WebServices\"><AuthenticationType xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">0</AuthenticationType><OrganizationName xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">sigma</OrganizationName><CallerId xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">00000000-0000-0000-0000-000000000000</CallerId></CrmAuthenticationToken></soap:Header>";
}
}

а выше описанный создать пользователя
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
gustafwesterlund: Create replacement entities Blog bot Dynamics CRM: Blogs 0 18.10.2009 20:05
mscrm4ever: CRM Form Script Loader Blog bot Dynamics CRM: Blogs 0 21.04.2009 04:07
Быстродействие CrmService Bakai Madybaev Dynamics CRM: Разработка 16 21.03.2009 22:57
аутентификация crmService if_maks Dynamics CRM: Разработка 2 25.12.2008 11:52
Обращение к CrmService sergeyjb Dynamics CRM: Разработка 23 05.11.2008 14:22
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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