Vereinfache Bedienungsdoku und ergänze Bankportal-Anleitung

This commit is contained in:
2026-04-22 19:43:37 +02:00
parent 0fbda27609
commit 81b4eee1e8
19 changed files with 256 additions and 2489 deletions

View File

@@ -0,0 +1,42 @@
# Ausgangsbelege erstellen und bearbeiten
Diese Anleitung hilft dir beim Erstellen von Rechnungen, Angeboten, Lieferscheinen und ähnlichen Belegen.
## Typischer Ablauf
1. Neuen Beleg anlegen.
2. Belegart wählen (z. B. Rechnung oder Angebot).
3. Kunden- und Adressdaten prüfen.
4. Positionen eintragen.
5. Daten wie Belegdatum und Zahlungsziel prüfen.
6. Beleg speichern und bei Bedarf buchen.
## Wichtige Eingaben einfach erklärt
- `Belegart`: Legt fest, welche Art von Dokument erstellt wird.
- `Kunde`: Empfänger des Belegs.
- `Ansprechpartner`: Person beim Kunden für Rückfragen.
- `Adresse`: Zieladresse auf dem Dokument.
- `Belegnummer`: Eindeutige Nummer zur Wiedererkennung.
- `Belegdatum`: Offizielles Ausstellungsdatum.
- `Liefer-/Leistungsdatum`: Zeitraum oder Datum der Leistung.
- `Zahlungsziel`: Frist für den Zahlungseingang.
- `Zahlungsart`: Überweisung oder Lastschrift.
- `Positionen`: Leistungen oder Artikel mit Menge, Preis und Steuersatz.
## Empfehlungen für fehlerfreie Belege
- Vor dem Buchen immer Kunde, Datum und Belegnummer prüfen.
- Bei Rechnungen Zahlungsziel und Zahlungsart kontrollieren.
- Bei Zeiträumen Start- und Enddatum vollständig setzen.
- Vorschau prüfen, bevor der Beleg verschickt wird.
## Häufige Fragen
### Warum kann ich nicht buchen?
Meist fehlt eine Pflichtangabe wie Kunde, Briefpapier, Datum oder eine gültige Position.
### Wann ist ein Beleg im Kundenportal sichtbar?
Nur wenn die Freigabe aktiv ist und der Beleg nicht mehr im Entwurfsstatus steht.

View File

@@ -0,0 +1,41 @@
# Bankportal nutzen
Im Bankportal verbindest du Konten, prüfst Umsätze und unterstützt die Zuordnung zu Belegen.
## Ziele im Bankportal
- Kontobewegungen aktuell halten
- Offene Zahlungsein- und -ausgänge schneller zuordnen
- Buchhaltungsprozesse vorbereiten
## Typischer Arbeitsablauf
1. Kontoverbindung prüfen oder aktualisieren.
2. Neue Umsätze abrufen.
3. Offene Bewegungen sichten.
4. Vorschläge zur Zuordnung prüfen.
5. Passende Belege oder Konten zuweisen.
6. Ergebnis kontrollieren.
## Wichtige Bereiche
- `Umsatzliste`: Zeigt alle importierten Bankbewegungen.
- `Filter/Suche`: Hilft beim schnellen Finden einzelner Vorgänge.
- `Vorschläge`: Automatische Zuordnungen zu Belegen oder Kategorien.
- `Manuelle Zuordnung`: Falls kein passender Vorschlag vorhanden ist.
## Gute Praxis
- Regelmäßig abrufen, damit sich keine großen Rückstände bilden.
- Unklare Buchungen zeitnah klären.
- Bei wiederkehrenden Zahlungen auf konsistente Bezeichnung achten.
## Häufige Probleme
### Ein Umsatz wird nicht automatisch zugeordnet
Prüfe Betrag, Datum, Verwendungszweck und ob ein passender Beleg im System vorhanden ist.
### Es erscheinen doppelte oder fehlende Umsätze
Kontoverbindung aktualisieren und den Zeitraum der Synchronisation prüfen.

File diff suppressed because it is too large Load Diff

View File

