Fehler finden

Probleme mit Automationen beheben

Sind Ihre Variablen leer oder werden die von Ihnen erwarteten Werte nicht angezeigt?

Generiert Ultradox Ihre Dokumente nicht aufgrund von Fehlern in Ihren Vorlagen?

Diese Anleitung beschreibt Techniken, wie Sie die Ursache für das Problem finden und beheben können.

Fehler Kategorien

In Ultradox können Sie mit zwei verschiedenen Kategorien von Fehlern konfrontiert werden:

Errors in your flow

Die Funktionsbausteine in Ihrer Automation sind miteinander verbunden. Sie benötigen die richtige Eingabe, um korrekt zu arbeiten.

Wenn Sie bei der Ausführung eines Bausteins Fehler erhalten oder wenn sie zu unerwarteten Ergebnissen führen, lesen Sie bitte die Abschnitte Logging und Debugging.

Errors in the template

Wenn Sie Fehler bei der Generierung von Dokumenten aus Ihren Vorlagen erhalten, überprüfen Sie bitte die Anleitung Template Fehler.

Logging

Die einfachste Möglichkeit, den Wert einer Variablen zu überprüfen und Formatierungsprobleme zu beheben, besteht darin, die Variable einfach in einem Kommentar auszudrucken.

Sie können alle Ausführungen der Automation im Ultradox-Editor sehen, auch wenn sie von einem Google-Formular oder über API ausgelöst wird.

Das Hinzufügen von Kommentaren hilft Ihnen nicht nur bei der Strukturierung Ihres Dokuments, sondern auch bei der Protokollierung der Daten auf der Konsole, um zu überprüfen, ob alles wie erwartet funktioniert.

Nehmen wir an, Sie haben eine Variable namens email, die Sie von einem Formular erhalten und möchten den eingegebenen Wert erhalten, dann fügen Sie einfach einen Kommentar Baustein hinzu und geben Sie ${email} ein.

Die angegebenen E-Mail lautet ${email}

Wann immer die Automation ausgeführt wird, wird die E-Mail auf der Konsole ausgegeben.

Folgendes sehen Sie zB in Ihrer Konsole:

Die angegebene E-Mail lautet [email protected]

Da Sie auch alle Rendering-Optionen in Kommentaren verwenden können, können Sie mit diesem Baustein auch die korrekte Formatierung von Text, Datum oder Zahlen testen.

Erstellen Sie einfach einen leeren Ablauf und fügen Sie einen Logeintrag Baustein hinzu, der das aktuelle Datum ausgibt:

Heute ist ${now;date(op=EEEE)}

Da das aktuelle Datum mit dem Renderer date formatiert wird, wird der Name des aktuellen Tages in der Konsole ausgegeben:

Heute ist Wednesday

Debugging

Ultradox wird mit einem Debugger ausgeliefert, der es Ihnen ermöglicht, Ihren Durchlauf an bestimmten Bausteinen anzuhalten und alle verfügbaren Variablen zu überprüfen, bevor Sie die Ausführung fortsetzen.

Sie können nicht nur mit dem Ultradox-Editor gestartete Automationen debuggen, sondern auch, wenn sie durch einen Timer ausgelöst wurden, durch Google Formulare, durch Zapier oder über API.

 Um Ihre Automation zu debuggen, doppelklicken Sie auf das Breakpoint-Icon rechts am Rande des Bausteins, bei dem Sie das Debugging starten möchten.

Das Breakpoint-Symbol wird rot angezeigt, was bedeutet, dass der nächste Durchlauf pausiert und im Debugger des Ultradox-Editors überprüft werden kann.

Der nächste Durchlauf, der nach dem Aktivieren des Haltepunkts abläuft, stoppt beim Erreichen des Bausteins mit einem aktiven Haltepunkt.

Die Konsole öffnet sich und der Debugger links neben der Konsole erlaubt es Ihnen, die Werte aller Variablen zu überprüfen.

Symbolleiste

Sie können den Ablauf dann anhalten oder wieder aufnehmen, indem Sie die Schaltflächen in der Symbolleiste verwenden.

 Der Button setzt die Ausführung für einen Ultradox Baustein fort und hält dann wieder im Debugger an.

 Der Fortsetzen Button setzt die Ausführung des Ablaufs fort und läuft bis zum Ende oder bis er einen anderen Baustein mit einem Haltepunkt erreicht.

 The resume button will continue with the execution of your flow and will run to the end or until it reaches another building block with an breakpoint.

 Wenn Sie auf den Button "Konsole löschen" klicken, werden alle Angaben aus der Konsole entfernt.

Template Fehler

Detect and fix errors in your templates

Mit Ultradox können Sie aus Ihren Vorlagen anspruchsvolle Dokumente generieren, indem Sie Tabellen, verschachtelte Bedingungen, Schleifen und vieles mehr verwenden.

Da Sie eine Menge komplexer Funktionen verwenden können, haben Sie auch viele Möglichkeiten, Fehler zu erzeugen. Damit Sie Fehler in Ihren Vorlagen leichter aufspüren können, zeigt Ultradox Fehlermeldungen direkt in Ihren Dokumenten an, wenn Sie Dokumente im Testmodus generieren.

Test mode

Aktivieren Sie den Testmodus über das Icon rechts in der Symbolleiste.

Wenn der Testmodus aktiviert ist, wird die Arbeitsfläche grün.

Im folgenden Abschnitt werden die Fehler erläutert, die in Ihren Dokumenten auftreten können.

Invalid expression

