Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.



Hinweis

Ab 30. September 2022 ist die Dhl Schnittstelle für Versionen < v7.0 nicht mehr erreichbar.

...

Info

Weitere Informationen zur DHL Autocomplete2 Schnittstelle finden Siehier.


DHL Datafactory ist eine Shop-Erweiterung welche die gleichnamige Schnittstelle der Deutschen Post verwendet um dem Kunden, bei Eingaben von Adressen, relevante Vorschläge aus deren Straßenverzeichnis anbietet. Dabei werden Informationen zur PLZ, dem Ort und der Straße berücksichtigt.

...

Konfiguration

Die Konfigurationstabelle "DHL Datafactory Konfiguration" findet sich standardmäßig im Bereich Shop → add in und dort in der Kachel DHL. API Benutzer und Passwort müssen von https://www.deutschepost.de/de/d/deutsche-post-direkt/datafactory.html bezogen werden. Es gibt hier auch die Optionen, die gesamte Funktion zu aktivieren / deaktivieren, die Funktion für einzelne Shop-Formulare zu aktivieren / deaktivieren und zu definieren ob die Felder umsortiert werden sollen.Image Removed

...

Konfiguration Shop Formulare

...

Am Beispiel des Kontakformular:

Softwarekonfiguration - PLZ
Codeblock
languagejs
themeRDark
titleSoftwarekonfiguration - PLZ
collapsetrue
{
  "dhlDatafactory": "postcode",
  "whitelist": [
    "contact"
  ]
}


Softwarekonfiguration - Ort
Codeblock
languagejs
themeRDark
titleSoftwarekonfiguration - Ort
collapsetrue
{
  "dhlDatafactory": "city",
  "whitelist": [
    "contact"
  ]
}


Softwarekonfiguration - Straße
Codeblock
languagejsthemeRDark
titleSoftwarekonfiguration - Straße
collapsetrue
{
  "dhlDatafactory": "street",
  "whitelist": [
    "contact"
  ]
}


Softwarekonfiguration - Hausnummer
Codeblock
languagejs
themeRDark
titleSoftwarekonfiguration - Hausnummer
collapsetrue
{
  "dhlDatafactory": "houseNumber",
  "whitelist": [
    "contact"
  ]
}


Softwarekonfiguration - Land
language
Codeblock
languagejs
themeRDark
titleSoftwarekonfiguration - Land
collapsetrue
{
  "dhlDatafactory": "country",
  "feature": "input/select.select/key/value",
  "enumerationPlugin": "shop/delivery",
  "enumerationFunction": "getEnumerationDeliveryCountrySelectIsoCode",
  "whitelist": [
    "contact"
  ]
}
Codeblock
js
themeRDark
title


Softwarekonfiguration - Manuelle Eingaben
collapse
Codeblock
languagetruejs
{
  "blacklist": [
    "contact"
  ],
  "dhlDatafactory": "storage",
  "feature": "input/yaml.editable"
}

...

Das Feld für das Land muss speziell konfiguriert sein. Es sollte ein Benutzerdefiniertes Feld sein mit folgender Konfiguration. Im Prinzip ist wichtig, dass die Werte keine IDs sind, sondern IsoCodes wie (DE, EN, etc).

Codeblock
languagejsthemeRDark
{
  "dhlDatafactory": "country",
  "feature": "input/select.select/key/value",
  "enumerationPlugin": "shop/delivery",
  "enumerationFunction": "getEnumerationDeliveryCountrySelectIsoCode"
}

...

Damit die manuellen Eingaben an einem Datensatz gespeichert werden, muss ein spezielles Feld an dem Datensatz vorhanden sein. Dieses Feld sollte wie folgt konfiguriert sein.Image Removed

...

Die Softwarekonfiguration sollte dann ähnlich wie folgt aussehen. Der Blacklist-Key catalogueform bezieht sich hier auf ein Formular das welches über Formulare im CMS nutzen auf der Seite platziert wurde. Wichtig ist hier "dhlDatafactory: storage" da diese Auszeichnung das Feld als Datenspeicher für die manuellen Benutzereingaben definiert.

...

...

Feldkonfiguration json
Codeblock
languagejs
themeRDark
titleFeldkonfiguration json
collapsetrue
{
  "blacklist": [
    "catalogueform",
    "contact"
  ],
  "dhlDatafactory": "storage",
  "feature": "input/yaml.editable"
}

...

Interface: \brandbox\shop\dhlDatafactory\lib\event\dhlDatafactoryEventInterface
Adapter: \brandbox\shop\dhlDatafactory\lib\event\adapter\dhlDatafactoryEventAdapter

Methode

Eingabe

Rückgabe

Beschreibung

onUpdateStorage

\brandbox\shop\dhlDatafactory\lib\event\dto\dtoEventUpdateStorage

void

Wird ausgeführt wenn das Feld für die Benutzerdefinierten Eingaben, zum Beispiel manuelle Eingabe, befüllt werden soll. Das kann dazu benutzt werden, die Informationen in einem anderen Format in einem anderen Feld zu speichern. Beispiel: Ein Sync mit einem Fremdsystem welches ein anderes Format für die Daten oder nur ein "Benutzer hat manuelle Änderungen gemacht (Ja / Nein)" braucht.

dtoEventUpdateStorage

...