Troubleshooting
A symptom, and the one place that explains it.
Nothing is explained here. Every answer already lives in the guide that owns it, and a second copy would be a second answer to the same question — so this page is a door, not a chapter. Find the row that matches what you are holding and follow it.
The document is wrong
| What you are seeing | Where it is explained |
|---|---|
| A chart is blank, or drawn half way | Charts, and how the engine knows a page is done |
| A background paints the first page and the rest are bare | Pages, and the one rule about backgrounds |
| A table's header row appears only on the first page | Repeat the header on every page |
| A row is cut in half across two pages | Keep a row whole |
| A wide table loses its right-hand columns | A wide table loses its far side |
| An image jumps to the next page, or is sliced across two | Images |
| The page count is wrong, or reads "Page 1 of 1" | Page X of Y |
| Arabic renders as boxes, or numerals look wrong | Fonts are the actual failure mode |
| A field prints empty | Values — an unknown path is blank by design |
| A page breaks somewhere you did not ask for | Breaking where you mean to |
| Markup arrives as visible text, or the reverse | The injection footgun |
It threw
Three tables, by the point in the run where it failed.
| When it threw | Where the exceptions are listed |
|---|---|
| Resolving or loading the report — the folder, the manifest, the assets | Failures at load |
| Generating a document — the payload, the render, the file | When something goes wrong |
| Binding a Word or PowerPoint template | When it fails |
The workbook is wrong
| What you are seeing | Where it is explained |
|---|---|
| A heading, a logo or a chart is missing from the workbook | Excel reports — only tables reach a sheet |
| Numbers, dates or money arrived as text | What a cell holds |
| A leading zero was eaten, or a part code became a number | What a cell holds |
Sheets are named after pages, or one is named (2) |
Sheets, and what they are called |
| Generation failed and no file came back | Generating one |
The file will not open
| What you are seeing | Where it is explained |
|---|---|
| PowerPoint refuses to open the deck it produced | Things that will not work |
| Word opens, but a marker is still sitting there as text | Where a marker may go |
| The engine refused the template file itself | When it fails |
The designer will not work
| What you are seeing | Where it is explained |
|---|---|
The code editor is blank, or the preview never draws, and the console is full of Content-Security-Policy errors |
Mount the designer — your own policy must leave the designer's path out |
It is slow, or it never comes back
| What you are seeing | Where it is explained |
|---|---|
| A render takes longer than you expected | Where the time goes |
| It never returns, then times out | Traps |
| Fine alone, bad under load | Concurrency and the browser |
| Request threads pile up | Do not hold a request thread on a render |
| The same report is regenerated every time | The output cache |
Something is missing and nothing failed
| What you are seeing | Where it is explained |
|---|---|
| A font, a script or an image did not arrive | What the engine actually enforces — an external URL is blocked |
BlockedRequests came back non-empty |
Telemetry |
| It works in the designer and not in production | Know where the reports are |
| Chromium is not there, or will not start | The rendering browser |