Zum Hauptinhalt springen

BWA — Betriebswirtschaftliche Auswertung

Zweck

/bwa zeigt die Betriebswirtschaftliche Auswertung im DATEV-Form-01-Layout auf SKR03-Basis. Anwender wählen Monat und Jahr; die BWA wird pro Periode kalkuliert und zeigt je Linie den Monatswert und den Jahr-bis-Periode-Wert (YTD). Sie dient dem schnellen Überblick über Erlöse, Aufwand, Rohertrag und das vorläufige Ergebnis.

Seit Juni 2026 arbeitet die BWA mit **echten, aus Belegen abgeleiteten Konto-Salden** (Endpoint `GET /api/bwa/account-balances`) — der frühere `MOCK_ACCOUNT_BALANCES`-Platzhalter ist abgelöst. **Wichtig:** Die Salden werden aus den **abrechnungsrelevanten Belegen** aggregiert (Ausgangs-Rechnungen/Gutschriften für Erlöse, Eingangs-Rechnungen/Retouren für Aufwand), **nicht** aus dem Hauptbuch — dieses ist aktuell noch nicht vollständig bebucht. Deshalb bleibt der Status **in Entwicklung**: Die Zahlen sind real, aber der Erfassungsstand entspricht noch nicht dem finalen Hauptbuch-Stand. Angebote, Aufträge und Lieferscheine bleiben außen vor.

Voraussetzungen

- Berechtigung `view:FE_Accounting` + `view:Account` (Seite) und `view:AccountEntry` (Salden-Daten). - Abrechnungsrelevante Belege mit Konto-Zuordnung (Positions-Konto oder Erlös-/Aufwandskonto des Belegs) gemäß SKR03.

Berechtigungen (CASL)

ActionSubjectWirkung
viewFE_AccountingSeite aufrufbar (Page-Guard)
viewAccountKonten-Stammdaten (SKR03) lesbar
viewAccountEntryKonto-Salden-Endpoint GET /bwa/account-balances

Schritt-für-Schritt-Anleitung

  1. BWA (/bwa) öffnen.
  2. Monat und Jahr im Header oben rechts wählen.
  3. Die Tabelle BWATable zeigt die Linien-Auswertung — Erlöse, Aufwand, Rohertrag, Ergebnis — je mit Monats- und YTD-Spalte.

Listenansicht — bwa

Datenherkunft

Der Endpoint GET /api/bwa/account-balances?year=&month= liefert zwei Konto→Saldo-Maps: month (gewählter Monat) und ytd (Jahresbeginn bis Periodenende). Aggregiert wird je SKR03-Kontonummer:

  • Erlöse: Σ(Position netto = Menge × Preis) je Erlöskonto (Positions-accountId, sonst revenueAccountId des Belegs) aus Ausgangs-Rechnungen; Gutschriften negativ.
  • Aufwand: analog aus Eingangs-Rechnungen (purchaseDocuments); Retouren negativ.

UI-Elemente

Komponente: BWATable

Linien-Tabelle entsprechend DATEV-BWA Form 01, gespeist aus den echten Monats- und YTD-Salden.

Hook: useBWACalculation

Aggregiert die vom Endpoint gelieferten Konto-Salden (monthBalances, ytdBalances) über die BWA-Struktur (bwaStructure) zu den DATEV-Linien.

Wiederverwendbare Konzepte

Verknuepfungen zu anderen Modulen

Häufige Fehler und Lösungen

FehlerLösung
BWA-Wert weicht vom Hauptbuch/Steuerberater abErwartbar — die BWA leitet die Salden aus Belegen ab (nicht aus dem vollständig bebuchten Hauptbuch) und nutzt DATEV-Form-01; Steuerberater verwenden teils andere Reports.
Konto taucht nicht in der BWA aufBeleg-Position hat kein accountId und der Beleg kein Erlös-/Aufwandskonto — Konto-Zuordnung nachpflegen.
Angebot/Auftrag fehlt in den ZahlenPer Design — nur abrechnungsrelevante Belege (Rechnungen/Gutschriften/Eingangs-Rechnungen/Retouren) fließen ein.

API/Schnittstellen

MethodeEndpointZweckCASL
GET/api/bwa/account-balances?year=&month=Konto-Salden (Monat + YTD) je SKR03-Kontoview AccountEntry

Versionshinweise

  • 2026-06-30: BWA auf echte, aus Belegen abgeleitete Konto-Salden umgestellt — neuer Endpoint GET /bwa/account-balances (Monat + YTD, Erlöse aus Ausgangs-Rechnungen/Gutschriften, Aufwand aus Eingangs-Rechnungen/Retouren, gruppiert je SKR03-Kontonummer). MOCK_ACCOUNT_BALANCES abgelöst. CASL korrigiert (FE_Accounting/Account/AccountEntry statt der nicht existenten Subjects BWA/FE_BWA). Status bleibt in-development, da die Basis belegbasiert und nicht das finale Hauptbuch ist. Verifiziert an bwa.service.ts, bwa.router.ts, BwaService.ts, BWAPage.tsx, useBWACalculation.ts.
  • 2026-04-30: Initiale Veroeffentlichung als In-Development-Seite mit Mock-Daten-Hinweis.