NotifyForFields を All に設定した場合
PushTopic.NotifyForFields の値を All に設定した場合、レコードのいずれかの項目値が変更されると、ストリーミング API 一致ロジックがレコードを評価して通知を生成するかどうかを判断します。レコード項目値が変更されると、PushTopic クエリの SELECT 句または WHERE 句でこれらの項目が参照されているかどうかの評価が行われます。
| イベント | 通知が生成される条件 |
|---|---|
| レコードが作成される | レコード項目値が WHERE 句に指定された値と一致する。 |
| レコードが更新される | レコード項目値が WHERE 句に指定された値と一致する。 |
例
| PushTopic クエリ | 結果 |
|---|---|
| SELECT Id, f1, f2, f3 FROM Invoice_Statement__c | レコードのいずれかの項目値が変更された場合、通知を生成します。 |
| SELECT Id, f1, f2 FROM Invoice_Statement__c WHERE f3 = 'abc' AND f4 LIKE 'xyz' | レコードのいずれかの項目値が変更され、かつ f3 および f4 が WHERE 句の値と一致する場合、通知を生成します。 |
| SELECT Id FROM Invoice_Statement__c | ID が SELECT 句の唯一の項目である場合、いずれかの項目値が変更されると通知が生成されます。 |
| SELECT Id FROM Invoice_Statement__c WHERE f3 = 'abc' AND f4 LIKE 'xyz' | レコードのいずれかの項目値が変更され、かつ f3 および f4 が WHERE 句の値と一致する場合、通知を生成します。 |
| SELECT Id FROM Invoice_Statement__c WHERE Id IN ('a07B0000000KWZ7IAO', 'e10R0000000KEU9IAO', 'v32B0000000KWZ7YEP') | レコードのいずれかの項目値が変更され、かつレコード ID が WHERE 句の IN リストに含まれる場合、通知を生成します。 |
| SELECT Id, f1, f2 FROM Invoice_Statement__c WHERE Id IN ('a07B0000000KWZ7IAO', 'e10R0000000KEU9IAO', 'v32B0000000KWZ7YEP') | レコードのいずれかの項目値が変更され、かつレコード ID が WHERE 句の IN リストに含まれる場合、通知を生成します。 |
| SELECT Id, f1, f2 FROM Invoice_Statement__c WHERE f3 = 'abc' AND f4 LIKE 'xyz' AND Id IN ('a07B0000000KWZ7IAO', 'e10R0000000KEU9IAO', 'v32B0000000KWZ7YEP') | レコードのいずれかの項目値が変更され、かつ f3 および f4 が WHERE 句と一致し、かつレコード ID が WHERE 句の IN リストに含まれる場合、通知を生成します。 |