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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.11.2009, 12:41   #5  
Bondonello is offline
Bondonello
Kostya Afendikov
Аватар для Bondonello
MCBMSS
Лучший по профессии 2009
 
510 / 106 (5) +++++
Регистрация: 06.06.2008
Адрес: Украина
Цитата:
Сообщение от e.pasechny Посмотреть сообщение
рецепт slivka_83 - помог в одном случае. прайс лист один.. а вот для штук оказалось есть тонкость оно не одно по умолчанию а разное.

SDK я скачал, вот проблема что искать - как правильно сформулировать мысль ....
Сущность: "Продукты для возможной сделки"
Поле: "Продукт"
Событие: "OnChange", вставите следующий код

X++:
if (crmForm.all.productid.DataValue != null) 
{

var resultXml;
var result;
var xml;

var id = crmForm.all.productid.DataValue[0].id;
id = id.replace("{", "");
id = id.replace("}", "");

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:Body>" + 
"    <entityName xmlns=\"http://schemas.microsoft.com/crm/2006/WebServices\">product</entityName>" + 
"    <id xmlns=\"http://schemas.microsoft.com/crm/2006/WebServices\">" + id + "</id>" + 
"    <columnSet xmlns:q1=\"http://schemas.microsoft.com/crm/2006/Query\" xsi:type=\"q1:ColumnSet\" xmlns=\"http://schemas.microsoft.com/crm/2006/WebServices\">" + 
"      <q1:Attributes>" + 
"        <q1:Attribute>defaultuomid</q1:Attribute>" + 
"      </q1:Attributes>" + 
"    </columnSet>" + 
"  </soap:Body>" + 
"</soap:Envelope>" + 
"";

var xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");

xmlHttpRequest.Open("POST", "/mscrmservices/2006/CrmService.asmx", false);
xmlHttpRequest.setRequestHeader("SOAPAction","http://schemas.microsoft.com/crm/2006/WebServices/Retrieve");
xmlHttpRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
xmlHttpRequest.setRequestHeader("Content-Length", xml.length);
xmlHttpRequest.send(xml);

resultXml = xmlHttpRequest.responseXML;

result = ReadXml(xmlHttpRequest.responseXML);
try
{

defaultvalueid = result.Envelope.Body.RetrieveResult.defaultuomid;

if (isdefined(defaultvalueid))
{
  var lookupData = new Array();
  var lookupItem= new Object();
  lookupItem.id = defaultvalueid.value;
  lookupItem.typename = 'uom';
  lookupItem.name = defaultvalueid.xmlAttributes.name;
  lookupData[0] = lookupItem;
}
else
{
 lookupData = null;
}

  crmForm.all.uomid.DataValue = lookupData;
}
catch(e)
{
crmForm.all.uomid.DataValue = null;
}

}

else
{
}



if(crmForm.all.quantity.DataValue == null)
{
//crmForm.all.quantity = new Object();
crmForm.all.quantity.DataValue = 0.0;
}

if((crmForm.all.productid != null) && (crmForm.all.uomid != null))
{
crmForm.Save();
}

function ReadXml(oXml)
{
var oReturnValue = new Object();

if (IsNull(oXml))
{
return oReturnValue;
}
var childNodes = oXml.childNodes;
for (var i = 0; i < childNodes.length; i++)
{
var oChildNode = childNodes.item(i);
switch (oChildNode.nodeType)
{
case 1:
var oChildObject = ReadXml(oChildNode);

if (IsNull(oReturnValue[oChildNode.baseName]))
{
oReturnValue[oChildNode.baseName] = oChildObject;
}
else
{
if (!isArray(oReturnValue[oChildNode.baseName]))
{
var property = oReturnValue[oChildNode.baseName];
oReturnValue[oChildNode.baseName] = new Array();
oReturnValue[oChildNode.baseName].push(property);
}

oReturnValue[oChildNode.baseName].push(oChildObject);
}
break;
case 3:



oReturnValue["value"] = fromString(oChildNode.nodeValue);
break;
case 4:
return oChildNode.text;
default:
break;
}
}

if (IsNull(oReturnValue.xmlAttributes))
{
var attributes = oXml.attributes;

if (!IsNull(attributes)) 
{
if (attributes.length > 0)
{
oReturnValue.xmlAttributes = new Object();
for (var i = 0; i < attributes.length; i++)
{
oReturnValue.xmlAttributes[attributes.item(i).baseName] = fromString(attributes.item(i).nodeValue);
}
}
}
}

return oReturnValue;
}

function fromString(sValue)
{

if (sValue.toLowerCase() == "true")
{
return true;
}
else if (sValue.toLowerCase() == "false")
{
return false;
}

var intValue = parseInt(sValue, 10);
if (!isNaN(intValue) && intValue.toString() == sValue)
{

return intValue;
}

var floatValue = parseFloat(sValue);
if (!isNaN(floatValue) && floatValue.toString() == sValue)
{

return floatValue;
}

var dateValue = new Date(sValue);
if (!isNaN(dateValue))
{
return dateValue;
}

return sValue;
}

function isdefined( variable)
{
    return (typeof(variable) == "undefined")?  false: true;
}
Теперь после выбора продукта в единицы измерения будет подставляться единица по умолчанию
За это сообщение автора поблагодарили: e.pasechny (1), Elka (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Присвоение одного атрибута сущности значения другого атрибута связанной сущности vital.mih Dynamics CRM: Функционал 38 08.09.2010 10:53
Мелкомягкий CRM: Отображение в Lookup’е произвольного поля вместо основного атрибута Blog bot Dynamics CRM: Blogs 3 26.04.2010 19:10
не сохраняются значения новых полей zhenek Dynamics CRM: Разработка 18 05.06.2009 18:28
пустые значения при перегонки данных через migration Manager valk Dynamics CRM: Функционал 2 02.09.2008 19:52
Как сделать две одинаковые ссылки на одной форме? tatra Dynamics CRM: Разработка 5 21.09.2007 18:26

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

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

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