# Build reports with cherry

> Ask cherry to build a whole report from a sentence, or to change one that exists by setting its window, retitling a block, redefining it or taking it off.

cherry can build a report for you and change one you already have. It works from your [semantic fluid](https://docs.sanda-os.com.au/semantic-fluid), so the numbers in a report cherry builds are the same numbers your team agreed on, and it says so plainly when the fluid cannot show what you asked for.

## Ways to start

| From | What you do |
|---|---|
| **Activate · Reports** | Press **New canvas**, describe the report under **What should it contain?**, then **Create and let cherry build it**. |
| An empty Reports page | Press **Build one with cherry**. cherry asks what to call the report and what it is for before it builds anything. |
| An empty canvas that has a description | Press **let cherry build it from the description**. |
| A box you drew on a canvas | Choose **ask cherry**, pick what it may place and describe one block. See [the report canvas](https://docs.sanda-os.com.au/reports/canvas#ask-cherry). |
| cherry's pane, on any page | Ask in your own words. Open the pane from the cherry button at the top of the console. On a canvas whose pane is closed, the chat icon at the right of the toolbar opens it. |

cherry needs two things to build a report: a **name** and **what it is for**. If you gave only one, it asks for the other in a single short question and stops. Once it has both, it builds the whole report in one reply.

## What cherry builds

A full report from cherry follows the order a management pack reads in:

1. Four to six headline **kpis**.
2. Two or three **trends** over time.
3. The **breakdowns** that matter.
4. A short paragraph of written **analysis**.

Then it opens the report for you. Blocks appear on the canvas one at a time as cherry places them, and when the last one lands the pack settles into rows: four kpis to a row and two of anything else, every block in a row the same height. See [Blocks](https://docs.sanda-os.com.au/reports/blocks) for what each kind shows.

cherry chooses the mark from the shape of the question: one number is a kpi, a number over time is a line, a number by category is a bar, several columns to read are a table and a paragraph of judgement is text. A kpi over a date window can carry a comparison with the previous period. Titles are short and lowercase.

cherry works to a few rules that keep the analysis honest:

- **Every number in a written block comes from a query** it ran in that conversation. It is told not to estimate.
- **A target only appears when you gave one.** It is told never to invent a goal to measure against.
- **If the fluid cannot show what you asked for**, it names what is missing (a metric, a dimension, a relationship, a source) and does not place something that answers a different question.

These are instructions to cherry, not checks the canvas makes, so read a written block before you send it on.

## Ask for a change

You do not have to rebuild a report to change it. Ask cherry, and it reads the report first, then changes it.

```text
Put the weekly sales dashboard on the last 7 days.
Rename "net revenue by week" to "revenue by week" and draw it as a bar.
Take the debtors table off the board pack.
Add a target of 80 to the on-time delivery kpi.
```

cherry can do these things to a report that exists:

| It can | Notes |
|---|---|
| Set the report's filters | A window for the whole report is **one** report filter on its date dimension, not a condition on each block, and it holds for blocks added later. cherry can also clear them. |
| Redefine a block | The metric, breakdown, conditions, mark, row limit, target, comparison, title or written words. The block keeps its position, size, comments and sheet. |
| Take blocks off | Any blocks, by name. |
| Place new blocks | On the open report, or on another report you name. |
| Find a report | It can list the reports you can open and read one before changing it. |

Every change is checked before it is made. cherry runs each block again with the report's filters folded in, and if any block could not run, **nothing changes** and it tells you which blocks and why. That way a report is never left half edited, and a filter on a field that a block's table cannot reach is caught up front rather than every time someone opens the report.

If the report is open, the changes land as a single edit, so one **undo** takes them all back. Every change is also saved as a version in the report's [history](https://docs.sanda-os.com.au/reports/canvas#save-undo-and-history).

### What cherry does not do to a report

cherry does not move or resize blocks, and does not add the header block. It does not edit a table's [sheet](https://docs.sanda-os.com.au/reports/sheets) (formulas, formats, totals). It does not set colours, share or publish a report. Those are yours to do on the canvas, and a block cherry redefines keeps whatever sheet you built on it.

## Schedule and send with cherry

cherry can also schedule a report: tell it the report, the email addresses and when, and it sets up the [delivery](https://docs.sanda-os.com.au/reports/delivery). It can list what is scheduled, change a delivery, send one now, pause or resume it, and remove it.

```text
Email the board pack to board@acme.co and cfo@acme.co every Monday at 7am Sydney time.
```

**An email always asks first.** However your workspace's cherry is set up, scheduling, changing and sending a delivery wait for you to confirm on a card, because a report in an inbox is a copy of your numbers that cannot be recalled. Removing a delivery asks too. Pausing asks unless cherry is set to run changes without asking.

Scheduling is for owners and admins, as it is on the Report schedules page.

## What you control

An owner or admin decides what cherry may do under **Settings · cherry**. The **reports** group covers creating reports, placing and changing blocks, and scheduling deliveries. If it is off, cherry can still answer questions about your reports and can no longer change them.

Creating and changing a report is not held for confirmation in the way a change to your data model is, because every change is a version you can restore. A member with the read-only role can ask cherry about reports and it changes nothing.

cherry's work counts against your workspace's AI usage. See [models and usage](https://docs.sanda-os.com.au/cherry/models-and-usage) and [actions and approvals](https://docs.sanda-os.com.au/cherry/actions-and-approvals).

## Getting good results

- **Name the numbers the way your team does.** cherry matches the metrics and dimensions in your fluid, so "net revenue by region" lands more exactly than "how are we doing".
- **Give the window.** "Last 12 months" or "this quarter" saves a follow-up. For a whole report, say so: "make the whole report last 7 days".
- **Say what the report is for.** The description becomes the brief every later request reads, so "for the Monday leadership meeting" shapes what it includes.
- **Start from the fluid you have.** If a report needs a number that is not defined yet, [define the metric](https://docs.sanda-os.com.au/semantic-fluid/metrics) first, or ask cherry to.
