Zum Inhalt springen

Validierungsfehler und -regeln für die Transformation in Jitterbit Integration Studio

Einführung

Damit eine Transformation gültig ist, müssen Transformation gültig sein. Auf dieser Seite erfahren Sie, wie Sie ungültige Zuordnungen identifizieren, die zugehörigen Validierungsfehler anzeigen und Validierungsfehler beheben.

Validierungsfehler

Transformations werden bei der Ermittlung der Komponentengültigkeit auf Projektebene genauso behandelt wie andere Projektkomponenten. Das heißt, Sie können ungültige Transformations auf der Design-Canvas und im Projektbereich wie in Komponentengültigkeit beschrieben. Validierungsfehler innerhalb eines Mappings werden in die Validierung von Transformations einbezogen.

Damit eine Transformation gültig ist, darf sie keine Transformation enthalten. Um als gültig zu gelten, muss eine Transformation die folgenden Regeln erfüllen:

  • Eine Zuordnung darf keine Verweise auf nicht vorhandene Felder oder Variablen enthalten.
  • Eine Zuordnung darf keine Datentypkonflikte enthalten.
  • Eine Zuordnung muss eine gültige Script verwenden.
  • Ein Zielschleifenknoten kann nicht mehrere Quellen haben.
  • Für eine angrenzende Quell- oder Zielaktivität muss ein Schema bereitgestellt werden.

Darüber hinaus können bestimmte Zielfelder eine Zuordnung erfordern oder nicht zulassen. Beispielsweise können verknüpfte Felder einer untergeordneten Tabelle nicht zugeordnet werden. Weitere Details finden Sie unter Validierungsregeln weiter unten auf dieser Seite.

Um diese Fehler zu beheben, können Sie Fehler innerhalb der Transformation selbst identifizieren und entsprechende Anpassungen vornehmen. Ungültige Zuordnungen werden entweder für einen gesamten Zielfeldblock oder für einzelne zugeordnete Objekte innerhalb eines Zielfeldblocks angezeigt.

Gesamtes Zielfeld

Wenn die gesamte Zielfeldzuordnung ungültig ist, wird links neben dem Zielfeldblock eine rote vertikale Linie angezeigt. Oben rechts im Zielfeld wird ein Warnsymbol angezeigt. Wenn Sie mit der Maus über das Warnsymbol fahren, wird der Grund für die ungültige Zuordnung aufgeführt.

Diese Art der ungültigen Zuordnung kann durch die Zuordnung von Feldern entstehen, die nicht zugeordnet werden können, beispielsweise durch den Versuch, eine eindeutige Objekt-ID in einer Salesforce Insert-Aktivität zuzuordnen als Ziel verwendet.

Zielfeld ungültig

Wenn eine gesamte Zielfeldzuordnung potenziell ungültig ist, wird links neben dem Zielfeldblock eine orangefarbene vertikale Linie angezeigt. Wenn Sie mit der Maus über das Feld fahren, wird der Grund für die potenziell ungültige Zuordnung angezeigt.

Diese Art der ungültigen Zuordnung kann durch das Fehlen einer erforderlichen Zuordnung entstehen, beispielsweise durch die fehlende Zuordnung eines Primärschlüssels bei einer Datenbankeinfügeaktivität als Ziel verwendet.

Zielfeld möglicherweise ungültig

Ungültige oder möglicherweise ungültige Zuordnungen können auch dadurch entstehen, dass mehrere Objekte (z. B. mehr als ein Quellobjekt oder eine Variable) einem Zielfeld zugeordnet werden, ohne dass eine Logik vorhanden ist, die angibt, wie diese Objekte zu verarbeiten sind.

Um ungültige Zuordnungen zu beheben, entfernen Sie die Zuordnung oder öffnen Sie das Feld im Script, um die Verarbeitungslogik hinzuzufügen. Potenziell ungültige Zuordnungen sollen auf ein mögliches Problem hinweisen, können aber unverändert bleiben, wenn Sie festgestellt haben, dass die Zuordnung gültig ist.

Um eine Zuordnung zu entfernen, bewegen Sie den Mauszeiger über das Zielfeld und verwenden Sie die Symbol Zuordnung entfernen.

Um ein Feld mit einer ungültigen Zuordnung im Script zu öffnen und Verarbeitungslogik hinzuzufügen, bewegen Sie den Mauszeiger über die Zielfelder und klicken Sie auf das Bearbeiten-Symbol.

Einzelnes zugeordnetes Objekt

Wenn ein einzelnes zugeordnetes Objekt in einem Zielfeld ungültig ist, wird das zugeordnete Objekt rot umrandet und mit einem Warnsymbol rechts:

Zielfeld ungültiges Objekt

