通过addin创建标记值

时间:2016-09-23 12:09:04

标签: enterprise-architect

对于类类型元素我们想通过addin创建枚举类型标记值。我们有一个api element.taggedvalues.addnew(“Sample”,“Enum”)但是它正在创建标记而不是枚举类型通过addin那么我们怎样才能通过插件实现这一目标

1 个答案:

答案 0 :(得分:1)

不容易。此类电视的定义存储在表t_propertytypes中,您需要将其放在那里。现在,一个新创建的具有该名称的电视将是一个枚举。

要添加此类默认值,您需要

pt = Repository.PropertyTypes
p = pt.AddNew("some TV", "")
p.Detail = "Type=Enum; Values=a,b,c;"
p.Update()

现在您可以添加类似

的电视
element.TaggedValues.AddNew("some TV", "this can by anything")

请注意,默认值也可能不在枚举中。

要检查是否存在此类默认值,您应该能够阅读Repository.PropertyTypes。但在我的测试中只得到零大小的集合。我怀疑EA中存在一个错误。但是你可以发出

Repository.SQLQuery("SELECT * FROM t_propertytypes")

并检查XML结果以确定是否已存在默认值。