Показать сообщение отдельно
Старый 22.10.2008, 12:17   #1  
igla is offline
igla
Участник
 
4 / 10 (1) +
Регистрация: 22.10.2008
Адрес: Москва
О динамических отображаемых именах сущностей
Приветствую!

Вопросик по CRM 4.0 (хотя, думаю, он актуален и для предыдущих версий)...

Вот во всех сущностях есть мегаосновной атрибут с семантикой отображаемого имени. Его значение отображается в первую очередь в заголовке окна свойств данного объекта, ну и вообще во многих местах. Это понятно.

Теперь допустим, что нужно динамически формировать отображаемое имя объекта на основании значений нескольких его атрибутов (типа склеить ФИО из фамилии, имени и отчества человека). ОК, это тоже понятно - пишем javascript на событии OnChange каждого из полей, являющихся составными частями отображаемого имени, который склеивает их в одно большое ФИО.

А теперь, собственно, вопрос. Допустим, что нужно динамически формировать отображаемое имя объекта на основании значений как его атрибутов, так и атрибутов связанных с ним объектов (а возможно - и связанных со связанными). Причем значения этих атрибутов могут меняться в течении их жизни в системе (например, смена фамилии).

Как это реализовать?

Вариант 1 - написать огромное количество плагинов на Create, Update и Delete всех сущностей, от атрибутов которых зависит отображаемое имя данной сущности, дабы в них перегенерировать отображаемое имя.
Минус - неоправданно (на мой взгляд) большой объем кода, чуть ли ни экспоненциально растущий при росте количества связанных сущностей.

Вариант 2 - CRM не предназначен для решения подобных задач, нужно придумать другую модель классов, в которой этот вопрос не встанет.
Минус - не придумывается

Help!