06.10.2012, 01:11 | #1 |
Участник
|
axforum blogs: "Глубокие" запросы на гридах формы.
Источник: http://axforum.info/forums/blog.php?b=351
============== В свое время мое внимание привлек вот этот пост в официальном блоге разработчиков: Deep queries for subgrids - Microsoft Dynamics CRM Team Blog - Site Home - MSDN Blogs. Его функциональность показалась мне интересной, однако подобных задач тогда передо мной не вставало, так что я отложил изучение данного феномена. Суть его состоит в том, что путем несложных манипуляций с существующими технологиями, можно отразить во встроенной в форму сетке (и только в ней, для панели навигации функционал не доступен) не только записи непосредственно связанные с данной формой (объектом, открытым в форме), но и записи, которые связаны опосредованно - через связи с другими объектами, которые связаны с формой. Например, у вас есть иерархия Организация - Заказ - Платеж. Используя данную технологию можно, например, показать в гриде платежи по всем заказам организации. Раньше для этого потребовалось бы создать служебную связь между Платежом и Организацией. Недавно, мне пришлось вспомнить про этот пост, так как необходимость в таком функционале возникла. Первое на что я обратил внимание, так это дополнение, которого не было в момент публикации поста: “Please note that the methods described here are not documented in the SDK and therefore are not officially supported by the CRM product team. This works in the context used in the Wealth Management solution and may work in other scenarios, but is not a pattern that is guaranteed to work in other scenarios.” Ранее упоминалось лишь то что функционал был добавлен в UR7, но пока не был документирован. К сожалению, в моем случае он не заработал и мне пришлось использовать гарантированно неподдерживаеммые методы. Позже я провел исследование, чтобы выяснить возможные сценарии работы. Для этого я настроил в системе следующую иерархию объектов: Для объекта A я создал набор форм со встроенными гридами. Рабочие сценарии: X++: A - 1:N - B - N:1 - В //работает, но может вернуть дубли! A - 1:N - B - 1:N - C //работает Не работающие сценарии: X++: A - N:1 - C - 1:N - D //ошибка A - N:1 - C - N:1 - B //ошибка Сообщение об ошибке гласит: dependentAttributeName must be specified. К сожалению, информацию как это исправить не удалось добыть даже внутри Microsoft. Возможно, когда функционал станет поддерживаемым, это исправят. Сейчас же, можно использовать старый добрый ансапорт, например вот такой: Filtering records in the sub grid in Microsoft Dynamics CRM 2011. - I am the techie - Site Home - TechNet Blogs. Как и почему это работает понять очень сложно. К сожалению, крос-браузерную версию системы так и не выпустили, а пророщенные вглубь HTC контролы InternetExplorer понимает только он один (причем о их устройсте не осведомлен даже дебагер!). Как бы там ни было, это полезное удобное решение. Ниже приложены управляемое и неуправляемое решение, на которых можно поиграть с данным функционалом. Вложения DeepQueryTest_1_0_0_0_managed.zip (35.1 Кб, 0 просмотров) DeepQueryTest_1_0_0_0.zip (35.4 Кб, 0 просмотров) Источник: http://axforum.info/forums/blog.php?b=351
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору. |
|
|
|