Berichte
Die Berichts-Tools lesen und bearbeiten Berichte in Fyvel. Du kannst Berichte auflisten, Definitionen laden, berechnete Werte abrufen, Drilldowns ausführen und Berichtszeilen strukturiert ändern.Verfügbare Tools
list_reportscreate_reportdelete_reporttoggle_report_starget_reportresolve_reportresolve_report_row_drilldownapply_report_rowsreorder_report_rowsdelete_report_row
Scope
Berichte sind organisationsweit. Du brauchst dafür keinecompanyUuid.
Empfohlener Ablauf
Struktur ladenlist_reports- passendes
reportUuidauswählen get_report- liefert Zeilen, Zeilen-UUIDs (reportRowUuid), Reihenfolge und Konfiguration
list_layers— Buchungsebenen für die Gesellschaft laden (layer_uuid,is_default,is_forecast)resolve_report— berechnete Werte pro Zeile und Periode (siehe Resolve-Modi und Analytics-Cache unten)- bei Bedarf
resolve_report_row_drilldown— gleicher Modus und dieselbe Ebenen-Konfiguration wie beim zugehörigenresolve_report
Analytics-Cache und Retry
Buchungsbasierte Berichtswerte stammen aus einem Analytics-Cache, den Fyvel nach Änderungen an Buchungen oder Zuordnungen im Hintergrund neu aufbaut (FastAPI-Microservice). Wennresolve_report auf allen Daten- und berechneten Zeilen nur leere Werte findet (null oder 0), antwortet das Tool mit einem Fehler statt einer Erfolgsantwort:
- Diesen Fehler nicht als leeren Bericht interpretieren — kurz warten und denselben Aufruf wiederholen.
- Besonders nach
set_booking_category,accept_ai_mapping_suggestions,append_manual_transactionso. Ä.: erst analysieren, wennresolve_reporterfolgreich Zahlen liefert. - Header- und Abstandszeilen (
header,spacer) zählen nicht — nurdata- undcalculated-Zeilen fließen in die Prüfung ein. resolve_report_row_drilldownnutzt keine Refresh-Pending-Prüfung:rows: []bedeutet, dass zur Zeile keine Kategorien oder Konten mit Buchungsdaten passen — kein Retry nötig.
Resolve-Modi
resolve_report und resolve_report_row_drilldown kennen drei sich gegenseitig ausschließende Modi — dieselbe Logik wie in der Web-App unter Einstellungen in der Berichtsansicht.
periodSlices und compareSides dürfen nicht gleichzeitig gesetzt werden. Im Standard-Modus ohne Ebenen liefert der Resolver nur Nullen.
Standard
Typische Ist-Ebenen:is_default: true, kein Snapshot (layer_type ungleich snapshot). Gruppen über list_layer_groups → selectedLayerGroupUuids.
Rolling Forecast
ÜberperiodSlices kombinierst du Ist- und Forecast-Segmente. Üblich: zwei Segmente — Ist bis einschließlich Stichtag, Forecast ab dem Folgemonat. Slice-Perioden als monatliche Keys (YYYY-MM), auch wenn aggregationMode quarterly oder yearly ist.
period_forecast mit Flags pro Spalte (has_forecast, has_historical, is_mixed).
Vergleich
Zwei Ebenen-Konfigurationen gegenüberstellen — z. B. Ist vs. Plan oder aktueller Stand vs. Snapshot.selectedLayerUuids und/oder selectedLayerGroupUuids nutzen. Im Vergleichsmodus sind die period_forecast-Flags in der Antwort zurückgesetzt.
Zeilen ändern
- Neue oder geänderte Zeilen über
apply_report_rowssenden - Nur die Reihenfolge ändern:
reorder_report_rowsmit allen Zeilen-UUIDs in der gewünschten Reihenfolge - Eine einzelne Zeile löschen:
delete_report_row
Batch-Zeilen (apply_report_rows)
Mit apply_report_rows kannst du mehrere Zeilen in einem Aufruf anlegen oder aktualisieren.
- Zeilentypen: unter anderem
data_pl,data_bs,data_cashflow,data_cashflow_capex,data_cashflow_equity_change,calculated,header,spacer - Neue Zeilen:
reportRowUuidweglassen - Bestehende Zeilen: vorhandene
reportRowUuidmitgeben - Limit: maximal 60 Zeilen pro Request
- Referenzen auf neue Zeilen: mit
clientKeyundrefClientKeyarbeiten, wenn berechnete Zeilen im selben Request auf neu angelegte Zeilen verweisen
data_pl, data_cashflow, data_cashflow_capex und data_cashflow_equity_change nutzen optional changeSign relativ zum Standard. data_cashflow_capex erwartet fixedAssetChangeSources (Bilanz-Delta) und depreciationSources (GuV-Periodenwert). data_cashflow_equity_change erwartet nur shareholderEquityChangeSources (Bilanz-Delta); kumuliertes GuV-Ergebnis (YTD) und Nettoergebnis (Periode) werden automatisch über die gesamte GuV berechnet. data_bs und calculated nutzen signConvention. Das Ergebnis kannst du mit resolve_report prüfen.
Typische Anwendungsfälle
- Berichte auflisten und favorisieren (
toggle_report_star) - Berichte anlegen oder löschen
- Berichtsstruktur und Zeilen-UUIDs laden (
get_report) - Zahlen und Forecast-Flags aus dem Resolver holen (
resolve_report) — Standard, Rolling Forecast oder Vergleich - Ist vs. Plan oder Snapshot vergleichen (
compareSides) - Ist- und Forecast-Perioden über einen Stichtag kombinieren (
periodSlices) - Datenzeilen in der Tiefe aufdröseln (
resolve_report_row_drilldown) - Mehrere Zeilen auf einmal erstellen oder anpassen (
apply_report_rows) - Gesamtreihenfolge setzen (
reorder_report_rows) - Einzelne Zeile entfernen (
delete_report_row)