1

コマンドライン経由で既存の xpo-export を ax2009 aot にインポートし、その後、このインポートされた xpo だけをコンパイルする方法を探しています。グーグルはコマンドラインでaot全体をコンパイルする方法を教えてくれますが、これにはかなり時間がかかります。xpo (共有プロジェクト) をインポートして、これらのオブジェクトだけをコンパイルする方法はありますか?

インポートする必要があるオブジェクトが ax によってバージョン管理され、チェックインされている場合、どのような可能性がありますか?

オプションでチェックアウト、インポート、上書きの回避 - 質問、コンパイル、実行を自動化する簡単な方法を望んでいます;)

前もって感謝します!

4

2 に答える 2

0

過去 2 年間、私は XPO を AX 4.0 に展開するためのコマンド ライン プロセスを導入し、改善してきました。前述のように、クラス SysAutoRun が重要です。以下は、結果のプロセスの簡単な説明です。

  1. 開発者は AX オブジェクトを AOT から対応するフォルダー (レイヤー)、つまり CUS、VAR などにエクスポートします。ほとんどの場合、ファイル名は AX によって設定された既定のファイル名です。
  2. このシナリオでは、開発者は SVN を使用してコミットします。これは、ニーズを満たすために評価する必要があります。
  3. ビルド プロセスのコンソール アプリケーションは、各ディレクトリ (レイヤー) からすべてのファイル名を読み取り、対応する AX プロジェクト定義ファイルを作成します。
  4. コンソール アプリケーションは、各ディレクトリからすべてのファイル名を読み取り (再度)、対応するレイヤー (フォルダー) ごとにインポート定義ファイルを作成します。上記で作成されたプロジェクト定義も、他のすべてのオブジェクトがロードされ、最終的にコンパイルされた後にインポートされるように指示されています。インポート定義には、SysAutoRun.execCommand(XmlNode _command) メソッドによって認識されるいくつかの特殊な要素が含まれています。
  5. ax32.exe "config.axc" への呼び出しが行われます -StartupCmd=AUTORUN_ImportDefinitionMentionedAbove.xml -lazyclassloading -lazytableloading -nocompileonimport -internal=noModalBoxes
  6. AX はこのインポート定義ファイルを解析し、指示に従ってカスタマイズを呼び出します。コンパイル結果を XML ログ ファイルに出力するプロセスにロギングが追加されました。最後に、手順 3 のプロジェクト定義ファイルがコンパイルされます。
  7. コンソール アプリケーションは、出力された XML ログを検証し、適切に処理します。
  8. 手順 5 ~ 7 は、各 (フォルダー) レイヤーに対して繰り返されます。

これが非常に曖昧であることは理解しています。この投稿の目的は、プロセスの説明に時間を費やす前に、関心に関するフィードバックを得ることです。インポート定義ファイルは、オブジェクトを正しい順序でロードし、ORM を同期し、コンパイルし、繰り返すなどの役割を果たしているため、おそらく最も重要です...

ありがとうM@

于 2011-01-06T23:18:20.770 に答える
0

独自の起動コマンドを作成できます。

  1. 新しいクラスを作成して拡張するSysStartupCmd
  2. クラスを呼び出すconstructメソッドを変更します。SysStartupCmd
  3. parmこれには、変数の解析が含まれます。

また、コードでチェックイン/チェックアウトを呼び出したり、コンパイル エラーを処理したりして、バージョン管理に対処する必要があります。

簡単な方法はありません。これは複雑なことです。

于 2010-09-21T12:00:05.530 に答える