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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.07.2009, 12:50   #1  
alsherin is offline
alsherin
Участник
 
62 / 11 (1) +
Регистрация: 23.06.2009
? Тип грида (GridType) при выводе списка связанной сущности
При выводе списка связанной сущности в IFrame формы основной сущности используется areas.aspx, которая строит грид по lookup-запросу с использованием соответствующего меню (кнопки "добавить существующий объект", "создать новый объект") и возможностью вызвать на редактирование запись двойным щелчком.

Есть необходимость отобрать связанные записи в список по значениям других атрибутов, а не только GUID основной сущности. Для этого используется fetchXML-запрос, который строит грид по типу расширенного запроса. У этого грида есть только функция "создать новый объект" - нет кнопки "добавить существующий объект" и по двойному щелчку на существующей записи открывается форма для создания нового объекта.

Подскажите, пожалуйста, каким легальным (supported) способом можно в связанный список (associated view) вывести результат расширенного запроса (advanced find) или как изменить способ вывода (тип грида) результатов расширенного запроса?

Очевидно, необходиио разработать свою aspx страницу и написать для нее свой code behind. Но неужели придется своим кодом полностью продублировать функциональность стандартных (встроенных) контролов? В SDK по этому поводу написано:

Note Beyond adding custom buttons, menus and navigation areas, developers cannot change the functionality of the Microsoft Dynamics CRM application. It is not supported for developers to modify, re-use, or inherit functionality from Microsoft Dynamics CRM controls.
Старый 07.07.2009, 13:31   #2  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Вы сами ответили на свой вопрос. Да - разработчики зажали свои контролы и ничего с этим поделать мы не можем. В версии 3.0 данный способ работал, но в 4.0 он сильно глючит. Возможно вам удастся самостоятельно доработать его поняв как перегрузить double click в гриде. Сделать это можно изучая JS и HTC файлы контролов на сервере.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 07.07.2009, 13:55   #3  
alsherin is offline
alsherin
Участник
 
62 / 11 (1) +
Регистрация: 23.06.2009
Цитата:
Сообщение от Артем Enot Грунин Посмотреть сообщение
В версии 3.0 данный способ работал, но в 4.0 он сильно глючит.
Именно этот способ я пока и использвал. Он работает нормально, меня не устраивает только способ вывода списка записей (тип грида), поскольку в нем не хватает функциональности.
Замкнутый круг получается: associated view фильтруется только по GUID основной сущности, а Advanced Find выводит результат в грид с ограниченной функциональностью.
Что-то еще можно попробовать сделать? Написать плагин? Какой и к чему его цеплять?
Или после загрузки фрейма получить набор записей через веб-сервис по soap-запросу и перестроить список прямо на странице в IFrame?
Старый 07.07.2009, 18:59   #4  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Есть такой волшебный инструмент в IE, называется View Source! А еще IE Developer Toolbar. И тем и другим можно расковырять уже генерированную страницу и посмотреть каким должен быть этот несчастный GridType!
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 07.07.2009, 19:18   #5  
alsherin is offline
alsherin
Участник
 
62 / 11 (1) +
Регистрация: 23.06.2009
Вы думаете я не пытался "ковырять" готовый HTML от CRM? Тем более у меня стои IE8 со встроенным Developer Toolbar. Но там уже готовая после рендеринга страница, построенная серверными скриптами (runat="server"). Клиентским скриптами изменить тип контрола нельзя, можно только модифицировать уже готовый HTML - а это "неуважаемый" здесь ансаппорт.

P.S. Я уже решил идти [правильным] путем разработки плагина. Это будет "железное" решение, да и опыт работы с плагинами наверняка еще пригодится.

Последний раз редактировалось alsherin; 07.07.2009 в 19:25.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как получить значение поля одной сущности при обработке формы другой сущности zhenek Dynamics CRM: Разработка 25 05.07.2011 16:19
Присвоение одного атрибута сущности значения другого атрибута связанной сущности vital.mih Dynamics CRM: Функционал 38 08.09.2010 10:53
Тип сущности, использующей плагин Казарин Александр Dynamics CRM: Разработка 2 02.04.2009 20:29
Как создать экземпляр кастомной сущности через SOAP? Tony Green Dynamics CRM: Разработка 7 27.02.2009 08:37
Создание объекта сущности из другого объекта! SnSS Dynamics CRM: Разработка 5 29.05.2008 13:38

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

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

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