dolibarr.stundenzettel/README.md
data fe2eb751c2 Version 1.4.0: Dezimalmengen, Direktlinks, Menü-Cleanup
- Dezimalmengen in allen Produktfeldern (Produkte, Mehraufwand, Entfällt)
- Button "Stundenzettel öffnen" funktioniert ohne Checkbox-Auswahl
- Direktlink zum Stundenzettel-Tab in der Listenansicht
- Linkes Menü: nur Übersicht mit Icon, Rest ohne
- Aktions-Icons in Listenansicht mit Abstand

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 19:31:16 +01:00

158 lines
7.3 KiB
Markdown
Executable file

# Stundenzettel Modul für Dolibarr
**Version:** 1.4.0
**Autor:** Data IT Solution
**Kompatibilität:** Dolibarr 16.0+
**Lizenz:** GPL v3
## Beschreibung
Das Stundenzettel-Modul ermöglicht die Verwaltung von Stundenzetteln für Kundenaufträge in Dolibarr. Es bietet eine umfassende Dokumentation von Arbeitszeiten, verbrauchten Materialien, Mehraufwand und Notizen.
## Funktionen
### Kernfunktionen
- **Stundenzettel-Verwaltung**: Erstellen, Bearbeiten und Löschen von Stundenzetteln pro Auftrag und Datum
- **Leistungserfassung**: Zeiterfassung mit Start-/Endzeit und automatischer Dauerberechnung
- **Zeitüberlappungsprüfung**: Verhindert doppelte Zeitbuchungen auf demselben Stundenzettel
- **Produktverfolgung**: Dokumentation von verbrauchten Materialien aus dem Auftrag
- **Mehraufwand**: Erfassung zusätzlicher Produkte/Dienstleistungen, die nicht im Auftrag waren
- **Entfällt-Markierung**: Kennzeichnung von Produkten, die nicht verbaut werden müssen
- **Notizen**: Merkzettel und Notizen für den nächsten Termin
### Freigabe & Rechnungsstellung
- **Stundenzettel-Freigabe**: Sperren von Stundenzetteln nach Fertigstellung
- **Rechnungsübernahme**: Automatische Übernahme aller Produkte und Leistungen in eine Rechnung
- **Stunden-Modus**: Wahlweise Übernahme als Gesamtstunden oder pro Tag
### Integration
- **SubtotalTitle-Integration**: Unterstützung für Produktgruppen aus dem SubtotalTitle-Modul
- **Auftragsintegration**: Direkter Zugriff auf Stundenzettel über Aufträge
- **Kundenintegration**: Standard-Leistung pro Kunde konfigurierbar
## Installation
1. Modul-Ordner nach `/custom/stundenzettel/` kopieren
2. In Dolibarr einloggen
3. Unter **Einstellungen > Module/Anwendungen** das Modul "Stundenzettel" aktivieren
4. Das Modul erstellt automatisch:
- Erforderliche Datenbanktabellen
- Extrafeld "Auftragsbeschreibung" für Aufträge
- Extrafeld "Standard-Leistung" für Kunden
- Datenbank-View für Dienstleistungen
## Konfiguration
Die Moduleinstellungen finden Sie unter **Einstellungen > Module > Stundenzettel > Zahnrad-Symbol**:
| Einstellung | Beschreibung |
|-------------|--------------|
| **Zeiteingabe-Modus** | Dropdown (15-Minuten-Takt) oder Freitext (exakte Uhrzeit) |
| **Standard-Filter** | Welcher Filter in der Produktliste standardmäßig angezeigt wird |
| **Standard-Datum** | Aktuelles Datum oder Datum des letzten offenen Stundenzettels |
| **Stunden-Übernahme** | Gesamtstunden auf einer Zeile oder pro Tag eine Zeile |
### Standard-Leistung beim Kunden
Sie können beim Kunden (unter **Kunden > Kundenkarte**) eine Standard-Leistung (Dienstleistung) hinterlegen. Diese wird dann bei allen Stundenzetteln für diesen Kunden angezeigt und kann für die Rechnungsstellung verwendet werden.
## Datenbanktabellen
| Tabelle | Beschreibung |
|---------|--------------|
| `llx_stundenzettel` | Haupttabelle für Stundenzettel |
| `llx_stundenzettel_leistung` | Leistungen/Arbeitszeiten (inkl. fk_product für Leistungsposition) |
| `llx_stundenzettel_product` | Verbrauchte Produkte |
| `llx_stundenzettel_tracking` | Gesamtübersicht Mengen pro Auftrag |
| `llx_stundenzettel_note` | Notizen und Merkzettel |
| `llx_product_services` | View für Dienstleistungen (Extrafeld-Filter) |
## Extrafelder
| Feld | Element | Beschreibung |
|------|---------|--------------|
| `auftragsbeschreibung` | Auftrag | Zusätzliche Beschreibung für den Auftrag |
| `stundenzettel_status` | Auftrag | Status der Stundenzettel (0=Offen, 1=Freigegeben, 2=Abgerechnet) |
| `stundenzettel_netto` | Auftrag | Berechneter Netto-Wert aller freigegebenen Stundenzettel |
| `stundenzettel_default_service` | Kunde | Standard-Dienstleistung für Stundenzettel |
## Berechtigungen
| Berechtigung | Beschreibung |
|--------------|--------------|
| Lesen | Stundenzettel anzeigen |
| Erstellen/Bearbeiten | Stundenzettel erstellen und bearbeiten |
| Freigeben | Stundenzettel freigeben/sperren |
| Löschen | Stundenzettel löschen |
## Workflow
1. **Stundenzettel erstellen**: Über Auftrag > Stundenzettel-Tab
2. **Leistungen erfassen**: Arbeitszeiten mit Start-/Endzeit dokumentieren
3. **Produkte dokumentieren**: Verbrauchte Materialien aus dem Auftrag erfassen
4. **Mehraufwand hinzufügen**: Zusätzliche Produkte bei Bedarf
5. **Notizen erstellen**: Merkzettel für nächsten Termin
6. **Stundenzettel freigeben**: Nach Fertigstellung sperren
7. **In Rechnung übernehmen**: Automatische Rechnungserstellung
## Changelog
### Version 1.4.0
- **Stundenzettel öffnen ohne Produktauswahl**: Button "Stundenzettel öffnen" funktioniert jetzt auch ohne Checkbox-Auswahl - öffnet oder erstellt direkt einen Stundenzettel
- **Dezimalmengen**: Alle Mengenfelder (Produkte, Mehraufwand, Entfällt) unterstützen jetzt Kommazahlen (z.B. 0,3m Kabel)
- **Aktionsspalte in Liste**: Jeder Listeneintrag hat einen direkten Link zum Stundenzettel-Tab des Auftrags
- **Aufgeräumtes Menü**: Nur noch die Übersicht hat ein Icon, restliche Menüpunkte ohne Icons
### Version 1.3.0
- **Netto STZ Spalte in Auftragsliste**: Neue Spalte zeigt den Netto-Wert aller freigegebenen Stundenzettel eines Auftrags
- Automatische Berechnung bei Freigabe/Wiedereröffnung von Stundenzetteln
- Berücksichtigt Produkte (mit Auftrags- oder Katalogpreisen)
- Berücksichtigt Arbeitsstunden (mit der gewählten Leistungsposition pro Zeile)
- Unterstützt kundenspezifische Preise
- **Verbesserte Preisberechnung**: Jede Arbeitszeit-Zeile verwendet den Preis ihrer eigenen Leistungsposition (nicht mehr Standard-Leistung des Kunden)
- **Extrafeld `stundenzettel_netto`**: Wird automatisch bei Modulaktivierung erstellt
- **Debug-Script**: `debug_netto.php` für Fehleranalyse der Netto-Berechnung
### Version 1.2.0
- **Leistungsposition pro Arbeitszeit**: Jede Arbeitszeit kann einer eigenen Leistungsposition (Dienstleistung) zugeordnet werden
- **Mobile-optimierte Ansicht**: Responsive CSS für Touch-Geräte (Smartphones/Tablets)
- Kompakte Tabellen mit horizontalem Scrollen bei Bedarf
- Größere Touch-Targets für Buttons und Icons
- Optimierte Eingabefelder (Font 16px, kein iOS-Zoom)
- Beschreibungsfelder auf separater Zeile für bessere Bedienbarkeit
- Grund/Beschreibung wird klein unter dem Produktnamen angezeigt
- Action-Buttons sticky am unteren Bildschirmrand
- Dark Mode Support (kompatibel mit Dolibarr Themes)
- **Erweiterte Lieferauflistung**: Tracking-Tab zeigt jetzt auch Leistungen gruppiert nach Leistungsposition
- **Verbesserte Tab-Navigation**: Einheitliche Tabs auf Auftrags- und Stundenzettel-Ebene
- **Layout-Verbesserungen**: Konsistente Spaltenbreiten und Ausrichtung in allen Tabellen
### Version 1.1.0
- Standard-Leistung beim Kunden hinterlegen (nur Dienstleistungen auswählbar)
- Stunden-Übernahme Modus (Gesamt oder pro Tag)
- Zeitüberlappungsprüfung für Leistungen
- Verbessertes Setup-Seitenlayout
- Datenbank-View für Dienstleistungs-Filter
### Version 1.0.0
- Initiale Version
- Grundlegende Stundenzettel-Verwaltung
- Leistungs- und Produkterfassung
- Mehraufwand und Entfällt-Funktionen
- Notizen-System
- Freigabe und Rechnungsübernahme
- SubtotalTitle-Integration
## Support
Bei Fragen oder Problemen wenden Sie sich an:
**Data IT Solution**
E-Mail: data@data-it-solution.de
Web: https://data-it-solution.de
## Lizenz
Dieses Modul steht unter der GNU General Public License v3. Siehe LICENSE-Datei für Details.