使われていない項目を見つける
項目が増えすぎると、入力されなくなります。
「入力してください」と言い続けるより、使われていない項目を消すほうが早いです。
どれが使われていないかを、標準機能だけで調べる方法を書きます。
なぜ入力されなくなるのか
運用が続くと、項目は増える一方です。「この情報も取っておきたい」という要望は次々に来ますが、 「もう使っていないので消しましょう」という声はほとんど上がりません。
結果として、商談の入力画面に40個も50個も項目が並びます。 営業の方は必須だけ埋めて保存します。当然です。 入力されないのは意識の問題ではなく、画面の問題です。
調べ方1:項目の参照先を見る
いちばん確実なのは、Salesforce標準の「参照先を検索」です。 設定画面から対象の項目を開き、「参照先を検索」をクリックすると、 その項目がレポート・数式・フロー・ページレイアウトなどのどこで使われているかが一覧で出ます。
ここが空なら、その項目はどこからも参照されていません。 ただし「参照されていない」と「値が入っていない」は別です。両方を確認します。
調べ方2:値が入っている件数を数える
値が入っているレコードが何件あるかは、レポートで数えられます。 ただし項目が数十個あると、1個ずつレポートを作るのは現実的ではありません。 そこで、開発者コンソールからまとめて数えます。
// 対象の項目に値が入っているレコード件数を数える List<String> fields = new List<String>{ 'Industry', 'Rating', 'AnnualRevenue', 'NumberOfEmployees' }; for (String f : fields) { String q = 'SELECT COUNT() FROM Account WHERE ' + f + ' != null'; Integer filled = Database.countQuery(q); System.debug(f + ' : ' + filled); }
開発者コンソールの匿名実行で走らせます。読み取りだけなので、本番環境でも安全です。
全体のレコード件数と比べて、値が入っているのが数パーセントなら、その項目は実質使われていません。
COUNT() は集計クエリなので、件数が多くても軽く終わります。
調べ方3:いつから使われていないかを見る
「昔は使っていたが最近は入っていない」という項目もあります。 この場合は、作成日で区切って数えます。
// 直近1年に作られたレコードだけで、値が入っている件数を数える String q = 'SELECT COUNT() FROM Account ' + 'WHERE Industry != null ' + 'AND CreatedDate = LAST_N_DAYS:365'; System.debug(Database.countQuery(q));
直近のレコードで0件なら、いま現場では使われていないと判断できます。
消す前に確認すること
3つあります。順番に確認してください。
| 確認すること | 理由 |
|---|---|
| 外部システムが参照していないか | Salesforceの中では参照されていなくても、API経由で外部システムが読んでいる場合があります。連携の一覧を持っていないと見落とします。 |
| 過去のレポートで使われていないか | 「参照先を検索」はレポートも拾いますが、保存されていない・個人フォルダにあるレポートは見えにくいことがあります。 |
| 値そのものが必要か | 入力されていないだけで、法令や監査で保管が必要な情報の場合があります。消す前に業務側に確認してください。 |
消し方の順番
いきなり削除しないでください。段階を踏みます。
ページレイアウトから外す
まず画面から消します。この時点でデータは残っているので、何かあれば戻せます。
1〜2か月様子を見る
「あの項目がなくなった」という声が出るかを確認します。出なければ、本当に使われていませんでした。
値をエクスポートしておく
削除するとデータも消えます。念のため、レポートで出力して保管します。
削除する
削除した項目はごみ箱に15日間残ります。この期間内なら復元できます。
まとめ
- 入力されないのは、項目が多すぎるからです
- 「参照先を検索」で、どこからも使われていない項目が分かります
COUNT()の集計クエリで、値が入っている件数をまとめて数えられます- 消す前に、外部システムからの参照と、業務側の必要性を確認してください
- レイアウトから外す → 様子を見る → 削除、の順番で進めます
あわせて読む
- 開催レポート:Salesforceの棚卸し会をやりました ── この記事の内容で勉強会をやった記録です。参加者の環境では3割から5割の項目に値が入っていませんでした
- Salesforceサポートプラン ── 棚卸しを一緒にやる場合はこちらで承ります