Zum Inhalt springen

Verwandeln Sie Ihre Kontakte in Urlaubsgeld mit unserem neuen Kundenempfehlungsprogramm! Erfahren Sie mehr

Schemaverarbeitung im Jitterbit Integration Studio

Einführung

Unter bestimmten Umständen können Daten in Schemata während der Verarbeitung konvertiert werden. Auf dieser Seite wird beschrieben, wann und wie Daten je nach Schema konvertiert werden:

Alle Schema

In den meisten Fällen (Ausnahmen sind unten aufgeführt) werden bestimmte Daten unabhängig vom Schema auf die gleiche Weise konvertiert:

Datentypen

In diesen Abschnitten wird die Unterstützung bestimmter Datentypen durch Jitterbit nach Schema beschrieben. Alle in Jitterbit Scripts unterstützten Datentypen finden Sie unter Datentypen in Jitterbit Script.

Datentypen mit unbegrenzter Genauigkeit

Für die meisten Schema werden Datentypen mit unbegrenzter Genauigkeit, wie XML-Dezimalzahlen, konvertiert in double Datentypen unterliegen daher einer Genauigkeitsbegrenzung, die zu Datenkürzungen führen kann.

Die Genauigkeitsbegrenzung liegt im Bereich der Minimal- und Maximalwerte eines vorzeichenbehafteten Long-Werts, also zwischen –2.147.483.648 und 2.147.483.647. Liegt der Wert außerhalb dieses Bereichs, empfiehlt sich die Verwendung eines String-Datentyps, um Datenkürzungen zu vermeiden.

Nicht-primitive Datentypen

Die primitiven Datentypen boolean, date, double, float, integer, long, Und string und der nicht-primitive Datentyp decimal werden in allen Schema unterstützt. Beim Erstellen oder Bearbeiten eines benutzerdefinierten flat oder hierarchisch Schema oder das Bearbeiten eines in einer Transformation hochgeladenen Schema stehen diese Datentypen in der Dropdown-Liste Typ zur Auswahl. Für neue benutzerdefinierte Schemas können andere nicht-primitive Datentypen wie datetime werden nicht unterstützt.

Allerdings werden auch andere nicht-primitive Datentypen für Schemata unterstützt, die automatisch aus einem vom Connector generierten Schema oder wurden von einem solchen Schema gespiegelt. Nach der Generierung können solche Schemata auch manuell im benutzerdefinierten Schema Editor bearbeitet werden. Wenn das Schema nicht-primitive Datentypen enthält, werden diese beim Bearbeiten eines solchen Schema ebenfalls in der Dropdown-Liste Typ aufgeführt.

Namen von Feldern und Knoten

Namen von Feldern und Knoten werden gemäß dem XML-Standard in gültige Namespaces konvertiert. Die zulässigen Zeichen gemäß der W3C-Definition finden Sie unter NCNameChar.

Beim Spiegeln eines von einer Datenbank bereitgestellten Schema werden alle Sonderzeichen in einem Schema oder Knotennamen durch Unterstriche ersetzt (_) wie zum Erstellen eines gültigen XML- Schema erforderlich.

Nullwerte

Felder mit einem Nullwert werden trotz fehlender Daten in das resultierende Schema aufgenommen. Da sie auch keinen definierten Datentyp haben, werden diese Felder als Felder mit dem Datentyp „String“ behandelt.

CSV-Schemas

Bei der Verwendung eines CSV Schema gelten für die folgenden Daten bestimmte Regeln:

CSV-Dateien mit Headern

Wenn Sie eine CSV-Datei mit einer Header als Schema bereitstellen, werden diese Regeln zum Generieren von Spaltennamen angewendet:

  • Sonderzeichen werden durch ein Fragezeichen ersetzt (?).
  • Leerzeichen werden durch einen Unterstrich ersetzt (_).
  • Wenn ein Spaltenname leer ist, wird er ersetzt durch f1, f2, f3usw.
  • Beginnt ein Spaltenname mit einer Zahl, wird ihm ein Unterstrich vorangestellt (_).
  • Wenn ein Spaltenname wiederholt wird, wird ihm Folgendes angehängt: 2, 3, 4, und so weiter.

