1

パッケージからの DDL の生成をナイトリー ビルドに含めて、生成スキーマ (および後でスキーマから生成する ORM クラス) をチェックインする必要がないようにしたいと考えています。

Generate Package DDL UI を使用しないと、コマンド ラインからこれを行う方法がわかりません。EA ドキュメントリンクに情報がありません

これを自動化する方法を見つけた人はいますか?

4

1 に答える 1

1

はい、EA の API を使用して完全に実行可能です。

いわゆる「EA オブジェクト モデル」は、.NET および Java API だけでなく、EA 内部 (スクリプト) からも利用できます (「アドイン モデル」は .NET を介してのみ利用可能です)。RepositoryEA リポジトリとのやり取りは、との 2 つのクラスに基づいていますProject。したがって、コマンドラインの場合は、次のプログラムを作成する必要があります

  1. 関連する EA リポジトリに接続します --Repository::OpenFile
  2. Project インターフェースを取得します --Repository::GetProjectInterface
  3. パッケージと要素を取得します --Repository::Get[Package/Element]By[ID/Guid]
  4. DDL を生成します --Project::Generate[Package/Element]DDL

パッケージ/要素構造をトラバースするには、Package::PackagesおよびPackage::Elementsコレクションを使用します (場合によっては も使用しElement::Elementsますが、データベース モデルには通常、他の要素内に要素がありません)。

Project今後の読者のために、このクラスには、コード、WSDL、および XSD を生成する同様のメソッドも含まれていることに注意してください。

関連するヘルプ ファイル ページは、Automation and Scripting -- Enterprise Architect Object Model -- Reference (EA 10.0.1007) の下にあります。

  • リポジトリ パッケージ -- リポジトリ クラス
  • プロジェクト インターフェイス パッケージ -- プロジェクト クラス
  • リポジトリ パッケージ -- パッケージ クラス
  • リポジトリ パッケージ -- 要素クラス
  • リポジトリ パッケージ -- コレクション クラス
于 2013-07-15T05:15:02.837 に答える