Ни у кого не возникало потребности переделать связь известных ошибок с проблемами с один ко многим на много ко многим?
Добавил в таблицу ticket_problem поле knownerror_id. В файле /itop-knownerror-mgmt/datamodel.itop-knownerror-mgmt.xml исправил:
<field id="problem_list" xsi:type="AttributeLinkedSet">
<linked_class>Problem</linked_class>
<ext_key_to_me>knownerror_id</ext_key_to_me>
<edit_mode>add_remove</edit_mode>
<count_min>0</count_min>
<count_max>0</count_max>
</field>
Обновляется без ошибок, но не отображает страницу деталей ни проблем, ни ошибок… Как понять где что не додумал?
Сегодня у меня в организации возник точно такой же вопрос. Переделать можно, но вот насколько это оправдано?
Исходя из глоссария ITIL, Известная ошибка == задокументированное решение Проблемы (проявления, первопричины, решения и т.п.). В каком случае для разных проблем могут быть одни и те же симптомы, причины и решения? Только если это одна и та же проблема.
На мой взгляд, если возникает желание привязать два тикета проблемы к одной известной ошибке, более правильным будет связать проблемы между собой.
А технически в iTop связь многие-ко-многим реализуется через дополнительный класс объектов (link class). Нужно создать класс lnkProblemToKnownError
, в котором сделать два атрибута: ссылку на проблему и ссылку на ошибку. Затем уже править классы проблем и ошибок, сделав в них поле <field id="name" xsi:type="AttributeLinkedSetIndirect">
, в котором в <linked_class>
указать lnkProblemToKnownError
и остальные параметры.
В общем, стоит десять раз подумать, прежде чем начинать такие правки. Мы отказались.
P.S. Никогда не делай подобных вещей в itop/datamodels/!!! Только через собственный модуль!
Получилось реализовать данную возможность. Единственно, подскажи, если знаешь, когда в известных ошибках заходишь во вкладку проблемы, то отображается один столбец - номер проблемы, а если нажимаешь изменить, то тогда отображаются столбцы и название, и организация и т.д. В каких тегах в xml можно описать эти столбцы откуда оно берет их список в режиме редактирования?
Да, до этого вносил мелкие правки в datamodels и теперь вот думаю тяжко придется с обновлениями (а вчера вышел релиз 2.1.0)… Каким образом описывать и подключать собственные модули, подскажи плиз
Извини, не успел ответить на предыдущие вопросы)).
Насколько я помню, в этих вкладках как раз и отображаются объекты-связи (напр. lnkProblemToKnownError), и редактировать нужно секцию <presentation><list>
в объявлениях этих классов.
Надо ж и самому разбираться потихоньку ))))
По поводу подключения собственных модулей xml подскажи как реализовать: как подключить, как быть если заменить надо какую-то модель… И потом я вносил правки и в php код (в случае с внедрением сортировки писем от разных адресатов в разные сервисы)