我必须更改我的 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/