@@ -1,62 +0,0 @@
# Ausgangsbeleg-Editor
Seite: `/createDocument/edit/:id?`
Diese Maske dient zum Erstellen und Bearbeiten von Ausgangsbelegen wie Rechnungen, Abschlagsrechnungen, Angebote, Lieferscheine, Packscheine und Serienrechnungen.
## Bereich: Grunddaten
- `Dokumenttyp`: Legt die Belegart fest und steuert verfügbare Felder sowie Nummernlogik.
- `Steuertyp`: Steuert Steuerberechnung und Steuertexte (z. B. Standard, 13b UStG, 19 UStG, 12.3 UStG).
- `Briefpapier`: Definiert das verwendete Layout/Letterhead für PDF und Druck.
- `Kunde`: Hauptempfänger des Belegs; beeinflusst Vorschlagswerte (Adresse, Zahlungsart, Zahlungsziel).
- `Ansprechpartner`: Kontaktperson beim Kunden für den Beleg.
- `Adresse`:
- `Straße + Hausnummer`: Liefer-/Rechnungsstraße.
- `Adresszusatz`: Zusätzliche Adressinformationen.
- `PLZ`: Postleitzahl.
- `Ort`: Ort der Adresse.
- `Belegnummer` (z. B. Rechnungsnummer): Eindeutige Referenz des Belegs.
- `Lieferdatumsart`: Definiert, ob Einzel- oder Zeitraumdatum angezeigt wird.
- `Liefer-/Leistungsdatum Start`: Startdatum für Leistung/Lieferung.
- `Liefer-/Leistungsdatum Ende`: Enddatum bei Zeitraum.
- `Belegdatum`: Offizielles Dokumentdatum.
- `Zahlungsziel in Tagen`: Frist bis zur Fälligkeit (für Rechnungsarten).
- `Zahlungsart`: Überweisung oder SEPA-Lastschrift.
- `Individueller Aufschlag`: Prozentualer Zuschlag auf Positionen laut Beleglogik.
- `Mitarbeiter`: Verantwortlicher Bearbeiter/Ersteller.
- `Kontakt Telefon`: Telefon des Ansprechpartners im Dokument.
- `Kontakt E-Mail`: E-Mail des Ansprechpartners im Dokument.
- `Im Kundenportal anzeigen`: Gibt den Beleg für das Portal frei.
- `Objekt`: Zugeordnetes Objekt/Standort.
- `Projekt`: Zugeordnetes Projekt.
- `Vertrag`: Zugeordneter Vertrag.
## Bereich: Serienrechnung (nur Typ `serialInvoices`)
- `Datum erste Ausführung`: Start der automatischen Ausführung.
- `Datum letzte Ausführung`: Enddatum der Serienausführung.
- `Aktiv`: Aktiviert/deaktiviert die Serienlogik.
- `Intervall`: Ausführungsrhythmus (z. B. monatlich, vierteljährlich).
- `Richtung`: Zeitliche Berechnung (rückwirkend oder im Voraus).
## Bereich: Inhaltstexte
- `Titel`: Belegtitel (abhängig von Belegart und Nummernlogik).
- `Beschreibung`: Kurzbeschreibung unterhalb des Titels.
- `Vorlage auswählen`: Übernimmt Textbausteine in den Einleitungstext.
- `Einleitung`: Freitext vor den Positionen.
- `Positionen`: Zeilen mit Mengen, Einheiten, Preisen, Steuern, Rabatten und Summen.
## Bereich: Aktionen
- `Speichern`: Persistiert Entwurf oder Änderungen.
- `Buchen`: Finalisiert den Beleg (abhängig von Belegart/Validierung).
- `PDF/Vorschau`: Erstellt Vorschau bzw. Ausgabe.
- `Kopier-/Übernahmefunktionen`: Übernimmt Inhalte aus verknüpften Dokumenten (z. B. Lieferschein zu Rechnung).
## Typische Eingabefehler vermeiden
- Vor dem Buchen immer `Briefpapier`, `Kunde`, `Belegdatum` und (bei Rechnungstypen) `Zahlungsziel` prüfen.
- Bei Zeiträumen Start und Ende vollständig setzen.
- Für Portalfreigabe prüfen, ob Belegstatus nicht mehr `Entwurf` ist.

