由事件触发的EA脚本 - 元素创建

时间:2014-05-12 09:51:56

标签: automation enterprise-architect

我可以使用EA Script将一些TaggedValues附加到EA Element中。现在,我想在创建目标元素时自动附加TaggedValues。

是否可以在事件上触发EA脚本或EA加载项,更具体地说:EA元素创建事件?

1 个答案:

答案 0 :(得分:0)

加载项,是的;脚本,没有。脚本只能访问Object Model API,而Add-Ins也可以访问事件回调所在的Add-In Model API。

各种事件记录在Automation and Scripting - Enterprise Architect加载项模型下的帮助文件中。与模型CRUD相关的事件在广播事件下。

为了在创建元素时向元素添加标记值,您需要一个响应EA_OnPostNewElement的加载项。这在元素创建后调用,并允许您对其进行进一步更改。 (相比之下,{<1}}在元素创建之前被称为,允许您首先防止它被创建但不进行任何更改,因为它尚不存在。 )

如果EA_OnPreNewElement对元素进行了任何更改,则EA_OnPostNewElement的实现必须返回true,如果没有,则返回false(无论何时创建任何元素,都会调用您的加载项,并且可能您只想将标记值添加到某些元素中。)

所有这一切都说,在大多数情况下,在配置文件中指定标记值而不是编写自定义加载项来执行此操作更简单,但这不是您要问的内容。