556033_de-DE
Der JSL-Debugger – Nächste Schritte
In diesem Rezept schauen wir uns an, was den JSL-Debugger zu wirklich leistungsstarken, bedingten Haltepunkten macht. Mit dieser Funktion können wir ein Skript anhalten, wenn eine bestimmte Bedingung erfüllt ist, beispielsweise wenn eine Variable einen bestimmten Wert erreicht. Damit können wir auf bestimmte Eingabewerte, Schleifeniterationen, Spaltennummern usw. abzielen. Wir verwenden dasselbe Programm wie für das Rezept „JSL Debugger – Erste Schritte“. Es wurde leicht modifiziert, um die Punkte in diesem Rezept zu veranschaulichen.
Zutaten:
Datentabelle – CVC9
Schwierigkeit: Einfach
Schritte:
- Öffnen Sie die CVC 9- Datentabelle und das Skript „CVC-Liste erstellen“ . Starten Sie den Debugger. Setzen Sie Haltepunkte in den Zeilen 25, 40 und 46. Wir werden daran interessiert zu sehen, dass Eingabezeichenfolgen korrekt analysiert werden. Um die Informationen aus dem vorherigen Rezept zu wiederholen:
Leere Zellen werden entfernt
Zellen, die mit „ [ v. “ beginnen, werden ignoriert.
Kommas trennen einzelne Wörter.
Ein Schrägstrich ( / ) gibt eine Liste von Wörtern an, um ein oder mehrere Wörter nach der Tilde ( ~ ) zu kombinieren. Beispielsweise soll tener/llevar ~ barba/bigote/gafas auf sechs Wörter erweitert werden: tener barba, llevar barba, tener bigote, llevar bigote, tener gafas, llevar gafas . In einer Zelle können mehr als zwei Listen vorhanden sein
In einer Zelle können sowohl Schrägstriche als auch Kommas vorkommen. Der Eintrag: tronco, extremidad ~ superior/inferior sollte erweitert werden zu: tronco, extremidad superior, extremidad inferior .
- Klicken Sie mit der rechten Maustaste auf den Haltepunkt in Zeile 25 und wählen Sie Haltepunkt bearbeiten . Wählen Sie im Dialogfeld die Registerkarte Bedingung aus. Aktivieren Sie das Kontrollkästchen „ Bedingung“ und fügen Sie die Bedingung „Contains(item“,,“) hinzu. item ist eine Variable, die wir beobachten werden. Das Optionsfeld „Ist wahr“ sollte ausgewählt sein. OK klicken . Ein Pluszeichen im Haltepunktpunkt zeigt an, dass es sich um einen bedingten Haltepunkt handelt.
- Fügen Sie item , tildeGroup undbuiltCartesian zur Liste der überwachten Variablen hinzu.
- Klicken Sie oben links im Debugger auf die Schaltfläche „Ausführen“ . Wenn Sie dazu aufgefordert werden, wählen Sie Abschnitt für die Spalte „Ebene“ und die nächsten drei Spalten für Datenspalten aus. Klicken Sie im Dialogfeld auf die Schaltfläche „Ausführen“ .
- Der Debugger sollte in Zeile 25 gestoppt werden. Die Variable item enthält die Zeichenfolge „ pelo, ojo, nariz “. Der bedingte Haltepunkt hat alle Zellen übersprungen, in denen kein Komma steht.
- Klicken Sie noch zweimal auf „Ausführen“ . Die Variable tildeGroup enthält {“pelo”} .
- Klicken Sie erneut auf Ausführen . tildeGroup enthält jetzt {“ojo”} . Es scheint, dass Zeichenfolgen, die nur Kommas enthalten, korrekt analysiert werden.
- Als nächstes sollten wir überprüfen, ob Zellen, die Tilden enthalten, korrekt analysiert werden. Wir können dies tun, indem wir den aktuellen bedingten Haltepunkt bearbeiten. Wählen Sie unten rechts im Debugger die Registerkarte Haltepunkte aus. Wählen Sie die Zeile aus, die den bedingten Haltepunkt enthält, und klicken Sie oben auf der Registerkarte (zweite von links) auf die Schaltfläche Haltepunkt bearbeiten . Klicken Sie auf die Zelle in der Spalte „ Bedingung“ , die die Haltepunktbedingung enthält. Bearbeiten Sie es so, dass es „Contains(item“,~“) ist. Alternativ hätten wir die Zeile direkt in der Haltepunkttabelle bearbeiten können.
- Deaktivieren Sie die Kontrollkästchen für die Haltepunkte in den Zeilen 40 und 46. Dadurch können wir die Haltepunkte deaktivieren, ohne sie zu löschen.
- Klicken Sie auf die Schaltfläche „Ausführen“ . Der Debugger stoppt am Haltepunkt in Zeile 24 für die nächste Beobachtung, bei der das Element eine Tilde enthält. (Hinweis: Wenn der Debugger stoppt, das Element jedoch keine Tilde enthält, wurde der Debugger möglicherweise vorzeitig gestoppt, bevor er vollständig ausgeführt wurde. Klicken Sie auf die Schaltfläche „Ohne Haltepunkte ausführen“ und versuchen Sie es erneut.)
- Next, we will check items with both a tilde and comma. Modify the condition on breakpoint 24 to
Contains(item,"~") & Contains(item,",")
- Klicken Sie auf Ausführen . Wir können jetzt Elemente mit diesen beiden Zeichen durchlaufen.
Beim Durchlaufen einer großen Anzahl von Elementen kann es schwierig sein, festzustellen, wo oder warum ein Problem auftritt. Während der Debugger normalerweise zum schrittweisen Durchlaufen eines Skripts verwendet wird, kann er auch zur Diagnose schwerwiegenderer Probleme verwendet werden.
- Führen Sie das Programm ohne den Debugger aus und wählen Sie dieses Mal „Abschnitt“ für die Spalte „Ebene“ und alle übrigen Spalten für „Datenspalten “ aus.
- Nachdem wir auf „Ausführen“ geklickt haben, wird ein Fehlerdialog angezeigt. Die Informationen im Protokoll deuten darauf hin, dass ein Problem mit der Subskription vorliegt, enthalten jedoch keine detaillierten Informationen, außer dass es sich um eine Spalte handelte und wahrscheinlich an der Variable targetRows lag.
- Starten Sie das Programm im Debugger neu und klicken Sie auf die Schaltfläche Ohne Haltepunkte ausführen .
- Nach dem Verwerfen des Warndialogs wird die Kontrolle wieder an den Debugger übergeben. Wir können nun verschiedene Variablenwerte untersuchen. Insbesondere können wir die Problemspalte leicht als 10.1 identifizieren. Die Zugriffe beziehen sich auf die Vivienda und dass targetRows leer ist.
Hinweise zum Erfolg:
- Verwenden Sie bedingte Haltepunkte, um festzulegen, wie und wann ein Haltepunkt zum Stoppen verwendet wird.
- Der Debugger kann verwendet werden, um Variablenwerte zum Zeitpunkt des Fehlers zu ermitteln, wenn Fehler mithilfe des Protokolls nicht leicht gefunden werden können.
VorspeisenAutomatisierung und Skripterstellung
Comments
There are no comments yet