Element.Type' Class' vs'表'使用Database Builder

时间:2017-03-13 17:22:52

标签: enterprise-architect

我正在使用EA Sparx中的一些数据库模型,当我点击某个表时,它有时会显示在EA Sparx Enterprise Architect 12中

Type='Class', Stereotype='table'

和其他时间

Type='Table', Stereotype='table'

如果我尝试更改元素类型,标记为Class的那些是可更改的,但标记为Table的表(通知表永远不会出现在元素类型中)不可更改。

当我在幕后查询数据库时,我看到了

object.Object_Type = 'Class'

为什么用户界面有这种不一致?我不能为我的生活看到他们为什么不同,以及这些差异记录在EA存储库中。

谢谢你, 尤拉伊

2 个答案:

答案 0 :(得分:1)

select
  t_object.Object_id,
  t_xref.Description
from
  t_object inner join 
  t_xref on t_object.ea_guid = t_xref.Client
where
  t_object.Object_Type = 'Class'
  and t_object.Stereotype = 'table'
;

这里有很多魔法。

捕获了两种不同的值,一些是EAUI :: table的完全限定名称,而另一些是EAUML :: table。 (可能取决于您从哪个工具进行逆向工程。)

@STEREO;Name=table;GUID={57EF048F-695B-467b-8120-15C6CB6DA398};FQName=EAUI::table;@ENDSTEREO;
@STEREO;Name=table;FQName=EAUML::table;@ENDSTEREO;

较短的字符串,EAUML是表/表,另一个是类/表。

答案 1 :(得分:1)

混乱是这样的:

  • EA有一个带有元素表的工具箱。如果你创建它,它将产生EAUML::table刻板印象。
  • 此外,您可以创建一个简单的类并在构造型中输入table。这将呈现与上面相同的内容。但现在你有一个刻板印象EAUI::table

enter image description here

左侧是使用工具箱创建的。手动刻板印象的权利。

有趣的是,我在Paolo的EA Unique Interface之后创造了首字母缩略词EAUI。现在这有一个新的方面。