Enterprise Architect 中带有图表 "Hyperlinks" 的文档?

Documentation with Diagram "Hyperlinks" in Enterprise Architect?

我正在努力将所有必需的(并且只是必需的)信息添加到我的 Enterprise Architect 项目的文档中。准确地说:我们已经对各种需求进行了建模,并通过使用通用工具箱中的 "hyperlink" 元素在我们的图表中显示了这些需求的来源 "standards"。 (这使我们能够捕获标题、找到文档的网站以及该文档的描述)。

现在此元素在图表上可见,但在我们模型的 package-view 中不可见,并且不会在我们的 word (docx) 文档中生成。

我可以看到应该可以在文档中找到它,因为基本上打印 everything 的 "Model Report" 会打印超链接。但是我无法在我的模板中找到我必须 select 的内容(在 package-tree 视图中,作为包字段、元素字段或图表字段)才能打印出来。我不能只使用模型报告,因为这基本上会将整个数据库转储到文档中,而且 reverse-engineering 这个模型报告对我来说太难了。实际上,我希望这会出现在 EA 的某种文档中,但找不到具有这种详细程度的此类内容……是否存在,是否有可重复的方式在更多情况下找到此类内容? (顺便说一句,我使用的是 EA 11.0)

[抱歉这里有插图,但我不允许上传它们...]

超链接是一个元素,与使用它的图表存储在同一个包中,只是在项目浏览器中不可见(类似于注释元素)。

很有可能它没有名字,因此请确保不要遗漏无名元素。

因此,如果您打印包含图表的包的所有元素,那么您应该也能够打印超链接。

万一失败,您可能需要考虑基于 SQL 查询或脚本创建模板片段。这些提供了很大的灵活性来打印您需要的任何东西,即使它位于不同的包装中。

正如 Geert 已经指出的那样,"proper" 元素与纯图表元素之间存在差异。这实际上反映在文档模板编辑器中,在"Diagram"部分里面有一个"Element"部分。这将为图表中的所有元素生成输出,无论它们是否也在项目浏览器中。

这是您可以从超链接中提取的信息示例。给定一个带有超链接的图表:

...和一个模板,它输出图中每个元素的名称、别名和超链接:

... EA 会生成一个文件,内容如下:

因此,如果您希望超链接在文档中生成超链接,请使用 HyperlinkAlias 字段。

可能有点令人困惑的是,除了通用图表工具箱中的超链接元素类型之外,EA 还允许您在常规元素中创建超链接(在元素属性对话框中,相关选项卡:文件,可以是本地文件或网址)。

事实上,如果可追溯性是您模型中的优先事项,我建议您在需求元素中使用它们,而不是仅包含图表的超链接。另一方面,只有图表的超链接给你一个更清晰的视觉。

选择图中元素的子集 ("only the required information") 稍微复杂一些,取决于模型的结构。模板片段将完成工作,但您可能只需使用文档生成对话框中的过滤器即可获得所需的结果。

[编辑于 2015 年 5 月 4 日以反映 Uffe 的评论并提供最终解决方案]

好的,根据 Geerts 的回答,在图表部分使用以下自定义查询片段:

select 
    t_object.ea_guid as CLASSGUID, 
    t_object.Object_Type as CLASSTYPE, 
    t_object.Object_Id as OBJECTID, 
    t_object.name as HL_Name,
    t_object.Stereotype as HL_Stereotype,
    t_object.object_type as HL_Type,
    t_object.Alias as HL_Alias,
    Note as Notes
    --,t_object.*
from t_object
  left join t_diagramobjects on (t_object.Object_ID = t_diagramobjects.Object_ID)
  left join t_diagram on (t_diagram.Diagram_ID = t_diagramobjects.Diagram_ID)
where t_diagram.Diagram_ID = '#DIAGRAMID#'
  and t_object.Object_Type='Text'

我能够得到图表后的超链接列表,这是片段:

custom >
{HL_Alias}: {HL_Name}
{Notes}
< custom

"Notes"可以直接从t_objecttable中获取属性打印出来。不要像我一开始那样感到困惑:t_object 上的自动完成和结果 (t_object.*) 不显示注释属性,但它在您编写时确实存在进入查询,它会在文档中生成。