0

Control-M ジョブを動的に作成することは可能ですか。

やりたいことは次のとおりです。2 つのジョブを作成します。1 つ目はディスカバリ ジョブ、2 つ目はテンプレート ジョブと呼びます。

検出ジョブはデータベースに対して実行され、パラメーターの配列が返されます。次に、返された配列内の各要素のテンプレート ジョブを開始し、その要素をパラメーターとして渡します。したがって、検出ジョブが [a1,a2,a3] を返した場合、テンプレート ジョブを 3 回開始します。1 回目はパラメーター a1、2 回目はパラメーター a2、3 回目はパラメーター a3 です。

各テンプレート ジョブが正常に終了した場合にのみ、検出ジョブが正常に完了したと表示されます。テンプレート ジョブ インスタンスの 1 つが失敗した場合、その 1 つのインスタンスを手動で再試行でき、成功すると検出ジョブが成功するはずです。

これは可能ですか?もしそうなら、これはどのように行うべきですか?

4

2 に答える 2

0

これは、Control-M のさまざまなコンポーネント間で可能です。

元のジョブには On/Do タブがあり、最初のジョブの出力に基づいて後続のアクションを実行できます。これはさまざまな方法で機能するように設定できますが、基本的には「y が発生したら x を実行する」という原則に基づいて機能します。'y' は、ジョブ ステータス (ok または not) 終了コード (0 または not) または標準出力のテキスト文字列 (たとえば、「システムは、さらに 3 つのジョブを実行する必要があります」) にすることができます。'x' は、ジョブの要求、特定の条件の追加、変数の設定などの全リストにすることもできます。

自動編集変数をチェックアウトする必要があります (最新バージョンではこれらの名前が変更されていると思います) が、これらはユーザー定義の変数です (ctmvar ユーティリティを使用してこれらを定義/変更します)。変数は、特定のジョブに対してのみ、またはシステム全体に対して定義できます。

必要な程度の制御が得られない場合、次のステップは ctmcreate ユーティリティを使用することです。これにより、完全なオンザフライ ジョブ定義が可能になります。

于 2015-10-05T16:38:39.273 に答える