73 lines
1.9 KiB
Markdown
73 lines
1.9 KiB
Markdown
# Kivitendo Einheiten-Migration für ZUGFeRD
|
|
|
|
## Zweck
|
|
Diese Skripte ändern Einheiten in Kivitendo von Text-Format zu Unicode-Hochzahlen für ZUGFeRD-Kompatibilität.
|
|
|
|
## Hintergrund
|
|
Kivitendo erkennt beim ZUGFeRD-Export nur bestimmte Einheiten als valide.
|
|
Die korrekten Formate sind:
|
|
- `m²` (mit hochgestellter 2) statt `m2` oder `MTK`
|
|
- `m³` (mit hochgestellter 3) statt `m3` oder `MTQ`
|
|
|
|
## Dateien
|
|
- `change_m3_to_m_hoch_3.sql` - Ändert m3 → m³
|
|
|
|
## Anwendung
|
|
|
|
### Voraussetzungen
|
|
- PostgreSQL Zugriff
|
|
- Backup der Datenbank (empfohlen!)
|
|
|
|
### Backup erstellen
|
|
```bash
|
|
sudo -u postgres pg_dumpall > /root/postgres_backup_$(date +%Y%m%d_%H%M%S).sql
|
|
```
|
|
|
|
### Skript ausführen
|
|
```bash
|
|
sudo -u postgres psql -d <datenbankname> -f change_m3_to_m_hoch_3.sql
|
|
```
|
|
|
|
**Beispiel für Datenbank "hemi":**
|
|
```bash
|
|
cp change_m3_to_m_hoch_3.sql /tmp/
|
|
chmod 644 /tmp/change_m3_to_m_hoch_3.sql
|
|
sudo -u postgres psql -d hemi -f /tmp/change_m3_to_m_hoch_3.sql
|
|
```
|
|
|
|
## Was wird geändert?
|
|
|
|
Das Skript führt folgende Schritte aus:
|
|
1. Entfernt temporär Foreign Key Constraints
|
|
2. Aktualisiert Einheit in folgenden Tabellen:
|
|
- `units` (Einheiten-Stammdaten)
|
|
- `parts` (Artikel)
|
|
- `invoice` (Rechnungspositionen)
|
|
- `orderitems` (Auftragspositionen)
|
|
- `delivery_order_items` (Lieferscheinpositionen)
|
|
- `units_language` (Einheiten-Übersetzungen)
|
|
3. Stellt Foreign Key Constraints wieder her
|
|
4. Zeigt Statistik der geänderten Datensätze
|
|
|
|
## Sicherheit
|
|
|
|
✅ **Transaction-basiert:** Bei Fehler wird automatisch zurückgerollt (ROLLBACK)
|
|
✅ **Alle referenzierten Tabellen werden aktualisiert**
|
|
⚠️ **Historische Daten werden ebenfalls geändert** (Foreign Keys erzwingen das)
|
|
|
|
## Beispiel-Ausgabe
|
|
```
|
|
Fertig! m3 -> m³ geändert
|
|
tabelle | anzahl
|
|
-------------+--------
|
|
Artikel: | 31
|
|
Rechnungen: | 194
|
|
Aufträge: | 162
|
|
```
|
|
|
|
## Erstellt am
|
|
2026-01-31
|
|
|
|
## Version
|
|
1.0
|