

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Control-M Planning でジョブとスケジュールを作成する
<a name="jobs-schedules-control-m"></a>

これで、AWS 接続用のジョブタイプと接続プロファイルがデプロイされたので、ジョブの作成と実行を開始できます。

各 AWS Mainframe Modernization サービスジョブは、4 つのセクションの一連の属性で構成されます。各セクションには多数の属性があります。次のリストは、より一般的に使用される属性の一部を示しています。
+ 全般:
  + ジョブの名前
  + ジョブが属するアプリケーションおよびサブアプリケーション
  + 送信する JCL
  + ドキュメントへのリンク
+ スケジューリング:
  + このジョブを実行できる月日
  + ビジネス会計期間、祝日、またはアルゴリズムで定義できないその他の特別な日付などのカレンダー
  + 時間枠
  + 周期的行動
+ 前提条件:
  + アップストリームの依存関係 (通常は、正常に完了しなければ実行できないジョブ)
  + 必要になる可能性のあるリソース
  + 必要になる可能性のあるユーザーアクション
+ ジョブの完了時に Control-M が実行するアクション:
  + ジョブの成功または失敗の判断 (通常はジョブの完了コードに基づきますが、出力テキストを使用するか、特定のステータスをチェックするようにその設定を上書きできます)
  + 失敗または成功の通知 (E メールなど)
  + ダウンストリームの依存関係の公開状況

