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

UserRecordAccess

ユーザの一連のレコードへのアクセスを表します。このオブジェクトは参照のみで、API バージョン 24.0 以降で使用できます。

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

describeSObjects()、query()

項目

項目 詳細
HasAllAccess
型
boolean
プロパティ
Defaulted on create、Filter、Group、Sort
説明
ユーザがレコードを共有できるかどうかを示します。
HasDeleteAccess
型
boolean
プロパティ
Defaulted on create、Filter、Group、Sort
説明
ユーザにレコードに対する削除アクセス権があるか (true)、否か (false) を示します。
HasEditAccess
型
boolean
プロパティ
Defaulted on create、Filter、Group、Sort
説明
ユーザにレコードに対する編集アクセス権があるか (true)、否か (false) を示します。
HasTransferAccess
型
boolean
プロパティ
Defaulted on create、Filter、Group、Sort
説明
ユーザにレコードに対する転送アクセス権があるか (true)、否か (false) を示します。
HasReadAccess
型
boolean
プロパティ
Defaulted on create、Filter、Group、Sort
説明
ユーザにレコードに対する参照アクセス権があるか (true)、否か (false) を示します。
MaxAccessLevel
型
picklist
プロパティ
Group、Nillable、Restricted picklist、Sort
説明
ユーザのレコードに対する最大レベルのアクセス権を示します。
有効な値は、次のとおりです。
  • None
  • Read
  • Edit
  • Delete
  • Transfer
  • All
RecordId
型
picklist
プロパティ
Filter、Group、Restricted picklist、Sort
説明
レコードの ID。
UserId
型
reference
プロパティ
Filter、Group
説明
ユーザの ID。

使用方法

このオブジェクトを使用してユーザのレコードに対するアクセス権を照会します。[共有設定] 設定ページにリストされているオブジェクトのレコードのみを照会できます。このオブジェクトを使用してレコードを作成、削除または更新することはできません。

200 個までのレコード ID を照会できます。クエリで選択されている項目に対して ORDER BY 句を含めることができます。

次のサンプルのクエリでは、レコード、クエリ対象のユーザに各レコードに対する参照および転送アクセス権があるかどうか、および各レコードに対するユーザの最大アクセスレベルが返されます。

1SELECT RecordId, HasReadAccess, HasTransferAccess, MaxAccessLevel
2     FROM UserRecordAccess
3     WHERE UserId = [single ID]
4     AND RecordId = [single ID]      //or Record IN [list of IDs]

次のクエリでは、クエリ対象のユーザが参照アクセス権を持つレコードが返されます。

1SELECT RecordId
2     FROM UserRecordAccess
3     WHERE UserId = [single ID]
4     AND RecordId = [single ID]      //or Record IN [list of IDs]
5     AND HasReadAccess = true

API バージョン 30.0 以降では、UserRecordAccess はレコードの外部キーになります。このオブジェクトをルックアップまたは外部キーとして使用する場合は、UserId または RecordId 項目を検索条件に使用したり、指定したりすることはできません。前記のサンプルクエリは、次のように実行できます。

1SELECT Id, Name, UserRecordAccess.HasReadAccess, UserRecordAccess.HasTransferAccess, UserRecordAccess.MaxAccessLevel 
2      FROM Account
1SELECT Id, Name, UserRecordAccess.HasReadAccess 
2      FROM Account
SOQL 制限
  • 実行ユーザがレコードのセットに対するユーザのアクセスを照会する場合は、実行ユーザが参照アクセス権を持たないレコードは、結果から除外されます。
  • UserId および RecordId のみを使用して絞り込む場合は、SELECT RecordId および任意で 1 つ以上のアクセスレベル項目 (HasReadAccess、HasEditAccess、HasDeleteAccess、HasTransferAccess、HasAllAccess) を使用する必要があります。MaxAccessLevel を含めることができます。
  • UserId、RecordId、およびアクセスレベル項目で絞り込む場合は、SELECT RecordId のみを使用する必要があります。