Search

Free-text search across an entity and its compositions, pushed into the database rather than filtered in the service. Declared search, database similarity search and filtering in application code are often lumped together.

Overview

InCAPassessed
SAP SHIPS
Node.js →

@sap/cds Compiles @cds.search into database-level search predicates and serves $search on exposed collections.

Java →

com.sap.cds:cds-services-bom Adds a search predicate to a CQL Select query over an entity's searchable elements, matched with a search term or a search expression built from AND, OR and NOT operators.

Not covered: At a substring match on text in the service's own database, such as like '%Heights%' in standard SQL: matching that tolerates typing errors and sorts by score is a feature of SAP HANA Cloud, and $search inside $expand is marked n/a for Node.js and Java. Describing searchable entities, autocomplete fields and navigation targets to a search UI across services is outside it, and is what the annotations of @kamlendra/search-vocab are for.

@kamlendra/search-vocab is independent and executes no search of its own; how its vocabulary relates to @cds.search has not been assessed.

THE COMMUNITY ADDS

InABAPassessed

In ABAP search is declared on a CDS view and executed by SAP HANA; outside CDS, or on Oracle, similarity search is written in AMDP or through ADBC.

SAP SHIPS

ABAP CDS search annotations mark a view with @Search.searchable and its elements for text and fuzzy search, which runs on the search functions SAP HANA provides.

Not covered: At SAP HANA and the annotations. A system on another database, or a similarity measure the annotations do not expose, needs the search written in ABAP against the database directly.

THE COMMUNITY ADDS

No community artifact is documented here.

Artifacts3

3 of 3 artifacts
ArtifactSignals
CDS plugins1
@kamlendra/search-vocabCDS annotation vocabulary for entity search with schema discovery
Signals
Functional boundary
Packages2
@sap/cdsCAP Node.js runtime
Signals
none
com.sap.cds:cds-services-bomMaven bill of materials pinning CAP Java module versions
Signals
none

Content6

Group by
Piece, what it offers
Building an SAP BTP Agent Architecture from Scratch: Python + CAP + HANA
SAP Community, neilaspin, Blog
Understanding Fuzzy Search in SAP Fiori Applications
SAP Community, Ruchi5, Blog
Semantic search in CAP (Node.js): vector embeddings and cosine similarity
SAP Community, Nico Schoenteich, BlogThe reasoningRunnable code
Show 3 more
[Part – 2] Enrich CAP based Services with Behaviors using Annotations
SAP Community, Lukas Schwabe, Blog
Case-insensitive filters in Fiori Elements (List report + CAP)
SAP Community, Kishannaicker, Blog
Improved Search Performance in SAP BTP Core, SAP Cloud Application Programming Model, Node.js Runtime
SAP Community, Arley Triana Morin, Blog

Seen working1

ArtifactSignals
Samples1
ZC8A_001ABAP, Python and C code for similarity search over field descriptions
none

Details

Coverage
statecore and community, CAP
assessed
state in ABAPcore only, assessed
relationshipunassessed
also inABAP
SourceGeneric Service Providers, Searching Datachecked SourceGeneric Service Providers, Fuzzy Search on SAP HANA Cloudchecked SourceServing OData APIschecked SourceServing OData APIschecked SourceBuilding CQL Statementschecked Source@kamlendra/search-vocab, npmchecked
For your agent