この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Apex を使用してメンテナンス計画の作業指示を生成する

メンテナンス計画に対する [作業指示を作成] アクションは、Apex コードを使用してコールすることもできます。次のコードサンプルは、generateWorkOrder アクションの REST API リソースに対して Apex コールアウトを実行し、作業指示レコードを作成します。
このコードサンプルは、次の数通りの方法で使用できます。
  • Aura コンポーネントの Apex コントローラーコードに追加し、カスタム UI またはアプリケーション機能に関連付ける。
  • Apex トリガーで使用して、作業指示の作成を半自動化する (メンテナンス計画が作成または更新されるたびなど)。
  • Apex REST サービスで使用して、外部のインテグレーションサービスからコールされると作業指示を作成する。
  • このコードサンプルは、REST コールアウトを実行するためにリモートサイトの設定が有効になっていることを前提としています。詳細は、「リモートサイトの設定の追加」を参照してください。
  • コードサンプルの疑似メンテナンス計画 ID は 1MPR000000000Bu です。
  • このコードサンプルは API バージョン 45.0 を参照していますが、40.0 以降のバージョンで使用できます。

メモ

API Endpoint (v45.0): /services/data/v45.0/actions/standard/generateWorkOrders

1String salesforceHost = System.Url.getSalesforceBaseURL().toExternalForm();
2String url = salesforceHost + '/services/data/v45.0/actions/standard/generateWorkOrders';
3// Create HTTP request
4HttpRequest request = new HttpRequest();
5request.setEndpoint(url);
6request.setMethod('POST');
7request.setHeader('Content-Type', 'application/json;charset=UTF-8');
8request.setHeader('Authorization', 'OAuth ' + UserInfo.getSessionId());
9// Set the body as a JSON object
10request.setBody('{"inputs" : [{"recordId" : "1MPR000000000Bu"}]}');
11Http http = new Http();
12HttpResponse response = http.send(request);
13// Parse the JSON response
14if (response.getStatusCode() != 201) {
15    System.debug('The status code returned was not expected: ' +
16    response.getStatusCode() + ' ' + response.getStatus());
17} else {
18    System.debug(response.getBody());
19}