Command line 企业架构师:为包生成DDL的命令行

Command line 企业架构师:为包生成DDL的命令行,command-line,ddl,enterprise-architect,Command Line,Ddl,Enterprise Architect,我希望在夜间构建中包含从包生成DDL的过程,这样我们就不必签入生成模式(以及随后从模式生成的ORM类) 如果没有Generate Package DDL UI,我无法通过命令行实现这一点。EA文档中没有任何信息 是否有人找到了一种自动化的方法?是的,使用EA的API是完全可行的 所谓的“EA对象模型”可以从EA内部(脚本)以及.NET和Java API中获得(而“插件模型”只能通过.NET获得)。与EA存储库的交互基于两个类,repository和Project。因此,对于命令行,您需要编写一个

我希望在夜间构建中包含从包生成DDL的过程,这样我们就不必签入生成模式(以及随后从模式生成的ORM类)

如果没有Generate Package DDL UI,我无法通过命令行实现这一点。EA文档中没有任何信息


是否有人找到了一种自动化的方法?

是的,使用EA的API是完全可行的

所谓的“EA对象模型”可以从EA内部(脚本)以及.NET和Java API中获得(而“插件模型”只能通过.NET获得)。与EA存储库的交互基于两个类,
repository
Project
。因此,对于命令行,您需要编写一个程序

  • 连接到相关EA存储库--
    repository::OpenFile
  • 检索项目接口--
    存储库::GetProjectInterface
  • 检索包和元素--
    Repository::通过[ID/Guid]获取[Package/Element]
  • 生成DDL--
    项目::生成[Package/Element]DDL
  • 为了遍历包/元素结构,请使用
    package::Packages
    package::Elements
    集合(可能还有
    element::Elements
    ,但数据库模型通常不在其他元素中包含元素)

    对于未来的读者,请注意,
    项目
    类还包括生成代码、WSDL和XSD的类似方法

    相关帮助文件页面位于自动化和脚本--企业架构师对象模型--参考(在EA 10.0.1007中):

    • 存储库包——存储库类
    • 项目接口包--项目类
    • 存储库包——包类
    • 存储库包——元素类
    • 存储库包--集合类

    • 是的,使用EA的API是完全可行的

      所谓的“EA对象模型”可以从EA内部(脚本)以及.NET和Java API中获得(而“插件模型”只能通过.NET获得)。与EA存储库的交互基于两个类,
      repository
      Project
      。因此,对于命令行,您需要编写一个程序

    • 连接到相关EA存储库--
      repository::OpenFile
    • 检索项目接口--
      存储库::GetProjectInterface
    • 检索包和元素--
      Repository::通过[ID/Guid]获取[Package/Element]
    • 生成DDL--
      项目::生成[Package/Element]DDL
    • 为了遍历包/元素结构,请使用
      package::Packages
      package::Elements
      集合(可能还有
      element::Elements
      ,但数据库模型通常不在其他元素中包含元素)

      对于未来的读者,请注意,
      项目
      类还包括生成代码、WSDL和XSD的类似方法

      相关帮助文件页面位于自动化和脚本--企业架构师对象模型--参考(在EA 10.0.1007中):

      • 存储库包——存储库类
      • 项目接口包--项目类
      • 存储库包——包类
      • 存储库包——元素类
      • 存储库包--集合类