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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.02.2009, 15:12   #1  
Tony Green is offline
Tony Green
Участник
Аватар для Tony Green
 
184 / 25 (1) +++
Регистрация: 08.10.2002
Адрес: Москва
? Как создать экземпляр кастомной сущности через SOAP?
Всем привет!

Есть жгучее желание создать новый экземпляр моей кастомной сущности через SOAP запрос. В SDK есть пример запроса к всервису для стандартной сущности "Contact".

PHP код:
"<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>"
А для моей рукотворной сущности этот запрос выдает невнятную ошибку про entity. (Я подставлял название моей сущности в <entity xsi:type='contact'>) Где можно подхимичить, чтобы вебсервис создал таки что-нибудь?
__________________
С уважением,
Tony Green
Старый 26.02.2009, 15:49   #2  
Артем 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
Название сущности с префиксом кастомизации указывали? Атрибуты свои, я надеюсь? Приведите код, пожалуйста, вместе с "невнятной" ошибкой. Ну или воспользуйтесь утилитой:
http://www.stunnware.com/crm2/topic....=JSWebService2
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 26.02.2009, 16:53   #3  
Tony Green is offline
Tony Green
Участник
Аватар для Tony Green
 
184 / 25 (1) +++
Регистрация: 08.10.2002
Адрес: Москва
Мой код запроса:
Код:
            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'>"+ 
            "<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'>"+'orgdev'+"</OrganizationName>"+
            "<CallerId xmlns='http://schemas.microsoft.com/crm/2007/CoreTypes'>"+'7B9BEB07-B1C6-DD11-8BD2-0016E6634005'+"</CallerId>"+
            "</CrmAuthenticationToken>"+
            "</soap:Header>"+
            "<soap:Body>"+ 
            "<Create xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>"+ 
            "<entity xsi:type='new_paymentorder'>"+ 
            "<new_name>"+'test'+"</new_name>"+ 
            "<new_legalpayerid>"+'41EF1687-BFD5-DD11-9D4D-0016E6634005'+"</new_legalpayerid>"+ 
            "<new_currencyid>"+'B8DDE840-B1C6-DD11-8BD2-0016E6634005'+"</new_currencyid>"+
            "<new_paymtype>"+'1'+"</new_paymtype>"+
            "</entity>"+ 
            "</Create>"+ 
            "</soap:Body>"+ 
            "</soap:Envelope>";
ошибка вот такая: soap:ServerServer was unable to process request. 0x80040203 entity Platform

Утилиту посмотрел - она как-то не шибко хочет работать с DynamicEntity, на которых я бы написал этот запрос в C#...
__________________
С уважением,
Tony Green
Старый 26.02.2009, 17:59   #4  
Tony Green is offline
Tony Green
Участник
Аватар для Tony Green
 
184 / 25 (1) +++
Регистрация: 08.10.2002
Адрес: Москва
Нашел, что через soap создать сущность типа DynamicEntity можно вот так:

Код:
            "<Execute xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>"+
            "<Request xsi:type='CreateRequest'>"+
            "<Target xsi:type='TargetCreateDynamic'>"+
            "<Entity Name='new_paymentorder'>"+
            "<Properties xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>"+
            
            // Дырко
                                   
            "</Properties>"+
            "</Entity>"+
            "</Target>"+
            "</Request>"+
            "</Execute>"
Осталось только как-нибудь прописать Properties вместо "дырки"...
__________________
С уважением,
Tony Green
Старый 26.02.2009, 21:01   #5  
Артем 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
Да ладно! Подход универсальный. Зачем вообще создавать сущность из скрипта? Может кастом страницу создать?
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 26.02.2009, 22:20   #6  
IgorF is offline
IgorF
Учаснег
Аватар для IgorF
Ex AND Project
Лучший по профессии 2011
Лучший по профессии 2009
 
307 / 37 (2) +++
Регистрация: 23.07.2007
Адрес: Поребрик сити
А я писал недавно здесь Полезные ссылки по MS CRM.
суть в том что скачиваете скрипт, в котором все функции уже прописаны. и задача создания сводиться к следующему скрипту service.Create(...);
__________________
http://about.me/fedorovigor
Старый 27.02.2009, 07:51   #7  
Bakai Madybaev is offline
Bakai Madybaev
Участник
 
201 / 16 (1) ++
Регистрация: 22.04.2008
Цитата:
ошибка вот такая: soap:ServerServer was unable to process request. 0x80040203 entity Platform
На будущее - перехватывайте SoapException и смотрите <Ex>.Detail.InnerText - здесь передается более конкретная информация об ошибке выполнения команды CrmService
Старый 27.02.2009, 08:37   #8  
Артем 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
Invalid Argument - описание всех ошибок есть в SDK. SOAP запрос неверный.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как получить значение поля одной сущности при обработке формы другой сущности zhenek Dynamics CRM: Разработка 25 05.07.2011 16:19
Присвоение одного атрибута сущности значения другого атрибута связанной сущности vital.mih Dynamics CRM: Функционал 38 08.09.2010 10:53
как создать шаблон письма для Custom сущности GromRom Dynamics CRM: Функционал 4 20.11.2009 11:35
Обновление поля во внешней сущности через JScript Sergio_che Dynamics CRM: Разработка 4 06.06.2008 23:44
Создание объекта сущности из другого объекта! SnSS Dynamics CRM: Разработка 5 29.05.2008 13:38

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

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

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