Feldzuordnungen
Zuordnung von Feldern für Immobiliendatensätze
Innerhalb jeder Schnittstelle ist es möglich, jedes Feld einer Import-XML einem bestimmten Feld der im Contao EstateManager existierenden Objektfelder zuzuordnen und zu formatieren.
Die XML-Datei, welche die OpenImmo Felder beinhaltet, kann sich auch innerhalb eines importierten Archivs befinden.
Feldzuordnungen sind notwendig für das Speichern der Informationen von importierten Objekten.
Wenn keine Feldzuordnungen angelegt sind, können Objekte nicht synchronisiert werden!
OpenImmo Feldzuordnungen erstellen
Nach der Erstellung einer neuen Schnittstelle existieren noch keine Zuordnungen für Felder des OpenImmo-Standards.
Neue Feldzuordnung erstellen
Neue Feldzuordnungen können über Neue Feldzuordnung erstellt werden.
Typ
🔹Typ
Hier kann der Datentyp ausgewählt werden, auf den die Feldzuordnung verweisen soll:
Immobilie Bezieht sich auf die Tabelle tl_real_estate und somit auf einen Immobiliendatensatz.
Kontaktperson Bezieht sich auf die Tabelle tl_contact_person und somit auf eine Kontaktperson (Innerhalb der Anbieterverwaltung).
🔹Attribut
Attribute sind Informationen für den ausgewählten Typen, welche in der jeweiligen Datenbank gespeichert werden. Hier kann das Datenbankfeld für die Zuordnung ausgewählt werden.
Feld-Einstellungen
Die Feldeinstellungen dienen dazu, die übertragenen Feldinformationen innerhalb einer Importdatei ermitteln zu können. Mithilfe dieser Einstellungen ist es möglich, verschiedene Importdateien einzulesen, um sie anschließend korrekt in das System zu überführen.
🔹OpenImmo-Feldgruppe
Feldgruppen dienen zur Identifizierung einer Kategorie. Innerhalb einer Feldgruppe können Felder gefunden werden.
Beispielhafte Ausschnitte aus einer Import.xml
Im nachfolgenden Beispiel ist <geo> die OpenImmo-Feldgruppe, die innen liegenden Informationen sind OpenImmo-Felder:
Die OpenImmo-Feldgruppe für die Postleitzahl einer Immobilie wäre somit:
geo
Im nachfolgenden Beispiel ist die Information des OpenImmo-Feldes <gueltis_bis> innerhalb von <energiepass>, welches sich wiederum in <zustand_angaben>befindet.
Der Zugriff auf das OpenImmo-Feld <gueltig_bis> wäre mit folgender Konfiguration der OpenImmo-Feldgruppe gegeben:
zustand_angaben/energiepass
🔹OpenImmo-Feld
Innerhalb der OpenImmo-Felder befinden sich Werte . Auf diese kann über verschiedene Wege zugegriffen werden:
Beispielhafte Ausschnitte aus einer Import.xml
Im nachfolgenden Beispiel wird der Wert Mustermann innerhalb von <name> ausgelesen.
Hierfür ist folgende Konfiguration notwendig:
OpenImmo-Feldgruppe: kontaktperson
OpenImmo-Feld: name
Im nachfolgenden Beispiel wird der Wert 51.06995 des Attributs breitengrad innerhalb von <geokoordinaten> ausgelesen.
Auf Attributwerte kann mithilfe von element@attribut zugegriffen werden.
Hierfür ist folgende Konfiguration notwendig:
OpenImmo-Feldgruppe: geo
OpenImmo-Feld: geokoordinaten@breitengrad
In manchen Fällen enthält ein Element mehrere Attribute mit Wahrheitswerten (Boolean). Mit folgenden Konfigurationen lassen sich die nachfolgenden Beispiele auslesen:
Beispiel 1
Jedes Objekt enthält nur eine Nutzungsart. In der XML werden jedoch alle Nutzungsarten als Attribute übertragen. Nur eine der Nutzungsarten ist wahr.
In diesem Fall soll also der Attributname ausgegeben werden, dessen Attributwert auf true steht.
Um auf den einen Attributnamen eines Elements zuzugreifen, der wahr ist, kann attribut@+ verwendet werden.
Hierfür ist folgende Konfiguration notwendig:
OpenImmo-Feldgruppe: objektkategorie
OpenImmo-Feld: nutzungsart@+
Der Rückgabewert mit der oben genannten Konfiguration wäre WOHNEN.
Beispiel 2
In diesem Beispiel sind mehrere Attribute innerhalb eines Elements von Wichtigkeit. Es sollen alle Attributnamen ausgelesen werden, in welchen der Wert wahr ist.
Um auf alle Attributnamen eines Elements zuzugreifen, die wahr sind, kann attribut@# verwendet werden.
Hierfür ist folgende Konfiguration notwendig:
OpenImmo-Feldgruppe: ausstattung
OpenImmo-Feld: boden@#
Der Rückgabewert mit der oben genannten Konfiguration wäre:
FLIESEN TEPPICH PARKETT LAMINAT MARMOR.
Beispiel 3
In diesem Beispiel sollen alle Attribute eines Elements unabhängig des Attributwerts zurückgegeben werden.
Um auf alle Attributnamen eines Elements zuzugreifen, unabhängig des Attributwerts, kann attribut@* verwendet werden.
Hierfür ist folgende Konfiguration notwendig:
OpenImmo-Feldgruppe: example
OpenImmo-Feld: element@*
Der Rückgabewert mit der oben genannten Konfiguration wäre:
attribut1 attribut2 attribut3 attribut4.
Im nachfolgenden Beispiel wird der Name des Elements buero_praxen innerhalb von <objektart> ausgelesen.
Auf den Namen des ersten Elements innerhalb eines Elternelements kann mithilfe von elternelement@[1] zugegriffen werden.
Hierfür ist folgende Konfiguration notwendig:
OpenImmo-Feldgruppe: objektkategorie
OpenImmo-Feld: objektart@[1]
Sollte der Name des zweiten oder dritten Elementes von Bedeutung sein, kann man auch elternelement@[2] oder elternelement@[3] verwenden.
🔹OpenImmo-Bedingungsfeld
Bedingungsfelder sind ähnlich der OpenImmo-Felder und dienen mithilfe des OpenImmo-Bedingungswertes der Überprüfung von Attributwerten.
Beispielhafter Ausschnitt aus einer Import.xml
Im nachfolgenden Beispiel sind <infrastruktur> und <distanzen> die OpenImmo-Feldgruppe, das Attribut distanz_zu wäre das OpenImmo-Bedingungsfeld.
Auf den Attributnamen kann mithilfe von @attributname zugegriffen werden.
Folgende Konfiguration ist für die Verwendung des Attributnamen als Bedingungsfeld von Nöten:
OpenImmo-Feldgruppe: infrastruktur/distanzen
OpenImmo-Feld:
OpenImmo-Bedingungsfeld: @distanz_zu
Ein Bedingungsfeld benötigt immer einen Bedingungswert, welcher überprüft werden muss.
🔹OpenImmo-Bedingungswert
Der Bedingungswert ist der zu überprüfende Attributwert des Attributnamen, welcher im OpenImmo-Bedingungsfeld eingetragen wird. Mithilfe eines Bedingungswertes kann ein Wert innerhalb mehrerer gleichnamiger Elemente ausgelesen werden.
Beispielhafter Ausschnitt aus einer Import.xml
Im nachfolgenden Beispiel sind <infrastruktur> und <distanzen> die OpenImmo-Feldgruppe, das Attribut distanz_zu ist das OpenImmo-Bedingungsfeld.
Es soll auf den Wert des Elements <distanzen distanz_zu="FLUGHAFEN">25.00</distanzen> zugegriffen werden.
Das Attribut distanz_zu ist das OpenImmo-Bedingungsfeld.
Der Wert FLUGHAFEN ist der OpenImmo-Bedingungswert.
Folgende Konfiguration ist für die Überprüfung des Attributwertes von Nöten:
OpenImmo-Feldgruppe: infrastruktur/distanzen
OpenImmo-Feld:
OpenImmo-Bedingungsfeld: @distanz_zu
OpenImmo-Bedingungswert: FLUGHAFEN
Der Rückgabewert mit der oben genannten Konfiguration wäre:
25.00.
🔹Werte serialisieren
Mit dieser Option lassen sich gefundene Werte serialisieren. Anwendung findet diese Option z. B. bei Bildern eines Objektes.
Diese Einstellung ist notwendig für Felder, welche in Contao serialisiert sind und als ein Wert in der Datenbank gespeichert werden. Ein Beispiel für einen serialisierten Wert in Contao wäre das Feld multiSRC.
Beispielhafter Ausschnitt aus einer Import.xml
Im nachfolgenden Beispiel sind:
<anhaenge>und<anhang>die OpenImmo-Feldgruppe<daten>und<pfad>die OpenImmo-Felder@gruppeist das OpenImmo-BedingungsfeldBILDist der zu überprüfende OpenImmo-Bedingungswert
Es sollen alle Werte innerhalb von anhang/daten/pfad ausgegeben werden, in welchem <anhang> das Attribut gruppe und den Attributwert BILD besitzt.
Da es sich um mehrere Werte handelt, welche dem System übergeben werden sollen, kann hier serialisiert werden.
Folgende Konfiguration dient der Serialisierung der Werte:
OpenImmo-Feldgruppe: anhaenge/anhang
OpenImmo-Feld: daten/pfad
OpenImmo-Bedingungsfeld: @gruppe
OpenImmo-Bedingungswert: BILD Werte Serialisieren: ✅
Der Rückgabewert mit der oben genannten Konfiguration wäre:
{Bild1.jpg, Bild2.jpg, Bild3.jpg, Bild4.jpg}
🔹Leeren Wert mappen
Wenn importierte Objekte trotz nicht-existenter Informationen in der Import.xml einen Standardwert erhalten sollen, kann hier bei Aktivierung der Checkbox, ein gewünschter Standardwert eingetragen werden.
Formatierung
Durch Formatierungen können die eingelesenen Werte vor der Speicherung in die Datenbank in eine gewünschte Form umgewandelt werden.
🔹Formatierung
Hier kann ausgewählt werden, welche Formatierung angewendet werden soll. Folgende Optionen stehen zur Verfügung:
Keine
Zahl
Datum
Text
Boolescher Wert
Zahl (Formatierung)
Kürzt eine Zahl anhand der übergebenen Dezimalstellen.
Beispiel: Anzahl an Dezimalstellen: 2 Aus
5000wird50.00
Datum (Formatierung)
Wandelt ein übertragenes Datum in einen Timestamp um. Optional kann ein Datumsformat angegeben werden.
Beispiel: Aus
1990-03-21wird638006400
Text (Formatierung)
Mithilfe der Text-Formatierung können gefundene Strings formatiert werden. Folgende Auswahlmöglichkeiten stehen zur Verfügung:
Keine
Kleinschreibung
Großschreibung
Erstes Zeichen groß
Sonderzeichen ersetzen
Setzt einen String in Kleinbuchstaben um.
Beispiel: Aus
GEWERBEwirdgewerbe
Wandelt alle Zeichen eines Strings in Großbuchstaben um.
Beispiel: Aus
beispielwirdBEISPIEL
Verwandelt das erste Zeichen eines Strings in einen Großbuchstaben.
Beispiel: Aus
beispielwirdBeispiel
Ersetzt folgende Sonderzeichen innerhalb eines übertragenen Strings.
‘
'
’
'
”
"
“
"
"
"
–
-
—
-
-
…
…
Trimmen (Textformatierung)
Entfernt Zwischenraumzeichen (oder andere Zeichen) am Anfang und Ende eines Strings.
Boolescher Wert (Formatierung)
Wandelt übertragene Werte in boolsche Werte um (0 und 1). Kann mithilfe von Vergleichswert auch zur Überprüfung von vorgegebenen Werten genutzt werden.
Experten-Einstellungen
🔹Datei speichern
Hier kann angegeben werden, ob eine Datei bei einer Feldzuordnung gespeichert werden soll. Diese Option ist nötig, um übertragene Dateien für ein Objekt zu speichern.
Sollte sich im Immobilien-Import eine Datei mit dem angegebenen Wert befinden, wird diese Datei im Ordner der Immobilie gespeichert.
Last updated
Was this helpful?