dolibarr.stundenzettel/sql/llx_commande_extrafields_stundenzettel.sql
data c9cbd54fa3 Version 1.6.0: Stundenübernahme-Modus, Leistungsbeschreibungen, Bugfixes, Dark Mode
- Neues Extrafeld 'stundenzettel_hours_mode' am Auftrag: Gruppiert oder Pro Stundenzettel
- Leistungsbeschreibungen werden per GROUP_CONCAT in Rechnungszeilen übernommen
- Bugfix: Rücknahme-Dropdown zeigt jetzt auch manuell hinzugefügte Produkte (fk_commandedet=NULL)
- Bugfix: Entfällt berücksichtigt Freitext-Produkte korrekt (fk_product IS NULL)
- Bugfix: NULL-Handling für fk_product in 5 SQL-Queries (card.php + stundenzettel_commande.php)
- Bugfix: Rechnungsübernahme inkl. origin='added' Produkte ohne Auftragszeile
- Bugfix: Tracking-Tab zeigt alle Mehraufwand/zusätzlich verbauten Produkte
- Dark Mode: Hardcodierte Hintergrundfarben durch CSS-Klassen mit Variablen ersetzt

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 19:21:03 +01:00

28 lines
2.2 KiB
SQL
Executable file

-- ============================================================================
-- Extrafeld für Stundenzettel-Status am Auftrag
-- 0 = Offen (Stundenzettel können bearbeitet werden)
-- 1 = Freigegeben (Stundenzettel gesperrt, bereit für Rechnung)
-- 2 = In Rechnung übertragen
-- ============================================================================
-- Extrafeld in extrafields-Tabelle registrieren
INSERT INTO llx_extrafields (name, entity, elementtype, label, type, size, fieldunique, fieldrequired, pos, alwayseditable, perms, langs, list, printable, fielddefault, fieldcomputed, fk_user_author, fk_user_modif, datec, enabled, help)
VALUES ('stundenzettel_status', 1, 'commande', 'StundenzettelStatus', 'int', '1', 0, 0, 100, 0, '', '', 0, 0, '0', '', NULL, NULL, NOW(), '1', '')
ON DUPLICATE KEY UPDATE label = 'StundenzettelStatus';
-- Spalte in commande_extrafields hinzufügen falls nicht vorhanden
ALTER TABLE llx_commande_extrafields ADD COLUMN IF NOT EXISTS stundenzettel_status INT DEFAULT 0;
-- ============================================================================
-- Extrafeld für Stundenübernahme-Modus am Auftrag
-- grouped = Alle gleichen Leistungspositionen zusammenrechnen (Standard)
-- per_stz = Pro Stundenzettel eine eigene Rechnungszeile
-- ============================================================================
INSERT INTO llx_extrafields (name, entity, elementtype, label, type, size, fieldunique, fieldrequired, pos, alwayseditable, perms, langs, list, printable, fielddefault, fieldcomputed, fk_user_author, fk_user_modif, datec, enabled, help, param)
VALUES ('stundenzettel_hours_mode', 1, 'commande', 'Stundenübernahme', 'select', '', 0, 0, 101, 1, '', '', 1, 0, 'grouped', '', NULL, NULL, NOW(), '1', 'Wie werden Arbeitsstunden in die Rechnung übertragen?',
'a:1:{s:7:"options";a:2:{s:7:"grouped";s:20:"Gruppiert (Standard)";s:7:"per_stz";s:17:"Pro Stundenzettel";}}')
ON DUPLICATE KEY UPDATE label = 'Stundenübernahme', list = 1, enabled = '1', param = 'a:1:{s:7:"options";a:2:{s:7:"grouped";s:20:"Gruppiert (Standard)";s:7:"per_stz";s:17:"Pro Stundenzettel";}}';
-- Spalte in commande_extrafields hinzufügen
ALTER TABLE llx_commande_extrafields ADD COLUMN IF NOT EXISTS stundenzettel_hours_mode VARCHAR(255) DEFAULT 'grouped';