# 🚀 EspoCRM Validator - Quick Start ## Installation bereits abgeschlossen ✅ Das Validierungs-Tool ist bereits installiert und einsatzbereit! ## Verwendung ```bash # Im EspoCRM-Root-Verzeichnis python3 custom/scripts/validate_and_rebuild.py ``` Das war's! Das Script führt automatisch alle Checks durch und startet den Rebuild. **Tipp:** Für nur Validierung ohne Rebuild: `python3 custom/scripts/validate_and_rebuild.py --dry-run` ## Was wird geprüft? 1. ✅ **JSON-Syntax** - Alle Custom-Dateien 2. ✅ **Relationships** - Bidirektionale Link-Konsistenz 3. ✅ **Formula-Scripts** - Korrekte Platzierung 4. ✅ **i18n** - Vollständigkeit der Übersetzungen 5. ✅ **Layouts** - Struktur-Validierung 6. ✅ **Dateirechte** - Owner & Permissions 7. ✅ **Rebuild** - Nur bei Fehlerfreiheit ## Output verstehen | Symbol | Bedeutung | Aktion | |--------|-----------|--------| | ✓ Grün | OK | Keine | | ⚠ Gelb | Warnung | Optional beheben | | ✗ Rot | Fehler | **Muss behoben werden!** | ## Beispiel ```bash $ python3 custom/scripts/validate_and_rebuild.py EspoCRM Custom Entity Validator & Rebuild Tool Arbeitsverzeichnis: /var/lib/docker/volumes/vmh-espocrm_espocrm/_data ====================================================================== 1. JSON-SYNTAX VALIDIERUNG ====================================================================== ✓ Alle 547 JSON-Dateien sind syntaktisch korrekt ====================================================================== 2. RELATIONSHIP-KONSISTENZ ====================================================================== ✗ 4 Relationship-Fehler gefunden: • CMietobjekt.vmhRumungsklages → CVmhRumungsklage: Foreign link 'mietobjekte' fehlt in CVmhRumungsklage ... ✗ REBUILD ABGEBROCHEN: Kritische Fehler müssen behoben werden! ``` ## Häufige Fehler beheben ### Relationship-Fehler ```json // In CVmhRumungsklage.json HINZUFÜGEN: { "links": { "mietobjekte": { "type": "hasMany", "entity": "CMietobjekt", "foreign": "vmhRumungsklages" } } } ``` ### JSON-Syntax-Fehler - Mit einem JSON-Validator prüfen (z.B. `python3 -m json.tool datei.json`) - Auf fehlende Kommata, geschweifte Klammern achten ### i18n-Warnung (optional) ```json // In i18n/de_DE/Entity.json ERGÄNZEN: { "links": { "meinLink": "Mein Link" } } ``` ## Mehr Infos - **Ausführliche Doku:** `custom/scripts/VALIDATOR_README.md` - **EspoCRM-Doku:** `README.md` - **Custom-Struktur:** `custom/CUSTOM_DIRECTORY.md` ## Troubleshooting **Python3 nicht gefunden?** ```bash sudo apt-get install python3 # Ubuntu/Debian sudo yum install python3 # CentOS/RHEL ``` **Keine Berechtigung?** ```bash chmod +x custom/scripts/validate_and_rebuild.py ``` **Script findet rebuild.php nicht?** ```bash # Ins richtige Verzeichnis wechseln cd /var/lib/docker/volumes/vmh-espocrm_espocrm/_data python3 custom/scripts/validate_and_rebuild.py ``` --- **💡 Tipp:** Führe das Script nach **jeder** Änderung an Custom-Dateien aus!