View File

@@ -1,9 +0,0 @@
# Frontend-Funktionen
Diese Kategorie enthält die Bedienung der einzelnen Seiten im Web-Frontend.
## Enthaltene Inhalte
- Vollständige Seitenübersicht mit erkannten Eingabefeldern: `alle-seiten-und-felder.md`
- Detaillierte Anleitung Ausgangsbeleg-Editor: `ausgangsbelege-editor.md`
- Detaillierte Anleitung Serienrechnungen: `serienrechnungen.md`

View File

@@ -1,41 +0,0 @@
# Serienrechnungen
Seite: `/createDocument/serialInvoice`
Diese Seite verwaltet Vorlagen für Serienrechnungen und erlaubt die manuelle Ausführung von Rechnungsläufen.
## Oberer Bereich
- `Suche`: Filtert die Vorlagenliste.
- `Ausführungen`: Öffnet die Übersicht bestehender Ausführungsläufe.
- `Ausführen`: Startet den Dialog zur manuellen Ausführung.
- `+ Serienrechnung`: Öffnet den Editor zur Anlage einer neuen Serienrechnungsvorlage.
## Filterbereich
- `Filter`: Mehrfachfilter für die Tabellenansicht (je nach verfügbarer Konfiguration).
## Dialog: Serienrechnungen manuell ausführen
- `Ausführungsdatum (Belegdatum)`: Dokumentdatum für den Lauf; beeinflusst Leistungszeitraum laut Konfiguration.
- `Heute`: Setzt das Ausführungsdatum auf den aktuellen Tag.
- `Kunde oder Vertrag suchen`: Freitextsuche innerhalb der Vorlagenliste.
- `Intervall`: Filtert Vorlagen nach Ausführungsrhythmus.
- `Alle auswählen`: Markiert alle sichtbaren Vorlagen.
- `Keine`: Entfernt die Auswahl.
- `Checkbox je Zeile`: Wählt einzelne Vorlagen aus.
- `Ausführen`: Startet den Lauf für die ausgewählten Vorlagen.
## Tabellenspalten (typisch)
- `Typ`: Belegtyp der Vorlage.
- `Partner`: Kunde der Vorlage.
- `Betrag`: Errechneter Vorlagenbetrag.
- `Intervall`: Ausführungsrhythmus.
- `Vertrag`: Zugeordneter Vertrag.
- `Objekt`: Zugeordnetes Objekt.
## Laufende Ausführungen
- `Fertigstellen`: Schließt einen laufenden Ausführungsvorgang ab.

View File

@@ -1,10 +1,13 @@
# Bedienung # Bedienung
Diese Dokumentation beschreibt die Bedienung der FEDEO-Software aus Sicht der Anwenderinnen und Anwender. Diese Anleitung erklärt die wichtigsten Arbeitsabläufe in FEDEO in verständlicher, praxisnaher Form.
## Frontend-Funktionen ## Bereiche
- [Frontend-Funktionen](./frontend/README.md) - [Ausgangsbelege erstellen und bearbeiten](./ausgangsbelege.md)
- [Ausgangsbeleg-Editor](./frontend/ausgangsbelege-editor.md) - [Serienrechnungen planen und ausführen](./serienrechnungen.md)
- [Serienrechnungen](./frontend/serienrechnungen.md) - [Bankportal nutzen](./bankportal.md)
- [Alle Seiten und Felder](./frontend/alle-seiten-und-felder.md)
## Für wen ist diese Anleitung?
Für Anwenderinnen und Anwender, die mit FEDEO im Tagesgeschäft arbeiten und klare Schritt-für-Schritt-Hinweise benötigen.

View File