接続プロファイルと同様、ジョブも [GUI](https://documents.bmc.com/supportu/9.0.21/en-US/Documentation/Creating_a_Job.htm) または [JSON](https://docs.bmc.com/docs/automation-api/monthly/code-reference-1116950299.html) で Control-M Automation API を使用して作成およびデプロイできます。

以下のセクションでは、いくつかの一般的なワークフローシナリオについて説明します。
+ [以前のジョブのステータスコードに基づいてジョブを開始する](status-code.md)
+ [スケジュールされた頻度でジョブ実行を自動化する](scheduled.md)
+ [基本ジョブはイベントに基づいて実行される](event-based.md)

# 以前のジョブのステータスに基づいてジョブを開始する
<a name="status-code"></a>

ワークフローと呼ばれるジョブのフローを作成します。ワークフロー内のジョブは、前のジョブが正常に完了すると依存関係と相互に連結されます。

## Control-M ウェブ GUI の使用
<a name="using-gui"></a>

Control-M ユーザーインターフェイスからジョブを開始するには、次の手順を実行します。

1. **Planning** ドメインで、新しい **Workspace** を追加します。これにより、空のフォルダーオブジェクトを含むキャンバスが開きます。

1.  AWS Mainframe Modernization ジョブタイプ (指定されたジョブタイプテンプレートを使用している場合は [M2JOB](https://github.com/aws-samples/aws-mainframe-modernization-controlm-integration/blob/main/assets/AWS-jobs.json) と呼ばれます) を選択し、フォルダにドラッグします。

1. ジョブタイプの色が緑色に変わったら、ドロップします。右側のペインには、**全般**、**スケジュール**、**前提条件**、**アクション**のセクションがあります。ジョブを作成するには、[Control-M ドキュメント](https://documents.bmc.com/supportu/9.0.21/en-US/Documentation/Creating_a_Job.htm)の標準手順を参照してください。

1. 次に、**ジョブタイプを設定するには、ジョブ名**の値が必要です。**ジョブ名の**値は、コンソールの AWS Mainframe Modernization **アプリケーション**定義画面で、または [ListBatchJobDefinitions API](https://docs.aws.amazon.com/m2/latest/APIReference/API_ListBatchJobDefinitions.html) を実行して確認できます。このパイロットでは、複数のジョブに対してステップ 2～4 を繰り返し、それぞれに任意の名前を付けます。名前の例は、`CBANK`、`CURRENCY`、I`NVFUNDS`、`BROKERAGE`、`RISKMGMT`、および です`BANK-SERVICE-Managed-M2`。

1. これらのジョブを必要なフローに接続するには、ジョブオブジェクトの下にある条件三角形を選択し、次のジョブにドラッグします。たとえば、 で条件三角形を選択し`CBANK`、 にドラッグします`CURRENCY`。このアクションは `CBANK` の前身になります`CURRENCY`。デフォルトでは、CURRENCY の実行対象になる前に、 が正常に完了`CBANK`する必要があります。

次のスクリーンショットは、基本的なジョブフローの Control-M Planning ビューを示しています。



![\[左側のジョブフローと右側のプロパティ。\]](http://docs.aws.amazon.com/ja_jp/prescriptive-guidance/latest/control-m-batch-scheduler/images/workflow-control-m-web-1.png)


画像提供: BMC Software, Inc. ©2022

## JSON の使用
<a name="using-json"></a>

同じフローを JSON でコーディングできます。

```
{
  "Defaults": {
    "Application": "AWSM2",
    "SubApplication": "Replatform-Managed",
    "Job": {
      "Host": "ctm-worker",
      "Output": {}
    }
  },
  "jog-managed-m2": {
    "Type": "Folder",
    "ControlmServer": "psctm",
    "OrderMethod": "Manual",
    "SiteStandard": "_z_DemoBusinessFlows",
    "CBANK": {
      "Type": "Job:AWS Mainframe Modernization",
      "ConnectionProfile": "MANAGED-M2-REPLATFORM",
      "JCL Name": "iefbr14",
      "Retrieve CloudWatch Logs": "checked",
      "Action": "Start Batch Job",
      "Application Version": "1"
    },
    "CURRENCY": {
      "Type": "Job:AWS Mainframe Modernization",
      "ConnectionProfile": "MANAGED-M2-REPLATFORM",
      "JCL Name": "iefbr14",
      "Retrieve CloudWatch Logs": "checked",
      "Action": "Start Batch Job",
      "Application Version": "1"
    },
    "BROKERAGE": {
      "Type": "Job:AWS Mainframe Modernization",
      "ConnectionProfile": "MANAGED-M2-REPLATFORM",
      "JCL Name": "iefbr14",
      "Retrieve CloudWatch Logs": "checked",
      "Action": "Start Batch Job",
      "Application Version": "1"
    },
    "INVFUNDS": {
      "Type": "Job:AWS Mainframe Modernization",
      "ConnectionProfile": "MANAGED-M2-REPLATFORM",
      "JCL Name": "iefbr14",
      "Retrieve CloudWatch Logs": "checked",
      "Action": "Start Batch Job",
      "Application Version": "1"
    },
    "RISKMGMT": {
      "Type": "Job:AWS Mainframe Modernization",
      "ConnectionProfile": "MANAGED-M2-REPLATFORM",
      "JCL Name": "iefbr14",
      "Retrieve CloudWatch Logs": "checked",
      "Action": "Start Batch Job",
      "Application Version": "1"
    },
    "BANK-SERVICE-Managed-M2": {
      "Type": "Job:SLAManagement",
      "ServiceName": "Bank Service - Managed M2",
      "RunAs": "ctmagent",
      "CompleteBy": {
        "Time": "12:00",
        "Days": "0"
      }
    },
    "leftbranch": {
      "Type": "Flow",
      "Sequence": [
        "CURRENCY",
        "RISKMGMT",
        "BANK-SERVICE-Managed-M2"
      ]
    },
    "middlebranch": {
      "Type": "Flow",
      "Sequence": [
        "CBANK",
        "CURRENCY",
        "INVFUNDS",
        "BANK-SERVICE-Managed-M2"
      ]
    },
    "rightbranch": {
      "Type": "Flow",
      "Sequence": [
        "CURRENCY",
        "BROKERAGE",
        "BANK-SERVICE-Managed-M2"
      ]
    }
  }
}
```

このフローをデプロイするには、デプロイサービスを使用します。

```
ctm deploy folder-MANAGED-M2-REPLATFORM.json
```

# スケジュールされた頻度でジョブ実行を自動化する
<a name="scheduled"></a>

前のステップで作成したフローを使用して、基本スケジュールとランタイムスケジュールを追加できます。
+ 基本スケジュールでは、ジョブを実行できる日 (平日、稼働日のみ、月末、四半期末など) を定義します。
+ ランタイムスケジューリングは、ジョブが実行可能な日にいつ実行されるかを決定します (たとえば、1 時間ごと、指定されたリソースが利用可能になった後、または手動確認の後のみ）。

基本スケジュールとランタイムスケジュールは、**[スケジューリング]** タブで設定できます。

# 基本ジョブはイベントに基づいて実行される
<a name="event-based"></a>

Control-M Managed File Transfer (MFT) は、FTP/SFTP クライアントおよびサーバーとして機能し、ローカルホストとリモートホスト間のファイルの監視や転送に使用できます。File Transfer ジョブの定義に関する詳細は、[Control-M のドキュメント](https://documents.bmc.com/supportu/9.0.21/en-US/Documentation/File_Transfer_Job.htm)を参照してください。

このパイロットでは、File Transfer ジョブを使用して、`bmc-poc-bucket` という名前の S3 バケット内の `/bmcfile` フォルダーにある、拡張子が .poc のファイルのファイル作成イベントを監視します。このイベントが発生すると、Control-M ジョブが開始され、次のジョブが実行されます。オプションで、バケット名を含むフルパスを渡すことができます。