Trac/Redmine/WordPress/Salesforce/git/Atlassian製品など管理ツールをCentOSで運用していくログ。Tracやプラグインのマニアックな部分をフォローしています。2014/10/7Salesforceでアカウント毎に特定項目を非表示にしたいときの注意点Pocketユーザからの入力時に必須項目を設けたいWeb-to-リードを利用したいログインアカウントによってページレイアウトを変更して閲覧できる情報を制限したい例えばこのような要件があった場合を想定する。実はできませんでしたといった落とし穴があるのでメモ。標準項目は、必須にはできません。必須項目は、すべてのレコードタイプで必須です。必須項目は、項目レベルセキュリティに関係なく、編集ページに常に表示されます。ページレイアウトを設計するとき、必須項目は次の制約を持ちます。ページレイアウトから削除できません。ページレイアウトに存在しない場合には、ページレイアウトの最初のセクションの終わりに自動的に追加されます。参照のみまたは省略可能には設定できません。常に可視であることを表す太字で表示されます。項目プロパティページでは、必須設定を削除できないため、無効になります。インポートファイルに必須項目を入れないと、インポートが失敗します。よって検証されません。要求を送信しても、無効なデータは保存されません。カスタム項目が通貨項目の場合に、ユーザが数値ではなく「Abc」などの英字を入力しても、要求は送信されますが、カスタム通貨項目に値は保存されません。必須項目の考慮事項いくつか重要そうなものを引用させてもらったが、ページレイアウトから必須項目は削除できないなど、レイアウトに関する制約で困ることが多いため、アカウントによって表示項目を制限している場合は、必須項目を利用しないほうがよい。リード状況リードの標準項目で必須となっているのは上記3件。必須項目でもないのに「メール」がページレイアウトから削除できないのは謎。「姓(必須)」+「名(任意)」から生成された項目だということ。POSTする項目ではない。必須項目になっているのは実は「姓」だけ。制約は「名前」のほうにつく。そのため「名前」にアカウント毎に表示・非表示を制御したい内容を入れてしまうと、ページレイアウトでの制御ができなくなるため、絶対に入れてはいけない。同じ用途のカスタム項目を作成する必要がある。URL必須項目についてアカウント毎に出し分けをする必要もなく、かつ入力必須にしたいものだけを必須項目にすればいいかと。入れる側の箱で制限する必要はないのではないかと思う。?返信をキャンセルする。