function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
NM03NM03 

プロファイルの権限によるハンドリング

いつもお世話になっております。

 

VisualForcePageから現在使用しているユーザーの

作成や削除といった権限をみて表示項目を変更したいと考えています。

 

Profileにある<objectPermissions>の<allowCreate>や<allowDelete>を

取得できれば制御することができると思うのですが、

VisualForcePageからのアクセス方法が今のところわからない状態です。

 

何か参考になりそうな資料や記事を知っている方がいましたら

教えてもらないでしょうか。

 

Best Answer chosen by Admin (Salesforce Developers) 
TylorTylor

おそらく、グローバル変数の{!$ObjectType}を使用すれば、

そのオブジェクトに対して、参照可能か、作成可能かなどのBoolean値が取得できます。

 

具体的には、

 

 

{!$ObjectType.Account.Accessible}
{!$ObjectType.Account.Createable}

 

 

前者は、オブジェクトに対して、ログインユーザが参照可能である場合、trueを返します。

後者は、オブジェクトに対して、ログインユーザが作成可能である場合、trueを返します。

 

グローバル変数について、私も参考資料が無くて困っている状態です。

 

グローバル変数については、こちらを!

 

ちなみに正しいやり方ではないのですが、ドキュメントが見つからないので・・・

私はApex Codeのドキュメントを参考に上記のグローバル変数を使用してます。

 

例えば、Apex Codeで削除が可能なのか取得する場合は、isDeletable()メソッドですが、

「is」の部分を省いて「Deletable」を使用することで、取得しています。

 

{!$ObjectType.Account.Deletable}

また、他で言うと「get」を省くとか・・・

 

ちゃんとした、ドキュメントが無いため信頼性に欠けますよね!

とりあえず、参考までに・・・

 

 

 

All Answers

TylorTylor

おそらく、グローバル変数の{!$ObjectType}を使用すれば、

そのオブジェクトに対して、参照可能か、作成可能かなどのBoolean値が取得できます。

 

具体的には、

 

 

{!$ObjectType.Account.Accessible}
{!$ObjectType.Account.Createable}

 

 

前者は、オブジェクトに対して、ログインユーザが参照可能である場合、trueを返します。

後者は、オブジェクトに対して、ログインユーザが作成可能である場合、trueを返します。

 

グローバル変数について、私も参考資料が無くて困っている状態です。

 

グローバル変数については、こちらを!

 

ちなみに正しいやり方ではないのですが、ドキュメントが見つからないので・・・

私はApex Codeのドキュメントを参考に上記のグローバル変数を使用してます。

 

例えば、Apex Codeで削除が可能なのか取得する場合は、isDeletable()メソッドですが、

「is」の部分を省いて「Deletable」を使用することで、取得しています。

 

{!$ObjectType.Account.Deletable}

また、他で言うと「get」を省くとか・・・

 

ちゃんとした、ドキュメントが無いため信頼性に欠けますよね!

とりあえず、参考までに・・・

 

 

 

This was selected as the best answer
NM03NM03

返答ありがとうございます。

 

ちょうど考えていた方法と似た形式だったことと

具体的な例まで示していただいたのでとても参考になりました。

ありがとうございます。

 

 

>ちなみに正しいやり方ではないのですが、ドキュメントが見つからないので・・・

 

やろうと思えばできるけど情報がないから仕方なくといったことはありますよね。。。。

探し方が悪いだけなのかもしれませんけど難しい部分です。