Sonderzeichen

Unter diesen Umständen sind Sonderzeichen (. _ - $ # @ ?) in CSV-Schemas werden konvertiert:

  • Sonderzeichen auf der Quell- oder Zielseite einer Transformation werden durch ein Fragezeichen ersetzt (?).
  • Sonderzeichen in einem Script auf einem Zielfeld in einer Transformation werden durch ein Fragezeichen ersetzt (?). Diese Regel gilt auch für alle benutzerdefinierten Wohnungen oder benutzerdefiniert hierarchisch Schema im CSV-Format erstellt.

Notiz

Diese Konvertierungen beschränken sich nur auf die Schema und wirken sich nicht auf die eigentlichen Daten aus.

JSON-Schemas

Bei der Verwendung eines JSON Schema gelten für die folgenden Daten bestimmte Regeln:

  • Datentypen (wie oben beschrieben)
  • Namen der Felder und Knoten (wie oben beschrieben)

    Achtung

    Wenn der Feld- oder Knotenname eines JSON-Schemas mit einer Zahl oder einem @ Zeichen, dieses Zeichen wird durch einen Unterstrich ersetzt _. Beispielsweise kann ein Feldname von 12345 wird umgewandelt in _2345 und einem Feldnamen von @account wird umgewandelt in _account.

  • Nullwerte (wie oben beschrieben)

XML-Schemas

Bei der Verwendung eines XML- Schema gelten für die folgenden Daten bestimmte Regeln:

Informationen zur Behebung bestimmter XML Schema und Transformation finden Sie unter Fehlerbehebung bei Vorgängen.

Namensräume

Namespaces in XML-Schemas werden unterstützt. Wenn in einem XML Schema mehrere Namespaces verwendet werden, konvertiert der Jitterbit-Agent das XML- Schema während der Verarbeitung in mehrere XSD-Dateien.

Selbstschließende Tags

Selbstschließende Tags für Elemente in XML-Schemas werden durch einige Manipulationen des zur Schema verwendeten Beispiel-XMLs unterstützt. Um das XML-Element in der Payload ohne zugeordneten Wert zu senden, können Sie eine Jitterbit-Funktion und eine Jitterbit-Variable wie unten beschrieben verwenden.

Bearbeiten des Beispiel-XML

Eine Manipulation ist erforderlich, wenn eine XML-Beispieldatei die Kurzschreibweise für ein öffnendes und schließendes Tag in einem Element wie diesem verwendet:

<tag/>

Wenn eine solche Abkürzung direkt in einem XML- Schema verwendet wird, kann der Knoten nicht zugeordnet werden, wenn er als Schema einer Transformation verwendet wird.

Um das Problem zu beheben, bearbeiten Sie das zum Generieren des Schema verwendete Beispiel-XML, um die öffnenden und schließenden Tags rund um das Element zu erweitern, und geben Sie einen Beispielwert an, sodass dem Element ein Datentyp zugewiesen wird:

<tag>example</tag>

Das Element wird dann als Feld im XML- Schema angezeigt und wenn es als Schema in einer Transformation verwendet wird, können Sie es diesem Feld zuordnen.

Dem XML-Feld zuordnen

Wenn Sie kein Quellobjekt oder keine Variable haben, die Sie dem Zielfeld zuordnen können, können Sie die Jitterbit-Funktion Null im Transformation, das als zugeordneter Wert verwendet werden soll:

<trans>
Null()
</trans>

Legen Sie vor der Transformation mithilfe des XML- Schema eine dieser Jitterbit-Variablen fest (je nachdem, welche für Ihren Anwendungsfall geeignet ist), um zu steuern, was gesendet wird:

Sonderzeichen

Unter diesen Umständen werden Sonderzeichen in XML-Schemas konvertiert:

  • Sonderzeichen in einem Script auf einem Zielfeld in einer Transformation werden durch ein Fragezeichen ersetzt (?).

  • Diese Sonderzeichen in einem XML Schema oder Knotennamen werden nicht unterstützt, da sie von XML nicht unterstützt werden:

    $ # @ ?

Notiz

Diese Konvertierungen beschränken sich nur auf die Schema und wirken sich nicht auf die eigentlichen Daten aus.