@@ -0,0 +1,31 @@
# Serienrechnungen planen und ausführen
Mit Serienrechnungen kannst du wiederkehrende Abrechnungen automatisieren.
## Wofür nutzt man Serienrechnungen?
- Regelmäßige Leistungen (z. B. monatliche Betreuung)
- Verträge mit festen Abständen
- Einheitliche Abrechnung ohne manuelles Neuerstellen jedes Belegs
## So legst du eine Serienrechnung an
1. Neue Serienrechnung öffnen.
2. Kunde, Leistungen und Preise eintragen.
3. Intervall festlegen (z. B. monatlich, quartalsweise).
4. Start- und Endzeitraum definieren.
5. Vorlage aktivieren und speichern.
## Manuelle Ausführung eines Laufs
1. Serienrechnungsübersicht öffnen.
2. Ausführungsdatum setzen.
3. Gewünschte Vorlagen auswählen.
4. Lauf starten.
5. Ergebnis prüfen und ggf. abschließen.
## Wichtige Hinweise
- Das Ausführungsdatum wirkt sich auf den Leistungszeitraum aus.
- Vor dem Lauf prüfen, ob alle Vorlagen aktiv und vollständig sind.
- Bei ungewöhnlichen Ergebnissen zuerst Beträge und Intervalle der Vorlage prüfen.

View File

@@ -1,3 +1,7 @@
# Bedienungsanleitung # Bedienungsanleitung
Die Nutzerdokumentation befindet sich unter `bedienung/`. Diese Dokumentation unterstützt dich bei der täglichen Nutzung von FEDEO.
## Einstieg
- [Bedienung](./bedienung/README.md)

View File

@@ -1,3 +1,7 @@
# Bedienungsanleitung # Bedienungsanleitung
Die Nutzerdokumentation befindet sich unter `bedienung/`. Diese Dokumentation unterstützt dich bei der täglichen Nutzung von FEDEO.
## Einstieg
- [Bedienung](./bedienung/README.md)

View File

@@ -1,10 +1,13 @@
# Bedienung # Bedienung
Diese Dokumentation beschreibt die Bedienung der FEDEO-Software aus Sicht der Anwenderinnen und Anwender. Diese Anleitung erklärt die wichtigsten Arbeitsabläufe in FEDEO in verständlicher, praxisnaher Form.
## Frontend-Funktionen ## Bereiche
- [Frontend-Funktionen](./frontend/README.md) - [Ausgangsbelege erstellen und bearbeiten](./ausgangsbelege.md)
- [Ausgangsbeleg-Editor](./frontend/ausgangsbelege-editor.md) - [Serienrechnungen planen und ausführen](./serienrechnungen.md)
- [Serienrechnungen](./frontend/serienrechnungen.md) - [Bankportal nutzen](./bankportal.md)
- [Alle Seiten und Felder](./frontend/alle-seiten-und-felder.md)
## Für wen ist diese Anleitung?
Für Anwenderinnen und Anwender, die mit FEDEO im Tagesgeschäft arbeiten und klare Schritt-für-Schritt-Hinweise benötigen.

View File

@@ -0,0 +1,42 @@
# Ausgangsbelege erstellen und bearbeiten
Diese Anleitung hilft dir beim Erstellen von Rechnungen, Angeboten, Lieferscheinen und ähnlichen Belegen.
## Typischer Ablauf
1. Neuen Beleg anlegen.
2. Belegart wählen (z. B. Rechnung oder Angebot).
3. Kunden- und Adressdaten prüfen.
4. Positionen eintragen.
5. Daten wie Belegdatum und Zahlungsziel prüfen.
6. Beleg speichern und bei Bedarf buchen.
## Wichtige Eingaben einfach erklärt
- `Belegart`: Legt fest, welche Art von Dokument erstellt wird.
- `Kunde`: Empfänger des Belegs.
- `Ansprechpartner`: Person beim Kunden für Rückfragen.
- `Adresse`: Zieladresse auf dem Dokument.
- `Belegnummer`: Eindeutige Nummer zur Wiedererkennung.
- `Belegdatum`: Offizielles Ausstellungsdatum.
- `Liefer-/Leistungsdatum`: Zeitraum oder Datum der Leistung.
- `Zahlungsziel`: Frist für den Zahlungseingang.
- `Zahlungsart`: Überweisung oder Lastschrift.
- `Positionen`: Leistungen oder Artikel mit Menge, Preis und Steuersatz.
## Empfehlungen für fehlerfreie Belege
- Vor dem Buchen immer Kunde, Datum und Belegnummer prüfen.
- Bei Rechnungen Zahlungsziel und Zahlungsart kontrollieren.
- Bei Zeiträumen Start- und Enddatum vollständig setzen.
- Vorschau prüfen, bevor der Beleg verschickt wird.
## Häufige Fragen
### Warum kann ich nicht buchen?
Meist fehlt eine Pflichtangabe wie Kunde, Briefpapier, Datum oder eine gültige Position.
### Wann ist ein Beleg im Kundenportal sichtbar?
Nur wenn die Freigabe aktiv ist und der Beleg nicht mehr im Entwurfsstatus steht.

