136 lines
3.8 KiB
Markdown
Executable file
136 lines
3.8 KiB
Markdown
Executable file
# DeliveryInvoiceAddress
|
|
|
|
Dolibarr-Modul zur Verwendung von Rechnungs-, Liefer- und Serviceadressen in ODT-Vorlagen.
|
|
|
|
## Funktionen
|
|
|
|
- Separate Rechnungsadresse in Angeboten, Aufträgen und Rechnungen
|
|
- Lieferadresse für Versanddokumente
|
|
- Serviceadresse für Servicedokumente
|
|
- Automatische Erkennung des Dokumenttyps (Angebot/Auftrag/Rechnung)
|
|
- Fallback auf Kundenadresse wenn kein spezieller Kontakt vorhanden
|
|
|
|
## Installation
|
|
|
|
1. Modul-Ordner nach `htdocs/custom/deliveryinvoiceaddress/` kopieren
|
|
2. In Dolibarr: Home → Setup → Modules → DeliveryInvoiceAddress aktivieren
|
|
|
|
## Unterstützte Dokumenttypen
|
|
|
|
| Dokumenttyp | Element | Kontakttypen |
|
|
|-------------|---------|--------------|
|
|
| Angebot (Propal) | `propal` | BILLING, CUSTOMER |
|
|
| Auftrag (Commande) | `commande` | BILLING, CUSTOMER, SERVICE, SHIPPING |
|
|
| Rechnung (Facture) | `facture` | BILLING, SERVICE, SHIPPING |
|
|
|
|
## Verfügbare ODT-Tags
|
|
|
|
### Rechnungsadresse (Billing)
|
|
|
|
| Tag | Beschreibung |
|
|
|-----|--------------|
|
|
| `{billing_contact_firstname}` | Vorname |
|
|
| `{billing_contact_name}` | Vorname (Fallback: Nachname) |
|
|
| `{billing_contact_address}` | Straße und Hausnummer |
|
|
| `{billing_contact_zip}` | Postleitzahl |
|
|
| `{billing_contact_town}` | Ort |
|
|
| `{billing_contact_country}` | Land |
|
|
|
|
### Lieferadresse (Delivery/Shipping)
|
|
|
|
| Tag | Beschreibung |
|
|
|-----|--------------|
|
|
| `{delivery_contact_firstname}` | Vorname |
|
|
| `{delivery_contact_name}` | Vorname (Fallback: Nachname) |
|
|
| `{delivery_contact_address}` | Straße und Hausnummer |
|
|
| `{delivery_contact_zip}` | Postleitzahl |
|
|
| `{delivery_contact_town}` | Ort |
|
|
| `{delivery_contact_country}` | Land |
|
|
|
|
### Serviceadresse (Service)
|
|
|
|
| Tag | Beschreibung |
|
|
|-----|--------------|
|
|
| `{service_contact_firstname}` | Vorname |
|
|
| `{service_contact_name}` | Vorname (Fallback: Nachname) |
|
|
| `{service_contact_address}` | Straße und Hausnummer |
|
|
| `{service_contact_zip}` | Postleitzahl |
|
|
| `{service_contact_town}` | Ort |
|
|
| `{service_contact_country}` | Land |
|
|
|
|
## Verwendung in ODT-Vorlagen
|
|
|
|
### Beispiel: Rechnungsadresse mit Fallback auf Kundenadresse
|
|
|
|
```
|
|
[!-- IF {billing_contact_name} --]
|
|
{billing_contact_name}
|
|
{billing_contact_address}
|
|
{billing_contact_zip} {billing_contact_town}
|
|
[!-- ELSE {billing_contact_name} --]
|
|
{company_name}
|
|
{company_address}
|
|
{company_zip} {company_town}
|
|
[!-- ENDIF {billing_contact_name} --]
|
|
```
|
|
|
|
### Beispiel: Zwei Adressen nebeneinander
|
|
|
|
```
|
|
Rechnungsadresse: Lieferadresse:
|
|
{billing_contact_name} {delivery_contact_name}
|
|
{billing_contact_address} {delivery_contact_address}
|
|
{billing_contact_zip} {billing_contact_town} {delivery_contact_zip} {delivery_contact_town}
|
|
```
|
|
|
|
## Kontakte zuordnen
|
|
|
|
1. Öffne das Dokument (Angebot/Auftrag/Rechnung)
|
|
2. Gehe zum Tab "Kontakte/Adressen"
|
|
3. Füge einen Kontakt hinzu und wähle die entsprechende Rolle:
|
|
- **Kundenkontakt für Rechnungen** (BILLING) → `billing_contact_*`
|
|
- **Kundenkontakt für Lieferung** (SHIPPING) → `delivery_contact_*`
|
|
- **Kundenkontakt für Service** (SERVICE) → `service_contact_*`
|
|
|
|
## Debugging
|
|
|
|
Bei Problemen Log-Level auf DEBUG setzen:
|
|
|
|
1. Home → Setup → Logs → Syslog aktivieren
|
|
2. Dokument generieren
|
|
3. Log prüfen (z.B. `dolibarr.log`)
|
|
|
|
Relevante Log-Einträge beginnen mit: `DeliveryInvoiceAddress:`
|
|
|
|
## Technische Details
|
|
|
|
### Datenbankstruktur
|
|
|
|
| Tabelle | Beschreibung |
|
|
|---------|--------------|
|
|
| `llx_element_contact` | Verknüpfung Dokument ↔ Kontakt |
|
|
| `llx_c_type_contact` | Kontakttyp-Definitionen |
|
|
| `llx_socpeople` | Kontaktdaten |
|
|
|
|
### Hauptfunktion
|
|
|
|
```
|
|
deliveryinvoiceaddress_completesubstitutionarray()
|
|
```
|
|
|
|
Datei: `core/substitutions/functions_deliveryinvoiceaddress.lib.php`
|
|
|
|
## Autor
|
|
|
|
Eduard Wisch - DATA IT Solution
|
|
https://data-it-solution.de
|
|
|
|
## Lizenz
|
|
|
|
GPL v3 oder höher
|
|
|
|
## Version
|
|
|
|
- **Version:** 1.2
|
|
- **Dolibarr:** 15.0+
|
|
- **PHP:** 7.1+
|