この文章は 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 つ以上のアクセスレベル項目 (HasReadAccessHasEditAccessHasDeleteAccessHasTransferAccessHasAllAccess) を使用する必要があります。MaxAccessLevel を含めることができます。
  • UserIdRecordId、およびアクセスレベル項目で絞り込む場合は、SELECT RecordId のみを使用する必要があります。