Einzelne Zuordnungen können ungültig sein, wenn ein zugeordnetes Quellobjekt nach der Bearbeitung eines Schema nicht mehr vorhanden ist, wenn eine erforderliche/optionale Nichtübereinstimmung mit der Kardinalität eines Zielfelds vorliegt oder wenn Quell- und Zielfelder inkompatible Datentypen aufweisen.

Die Zuordnung von Quell- und Zielfeldern mit möglicherweise inkompatiblen Datentypen wird für alle Schemata gekennzeichnet, unabhängig davon, ob sie über definierte Datentypen verfügen, wie etwa solche, die aus einer Salesforce oder Datenbankaktivität definiert wurden, oder ob sie nur über Datentypbezeichnungen verfügen, wie etwa solche, die aus einer Beispieldatei definiert wurden oder manuell definiert wurden (bei diesen Schematypen werden alle Felder als Zeichenfolgen behandelt, unabhängig davon, ob sie über Datentypbezeichnungen verfügen).

Eine Datentyp-Nichtübereinstimmung bedeutet nicht zwangsläufig, dass ein Problem mit der Zuordnung vorliegt. Wenn beispielsweise ein Quellfeld mit einem ganzzahligen Datentyp einem Zielfeld mit einem Zeichenfolgendatentyp zugeordnet wird, sind die resultierenden Daten eine Zeichenfolge mit einem numerischen Wert. Quellfelder mit beliebigem Datentyp können einem Zielfeld mit einem Zeichenfolgendatentyp zugeordnet werden. Daher werden diese Zuordnungen nicht gekennzeichnet.

Datentyp des Zielfelds stimmt nicht überein

Wenn jedoch umgekehrt ein Quellfeld mit einem String oder einem anderen Datentyp einem nicht übereinstimmenden Zieldatentyp zugeordnet wird, können solche Zuordnungen als potenziell inkompatibel gekennzeichnet werden. Zugeordnete Felder mit potenziell inkompatiblen Datentypen werden mit einem orangefarbenen Rahmen angezeigt:

Zielfeld Datentyp-Missverhältnis Inkompatibilität

Beim Bewegen des Mauszeigers wird der Grund für die mögliche Inkompatibilität angezeigt. Um die Zuordnung zu entfernen, klicken Sie auf das Symbol Zuordnung entfernen.

Beachten Sie, dass der Hinweis auf eine mögliche Nichtübereinstimmung des Datentyps nur bei einfachen Zuordnungen eines Quellobjekts zu einem Zielfeld erscheint und nicht angezeigt wird, wenn das Zielfeld Skriptlogik enthält.

Bei Zielfeldern, die mithilfe von Skriptlogik zugeordnet werden, wird der Wert nach der Verarbeitung des Script und der Auswertung der resultierenden Ausgabe in den Datentyp des zugeordneten Zielfelds konvertiert. Der Benutzer erkennt anhand der Konvertierung der Ausgabe in den Datentyp des Zielfelds, ob diese endgültige Ausgabe dem gewünschten Ergebnis entspricht.

Nehmen wir als Beispiel an, das Zielfeld ist ein double Datentyp. Unabhängig vom Datentyp im Script wird die endgültige Ausgabe für das Mapping nach der Verarbeitung des Script in einen double Dies wird anhand der folgenden Beispiele für Transformation veranschaulicht.

Transformation Script 1
<trans>
1 + "string"
</trans>

Das obige Script ergibt einen Wert von "1string" mit einem string Datentyp. Anschließend wird diese Ausgabe während der Verarbeitung des Transformation in einen double Datentyp. Da die Ausgabe mit einer Ziffer beginnt, werden alle Anfangsziffern in die endgültige Mapping-Ausgabe übernommen, da Zahlen für eine double Die endgültige Ausgabe des Mappings ist ein Wert von 1 mit einem double Datentyp.

Transformation Script 2
<trans>
"string" + 1
</trans>

Das zweite Script oben ergibt einen Wert von "string1" mit einem string Datentyp. Während der Verarbeitung der Transformation wird diese Ausgabe in einen double Datentyp. In diesem Fall, weil ein nicht-stelliger Wert, der für eine double, steht am Anfang des zurückgegebenen Wertes, es wird kein Wert übernommen. Stattdessen übernimmt das Zielfeld den Standardwert für eine Zahl. Das heißt, die endgültige Ausgabe für das Mapping ist ein Wert von 0 mit einem double Datentyp.

In manchen Fällen möchten Sie möglicherweise den Datentyp des Zielfelds überschreiben und die Ausgabe mit einem anderen Datentyp übertragen. Hierfür können Sie Folgendes verwenden: Format oder FormatDate Funktionen innerhalb des Script. Achten Sie darauf, dass die Funktion in der letzten Anweisung des Script steht, da der Rückgabewert des Script immer aus der letzten Zeile stammt.

Validierungsregeln

