Search クラス
Search クラスのメソッドを使用して、動的な SOSL クエリを実行します。
名前空間
Search のメソッド
Search の静的メソッドを次に示します。
find(searchQuery)
SOSL WITH SNIPPET 句を指定できる動的な SOSL クエリを実行します。スニペットにより、Salesforce ナレッジ記事の検索結果にユーザー向けのコンテキストがより多く提供されます。
署名
public static Search.SearchResults find(String searchQuery)
パラメーター
- searchQuery
- 型: String
- SOSL クエリ文字列。
戻り値
find(searchQuery, accessLevel)
SOSL WITH SNIPPET 句を指定できる動的な SOSL クエリを実行します。スニペットにより、Salesforce ナレッジ記事の検索結果にユーザー向けのコンテキストがより多く提供されます。
署名
public static Search.SearchResults find(String searchQuery, System.AccessLevel accessLevel)
パラメーター
- searchQuery
- 型: String
- SOSL クエリ文字列。
- accessLevel
- 型: System.AccessLevel
- (省略可能) accessLevel パラメーターは、メソッドをシステムモードで実行するか (AccessLevel.SYSTEM_MODE)、ユーザーモードで実行するか (AccessLevel.USER_MODE) を指定します。システムモードでは、現在のユーザーのオブジェクト権限と項目レベル権限が無視され、クラスの sharing キーワードでレコード共有ルールが制御されます。ユーザーモードでは、現在のユーザーのオブジェクト権限、項目レベルのセキュリティ、および共有ルールが適用されます。デフォルトはシステムモードです。
戻り値
query(query)
動的 SOSL クエリを実行します。
署名
public static sObject[sObject[]] query(String query)
パラメーター
- query
- 型: String
- SOSL クエリ文字列。
- WITH SNIPPET 句を指定した SOSL クエリを作成するには、代わりに Search.find(String searchQuery) メソッドを使用します。
query(query, accessLevel)
動的 SOSL クエリを実行します。
署名
public static List<List<SObject>> query(String query, System.AccessLevel accessLevel)
パラメーター
- query
- 型: String
- SOSL クエリ文字列。
- WITH SNIPPET 句を指定した SOSL クエリを作成するには、代わりに Search.find(String searchQuery) メソッドを使用します。
- accessLevel
- 型: System.AccessLevel
- (省略可能) accessLevel パラメーターは、メソッドをシステムモードで実行するか (AccessLevel.SYSTEM_MODE)、ユーザーモードで実行するか (AccessLevel.USER_MODE) を指定します。システムモードでは、現在のユーザーのオブジェクト権限と項目レベル権限が無視され、クラスの sharing キーワードでレコード共有ルールが制御されます。ユーザーモードでは、現在のユーザーのオブジェクト権限、項目レベルのセキュリティ、および共有ルールが適用されます。デフォルトはシステムモードです。
suggest(searchQuery, sObjectType, suggestions)
名前またはタイトルがユーザーの検索クエリ文字列に一致したレコードまたは Salesforce ナレッジ記事のリストを返します。ユーザーが検索を実行する前に関連レコードまたは記事に移動するショートカットをユーザーに提供するには、このメソッドを使用します。
署名
public static Search.SuggestionResults suggest(String searchQuery, String sObjectType, Search.SuggestionOption suggestions)
パラメーター
- searchQuery
- 型: String
- SOSL クエリ文字列。
- sObjectType
- 型: String
- sObject 型。
- options
- 型: Search.SuggestionOption
- このオブジェクトには、提案結果を変更するオプションがあります。
- searchQuery によって KnowledgeArticleVersion オブジェクトが返された場合は、言語の KnowledgeSuggestionFilter と公開状況の KnowledgeSuggestionFilter を含む Search.SuggestionOption オブジェクトを使用して options パラメーターを渡します。
- 他のすべてのレコードタイプの提案は、サポートされているオプションのみに制限され、返される提案の最大数を設定します。
戻り値
使用方法
このメソッドによって次の情報が返されます。
- Salesforce ナレッジ記事 (KnowledgeArticleVersion) の提案
- Salesforce ナレッジが組織で有効になっている必要があります。ユーザーの「記事の参照」権限が有効化されている必要があります。
- ユーザーが参照する権限を持つデータカテゴリおよび記事タイプに基づいて、ユーザーがアクセスできる記事のみが推奨記事に含まれます。
- 他のレコードタイプの推奨
- 推奨レコードには、ユーザーがアクセス可能なレコードのみが含まれます。
- このメソッドは、レコード名項目が検索文字列のテキストで始まる場合にレコードを返します。また、検索文字列の最後にアスタリスクワイルドカード (*) を自動的に付加します。1 語内に検索文字列が含まれるレコードは、一致とは見なされません。
- レコードは、レコード名に検索文字列全体が見つかった場合に、検索文字列内での指定と同じ並びで推奨されます。たとえば、テキスト文字列 national u は national u* として扱われ、「National Utility」と「National Urban Company」は返されますが、「National Company Utility」や「Urban National Company」は返されません。
suggest(searchQuery, sObjectType, suggestions, accessLevel)
名前またはタイトルがユーザーの検索クエリ文字列に一致したレコードまたは Salesforce ナレッジ記事のリストを返します。ユーザーが検索を実行する前に関連レコードまたは記事に移動するショートカットをユーザーに提供するには、このメソッドを使用します。
署名
public static Search.SuggestionResults suggest(String searchQuery, String sObjectType, Search.SuggestionOption suggestions, System.AccessLevel accessLevel)
パラメーター
- searchQuery
- 型: String
- SOSL クエリ文字列。
- sObjectType
- 型: String
- sObject 型。
- suggestions
- 型: Search.SuggestionOption
- このオブジェクトには、提案結果を変更するオプションがあります。
- searchQuery によって KnowledgeArticleVersion オブジェクトが返された場合は、言語の KnowledgeSuggestionFilter と公開状況の KnowledgeSuggestionFilter を含む Search.SuggestionOption オブジェクトを使用して options パラメーターを渡します。
- 他のすべてのレコードタイプの提案は、サポートされているオプションのみに制限され、返される提案の最大数を設定します。
- accessLevel
- 型: System.AccessLevel
- (省略可能) accessLevel パラメーターは、メソッドをシステムモードで実行するか (AccessLevel.SYSTEM_MODE)、ユーザーモードで実行するか (AccessLevel.USER_MODE) を指定します。システムモードでは、現在のユーザーのオブジェクト権限と項目レベル権限が無視され、クラスの sharing キーワードでレコード共有ルールが制御されます。ユーザーモードでは、現在のユーザーのオブジェクト権限、項目レベルのセキュリティ、および共有ルールが適用されます。デフォルトはシステムモードです。
戻り値
使用方法
このメソッドによって次の情報が返されます。
- Salesforce ナレッジ記事 (KnowledgeArticleVersion) の提案
- Salesforce ナレッジが組織で有効になっている必要があります。ユーザーの「記事の参照」権限が有効化されている必要があります。
- ユーザーが参照する権限を持つデータカテゴリおよび記事タイプに基づいて、ユーザーがアクセスできる記事のみが推奨記事に含まれます。
- 他のレコードタイプの推奨
- 推奨レコードには、ユーザーがアクセス可能なレコードのみが含まれます。
- このメソッドは、レコード名項目が検索文字列のテキストで始まる場合にレコードを返します。また、検索文字列の最後にアスタリスクワイルドカード (*) を自動的に付加します。1 語内に検索文字列が含まれるレコードは、一致とは見なされません。
- レコードは、レコード名に検索文字列全体が見つかった場合に、検索文字列内での指定と同じ並びで推奨されます。たとえば、テキスト文字列 national u は national u* として扱われ、「National Utility」と「National Urban Company」は返されますが、「National Company Utility」や「Urban National Company」は返されません。