tyoshikawa1106のブログ

- Force.com Developer Blog -

SFDC:プロファイル作成時に注意すること

SalesforceではSOQLクエリを実行してプロファイル情報を取得することができます。このときですが、プロファイルには一意になるDeveloperName的な項目が存在しません。そのためName項目を条件に指定する必要があります。


ですが、プロファイルのName項目は標準/カスタムで同じ名前で作成することができてしまいます。おそらくName以外に一意のキーになる項目は存在しないので、このNameが重複しないように管理する必要があります。


また、標準のプロファイル名はユーザの言語によって自動で翻訳されます。カスタム表示ラベルで管理するようにしておくと後々メンテナンスがしやすくなると思います。


上記内容についてリンク先のスライド9〜16でまとめてあります。リンク先のスライドにはその他にもよくあるトラブルについていくつか記載しておきました。
f:id:tyoshikawa1106:20160628015338p:plain

環境依存しないSalesforce組織の作り方


トラブルが起きてから対処するのは難しいものもあるので、対処できるところは予め対処しておくと大きな問題になるのを回避できると思います。


SOQLクエリでカスタムプロファイルの判定ができない件については StackOverflowなどにも投稿がありました。(※一応、作成日で判定する方法もあるとAnswerがありました。もう同じ名前で作成して運用されてるときはもしかするとこれで解決できるかも...)


一応DiscussionForumにも同じような対処方法について記載がありました。

get Custom profile names in SOQL - Salesforce Developer Community

補足メモ

システム管理者プロファイルをAdminと命名するとAPI経由で取得しようとした際に取得に失敗するとのことです。