15.02.2010, 18:20 | #1 |
Участник
|
Удаление listmember из маркетинговых списков
Нужно удалить элементы listmember из маркетингового списка с помощью вызова веб-сервиса. Плохая новость в том что ответом на мой запрос
Код: <?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> <CrmTicket xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\"></CrmTicket> <OrganizationName xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">MicrosoftCRM</OrganizationName> <CallerId xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">00000000-0000-0000-0000-000000000000</CallerId> </CrmAuthenticationToken> </soap:Header> <soap:Body> <Delete xmlns=\"http://schemas.microsoft.com/crm/2007/WebServices\"> <entityName>listmember</entityName> <id>a0441423-e016-df11-89fc-0003ff966666</id> </Delete> </soap:Body> </soap:Envelope> Как можно обойти эту беду?..ведь удаление из кода Код: RemoveMemberListRequest rmlReq = new RemoveMemberListRequest(); rmlReq.ListId = new Guid("107FA1EB-5911-DF11-A5B3-0003FF966666"); rmlReq.EntityId = new Guid("EB1F590A-37D0-DC11-AA32-0003FF33509E"); RemoveMemberListResponse rmlResp = crmService.Execute(rmlReq) as RemoveMemberListResponse; |
|
15.02.2010, 18:44 | #2 |
Чайный пьяница
|
Попробуйте Станваровский тул для генерации соапов.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
За это сообщение автора поблагодарили: Kipetcoff (1). |
15.02.2010, 20:58 | #3 |
Участник
|
получилось примерно следующее
Код: var oXmlHttp = oService.CreateXmlHttp(); oXmlHttp.open("POST", oService.server + "/mscrmservices/2007/crmservice.asmx", false); oXmlHttp.setRequestHeader("Content-Type", "text/xml; charset=utf-8"); oXmlHttp.setRequestHeader("SOAPAction", "http://schemas.microsoft.com/crm/2007/WebServices/Execute"); var sXml = "<?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>" + "<CrmTicket xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\"></CrmTicket>" + "<OrganizationName xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">MicrosoftCRM</OrganizationName>" + "<CallerId xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">00000000-0000-0000-0000-000000000000</CallerId>" + "</CrmAuthenticationToken>" + "</soap:Header>" + " <soap:Body>" + " <Request xsi:type=\"RemoveMemberListRequest\" xmlns=\"http://schemas.microsoft.com/crm/2007/WebServices\">" + " <ListId>107FA1EB-5911-DF11-A5B3-0003FF966666</ListId>" + " <EntityId>0020590A-37D0-DC11-AA32-0003FF33509E</EntityId>" + " </Request>" + " </soap:Body>" + "</soap:Envelope>"; oXmlHttp.send(sXml); Если не смотреть на ID..в остальном правильный ли запрос? |
|
15.02.2010, 21:15 | #4 |
Чайный пьяница
|
Цитата:
Сообщение от Kipetcoff
получилось примерно следующее
Код: var oXmlHttp = oService.CreateXmlHttp(); oXmlHttp.open("POST", oService.server + "/mscrmservices/2007/crmservice.asmx", false); oXmlHttp.setRequestHeader("Content-Type", "text/xml; charset=utf-8"); oXmlHttp.setRequestHeader("SOAPAction", "http://schemas.microsoft.com/crm/2007/WebServices/Execute"); var sXml = "<?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>" + "<CrmTicket xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\"></CrmTicket>" + "<OrganizationName xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">MicrosoftCRM</OrganizationName>" + "<CallerId xmlns=\"http://schemas.microsoft.com/crm/2007/CoreTypes\">00000000-0000-0000-0000-000000000000</CallerId>" + "</CrmAuthenticationToken>" + "</soap:Header>" + " <soap:Body>" + " <Request xsi:type=\"RemoveMemberListRequest\" xmlns=\"http://schemas.microsoft.com/crm/2007/WebServices\">" + " <ListId>107FA1EB-5911-DF11-A5B3-0003FF966666</ListId>" + " <EntityId>0020590A-37D0-DC11-AA32-0003FF33509E</EntityId>" + " </Request>" + " </soap:Body>" + "</soap:Envelope>"; oXmlHttp.send(sXml); Если не смотреть на ID..в остальном правильный ли запрос? Написал по аналогии с примером, но не тестировал, так что тут дело за Вами: Код: 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>"+ "<Execute xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>"+ "<Request xsi:type=\"RemoveMemberListRequest\">" + "<ListId>107FA1EB-5911-DF11-A5B3-0003FF966666</ListId>" + "<EntityId>0020590A-37D0-DC11-AA32-0003FF33509E</EntityId>" + "</Request>" + "</Execute>"+ "</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/Execute"); xHReq.setRequestHeader("Content-Type", "text/xml; charset=utf-8"); xHReq.setRequestHeader("Content-Length", xml.length); xHReq.send(xml);
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
16.02.2010, 09:51 | #5 |
Участник
|
СУПЕР!!!
|
|
16.02.2010, 16:46 | #6 |
Moderator
|
Если эта задача связана с другим вашим постом, то попробуйте сделать так: http://www.axforum.info/forums/blog.php?b=83
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
|
За это сообщение автора поблагодарили: Kipetcoff (1). |
18.02.2010, 11:50 | #7 |
Участник
|
Попробую ..сейчас пока устраивает существующий функционал.
|
|