View File

@@ -0,0 +1,41 @@
# Bankportal nutzen
Im Bankportal verbindest du Konten, prüfst Umsätze und unterstützt die Zuordnung zu Belegen.
## Ziele im Bankportal
- Kontobewegungen aktuell halten
- Offene Zahlungsein- und -ausgänge schneller zuordnen
- Buchhaltungsprozesse vorbereiten
## Typischer Arbeitsablauf
1. Kontoverbindung prüfen oder aktualisieren.
2. Neue Umsätze abrufen.
3. Offene Bewegungen sichten.
4. Vorschläge zur Zuordnung prüfen.
5. Passende Belege oder Konten zuweisen.
6. Ergebnis kontrollieren.
## Wichtige Bereiche
- `Umsatzliste`: Zeigt alle importierten Bankbewegungen.
- `Filter/Suche`: Hilft beim schnellen Finden einzelner Vorgänge.
- `Vorschläge`: Automatische Zuordnungen zu Belegen oder Kategorien.
- `Manuelle Zuordnung`: Falls kein passender Vorschlag vorhanden ist.
## Gute Praxis
- Regelmäßig abrufen, damit sich keine großen Rückstände bilden.
- Unklare Buchungen zeitnah klären.
- Bei wiederkehrenden Zahlungen auf konsistente Bezeichnung achten.
## Häufige Probleme
### Ein Umsatz wird nicht automatisch zugeordnet
Prüfe Betrag, Datum, Verwendungszweck und ob ein passender Beleg im System vorhanden ist.
### Es erscheinen doppelte oder fehlende Umsätze
Kontoverbindung aktualisieren und den Zeitraum der Synchronisation prüfen.

View File

@@ -1,9 +0,0 @@
# Frontend-Funktionen
Diese Kategorie enthält die Bedienung der einzelnen Seiten im Web-Frontend.
## Enthaltene Inhalte
- Vollständige Seitenübersicht mit erkannten Eingabefeldern: `alle-seiten-und-felder.md`
- Detaillierte Anleitung Ausgangsbeleg-Editor: `ausgangsbelege-editor.md`
- Detaillierte Anleitung Serienrechnungen: `serienrechnungen.md`

File diff suppressed because it is too large Load Diff

View File

