ナレッジ
記事の概要
記事には、知識ベースで入手できるようにする会社の商品およびサービスに関する情報が取り込まれます。知識ベースの記事をデータカテゴリを使用して分類することにより、ユーザは必要な記事を見つけやすくなります。管理者は、データカテゴリを使用して記事へのアクセスを制御します。
- ナレッジ記事とナレッジ記事のバージョン
- 記事を操作する場合、KnowledgeArticle がすべての記事のバージョンの親レコードを表すことに注意してください。KnowledgeArticleVersion レコードは、特定の記事の各バージョンを表します。
- レコードタイプと記事タイプ
- 記事は、Lightning Experience と Salesforce Classic では異なった構造で表現されます。Lightning Knowledge では、別のカスタムオブジェクトで使用できるレコードタイプと同じものを使用して、異なるタイプの記事を構造化します (Knowledge__kav の RecordTypeId 項目を参照)。たとえば、レコードタイプごとに異なるレイアウトを使用できます。Salesforce Classic では、この機能は記事タイプによって実現できます (KnowledgeArticleVersion の ArticleType 項目を参照)。記事のタイプごとに、Salesforce Classic には個別のオブジェクトがあります (たとえば、FAQ 記事タイプの場合は FAQ__kav)。Lightning Knowledge では、レコードタイプを使用して処理されるため、タイプごとに個別のオブジェクトはありません。
- 利用者チャネル
- 利用者はチャネルと呼ばれることもあり、記事にアクセスできるユーザの種別を指します。Salesforce ナレッジでは、記事を利用可能にできるチャネルを 4 つ提供しています。
- 内部アプリケーション: Salesforce ユーザが、ロールの表示設定に応じて記事にアクセスできます。
- カスタマー: カスタマーはコミュニティ、サイト、カスタマーポータルの記事にアクセスできます。カスタマーユーザは、取引先でのマネージャのロール表示設定を継承します。コミュニティでは、カスタマーコミュニティまたはカスタマーコミュニティプラスライセンスを持つユーザのみが記事を使用できます。
- パートナー: パートナーはコミュニティ、サイト、パートナーポータルの記事にアクセスできます。パートナーユーザは、取引先でのマネージャのロール表示設定を継承します。コミュニティでは、パートナコミュニティライセンスを持つユーザのみが記事を使用できます。
- 公開知識ベース: 公開知識ベースを作成することで、記事を匿名ユーザに表示できます。Lightning Knowledge では、ほとんどの Salesforce 組織はコミュニティを使用して知識ベースを作成します。Salesforce Classic で Salesforce Knowledge 用の公開知識ベースを作成するには、サイトと Visualforce が必要です。
- 公開サイクル
- Salesforce ナレッジ記事は公開サイクルの作成から削除までの段階を移行していきます。公開サイクルには、3 つの異なる状況があります。Draft は、新しい記事が作成されるか既存の記事が更新される段階です。状況が Online である記事は、公開済みで、他のチャネルで利用できるようになったドラフト記事です。最後に、公開記事がサイクルの最終段階になると、Archived 状況に移行するか、または Draft に戻り後続のバージョンで更新されます。
API での記事の使用
記事は、API の KnowledgeArticleVersion オブジェクトおよび KnowledgeArticle オブジェクトを使用して利用できます。これらのオブジェクトは両方とも記事を表示しますが、異なる機能を提供します。
- KnowledgeArticleVersion
- Salesforce ナレッジの新しいドラフト記事には必ずバージョン番号があります。記事を公開しており、その記事を更新する必要がある場合は、個別のバージョン番号で新しい Draft を作成できます。各バージョンには独自の ID があります。更新されたバージョンを公開する準備が整ったら、前のバージョンと置き換え、バージョン番号を更新します。KnowledgeArticleVersion オブジェクトを使用して、記事バージョンの内容にアクセスしたり、Draft 状況または Online 状況で絞り込むことができます。たとえば、次のクエリではすべての記事タイプのすべての記事の Draft バージョンのタイトルをアメリカ英語で返します。
1SELECT Title 2FROM KnowledgeArticleVersion 3WHERE PublishStatus='Draft' 4AND language ='en_US'また、記事には記事番号が自動的に割り当てられます。この番号は個々の記事に対しては一意の ID ではありませんが、マスタ記事および利用可能なすべての翻訳に対しては 1 つの ID です。
- KnowledgeArticle
- KnowledgeArticleVersion とは異なり、KnowledgeArticle レコードの ID は、記事のバージョン (状況) に関係なく同じです。KnowledgeArticleVersion オブジェクトでは記事の��スタム項目値への API アクセスを提供する場合、KnowledgeArticle オブジェクトでは記事のメタデータ項目への API アクセスを提供します。
記事レコードは、公開の状況 (ドラフト、公開、アーカイブ済み) や言語を問わず、記事のすべてのバージョンの親コンテナです。KnowledgeArticle および KnowledgeArticleVersion は、知識ベースの任意の記事を表しますが、これらのオブジェクトの特定の記事には具象表現が使用されます。Lightning Knowledge では、これらの具象表現はデフォルトで Knowledge__ka (ナレッジ記事用) および Knowledge__kav (ナレッジ記事のバージョン用) になります。Salesforce Classic では、<Article Type>__ka と <Article Type>__kav を使用します。
次の Lightning Knowledge クエリでは、公開されたすべての FAQ 記事のタイトルがアメリカ英語で返されます。
1SELECT Title
2FROM Knowledge__kav
3WHERE PublishStatus='online'
4AND Language = 'en_US'
5AND RecordTypeId = '<specify RecordTypeId for FAQ here>'次の Salesforce Classic クエリでは、公開されたすべての Offer のタイトルがアメリカ英語で返されます。
1SELECT Title
2FROM FAQ__kav
3WHERE PublishStatus='online'
4AND language ='en_US'データカテゴリの概要
データカテゴリは、カテゴリグループ別に編成され、次のことを実行できます。
- ユーザによるレコードの分類および検索。
- システム管理者によるレコードへのアクセスの管理。
Salesforce ナレッジではデータカテゴリを使用して記事を分類し、簡単に検索できるようにします。たとえば、営業地域や商品で記事を分類するには、[Sales Regions (営業地域)] と [Products (商品)] という 2 つのカテゴリグループを作成します。[Sales Regions (営業地域)] カテゴリグループでは、[All Sales Regions (全営業地域)] を最上位として、第 2 レベルに [北米]、[アジア] というように、地理的階層を構成することができます。[Products (商品)] グループには、[すべての商品] を最上位として、第 2 レベルに [電話]、[コンピュータ]、[プリンタ] を含めることができます。
API でのデータカテゴリの操作
次の表に、データカテゴリを操作する API リストを示します。
| 名前 | 型 | 説明 |
|---|---|---|
| Knowledge__DataCategorySelection | Object | Lightning Knowledge での記事カテゴリへのアクセスを許可します。 |
| Article Type__DataCategorySelection | Object | Salesforce Classic のナレッジでの記事カテゴリへのアクセスを許可します。 |
| QuestionDataCategorySelection | Object | 質問カテゴリへのアクセスを許可します。 |
| WITH DATA CATEGORY filteringExpression | SOQL 句 | 公開サイクルおよびデータカテゴリの状況に応じて記事を分類します。詳細は、『Salesforce SOQL および SOSL リファレンスガイド』を参照してください。 |
| WITH DATA CATEGORY DataCategorySpec | SOSL 句 | カテゴリに基づいて記事を検索します。詳細は、『Salesforce SOQL および SOSL リファレンスガイド』を参照してください。 |
| describeDataCategoryGroups() | Call | 要求で指定されたオブジェクトで使用できるカテゴリグループを取得します。 |
| describeDataCategoryGroupStructures() | Call | 要求で指定されたオブジェクトで使用できるカテゴリグループとそのデータカテゴリ構造を返します。 |
| describeDataCategoryGroups | Apex メソッド | 指定したオブジェクトに関連するカテゴリグループのリストを返します。『Apex 開発者ガイド』を参照してください。 |
| describeDataCategoryGroupStructures | Apex メソッド | 要求で指定されたオブジェクトのデータカテゴリ構造と共に使用可能なカテゴリグループを返します。『Apex 開発者ガイド』を参照してください。 |
Salesforce ナレッジオブジェクト
このエンティティリレーションダイアグラム (ERD) は、Lightning Knowledge の Salesforce ナレッジオブジェクト間のリレーションを示します。
この ERD は、Salesforce Classic のオブジェクト間のリレーションを示します。
Additional Information (追加情報)
API を使用した知識ベースの管理についての詳細は、『ナレッジ開発者ガイド』を参照してください。
