Dynamics CRM 2011 - изменение представления списка связанных объектов - PullRequest
3 голосов
/ 09 июня 2011

У меня есть пара пользовательских сущностей, которые связаны между собой связями «многие ко многим», используя сущность связывания, которая содержит некоторые атрибуты связывания.Для ясности давайте назовем их Superhero и Supervillain, и ссылка будет Fight.

(Superhero) 1 --------- * (Fight) * -------- 1 (Supervillain)

То есть каждый бой между 1 супергероем и 1 суперзлодеем, и каждый комбо супергероя / суперзлодея может иметь любойколичество боев может быть различного типа - меч, кулак и т. д.

Пока все просто.По сути, то, что я делаю здесь, это воспроизведение новой функциональности «Соединения», но с использованием пользовательского типа связывания, который работает только с Superheros и Supervillains.Причина этого в том, что я хочу показать их как отдельный элемент навигации в левой части формы, а не объединять их все в разделе «Соединения».

Теперь из формы Супергероя, когда япосмотрите на связанные объекты на левой панели, я хочу показать список боев вместе с Суперзлодеем, за который боролся Супергерой.Достаточно просто, я могу просто настроить «Fight Associated View», чтобы показать тип боя и сущность Supervillain.Это позволяет мне перейти прямо от Супергероя к Суперзлодею, с которым он сражался.

Но как быть, если я захочу сделать то же самое с Суперзлодеем?Тот же «Ассоциированный вид боя» показан и для Supervillains, но его необходимо настроить, чтобы показать тип боя и связанный с ним супергерой ... Но я не хочу, чтобы ассоциированный вид «один размер подходил всем», с обоимиПоля супергероя и суперзлодея.

Я хочу, чтобы связанный вид изменился в зависимости от того, смотрю ли я на супергероя или суперзлодея.Поэтому я создаю два новых представления, каждое с нужными столбцами.Теперь я могу вручную переключаться на эти представления при выборе связанного списка в каждой сущности.Это работает нормально, но я не хочу, чтобы этот шаг выполнялся каждый раз, когда я смотрю на связанные бои.

Итак, наконец, я подхожу к вопросу : как я могу автоматически(т. е. через сценарий, если необходимо) выбрать стандартное «Связанное» представление, которое будет отображаться для боев, связанных с супергероями и суперзлодеями, в зависимости от типа объекта?

Используя сценарий формы, я могу получить элемент навигациидостаточно легко, но после этого я теряюсь:

function SuperHero_OnLoad()
{
    var fightItem = Xrm.Page.ui.navigation.items.get("nav_new_fight");
    // What next?!
    fightItem.MagicFunctionThatSelectsADefaultViewOrHacksIntoTheIframeParametersOrSomething();
}

Примечание: Я знаю, что могу использовать вспомогательную сетку в основной форме редактирования, которая позволяет вам выбрать вид для отображения, но я не хочу забивать форму дополнительными сетками.Я хочу использовать Связанное дерево слева от формы.

1 Ответ

3 голосов
/ 12 ноября 2012

ViewId в Customizations.xml работает, но вы задали вопрос слишком рано ;-) Была ошибка, исправленная в накопительном пакете обновлений 10 и выше. У меня была такая же проблема до обновления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...