SampleSampletypeA worked example you read or clone. Evidence: it demonstrates, it never provides.See every one →What this type is →independently maintainedindependently maintainedoriginPublished by one person or a small company outside SAP. Says nothing about quality; the readings say that.See every one →Reference

blog-cap-chart

A Fiori elements overview page over a CAP service whose two donut-chart cards read the same measure from an aggregating view and from the plain entity, so what the aggregation annotations change is visible side by side.

db/schema.cds holds an Expenses entity and an ExpensesAnalytics view selected from it, the view marked @Aggregation.ApplySupported.PropertyRestrictions with category and currency as @Analytics.Dimension and amount as @Analytics.Measure carrying @Aggregation.default: #SUM. srv/cat-service.cds exposes both and annotates UI.Chart on each with a #Donut chart of amount by category, which is the annotation Mio Yasutake's post first reported having failed to put on a CAP service and then, in an update crediting Oliver Klemenz, recorded as working without the local annotation the app had needed. The ovptest app's manifest.json names Expenses as the globalFilterEntityType behind the filter bar and carries three cards: a list over Expenses, a sap.ovp.cards.charts.analytical card over ExpensesAnalytics, and the same card over Expenses, which the post adds for comparison and which does not aggregate. The overview page reads the service over its V2 endpoint at /v2/catalog/, and the repository's README is the one cds init writes, so Adding a Donut Chart on top of CAP service is where the project is explained.

Facts

Last push

Where it sits

Lives in
Demonstrates
Fiori annotationsCAPFiori annotationscapabilityDescribing a service so a Fiori client can render it without hand-written UI code — titles, value helps, hierarchies and visibility expressed as model annotations rather than screen logic.Analytical queriesCAPAnalytical queriescapabilityGrouped, aggregated and filtered reads for analytical clients, answered by the database rather than in application memory. This concerns the queries a chart or report sends, while [analytic modelling](capability:analytic-modelling) defines the measures and dimensions they read.
Flavors
Node.jsfrom its runtime
Requires
@cap-js-community/odata-v2-adapter@cap-js-community/odata-v2-adapterartifactThe V2 endpoint the overview page reads at /v2/catalog/, put in front of the service's own V4 one; the project depends on it under its former name, @sap/cds-odata-v2-adapter-proxy.

Who is behind it

Mio YasutakeMio YasutakePersonMaintains this
In the atlas: maintains 47, contributes to 47, wrote 10
@miyasuta
maintainer

Before choosing this

Signals

LicenceNo licenseNeither the package manifest nor the repository tree declares a licence

Without a licence the default is all rights reserved. Ask the maintainer, or check for terms stated elsewhere, before depending on it.

What it declares

Every artifact

Type
Sample
Origin
Independently maintained
Use as
A reference
Runtime
Node.js

As a sample

Form
A tutorial's companion code

Connections3

README

quoted from miyasuta/blog-cap-chart, read
miyasuta/blog-cap-chart/README.mdOn GitHub

Getting Started

Welcome to your new project.

It contains these folders and files, following our recommended project layout:

File / FolderPurpose
app/content for UI frontends go here
db/your domain models and data go here
srv/your service models and code go here
package.jsonproject metadata and configuration
readme.mdthis getting started guide
excerpt, no licence read, read the rest, on GitHub

Details

Sources3
GitHub organisations and accountsdiscovered here, miyasutachecked
github.com/miyasuta/blog-cap-charttree, pushes, contributors, CIchecked
README.mdquoted, and what the entry declareschecked

Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.

Compatibility and provenance
runtimesnode
discovered viaGitHub organisations and accounts · miyasuta
first seen in the atlas
ecosystem and domaincap, ui-and-frontend-bridge
History in the atlas1
  1. First seen.
For your agent
Ref
artifact:miyasuta-blog-cap-chart
JSON
/artifacts/miyasuta-blog-cap-chart.json
MCP
Connecting an agent