OfficeServer/TEMPLATE-TESTING-ANLEITUNG.md
2025-10-01 21:14:31 +02:00

167 lines
4.6 KiB
Markdown

# 🧪 Template Testing - Automatische Test-Funktionen
## 📋 Übersicht
Der DOCX Template Server bietet jetzt **automatische Template-Test-Funktionen**, die Templates analysieren und mit zufälligen Daten befüllen können.
## 🚀 Neue Funktionen
### 1. 📊 Template-Analyse
**Endpoint:** `GET /analyze-template/{templateName}`
Analysiert ein Template und zeigt alle gefundenen Tags an:
```bash
curl http://localhost:3000/analyze-template/simple-template.docx
```
**Response:**
- `totalTags`: Anzahl gefundener Tags
- `simpleTags`: Einfache Platzhalter (++name++, ++email++)
- `tableTags`: Tabellen-Tags (++items[0].product++)
- `tableNames`: Erkannte Array-Namen
- `exampleData`: Beispiel-Daten für alle Tags
### 2. 🎲 Automatisches Test-Dokument
**Endpoint:** `POST /test-template/{templateName}`
Erstellt automatisch ein Test-Dokument mit zufälligen Daten:
```bash
curl -X POST -H "Content-Type: application/json" \
-d '{"rowCount": 5}' \
http://localhost:3000/test-template/simple-template.docx
```
**Parameter:**
- `rowCount`: Anzahl der Tabellenzeilen (Standard: 3)
## 🏷️ Unterstützte Tag-Typen
### Einfache Tags
Der Server erkennt automatisch verschiedene Tag-Typen und generiert passende Daten:
| Tag-Muster | Beispiel-Daten |
|------------|----------------|
| `++name++` | Max Mustermann |
| `++vorname++` | Anna |
| `++firma++` | Tech Solutions GmbH |
| `++email++` | max@beispiel.de |
| `++datum++` | 15.10.2025 |
| `++preis++` | 1.234,56 € |
| `++telefon++` | +49 123 4567890 |
| `++stadt++` | Berlin |
| `++straße++` | Hauptstraße 42 |
### Tabellen-Tags
Unterstützt Array-Syntax für Tabellen:
```
++items[0].product++
++items[0].quantity++
++items[0].price++
```
Wird automatisch zu einem Array von Objekten:
```json
{
"items": [
{
"product": "Premium Service",
"quantity": 3,
"price": "299.99 €"
}
]
}
```
## 🎯 Intelligente Daten-Generierung
### Deutsche Stammdaten
- **Namen:** Max Mustermann, Anna Schmidt, Peter Weber...
- **Firmen:** Tech Solutions GmbH, Digital Services Ltd...
- **Städte:** Berlin, München, Hamburg, Köln...
- **Produkte:** Premium Service, Business Solution...
### Kontext-bewusste Generierung
- Tags mit "email" → E-Mail-Adressen
- Tags mit "preis" → Geldbeträge in Euro
- Tags mit "datum" → Deutsche Datumsformate
- Tags mit "telefon" → Deutsche Telefonnummern
- Tags mit "produkt" → Produktnamen
## 📄 Verwendungsbeispiele
### 1. Template analysieren
```bash
# Alle Tags in einem Template anzeigen
curl http://localhost:3000/analyze-template/mein-template.docx | jq '.'
```
### 2. Schneller Test
```bash
# Test-Dokument mit 3 Tabellenzeilen
curl -X POST http://localhost:3000/test-template/mein-template.docx
```
### 3. Umfangreicher Test
```bash
# Test-Dokument mit 10 Tabellenzeilen
curl -X POST -H "Content-Type: application/json" \
-d '{"rowCount": 10}' \
http://localhost:3000/test-template/mein-template.docx
```
### 4. Direkt in MS Word öffnen
Das generierte Test-Dokument kann direkt über die WebDAV-URL in MS Word geöffnet werden:
```
ms-word:ofe|u|http://localhost:3000/webdav/output/test_template_123.docx
```
## 🔧 Template-Entwicklungs-Workflow
1. **Template erstellen** in MS Word mit `++tag++` Platzhaltern
2. **Template analysieren** mit `/analyze-template/`
3. **Test-Dokument generieren** mit `/test-template/`
4. **Ergebnis prüfen** und Template ggf. anpassen
5. **Produktive Nutzung** mit `/generate-document`
## 📊 Beispiel-Response
```json
{
"success": true,
"templateName": "simple-template.docx",
"foundTags": ["name", "email", "items[0].product"],
"tableNames": ["items"],
"generatedData": {
"name": "Max Mustermann",
"email": "max@beispiel.de",
"items": [
{
"product": "Premium Service",
"quantity": 2,
"price": "299.99 €"
}
]
},
"downloadUrl": "/download/test_simple-template_123.docx",
"webdavUrl": "/webdav/output/test_simple-template_123.docx",
"msWordUrl": "ms-word:ofe|u|http://localhost:3000/webdav/output/test_simple-template_123.docx",
"message": "Test-Dokument erfolgreich erstellt mit 3 Tags und 1 Tabellen"
}
```
## 🎉 Vorteile
-**Schnelle Template-Validierung** ohne manuelle Daten-Eingabe
-**Automatische Tag-Erkennung** in DOCX-Dateien
-**Intelligente Daten-Generierung** basierend auf Tag-Namen
-**Tabellen-Unterstützung** mit konfigurierbarer Zeilenzahl
-**Deutsche Lokalisierung** für realistische Test-Daten
-**Sofortige Ergebnisse** mit Download- und WebDAV-Links
-**MS Word Integration** für direktes Öffnen
---
**🚀 Jetzt können Sie Templates erstellen und sofort mit realistischen Daten testen!**