Sie haben etwas eingegeben, das Ultradox nicht verstehen kann. Bitte lesen Sie die Anleitung über die Templates Grundlagen sorgfältig durch.

Not an array

Sie haben versucht, auf ein Element in einer Liste oder einem Array zuzugreifen, aber die Variable ist kein Array.

Nehmen wir an, Sie haben eine Variable namens name mit dem Wert Daniel, dann führt die Verwendung eines Tags wie ${name[2]} zu diesem Fehler.

Invalid array syntax

Sie haben versucht, auf ein Array zuzugreifen, aber die eckigen Klammern wurden falsch gesetzt. Stellen Sie sicher, dass Sie diese [vor jener] haben und auch beide verwenden.

Index out of bounds

Sie haben versucht, auf ein Element in einer Liste oder einem Array zuzugreifen, aber es enthält nicht so viele Elemente, wie Sie erwartet haben.

Nehmen wir an, Sie haben den Array names, der zwei Namen enthält, dann führt der Zugriff auf den dritten Namen wie ${name[3]} zu diesem Fehler.

Invalid index

Sie versuchen, auf ein Element in einem Array zuzugreifen, haben aber keinen legalen Index verwendet.

Nehmen wir an, Sie haben ein Array mit dem Namen names mit drei Elementen Daniel, Olli und Esther, dann können Sie auf sie zugreifen, indem Sie ${names[0]} verwenden, um Daniel zu drucken,${names[2]} um  Esther zu drucken, oder ${names[last]} um auch Esther zu drucken.

Wenn Sie versuchen auf sie zuzugreifen, indem Sie etwas wie ${names[end]} oder ${names[hello]} benutzen, funktioniert das nicht und verursacht diesen Fehler.

No call on a string

Sie versuchen auf eine Variable zuzugreifen, als hätte sie Eigenschaften, aber es ist nur eine Zeichenfolge. Nehmen wir an, Sie haben eine Variable namens name mit dem Wert Daniel, dann wird der Zugriff auf etwas wie ${name.email} diesen Fehler verursachen.

Property access error

Sie versuchen, auf eine Eigenschaft eines Objekts zuzugreifen, das nicht existiert. Es gibt mehrere Situationen, die diesen Fehler verursachen können.

Nehmen wir an, Sie haben eine Tabelle mit mehreren Spalten geladen. Dann haben Sie eine Reihe von Variablen wie ${mysheet[].myfirstcolumn}, ${mysheet[].mysecondcolumn} und so weiter. Wenn Sie nun auf ein ${mysheet[0].hello} zugreifen, werden Sie diesen Fehler bekommen, da die Spalte mit dem Namen hello nicht existiert.

Dieser Fehler kann auch dann auftreten, wenn Sie versuchen, auf eine Eigenschaft zuzugreifen, aber nicht auf die richtige Weise.

Wenn wir das gleiche Beispiel wie vorher verwenden und Sie versuchen, auf ${mysheet[].myfirstcolumn}zuzugreifen, gibt es Ihnen den gleichen Fehler wie bei mysheet[] ist eine Liste und kein Objekt!

Es enthält alle Zeilen und Sie fragen nach myfirstcolumn, ohne auf eine bestimmte Zeile zuzugreifen oder eine Schleife zu benutzen, um alle Werte auszudrucken.

Unmatched end

Sie haben ein ${end} Tag in Ihrer Vorlage verwendet, aber Sie haben keine übereinstimmende ${if …} oder ${foreach …} Anweisung erstellt.

Missing end

Sie haben eine ${if.. } oder ${foreach …} Aussage in dem Template verwendet, aber keine ${end} Aussage.

Else out of scope

Sie haben ein ${else} Tag in Ihrem Template verwendet, aber es ist nicht innerhalb einer ${if …} Anweisung.

Foreach incomplete

Sie haben versucht eine ${foreach... } Anweisung zu erstellen, aber Sie haben vergessen, einen Variablennamen anzugeben, um auf jedes Element in der Liste zuzugreifen.

Iterator mismatch

Sie versuchen, eine Liste oder Tabelle aus Ihren Daten zu erstellen, haben aber auf verschiedene Listen in derselben Tabelle zugegriffen!

Nehmen wir an, Sie haben eine Autoren- und eine Bücherliste.

Sie können nun eine Tabelle mit den Autoren oder den Büchern erstellen - wenn Sie aber beides mischen, wird es zu einem Fehler kommen:

Name des Autors

Buchtitel

$[authors[].name]

$[books[].title]

Incomplete tag

Sie haben eine ungültige Syntax verwendet. Bitte lesen Sie die Anleitung zu Templates sorgfältig durch.

Dieser Fehler wird angezeigt, wenn Sie nicht alle sich öffnenden Klammern mit den entsprechenden schließenden Klammern geschlossen haben.

Die folgende Tabelle zeigt eine Reihe häufiger Fehler.

Name

Beschreibung

${myvariable]

Sie haben die geschweifte Klammer { mit einer eckigen Klammer ] geschlossen

${value;number(op=${pattern)}

Sie haben im Renderer-Parameter eine ungültige Syntax verwendet. Verwenden Sie niemals offene Klammern, um auf Variablen in den Renderer-Parametern zuzugreifen. In diesem Beispiel verwenden Sie einfach stattdessen $pattern

Questions and Feedback

If you have any comments on this page, feel free to add suggestions right to the Google document that we are using to create this site.

If you are not yet member of the Ultradox community on Google+, please join now to get updates from our end or to provide feedback, bug reports or discuss with other users.

Last Updated: 10/30/17