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

例: コールバックインスタンスを使用したイベントの公開

コールバックを起動するには、FailureCallback クラスのインスタンスを渡して EventBus.publish コールを実行します。コールバックを使用して、1 つのイベントまたはイベントのバッチを公開できます。

次の例では、2 つのイベントメッセージを公開します。この例では、Order Number の Text(18) 項目を使用して、プラットフォームイベント Order Event を定義する必要があります。FailureCallback クラスのデバッグログを表示するには、自動化プロセスユーザーのユーザー追跡フラグが設定されていることを確認します。詳細は、「コールバックの実行ユーザーとデバッグログ」を参照してください。この場合、公開がすべて成功したときは、onFailure() メソッドは呼び出されません。

1List<Order_Event__e> eventList = new List<Order_Event__e>();
2
3// Create event objects with prepopulated EventUuid fields.
4Order_Event__e event1 = (Order_Event__e)Order_Event__e.sObjectType.newSObject(null, true);
5event1.Order_Number__c='99';
6System.debug('event1 EventUuid: ' + event1.EventUuid);
7
8
9Order_Event__e event2 = (Order_Event__e)Order_Event__e.sObjectType.newSObject(null, true);
10event2.Order_Number__c='100';
11System.debug('event2 EventUuid: ' + event2.EventUuid);
12
13// Add event objects to the list.
14eventList.add(event1);
15eventList.add(event2);
16
17// Publish events with an instance of the failure callback.
18List<Database.SaveResult> results = EventBus.publish(eventList, new FailureCallback());
19
20// Inspect synchronous publishing result for each event.
21for (Database.SaveResult sr : results) {
22    if (sr.isSuccess()) {
23        System.debug('Successfully published event.');
24    } else {
25        for(Database.Error err : sr.getErrors()) {
26            System.debug('Error returned: ' +
27                        err.getStatusCode() +
28                        ' - ' +
29                        err.getMessage());
30        }
31    }
32}