@@ -1,62 +0,0 @@
# Ausgangsbeleg-Editor
Seite: `/createDocument/edit/:id?`
Diese Maske dient zum Erstellen und Bearbeiten von Ausgangsbelegen wie Rechnungen, Abschlagsrechnungen, Angebote, Lieferscheine, Packscheine und Serienrechnungen.
## Bereich: Grunddaten
- `Dokumenttyp`: Legt die Belegart fest und steuert verfügbare Felder sowie Nummernlogik.
- `Steuertyp`: Steuert Steuerberechnung und Steuertexte (z. B. Standard, 13b UStG, 19 UStG, 12.3 UStG).
- `Briefpapier`: Definiert das verwendete Layout/Letterhead für PDF und Druck.
- `Kunde`: Hauptempfänger des Belegs; beeinflusst Vorschlagswerte (Adresse, Zahlungsart, Zahlungsziel).
- `Ansprechpartner`: Kontaktperson beim Kunden für den Beleg.
- `Adresse`:
- `Straße + Hausnummer`: Liefer-/Rechnungsstraße.
- `Adresszusatz`: Zusätzliche Adressinformationen.
- `PLZ`: Postleitzahl.
- `Ort`: Ort der Adresse.
- `Belegnummer` (z. B. Rechnungsnummer): Eindeutige Referenz des Belegs.
- `Lieferdatumsart`: Definiert, ob Einzel- oder Zeitraumdatum angezeigt wird.
- `Liefer-/Leistungsdatum Start`: Startdatum für Leistung/Lieferung.
- `Liefer-/Leistungsdatum Ende`: Enddatum bei Zeitraum.
- `Belegdatum`: Offizielles Dokumentdatum.
- `Zahlungsziel in Tagen`: Frist bis zur Fälligkeit (für Rechnungsarten).
- `Zahlungsart`: Überweisung oder SEPA-Lastschrift.
- `Individueller Aufschlag`: Prozentualer Zuschlag auf Positionen laut Beleglogik.
- `Mitarbeiter`: Verantwortlicher Bearbeiter/Ersteller.
- `Kontakt Telefon`: Telefon des Ansprechpartners im Dokument.
- `Kontakt E-Mail`: E-Mail des Ansprechpartners im Dokument.
- `Im Kundenportal anzeigen`: Gibt den Beleg für das Portal frei.
- `Objekt`: Zugeordnetes Objekt/Standort.
- `Projekt`: Zugeordnetes Projekt.
- `Vertrag`: Zugeordneter Vertrag.
## Bereich: Serienrechnung (nur Typ `serialInvoices`)
- `Datum erste Ausführung`: Start der automatischen Ausführung.
- `Datum letzte Ausführung`: Enddatum der Serienausführung.
- `Aktiv`: Aktiviert/deaktiviert die Serienlogik.
- `Intervall`: Ausführungsrhythmus (z. B. monatlich, vierteljährlich).
- `Richtung`: Zeitliche Berechnung (rückwirkend oder im Voraus).
## Bereich: Inhaltstexte
- `Titel`: Belegtitel (abhängig von Belegart und Nummernlogik).
- `Beschreibung`: Kurzbeschreibung unterhalb des Titels.
- `Vorlage auswählen`: Übernimmt Textbausteine in den Einleitungstext.
- `Einleitung`: Freitext vor den Positionen.
- `Positionen`: Zeilen mit Mengen, Einheiten, Preisen, Steuern, Rabatten und Summen.
## Bereich: Aktionen
- `Speichern`: Persistiert Entwurf oder Änderungen.
- `Buchen`: Finalisiert den Beleg (abhängig von Belegart/Validierung).
- `PDF/Vorschau`: Erstellt Vorschau bzw. Ausgabe.
- `Kopier-/Übernahmefunktionen`: Übernimmt Inhalte aus verknüpften Dokumenten (z. B. Lieferschein zu Rechnung).
## Typische Eingabefehler vermeiden
- Vor dem Buchen immer `Briefpapier`, `Kunde`, `Belegdatum` und (bei Rechnungstypen) `Zahlungsziel` prüfen.
- Bei Zeiträumen Start und Ende vollständig setzen.
- Für Portalfreigabe prüfen, ob Belegstatus nicht mehr `Entwurf` ist.

View File

