- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
Hi,
I want that when performing a global search, it should displays only the most recent published version of each Knowledge Article that matches search criteria.
Please do let me if you guys have any solution for this problem statement.
Regards,
Siddharth
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
Hi @siddharthjain09 ,
In ServiceNow, how Global Search works depends on the UI you’re using:
Next Experience UI → uses Search Sources
Core UI / UI15 → uses Search Groups
Since your requirement is to show only the latest published version of Knowledge Articles, you need to configure the Knowledge search source (Next Experience) or search group (Core UI) accordingly.
Next Experience UI
In Next Experience, Global Search is controlled by Search Sources.
A Search Source defines which table is searchable and what conditions should apply.
Navigation:
- All → System Definition → Search Sources
- Open the search source: Knowledge & Catalog – Knowledge, Open table: kb_knowledge
- In the Conditions field, add:latest = true AND workflow_state = published
Verify it is linked to Global Search
Navigation:
- All → AI Search → Search Experience → Search Applications
- Open: Now Experience Search Configuration
- Check Application Search Sources related list
- Make sure Knowledge source is present
for Core UI / UI15
Here Global Search uses Search Groups.
Navigation:
- All → System Definition → Search Groups
- Open: Knowledge & Catalog, Open Text Search Tables related list, Open table: kb_knowledge
- Add condition: latest = true AND workflow_state = published
Refer the below article for this
If Changes are not visible, rebuild the index
Next we have to rebuild the index to reflect our changes
Steps to Reindex (Full Table Index)
Navigation:
- All → AI Search → AI Search Index → Indexed Sources
- Open Indexed Sources → Select the source(s) you want to reindex
(You’ll see an alert icon if records are not indexed) - Click: Actions on selected rows…, Select: Index All Tables
- System will queue an indexing job, Open the record to monitor status: Ingestion State = Indexed → completed
How to monitor progress
- Open the indexed source
- Go to Indexed Source History
- Refresh page, Check: Status, Start time, Completion
Refer the below article for indexing
If this is useful, Please Mark it as helpful and Please Accept My Solution...
Best Regards
SIVASANKARI S
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
Hi @siddharthjain09 ,
In ServiceNow, how Global Search works depends on the UI you’re using:
Next Experience UI → uses Search Sources
Core UI / UI15 → uses Search Groups
Since your requirement is to show only the latest published version of Knowledge Articles, you need to configure the Knowledge search source (Next Experience) or search group (Core UI) accordingly.
Next Experience UI
In Next Experience, Global Search is controlled by Search Sources.
A Search Source defines which table is searchable and what conditions should apply.
Navigation:
- All → System Definition → Search Sources
- Open the search source: Knowledge & Catalog – Knowledge, Open table: kb_knowledge
- In the Conditions field, add:latest = true AND workflow_state = published
Verify it is linked to Global Search
Navigation:
- All → AI Search → Search Experience → Search Applications
- Open: Now Experience Search Configuration
- Check Application Search Sources related list
- Make sure Knowledge source is present
for Core UI / UI15
Here Global Search uses Search Groups.
Navigation:
- All → System Definition → Search Groups
- Open: Knowledge & Catalog, Open Text Search Tables related list, Open table: kb_knowledge
- Add condition: latest = true AND workflow_state = published
Refer the below article for this
If Changes are not visible, rebuild the index
Next we have to rebuild the index to reflect our changes
Steps to Reindex (Full Table Index)
Navigation:
- All → AI Search → AI Search Index → Indexed Sources
- Open Indexed Sources → Select the source(s) you want to reindex
(You’ll see an alert icon if records are not indexed) - Click: Actions on selected rows…, Select: Index All Tables
- System will queue an indexing job, Open the record to monitor status: Ingestion State = Indexed → completed
How to monitor progress
- Open the indexed source
- Go to Indexed Source History
- Refresh page, Check: Status, Start time, Completion
Refer the below article for indexing
If this is useful, Please Mark it as helpful and Please Accept My Solution...
Best Regards
SIVASANKARI S
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
hii @siddharthjain09
This is a common requirement with Knowledge Management.
By default, global search can return multiple versions of the same Knowledge Article if versioning is enabled. To make sure only the most recent published version is shown, you need to control how search indexes and filters knowledge records.
Below are the recommended approaches.
Approach 1. Use the “Published” and “Latest” flags
ServiceNow already maintains version related fields on the knowledge table.
What to check:
Ensure global search is filtering records where
Workflow state is Published
Latest is true
Only the latest published version of an article has the Latest field set to true. Older versions automatically have Latest set to false.
If global search is configured correctly, only those records should appear.
Approach 2. Update the Knowledge Search Source
Go to Global Search Sources and open the Knowledge search source.
Verify the conditions include:
Workflow state equals Published
Latest equals true
If Latest is missing, add it as a condition. This ensures older published versions are excluded from search results.
Approach 3. Rebuild the search index
After changing search conditions, rebuild the text index.
Steps:
Go to System Definition and Text Indexes
Rebuild the index for the Knowledge table
This is important, otherwise old versions may still appear in search results.
Approach
4. Verify Knowledge Versioning settings
Check Knowledge Properties and confirm:
Only one version is marked as Published at a time
Older versions are automatically retired or marked as not latest
If multiple versions are published, search will still show them.
*************************************************************************************************************
If this response helps, please mark it as Accept as Solution and Helpful.
Doing so helps others in the community and encourages me to keep contributing.
Regards
Vaishali Singh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
Hi @siddharthjain09 ,
Try
- Navigate to System Definition > Search Sources.
- Locate the search source used for Knowledge (typically Knowledge & Catalog – Knowledge).
- In the Conditions field, add the following filters:
- Latest is true
- Workflow state is Published.
- Re-index the Source: Navigate to AI Search > AI Search Index > Indexed Sources, select the kb_knowledge source, and click Index All Tables to apply the changes to the search index.
- Navigate to System Definition > Search Groups.
- Open the Knowledge & Catalog search group.
- Go to the Text Search Tables related list and open the kb_knowledge record.
- Add the same condition: latest=true^workflow_state=published.
- The 'Latest' Flag: The latest field (Boolean) is automatically managed by the Knowledge Management Advanced plugin. It is only set to true for the most current version of an article.
- Access Controls (ACLs): Ensure that users do not have custom "Read" ACLs that allow them to bypass these search conditions, as some legacy ACLs may still show retired or outdated versions if a user has the direct URL.
- Global Property: Ensure the property glide.knowman.versioning.enabled is set to true to maintain proper versioning logic.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
*Use kb_knowledge table (not kb_knowledge_version)
Global Search should always index kb_knowledge, because:
It stores only the latest published version
Older versions live in kb_knowledge_version
1)
Go to System Definition → Tables
Open kb_knowledge
Ensure Search enabled = true
2)Enforce Query Filter (If duplicates still appear)
Add this condition in the Search Source condition:
If available in your instance, also ensure:
If you find this helpul plz mark as helpful..
