|
![]() |
#1 |
Еда - топливо, Одежда - н
|
А зачем сразу скрипты использовать? Пользователю нужно сразу видеть что ли значение в этом поле... Могу предположить, что вы пытаетесь заполнить поле "имя". Что бы потом при поиске было видно что это за запись. Если так, то советую вам скрыть это поле, сделать его не обязательным для заполнения и создать БП на создание и/или обновление записи. И пусть он и заполняет текстовое поле из лукапа...
|
|
![]() |
#2 |
Участник
|
У нас логика немного другая: у нас есть два одинаковых поля, одно поле А заполняется пользователем из Lookup, если пользователь создал сущность стандартным методом (создать новую запись типа...), при этом поле Е пустое и скрыто для пользователя, НО ДОЛЖНО ЗАПОЛНИТЬСЯ ЗНАЧЕНИЕМ ПОЛЯ "А".
Другой вариант - сущность Custom создается со специального модуля написанного на Silver light, и значение поля Е проставляется скриптом, а поле А скрывается и не видно пользователям. Мне необходимо значение поля А присваивать полю Е, если пользователь выбирает его из Lookup т.к. потом мы значение Е передаем в другую систему (ERP). Да, присваивать надо значение конкретно выбранного атрубута из Lookup в текстовое поле. Последний раз редактировалось Ion; 11.03.2013 в 15:04. |
|
![]() |
#3 |
Еда - топливо, Одежда - н
|
![]() Цитата:
Сообщение от Ion
![]() У нас логика немного другая: у нас есть два одинаковых поля, одно поле А заполняется пользователем из Lookup, если пользователь создал сущность стандартным методом (создать новую запись типа...), при этом поле Е пустое и скрыто для пользователя, НО ДОЛЖНО ЗАПОЛНИТЬСЯ ЗНАЧЕНИЕМ ПОЛЯ "А".
Другой вариант - сущность Custom создается со специального модуля написанного на Silver light, и значение поля Е проставляется скриптом, а поле А скрывается и не видно пользователям. Мне необходимо значение поля А присваивать полю Е, если пользователь выбирает его из Lookup т.к. потом мы значение Е передаем в другую систему (ERP). Да, присваивать надо значение конкретно выбранного атрубута из Lookup в текстовое поле. |
|
![]() |
#4 |
Участник
|
|
|
![]() |
#5 |
Участник
|
Можно еще один глупый вопрос - мне надо вешать этот скрипт на форму Событие - Onload, а поле Lookup делать OnChange.
Не судите строго. Пытаюсь читать SDK, но новичку непросто сориентироваться самостоятельно. Забы написать изначально. У меня СRМ 2011 Последний раз редактировалось Ion; 11.03.2013 в 16:15. |
|
![]() |
#6 |
Заноза в заднице
|
Как-то так
X++: // Пример для CRM2011 var lookupValue = lookupAttrib.getValue(); if (lookupValue != null && lookupValue.length > 0) { // здесь первый элемент массива - это и есть выбранное в Lookup-поле значение, у которого есть три атрибута: id, name и type (либо entityType), которые характеризуют выбранный объект var lookupValueId = lookupValue[0].id; // далее: нужно получить атрибут в который нужно присвоить значение и собственно присвоить (пример для текстового атрибута) var assignAttrib = Xrm.Page.getAttribute('E'); // если атрибут в форме только для чтения - перед присвоением установим submit mode assignAttrib.setSubmitMode('always'); assignAttrib.setValue(fieldValue); }
__________________
Лень мудрого человека - это необходимое средство нейтрализации кипучей активности руководящих им дураков! |
|
|
За это сообщение автора поблагодарили: Ion (1). |
![]() |
#7 |
Участник
|
Цитата:
Сообщение от Likefire
![]() X++: // Пример для CRM2011 var lookupValue = lookupAttrib.getValue(); if (lookupValue != null && lookupValue.length > 0) { // здесь первый элемент массива - это и есть выбранное в Lookup-поле значение, у которого есть три атрибута: id, name и type (либо entityType), которые характеризуют выбранный объект var lookupValueId = lookupValue[0].id; // далее: нужно получить атрибут в который нужно присвоить значение и собственно присвоить (пример для текстового атрибута) var assignAttrib = Xrm.Page.getAttribute('E'); // если атрибут в форме только для чтения - перед присвоением установим submit mode assignAttrib.setSubmitMode('always'); assignAttrib.setValue(fieldValue); } function SetValueto{ var lookupValue = Xrm.Page.data.entity.attributes.get("new_productgroupid").getValue(); // или так не правильно? if (lookupValue != null && lookupValue.length > 0) { // здесь первый элемент массива - это и есть выбранное в Lookup-поле значение, у которого есть три атрибута: id, name и type (либо entityType), которые характеризуют выбранный объект var lookupValueId = lookupValue[0].id; // далее: нужно получить атрибут в который нужно присвоить значение и собственно присвоить (пример для текстового атрибута) var assignAttrib = Xrm.Page.getAttribute(“[new_brend_test]”);// // если атрибут в форме только для чтения - перед присвоением установим submit mode assignAttrib.setSubmitMode('always'); assignAttrib.setValue(fieldValue); } } |
|
![]() |
#8 |
Участник
|
пропущены скобки, нужно
function SetValueto() { Цитата:
var lookupValue = Xrm.Page.getAttribute("new_productgroupid").getValue(); переменная fieldValue не определена если нужно не id, а текст с лукапа, то нужно писать так var lookupValueName = lookupValue[0].name; ... assignAttrib.setValue(lookupValueName ); |
|
![]() |
#9 |
Участник
|
Цитата:
Цитата:
Сообщение от Anros
![]() пропущены скобки, нужно
function SetValueto() { правильно, но можно короче var lookupValue = Xrm.Page.getAttribute("new_productgroupid").getValue(); переменная fieldValue не определена если нужно не id, а текст с лукапа, то нужно писать так var lookupValueName = lookupValue[0].name; ... assignAttrib.setValue(lookupValueName ); Спасибо большое. Вот что получилось на выходе: function SetValueto () { var lookupValue = Xrm.Page.getAttribute("new_productgroupid").getValue(); if (lookupValue != null && lookupValue.length > 0) { var lookupValueName = lookupValue[0].name; var assignAttrib = Xrm.Page.getAttribute(“new_brend_test”); assignAttrib.setSubmitMode('always'); assignAttrib.setValue(lookupValueName); } } Но, СРМ выдает ошибки при загрузке: --------------------------- Сообщение с веб-страницы Ошибка в изменяемом событии поля. Поле:window Событие ![]() Ошибка:Значением свойства "SetValueto" или является NULL, или оно не определено, или не является объектом Function |
|
![]() |
#10 |
Участник
|
|
|