項目履歴管理 Field History Tracking

[まとめページに戻る](https://qiita.com/Keiji_otsubo/items/60afc2a8d211b6f7d89f)
[まとめA～M](https://qiita.com/Keiji_otsubo/items/f3ddedee6793bf1576f8)


-------------------

+ [【ヘルプ】項目履歴管理](https://help.salesforce.com/s/articleView?id=sf.tracking_field_history.htm&type=5)
+ [項目履歴データを修正することはできるのでしょうか](https://trailhead.salesforce.com/trailblazer-community/feed/0D5KX00000KCmgN)

:::note
かなり以前からアイデアには上がっているのですが、項目履歴データとしてインポートはできないですね。 


回避策としては履歴用のカスタムオブジェクトを作って、フローなどの自動化処理で変更を記録することだと思います。これなら過去データのインポートも可能です 

https://ideas.salesforce.com/s/idea/a0B8W00000GdVX5UAN/import-field-history
:::

-------------------

+ [What is the difference between trackHistory and trackFeedHistory?](https://salesforce.stackexchange.com/questions/146008/what-is-the-difference-between-trackhistory-and-trackfeedhistory)

**trackFeedHistory** Will track changes to the Object in the Chatter Feed for that object. This is called Feed Tracked Changes.


オブジェクトの Chatter フィード内のオブジェクトへの変更を追跡します。これは、フィード追跡変更と呼ばれます。

+ These Feed Items are system generated and refered to as FTCs
+ FTCs older than 45 days are cleaned up automatically by the system.
+ Follow the FLS rules (you will only see changes to Fields you have access to)
+ It is customizable in the Setup UI for which fields / objects you are tracking.

You can only track 20 fields per object type (such as an Account or Order).
More Information: https://help.salesforce.com/articleView?id=collab_feed_tracking_overview.htm


**trackHistory** You can select certain fields to track and display the field history in the History related list of an object. The field history data is retained for up to 18 months.

特定のフィールドを選択して追跡し、オブジェクトの履歴関連リストにフィールド履歴を表示できます。フィールド履歴データは最大 18 か月間保持されます

You can enable field history tracking for standard objects in the object’s management settings.

When you enable tracking for an object, customize your page layouts to include the object’s history related list.

More Information: https://help.salesforce.com/articleView?id=tracking_field_history.htm


+ [Opportunity Field History not seen in fields.](https://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007HLfDaSAL)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/02dd9540-8d98-ef06-c4df-72446fc569b3.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/f2468314-b5ea-3776-78a8-27011708f719.png)


:::note
You need to check if somehow you missed field level security Click on the field and check field level security.

https://help.salesforce.com/s/articleView?id=sf.users_fields_fls.htm&type=5 

 If a trigger causes a change on an object the current user doesn’t have permission to edit, that change is not tracked. Field history honors the permissions of the current user. (Emphasis Added)

https://salesforce.stackexchange.com/questions/295316/field-history-tracking-control-access-to-history

何らかの理由でフィールド レベルのセキュリティを見逃していないか確認する必要があります。フィールドをクリックして、フィールド レベルのセキュリティを確認してください。


 現在のユーザーに編集権限がないオブジェクトがトリガーによって変更された場合、その変更は追跡されません。フィールド履歴は、現在のユーザーの権限を尊重します。 (強調追加)
:::

# トレイルヘッド

+ [Account History related listが表示されない](https://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007X6YLG)

:::note
このプレイグランドのAccountオブジェクトにレコードタイプは存在していますか？
もし、ある場合はページレイアウトが複数あると思います。
全てのページレイアウトに関連リストを追加してみてください。
:::


# レポート

+ [商談オブジェクトにカスタムフィールド（フィールド名：確度（現在））を作成しており、そのフィールドが更新されるたびにレポートに履歴を残す（行が追加される）ようにしたいと考えておりますが、現状は標準フィールド（フィールド名：確度（%））の更新履歴しか残りません。 ](https://trailhead.salesforce.com/trailblazer-community/feed/0D5KX00000MbJoD)

:::note
レポートのタイプを変更したら表示されるようになりました。
:::

+ [「項目 / 行動」で選択した項目について、更新された全ての履歴が表示されるのですが、 最新の更新された履歴だけレポートで表示したいです。 ](https://trailhead.salesforce.com/trailblazer-community/feed/0D5KX00000SV5rB)


:::note
英語の投稿ですが、回避策が提案されています。 

ただ私には今一つこれがいいのか理解できませんでした...  

たまたま１つの項目だけ追跡したいということだったので、フローで値を保存しているだけで、複数の項目がある場合には解決できないように思いました。 

https://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007cmUO2SAM
:::