Salesforce 変更データキャプチャ

trailhead.salesforce.com

 

適用範囲:

標準オブジェクト或いはカスタマイズオブジェクトのレコードは更新の際、外部システムや別のオブジェクトなどに外部システムと継続的に同期や別のDML操作を実施の場合。

 

trigger トリガーメソッド名 on 対象オブジェクトAPI__ChangeEvent (after insert) {

for (Employee__ChangeEvent event : Trigger.New) {

// Get some event header fields

   対象オブジェクトAPI__ChangeEvent header = event.ChangeEventHeader;

System.debug('Received change event for ' +

header.entityName + ' for the ' +

header.changeType + ' operation.');

// For update operations, we can get a list of changed fields

if (header.changetype == 'UPDATE') {

System.debug('List of all changed fields:');

for (String field : header.changedFields) {

if (null == event.get(field)) {

System.debug('Deleted field value (set to null): ' + field);

} else {

System.debug('Changed field value: ' +

field + '. New Value: ' + event.get(field));

}

}

}

 

各変更項目名と値は取得できます。