Damit eine Transformation gültig ist, muss sie ordnungsgemäß konfiguriert sein. Die unten aufgeführten Fehlermeldungen werden angezeigt, wenn die Validierungsfehler der Transformation als Komponente auf der Design-Canvas angezeigt werden oder Projektbereich wie in Komponentengültigkeit beschrieben.

Wenn eine Transformation nicht oder falsch konfiguriert wurde, wird diese Validierungsfehlermeldung zurückgegeben:

Die Transformation ist nicht richtig konfiguriert.

Diese Meldung erscheint am häufigsten, wenn Sie einer Operation eine neue Transformation hinzugefügt haben und diese noch nicht konfiguriert wurde. Öffnen Sie zur Behebung des Problems den Konfigurationsbildschirm der Transformation und konfigurieren Sie die Transformation entsprechend. Eine Transformation muss keine Mappings enthalten, wenn ihr Schema nur aus Knoten ohne Felder besteht. Wenn das Schema Felder enthält, muss mindestens eine Zuordnung vorhanden sein, damit die Transformation richtig konfiguriert werden kann.

Damit eine Transformation gültig ist, darf sie außerdem keine Transformation enthalten. Um als gültig zu gelten, muss eine Transformation die folgenden Regeln erfüllen:

  • Eine Zuordnung darf keine Verweise auf nicht vorhandene Felder oder Variablen enthalten.
  • Eine Zuordnung darf keine Datentypkonflikte enthalten.
  • Eine Zuordnung muss eine gültige Script verwenden.
  • Ein Zielschleifenknoten kann nicht mehrere Quellen haben.
  • Für eine angrenzende Quell- oder Zielaktivität muss ein Schema bereitgestellt werden.

Darüber hinaus können bestimmte Zielfelder eine Zuordnung erfordern oder nicht zulassen. Beispielsweise können verknüpfte Felder einer untergeordneten Tabelle nicht zugeordnet werden. Ungültige Zuordnungen werden im Konfigurationsbildschirm der Transformation optisch angezeigt, wie unter Validierungsfehler beschrieben weiter oben auf dieser Seite.

Je nach Fehler wird bei Nichterfüllung dieser Regel die entsprechende Variante dieser möglichen Fehlermeldungen zurückgegeben:

Die Zuordnung bezieht sich auf ein nicht vorhandenes [Quelle / Ziel / Variable]-Feld $[Pfad].

Möglicher Datentypkonflikt bei der Zuordnung.

Zielfeld $[node.name] [muss gemappt werden / kann nicht gemappt werden].

Das Zielfeld $[node.name] ist mit [Datenbankverknüpfungen] seines übergeordneten Elements verknüpft. Sie können diesem Element keinen Wert zuordnen.

Datensätze: Fehler in Zeile [#]: [Syntaxfehler bei der Script ].

Zuordnungen eines Zielschleifenknotens hängen von mehr als einem Quellschleifenknoten ab.

[Quell-/Ziel] Schema muss angegeben werden.

Versuchen Sie zur Behebung des Problems die folgenden Tipps zur Fehlerbehebung:

  • Wenn Sie Verweise auf nicht vorhandene Felder, Datentypkonflikte oder andere ungültige Zuordnungen haben, suchen Sie entweder die ungültige Zuordnung und heben Sie die Zuordnung auf oder überprüfen Sie das Schema, um sicherzustellen, dass alle Felder berücksichtigt werden und kompatible Datentypen aufweisen. Wenn Sie Verweise auf nicht vorhandene Variablen haben, überprüfen Sie, ob die Variable existiert. Sollten Fehler bei der Script auftreten, überprüfen Sie die Zuordnung und nehmen Sie Anpassungen im Script vor. Validierungsmeldungen werden außerdem zeilenweise unter jedem Script angezeigt. Das bedeutet, dass nach der Behebung eines Fehlers in einer Zeile möglicherweise weitere Syntaxfehler für die folgenden Zeilen gemeldet werden. Nehmen Sie so lange Änderungen vor, bis die Meldung die Gültigkeit des Script anzeigt.
  • Wenn Sie einen Zielschleifenknoten haben, der von mehr als einem Quellschleifenknoten abhängt, folgen Sie den Anweisungen unter Map von einer Quelle mit mehreren Instanzen zu einem Ziel mit einer Instanz unter Datenstrukturen.
  • Wenn Sie Quell- oder Zielaktivitäten neben der Transformation haben, stellen Sie sicher, dass Sie für jede ein Schema angeben. Schemata können innerhalb der Aktivität selbst während seiner Konfiguration (siehe Dokumentation für jeden Konnektor) oder durch Definieren eines Schema direkt innerhalb der Transformation.

Wenn eine Transformation aus einem anderen, nicht ohne Weiteres zu ermittelnden Grund ungültig ist, wird außerdem diese Fehlermeldung zurückgegeben:

Transformation ist ungültig.