2

我有一个 Enterprise Architect 图表,其中一个注释链接(链接 L2)到一个连接器(链接 L1)。使用自动化 API:

  • myDiagram.diagramLinks 实际上包含 L1,任何指向元素的链接,但绝对不是链接到连接器的 L2
  • 同样,myNote.Connectors 将其连接器提供给 Elements,但不提供给 L1...

    1. 我该如何处理?强制使用 SQLQuery ?

    2. 我还想知道,一旦我找到 L1,我如何确定 L1.SupplierId 是 Element 还是 Connector ?谢谢 !

4

1 回答 1

3

我调查了一下,似乎链接元素的值t.object.PDATA4(等于EAElement.MiscData(3))是

idref=<connId>;

<connId>它链接到的连接器 ID在哪里。分号分隔的条目与连接器的链接一样多。

这是我的设置:

在此处输入图像描述

两个关联到一个注释。t_connector有两个 ID 为 1 和 2 的条目:

在此处输入图像描述

现在你可以看到t_object看起来像这样:

在此处输入图像描述

注释(链接到关联)具有PDATA对关联 ID 1 和 2 的引用。

虽然您可以通过 API 读取 MiscData,但它是 (IIRC) r/o。在这些情况下,我只是回退到Repository.Execute运行任何UPDATE查询。

于 2019-09-27T20:29:14.750 回答