@@ -1,41 +0,0 @@
# Serienrechnungen
Seite: `/createDocument/serialInvoice`
Diese Seite verwaltet Vorlagen für Serienrechnungen und erlaubt die manuelle Ausführung von Rechnungsläufen.
## Oberer Bereich
- `Suche`: Filtert die Vorlagenliste.
- `Ausführungen`: Öffnet die Übersicht bestehender Ausführungsläufe.
- `Ausführen`: Startet den Dialog zur manuellen Ausführung.
- `+ Serienrechnung`: Öffnet den Editor zur Anlage einer neuen Serienrechnungsvorlage.
## Filterbereich
- `Filter`: Mehrfachfilter für die Tabellenansicht (je nach verfügbarer Konfiguration).
## Dialog: Serienrechnungen manuell ausführen
- `Ausführungsdatum (Belegdatum)`: Dokumentdatum für den Lauf; beeinflusst Leistungszeitraum laut Konfiguration.
- `Heute`: Setzt das Ausführungsdatum auf den aktuellen Tag.
- `Kunde oder Vertrag suchen`: Freitextsuche innerhalb der Vorlagenliste.
- `Intervall`: Filtert Vorlagen nach Ausführungsrhythmus.
- `Alle auswählen`: Markiert alle sichtbaren Vorlagen.
- `Keine`: Entfernt die Auswahl.
- `Checkbox je Zeile`: Wählt einzelne Vorlagen aus.
- `Ausführen`: Startet den Lauf für die ausgewählten Vorlagen.
## Tabellenspalten (typisch)
- `Typ`: Belegtyp der Vorlage.
- `Partner`: Kunde der Vorlage.
- `Betrag`: Errechneter Vorlagenbetrag.
- `Intervall`: Ausführungsrhythmus.
- `Vertrag`: Zugeordneter Vertrag.
- `Objekt`: Zugeordnetes Objekt.
## Laufende Ausführungen
- `Fertigstellen`: Schließt einen laufenden Ausführungsvorgang ab.

View File

@@ -0,0 +1,31 @@
# Serienrechnungen planen und ausführen
Mit Serienrechnungen kannst du wiederkehrende Abrechnungen automatisieren.
## Wofür nutzt man Serienrechnungen?
- Regelmäßige Leistungen (z. B. monatliche Betreuung)
- Verträge mit festen Abständen
- Einheitliche Abrechnung ohne manuelles Neuerstellen jedes Belegs
## So legst du eine Serienrechnung an
1. Neue Serienrechnung öffnen.
2. Kunde, Leistungen und Preise eintragen.
3. Intervall festlegen (z. B. monatlich, quartalsweise).
4. Start- und Endzeitraum definieren.
5. Vorlage aktivieren und speichern.
## Manuelle Ausführung eines Laufs
1. Serienrechnungsübersicht öffnen.
2. Ausführungsdatum setzen.
3. Gewünschte Vorlagen auswählen.
4. Lauf starten.
5. Ergebnis prüfen und ggf. abschließen.
## Wichtige Hinweise
- Das Ausführungsdatum wirkt sich auf den Leistungszeitraum aus.
- Vor dem Lauf prüfen, ob alle Vorlagen aktiv und vollständig sind.
- Bei ungewöhnlichen Ergebnissen zuerst Beträge und Intervalle der Vorlage prüfen.

View File

