1

現在のユーザが書き込みアクセス権を持つアカウントのみを (SOQL を使用して) 返す方法はありますか?

たとえば、特定のアカウントに移動して [共有] ボタンをクリックすると、そのレコードにアクセスできるユーザー (およびグループ) のリストが表示されます。これらのユーザの 1 人としてログインすると、(Visualforce ページのカスタム コントローラを介して) SOQL ステートメントを実行して、取引先レコードを取得できます。ただし、ユーザーがそのレコードへの書き込み (または編集) のアクセス許可を持っている場合にのみ、アカウント レコードが返されるようにしたいと考えています。何か案は?前もって感謝します!

4

1 に答える 1

1

共有を強制する方法は、with sharingキーワードを使用することです。何らかの理由でこれを行いたくない場合は、DML ステートメントを try ブロックの catch でラップできますDMLExceptiongetDmlType()例外オブジェクトを呼び出して、失敗がアクセス許可に関連しているかどうかを確認します。ステータスコードは になると思います System.StatusCode.INSUFFICIENT_ACCESS_OR_READONLYステータス コードのある程度完全なリストを次に示します。

于 2011-12-14T17:43:02.513 に答える