FeedComment
サポートされているコール
create()、delete()、describeSObjects()、getDeleted()、getUpdated()、query()、retrieve()、search()、update()、upsert()
特別なアクセスルール
フィードコメントを使用する場合、次の点に注意してください。
- FeedComment レコードを表示するには、フィードの親種別への参照アクセス権が必要です。
- コメントを追加するにはフィードにアクセスできる必要があります。
- コメントがユーザレコードに関連する場合、そのユーザはコメントを削除できます。たとえば、John Smith が Sasha Jones のプロファイルフィードについてコメントをした場合、Sasha はそのコメントを削除できます。
- コンテキストユーザが「Chatter フィードにシステム項目値を挿入」ユーザ権限を持っている場合、システム項目である CreatedBy と CreatedDate で、create 項目プロパティを使用できます。移行時に、コンテキストユーザはこれらの項目に対して元の投稿作成者とその作成日を設定できます。移行後は、これらの項目は更新できません。
作成したすべてのフィード項目を削除することができます。自分が作成していないフィード項目を削除するには、次のいずれかの権限が必要です。
- 「すべてのデータの編集」
- フィードに関連付けられたオブジェクトに対する「すべて変更」権限および親フィードに対する削除権限
- 「Chatter のモデレート」
- 「リストに記載しないグループの管理」
この権限を持つユーザのみがリストに記載しないグループの項目を削除できます。
項目
| 項目 | 詳細 |
|---|---|
| CommentBody |
|
| CommentType | |
| FeedItemId |
|
| HasEntityLinks |
|
| InsertedById | |
| IsRichText |
|
| IsVerified |
|
| LastEditById |
|
| LastEditDate |
|
| ParentId |
|
| RelatedRecordId |
|
| Revision |
|
| Status |
|
| SystemModstamp |
|
| ThreadChildrenCount |
|
| ThreadLastUpdatedDate |
|
| ThreadLevel |
|
| ThreadParentId |
|
使用方法
-
API バージョン 23.0 以降、「すべてのデータの参照」権限がある場合は、ID 条件を使用せずに FeedComment レコードを直接照会できます。「すべてのデータの参照」権限がない場合、ID 条件を使用するかどうかにかかわらず、FeedComment レコードを直接照会することはできません。
たとえば、次のクエリは、フィードの一般情報を返します。1SELECT ID, CreatedDate, CreatedById, CreatedBy.FirstName, 2 CreatedBy.LastName, ParentId, Parent.Name, Body 3FROM FeedItem 4WHERE CreatedDate > LAST_MONTH 5ORDER BY CreatedDate DESC, Id DESC -
SOSL を使用してコメント内のテキストを検索できます。たとえば、次の Java クラスでは search() を使用してレコードの任意の項目内の「foo」という文字列を検索します。
1public void searchSample() { 2 try { 3 SearchResult sr = connection.search("find {foo} in all fields " + 4 "returning feedcomment(Id, FeedItemId, CommentBody)"); 5 // Put the results into an array of SearchRecords 6 SearchRecord[] records = sr.getSearchRecords(); 7 // Check the length of the returned array of records to see 8 // if the search found anything 9 if (records != null && records.length > 0) { 10 System.out.println("Found " + records.length + " comments: "); 11 // Display each comment 12 for (SearchRecord record : records) { 13 FeedComment comment = (FeedComment) record.getRecord(); 14 System.out.println(comment.getId() + ": " + 15 comment.getCommentBody()); 16 } 17 } else { 18 System.out.println("No records were found for the search."); 19 } 20 } catch (ConnectionException ce) { 21 ce.printStackTrace(); 22 } 23} - Apex トリガを使用して FeedComment オブジェクトの Body を変更する場合、すべてのメンションのハイパーリンクはプレーンテキスト形式に変換されます。メンションされたユーザにはメール通知は送信されません。