Как найти Notelink в автоматизации EA, который связывает примечание с соединителем (и примечание к элементу) - PullRequest
2 голосов
/ 26 сентября 2019

У меня есть схема Enterprise Architect с примечанием, связанным (ссылка L2) с соединителем (ссылка L1).Используя API автоматизации:

  • myDiagram.diagramLinks фактически содержит L1, любую ссылку на элемент, , но определенно не L2, которая ссылается на соединитель
  • то же самое, myNote.Connectors предоставляет свои соединители для элементов, но не для L1 ...

    1. Как я могу обрабатывать?Вынуждены использовать SQLQuery?

    2. Мне также интересно, как только я найду L1, как я могу определить, что мы L1.SupplierId является элементом или соединителем?Спасибо!

1 Ответ

3 голосов
/ 27 сентября 2019

Я рассмотрел это, и кажется, что связанный элемент имеет значение в t.object.PDATA4 (что равно EAElement.MiscData(3)), равное

idref=<connId>;

, где <connId> - это идентификатор соединителя, с которым он связан.Количество разделенных точкой с запятой записей равно количеству ссылок на соединители.

Вот мой параметр:

enter image description here

две ассоциации, связанные снота.t_connector имеет две записи с идентификаторами 1 и 2:

enter image description here

И теперь, как вы видите, t_object выглядит так:

enter image description here

Примечание (которое связано с ассоциациями) имеет PDATA со ссылками на идентификаторы ассоциаций 1 и 2.

Хотя вы можетечитать MiscData через API это (IIRC) R / O.В этих случаях я просто возвращаюсь к Repository.Execute для выполнения любых UPDATE запросов.

...