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

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:

<geo>
    <plz>12345</plz>
    <ort>Musterstadt</ort>
    <strasse>Musterstrasse</strasse>
    <hausnummer>1</hausnummer>
</geo>

Die OpenImmo-Feldgruppe für die Postleitzahl einer Immobilie wäre somit:

geo

🔹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.

<kontaktperson>
    <email_zentrale>info@estatemanager.com</email_zentrale>
    <tel_zentrale>02171/4015150</tel_zentrale>
    <name>Mustermann</name>
    <vorname>Max</vorname>
    <anrede>Herr</anrede>
</kontaktperson>

Hierfür ist folgende Konfiguration notwendig:

OpenImmo-Feldgruppe: kontaktperson

OpenImmo-Feld: name

🔹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.

<infrastruktur>
    <distanzen distanz_zu="EINKAUFSMOEGLICHKEITEN">0.50</distanzen>
    <distanzen distanz_zu="FLUGHAFEN">25.00</distanzen>
    <distanzen distanz_zu="AUTOBAHN">2.00</distanzen>
    <distanzen distanz_zu="BUS">0.20</distanzen>
</infrastruktur>

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.

<infrastruktur>
    <distanzen distanz_zu="EINKAUFSMOEGLICHKEITEN">0.50</distanzen>
    <distanzen distanz_zu="FLUGHAFEN">25.00</distanzen>
    <distanzen distanz_zu="AUTOBAHN">2.00</distanzen>
    <distanzen distanz_zu="BUS">0.20</distanzen>
</infrastruktur>

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

  • @gruppe ist das OpenImmo-Bedingungsfeld

  • BILD ist 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.

<anhaenge>
    <anhang location="EXTERN" gruppe="TITELBILD">
        <anhangtitel>Immobilie 1</anhangtitel>
        <format>jpg</format>
        <daten>
            <pfad>Foto_1.jpg</pfad>
        </daten>
    </anhang>
    <anhang location="EXTERN" gruppe="BILD">
        <anhangtitel>Bild 1</anhangtitel>
        <format>jpg</format>
        <daten>
            <pfad>Bild_1.jpg</pfad>
        </daten>
    </anhang>
    <anhang location="EXTERN" gruppe="BILD">
        <anhangtitel>Bild 2</anhangtitel>
        <format>jpg</format>
        <daten>
            <pfad>Bild_2.jpg</pfad>
        </daten>
    </anhang>
    <anhang location="EXTERN" gruppe="BILD">
        <anhangtitel>Bild 3</anhangtitel>
        <format>jpg</format>
        <daten>
            <pfad>Bild_3.jpg</pfad>
        </daten>
    </anhang>
    <anhang location="EXTERN" gruppe="BILD">
        <anhangtitel>Bild 4</anhangtitel>
        <format>jpg</format>
        <daten>
            <pfad>Bild_3.jpg</pfad>
        </daten>
    </anhang>
</anhaenge>

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 5000 wird 50.00

Nutzt die Funktion number_format()

Datum (Formatierung)

Wandelt ein übertragenes Datum in einen Timestamp um. Optional kann ein Datumsformat angegeben werden.

Beispiel: Aus 1990-03-21 wird 638006400

Nutzt die Funktion strtotime()

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 GEWERBE wird gewerbe

Nutzt die Funktion strtolower()

Trimmen (Textformatierung)

Entfernt Zwischenraumzeichen (oder andere Zeichen) am Anfang und Ende eines Strings.

Nutzt die Funktion trim()

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