enterprise-architect - 企业架构师: Change diagram type (MetaType) by script

标签 enterprise-architect

我必须更改我的 Enterprise Architect 模型中许多图表的图表类型。可以使用以下选项手动进行更改(按预期工作):

选择图表 - 图表 - 高级 - 更改类型...

由于我必须更改很多图表,因此我创建了一个脚本来搜索所有相关图表并自动更改类型。我已经编写了很多 JScript EA 脚本来更改一些建模元素。不幸的是,此功能似乎无法通过脚本接口(interface)使用。

我必须更改图表对象的“MetaType”。但这是只读的(请参阅 http://www.sparxsystems.com/enterprise_architect_user_guide/12/automation_and_scripting/diagram2.html )。因此,我收到了错误。

var currentDiagram as EA.Diagram
currentDiagram = theDiagram
currentDiagram.MetaType = MY_DIAGRAM_METATYPE // ERROR

在下一步中,我在存储库界面 ( http://www.sparxsystems.com/enterprise_architect_user_guide/12/automation_and_scripting/repository3.html ) 和项目界面中搜索适当的功能。但我发现没有什么合适的。

我使用的是 Enterprise Architect 12.0.1215,并且使用了 JScript。

有人已经通过脚本尝试过这个吗? 我错过了什么吗? 是否有另一种方法可以通过脚本实现图表类型更改?

提前致谢!

最佳答案

您必须分两步完成此操作(如果您更改为不同的 MDG 图表类型)。例如。要将类图更改为 BPMN2.0::BPEL,您首先需要更改 Diagram_Type逻辑分析。此外,您需要将 MDGDgm=BPMN2.0::BPEL; 添加到 StyleEx 。如果您的旧图表来自另一个 MDG,您需要修改现有的 MDGDgm StyleEx 中的属性.

正如 Uffe 所指出的,API 中的图表类型是 r/o。因此,如果您需要更改,则需要执行类似的操作

Repository.Execute("UPDATE t_diagram SET Diagram_Type='Analysis' WHERE Diagram_ID=<theId>")

哪里<theId>将是正确的图表 ID。

关于enterprise-architect - 企业架构师: Change diagram type (MetaType) by script,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32183854/

相关文章:

c# - 通过 C# 插件的 EA MySQL 存储库

character-encoding - 企业架构师坏字符编码

enterprise-architect - 覆盖 "Paste As"对话框

enterprise-architect - 连接形状脚本显示 GUID,而不是引用元素的名称

enterprise-architect - 有没有办法在Enterprise Architect中搜索具有相应组合图的元素?

architecture - 将 Enterprise Architect 与 Doxygen 结合使用?

c++ - 从源代码生成类图

settings - Enterprise Architect 项目编程语言

c# - 使用 C# 遍历 Enterprise Architect 中的包层次结构

c# - Enterprise Architect 用于存储 DateTime 类型标记值的日期格式