2016-11-25 146 views
1

我有EA元素。我如何获得元素父级的图表对象或图表ID? 我通过表格形式创建EA元素。我想以编程方式将此元素添加到父元素的图表中。 父元素已添加到图中。如何获取EA.Element的图表对象

我怎样才能得到父图?

+0

元素没有“父图”。你在找什么? –

+0

让我改述一下:我有一个元素,其相应的图表对象被添加到“图表”中。我如何创建一个新的图表对象并将其添加到“图表”? – Akanksha

+0

你的意思是同一个图? –

回答

0

您不能在同一图表中合法放置同一个元素两次。自动化仍然(我猜)允许这样做,但有副作用,所以你不应该尝试它。

如果因为任何原因想要这样做,您需要找到图表本身。由于元素可以位于多个图表中,因此您必须查找相关图表或处理放置它的所有图表。要找到它们,您可以执行以下操作:

Repository.SQLquery("SELECT do.diagram_id FROM t_diagramobjects AS do INNER JOIN t_object ON do.Object_ID = t_object.Object_ID WHERE t_object.ea_guid = '{B979A0E9-17CB-4ed2-ADAB-D6FB3BE10A2B}'") 

只需将示例GUID替换为对象的GUID即可。作为回报,您将获得一个XML字符串,其中列出了使用该元素的所有图表id。该查询将查看使用元素的所有图对象,并返回适当图的图标识。

现在你可以做任何你想要做的事情与这些图表。

嗯,说实话,有一个合法的方式来在图表上有一个元素两次。这是通过使用虚拟化连接器。除了短暂的手动测试外,我还没有使用过它(既不手动也不使用自动化)。如果你需要,我可以看看。

+0

您好托马斯,谢谢您的回复。我按照建议尝试了,但是我得到了以下消息:“SELECT语句包含保留字或参数名拼写错误或缺失或标点符号不正确” – Akanksha

+0

您是否可以编辑您的问题并发布您的代码? –