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

RecordActionHistory

関連付けられたレコードでさまざまな状態を遷移する、ガイド付きアクションのライフサイクルを表します。API バージョン 44.0 以降で利用できます。

RecordActionHistory オブジェクトへのアクセス権は、関連付けられた親レコードへのユーザのアクセス権によって決まります。

メモ

サポートされ��いるコール

describeSObjects()query()retrieve()

特別なアクセスルール

このオブジェクトは常に参照のみです。

項目

項目 詳細
ActionDefinitionApiName
string
説明
必須。レコードに関連付けられたガイド付きアクションの API 参照名。
ActionDefinitionLabel
string
説明
必須。実行されたガイド付きアクションの表示ラベル。
ActionType
picklist
プロパティ
Defaulted on create、Restricted picklist
説明
必須。ガイド付きアクションの種別 (フロー など)。
IsMandatory
boolean
プロパティ
Create、Defaulted on create、Filter、Group、Sort、Update
説明
省略可能。アクションが必須かどうかを指定します。デフォルト値は false です。
LoggedTime
dateTime
プロパティ
Filter、Sort
説明
必須。状態の変更が発生したときのタイムスタンプ。
ParentRecordId
reference
プロパティ
Filter、Sort
説明
必須。関連付けられたアクションの親レコード。
Pinned
picklist
プロパティ
Defaulted on create、Nillable、Restricted picklist
説明
省略可能。アクションをガイド付きアクションリストコンポーネントの上部に固定表示するか下部に固定表示するかを指定します。デフォルト値は None です。
  • Top
  • Bottom
  • None
RecordActionId
string
プロパティ
Filter、Sort
説明
必須。RecordAction の ID。
State
picklist
プロパティ
Defaulted on create、Restricted picklist
説明
必須。アクションの状態。状態が変更されると、履歴イベントのログ出力がトリガされます。
  • Started
  • Paused
  • Resumed
  • Completed
  • Unlinked。フローが一時停止されて、フローインタビューの現在のレコードが変更されたため、アクションのリンクが解除されました。
UserId
reference
説明
必須。アクションを実行したユーザ。

使用方法

RecordActionHistory オブジェクトは、レコードでさまざまな状態 (開始、再開、一時停止、完了) を遷移する、ガイド付きアクションのライフサイクルを表します。

RecordActionHistory オブジェクトは Big Object です。このため、同期 SOQL、SOAP API、REST API、Bulk API、または Apex API を使用してこのオブジェクトを読み取る場合、クエリは特定のパターンに従う必要があり、従わない場合は失敗します。クエリは、次のいずれかのパターンと一致する必要があり、複数の項目を使用する場合は、この順序どおりに使用します。
  • ParentRecordId
  • ParentRecordId、LoggedTime (DESC)
  • ParentRecordId、LoggedTime (DESC)、RecordActionId

たとえば、次の SOQL クエリは ParentRecordId、LoggedTime (DESC) のパターンに従っています。

1SELECT ActionDefinitionApiName, User, State FROM RecordActionHistory WHERE
2          ParentRecordId = {CaseId} ORDER BY ParentRecordId, LoggedTime DESC

同期 SOQL クエリは、パターンに従う必要がなく、任意の項目を照会できます。

Apex トリガは Big Object レコードを参照できません。Apex で RecordActionHistory レコードを照会する場合は、SOQL クエリを使用してください。

Java の例

次に、Java での RecordActionHistory の照会方法の例を示します。
1public void queryHBPOs(String parentRecordId) {
2	  try {
3		  SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
4		  
5	      // query for the RecordActionHistory associated with ParentRecord      
6	      QueryResult queryResults = connection.query("SELECT ActionDefinitionApiName, LoggedTime, State " +
7	      		"FROM RecordActionHistory WHERE ParentRecordId = '" + parentRecordId + "' LIMIT 50");
8	      if (queryResults.getSize() > 0) {
9	        for (int i=0;i<queryResults.getRecords().length;i++) {
10	          // cast the SObject to a strongly-typed RecordActionHistory
11	          RecordActionHistory raa = (RecordActionHistory)queryResults.getRecords()[i];
12	          System.out.println("ActionDefinitionApiName: " + raa.getActionDefinitionApiName() + " - LoggedTime: "+ format.format(raa.getLoggedTime().getTime()) + " - State: " +
13	              raa.getState());
14	        }
15	      }
16	  } catch (Exception e) {
17	      e.printStackTrace();
18	  }
19  }