Показать сообщение отдельно
Старый 07.09.2011, 10:02   #4  
Borisvil is offline
Borisvil
Участник
 
123 / 36 (2) +++
Регистрация: 03.06.2011
Адрес: Санкт-Петербург
Цитата:
Сообщение от Konstantin Katsovich Посмотреть сообщение
А через какой сервис Вы обращаетесь к CRM
../OrganizationData.svc?
../Organization.svc?
Через OrganizationData.svc.

Код такой (REST через Odata, взят из примеров Microsoft):

X++:
var context = Xrm.Page.context;
 serverUrl = context.getServerUrl();
 ODataPath = serverUrl + "/XRMServices/2011/OrganizationData.svc";
  
 var payment = new Object();
 var startTime = new Date();
 payment.xrm2b_day = startTime;
 var jsonpayment = window.JSON.stringify(payment);
 
 var createpaymentReq = new XMLHttpRequest();
 createpaymentReq.open("POST", ODataPath + "/xrm2b_paymentSet", true);
 createpaymentReq.setRequestHeader("Accept", "application/json");
 createpaymentReq.setRequestHeader("Content-Type", "application/json; charset=utf-8");
 createpaymentReq.onreadystatechange = function () {
  createpaymentReqCallBack(this);
 };
  createpaymentReq.send(jsonpayment);
Поле с датой и с типом строка принимает нормально, а вот денежное и guid никак не удается передать чтобы они заполнились в создаваемой сущности.
Вроде все делаю правильно:
X++:
 var sum = Xrm.Page.getAttribute("xrm2b_annuity").getValue();
 payment.xrm2b_payment_sum = sum;
а скрипт при этом не срабатывает.
Перерыл кучу источников, но везде пишут только об обратном преобразовании - как результат полученный через OData преобразовать к стандартным типам.