@@ -1,149 +0,0 @@
#!/usr/bin/env node
import { promises as fs } from 'node:fs'
import path from 'node:path'
const ROOT = process.cwd()
const FRONTEND_PAGES_DIR = path.join(ROOT, 'frontend', 'pages')
const OUT_FILE = path.join(ROOT, 'docs', 'bedienung', 'frontend', 'alle-seiten-und-felder.md')
function normalizePosix(p) {
return p.split(path.sep).join('/')
}
async function walkFiles(dir, extension) {
const result = []
async function walk(current) {
const entries = await fs.readdir(current, { withFileTypes: true })
for (const entry of entries) {
const full = path.join(current, entry.name)
if (entry.isDirectory()) {
await walk(full)
} else if (entry.isFile() && full.endsWith(extension)) {
result.push(full)
}
}
}
await walk(dir)
return result.sort()
}
function filePathToNuxtRoute(filePath, baseDir) {
const relative = normalizePosix(path.relative(baseDir, filePath))
let route = relative.replace(/\.vue$/, '')
route = route
.replace(/\.client$/, '')
.replace(/\.server$/, '')
.replace(/\[\[\.\.\.(.+?)\]\]/g, ':$1*?')
.replace(/\[\.\.\.(.+?)\]/g, ':$1*')
.replace(/\[\[(.+?)\]\]/g, ':$1?')
.replace(/\[(.+?)\]/g, ':$1')
route = route.replace(/\/index$/g, '')
if (route === 'index') route = ''
if (!route.startsWith('/')) route = `/${route}`
return route || '/'
}
function pickAttr(tag, attr) {
const doubleQuoted = new RegExp(`${attr}\\s*=\\s*"([^"]+)"`)
const singleQuoted = new RegExp(`${attr}\\s*=\\s*'([^']+)'`)
return tag.match(doubleQuoted)?.[1] || tag.match(singleQuoted)?.[1] || null
}
function detectFields(source) {
const fields = []
const seen = new Set()
const formFieldRegex = /<UForm(?:Field|Group)\b([\s\S]*?)>/g
let match
while ((match = formFieldRegex.exec(source)) !== null) {
const attrs = match[1] || ''
const label = pickAttr(attrs, 'label')
const key = `form:${label || ''}`
if (label && !seen.has(key)) {
seen.add(key)
fields.push({
name: label,
component: 'UFormField',
description: `Eingabebereich für „${label}“.`
})
}
}
const inputRegex = /<(UInput|UTextarea|USelectMenu|USelect|USwitch|UCheckbox|URadioGroup|UInputNumber|UDatePicker)\b([\s\S]*?)>/g
while ((match = inputRegex.exec(source)) !== null) {
const component = match[1]
const attrs = match[2] || ''
const label = pickAttr(attrs, 'label')
const placeholder = pickAttr(attrs, 'placeholder')
const model = pickAttr(attrs, 'v-model') || pickAttr(attrs, 'v-model:model-value')
const name = label || placeholder || model || '(ohne Bezeichnung)'
const key = `${component}:${name}`
if (seen.has(key)) continue
seen.add(key)
let description = 'Eingabefeld in dieser Seite.'
if (label) description = `Eingabefeld für „${label}“.`
else if (placeholder) description = `Eingabefeld mit Platzhalter „${placeholder}“.`
else if (model) description = `Eingabefeld für den internen Wert „${model}“.`
fields.push({ name, component, description })
}
return fields
}
function getPagePurpose(route) {
if (route.startsWith('/createDocument')) return 'Dokumentenerstellung und Verwaltung von Ausgangsbelegen.'
if (route.startsWith('/support') || route.startsWith('/helpdesk')) return 'Support- und Kommunikationsprozesse.'
if (route.startsWith('/staff')) return 'Mitarbeiterbezogene Verwaltung und Zeiterfassung.'
if (route.startsWith('/settings')) return 'Konfiguration und Stammdatenpflege.'
if (route.startsWith('/accounting') || route.startsWith('/banking')) return 'Finanz- und Buchhaltungsfunktionen.'
return 'Funktionsseite im FEDEO-Frontend.'
}
async function main() {
const files = await walkFiles(FRONTEND_PAGES_DIR, '.vue')
let output = '# Frontend-Seiten und Eingabefelder\n\n'
output += 'Diese Übersicht dient als Nutzer-Bedienung für alle Seiten des Web-Frontends.\n'
output += 'Die Felder wurden technisch aus den Seiten erkannt und nutzerorientiert beschrieben.\n\n'
for (const file of files) {
const source = await fs.readFile(file, 'utf-8')
const route = filePathToNuxtRoute(file, FRONTEND_PAGES_DIR)
const fields = detectFields(source)
const relativeFile = normalizePosix(path.relative(ROOT, file))
output += `## ${route}\n\n`
output += `- Datei: \`${relativeFile}\`\n`
output += `- Seitenfunktion: ${getPagePurpose(route)}\n\n`
output += '### Felder\n\n'
if (fields.length === 0) {
output += 'Auf dieser Seite wurden keine direkten Eingabefelder erkannt.\n\n'
continue
}
output += '| Feld | Komponente | Erklärung |\n'
output += '|---|---|---|\n'
for (const field of fields) {
output += `| ${field.name.replace(/\|/g, '\\|')} | ${field.component} | ${field.description.replace(/\|/g, '\\|')} |\n`
}
output += '\n'
}
await fs.writeFile(OUT_FILE, output, 'utf-8')
console.log(`Frontend-Bedienungsübersicht erzeugt: ${OUT_FILE}`)
}
main().catch((err) => {
console.error('Fehler beim Erzeugen der Frontend-Bedienungsübersicht', err)
process.exit(1)
})