16.01.2013, 12:07 | #1 |
Участник
|
Программное изменение лукапа
Здравствуйте.
Имеется лукап, в его свойствах есть "Представление по умолчанию". Нужно при изменении некоторого поля программно изменять это представление. Например есть поле - набор двух параметров. При переключении на форме этого значения в нужном нам лукапе изменяется представление на другое, заранее подготовленное. Подскажите пожалуйста с помощью какого кода можно это сделать? CRM 2011 |
|
16.01.2013, 12:27 | #2 |
Участник
|
у объекта lookup вызвать метод
setDefaultView Здесь пример статьи фильтрации лукапа http://mmcrm.ru/?p=1854 |
|
16.01.2013, 12:27 | #3 |
Чайный пьяница
|
Добрый день, посмотрите следующие ссылки:
http://msdn.microsoft.com/en-us/libr...setDefaultView http://msdn.microsoft.com/en-us/libr..._addCustomView
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
16.01.2013, 12:39 | #4 |
Участник
|
Спасибо за ссылки, стало понятнее. Но как мне узнать какой GUI у тех представлений?
|
|
16.01.2013, 12:43 | #5 |
Участник
|
зайти в представления и в адресной строке посмотреть.
ЧТобы открыть адресную строку нажмите CTRL+N или F11 |
|
16.01.2013, 12:44 | #6 |
Чайный пьяница
|
Есть несколько способов, но самый простой - сделать запрос из базы - Select savedqueryid, name, returnedtypecode From FilteredSavedQuery
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
16.01.2013, 12:54 | #7 |
Участник
|
Пробую изменить так:
Xrm.Page.data.entity.attributes.get("name").setDefaultView( '7bD8DE6240-CB5E-E211-8D87-00155D144D0E' ); и так document.getElementById("name").setDefaultView( '7bD8DE6240-CB5E-E211-8D87-00155D144D0E' ); ругается что объект не поддерживает это свойство или метод. |
|
16.01.2013, 12:59 | #8 |
Чайный пьяница
|
Цитата:
Сообщение от Ronin2007
Пробую изменить так:
Xrm.Page.data.entity.attributes.get("name").setDefaultView( '7bD8DE6240-CB5E-E211-8D87-00155D144D0E' ); и так document.getElementById("name").setDefaultView( '7bD8DE6240-CB5E-E211-8D87-00155D144D0E' ); ругается что объект не поддерживает это свойство или метод. Попробуйте такой код: Xrm.Page.getControl("<Имя схемы лукапа>").setDefaultView( '{7bD8DE6240-CB5E-E211-8D87-00155D144D0E}' ); Обратите внимание на фигурные скобки.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
16.01.2013, 13:11 | #9 |
Участник
|
"name" это не настоящее название.
Попробовал Xrm.Page.getControl("name").setDefaultView( '{7bD7FFE6F9-955F-E211-8D87-00155D144D0E}' ); Скрипт отрабатывает, но при нажатии на лукап вываливается окно с ошибкой и просит обратиться в Microsoft. Первая мысль это неправильный GUID, но я воспользовался методом, предложенным g.Naukovych, скопировал из адреса и вставил. Где ещё может быть собака зарыта? |
|
16.01.2013, 13:29 | #10 |
Чайный пьяница
|
Цитата:
Сообщение от Ronin2007
"name" это не настоящее название.
Попробовал Xrm.Page.getControl("name").setDefaultView( '{7bD7FFE6F9-955F-E211-8D87-00155D144D0E}' ); Скрипт отрабатывает, но при нажатии на лукап вываливается окно с ошибкой и просит обратиться в Microsoft. Первая мысль это неправильный GUID, но я воспользовался методом, предложенным g.Naukovych, скопировал из адреса и вставил. Где ещё может быть собака зарыта? Xrm.Page.getControl("name").setDefaultView( '{D7FFE6F9-955F-E211-8D87-00155D144D0E}' );
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
16.01.2013, 13:34 | #11 |
Участник
|
|
|
16.01.2013, 13:36 | #12 |
Участник
|
%7b и %7d в url - это Url Encoded фигурные скобки
|
|