Ich suche hier keine Antwort. Ich teile nur meine Erkenntnisse.
Ich habe versucht, ein Skript zu debuggen, und bin auf den folgenden Fehler gestoßen, der es dem Debugger nicht ermöglicht, an einem Startbenachrichtigungsfenster vorbeizukommen, das ich für Benutzerinformationen programmiert habe:
(Die folgende Meldung ist möglicherweise kein tatsächlicher Fehler. Die Einstellung "Ungültige Anzeigefeldnachrichten melden" ist aktiviert.) Das Objekt "TextBox" erkennt die Meldung "" nicht.
Sobald der Debugger diesen Code erreicht, hängt er. Das Ausführen des Skripts geht jedoch über diesen Fehler hinaus und führt das Skript vollständig aus. Ich habe ein Problem weiter im Skript und dies hat mich für einige Zeit daran gehindert, eine Lösung zu finden.
Letztendlich stellte ich fest, dass ich einfach zu viele Kommas in den Textfeldbefehl eingefügt hatte, aber der Fehler führte mich nicht leicht zu diesem Fehler. Ich habe außerdem überprüft, ob meine Einstellungen für Meldungen mit gültigen Anzeigefeldern deaktiviert sind. Das Erreichen anderer erfahrener JMP-Benutzer führte mich zu diesem Diskussionsforum. Ich habe eine unspezifische Version des fehlerhaften Teils meines Skripts zur Demonstration angehängt.
Discontinue = 1;
/*
// This one was the problem window that gives the error:
//(The following message might not be an actual error; the preference 'Report Invalid Display Box Messages' is ON.) Object 'TextBox' does not recognize the message ''.
New Window( "Where is your file?", << Modal,
H Center Box( Text Box( "Looooooooooooooooong Note 1", << Set Font( "Arial Black", 10, "Bold"), << Set Width( 200) ) ),
Spacer Box( Size( 20, 15 ) ),
H Center Box( Text Box( "Looooooooooooooooooooong Note 2", << Set Font( "Arial Black", 10, "Bold"), , << Set Width( 200) ) ),
Spacer Box( Size( 10, 15 ) ),
H Center Box( Text Box( "Continue?", << Set Font( "Arial Black", "Bold" ) ) ),
Spacer Box( Size( 10, 5 ) ),
H Center Box(
H List Box(
Button Box( "Yes" ),
Button Box( "No", Discontinue = 0 )
)
)
);
*/
//This is the fixed window
New Window( "Where is your file?", << Modal,
H Center Box( Text Box( "Looooooooooooooooong Note 1", << Set Font( "Arial Black", 10, "Bold"), << Set Width( 200 ) ) ),
Spacer Box( Size( 20, 15 ) ),
H Center Box( Text Box( "Looooooooooooooooooooong Note 2", << Set Font( "Arial Black", 10, "Bold"), << Set Width( 200 ) ) ),
Spacer Box( Size( 10, 15 ) ),
H Center Box( Text Box( "Continue?", << Set Font( "Arial Black", "Bold" ) ) ),
Spacer Box( Size( 10, 5 ) ),
H Center Box(
H List Box(
Button Box( "Yes" ),
Button Box( "No", Discontinue = 0 )
)
)
);
print( "Testing...");
In der Hoffnung, dass dies anderen hilft, die diese einfachen Fehler machen, die dazu führen, dass wir unsere Räder viel länger drehen, als wir sollten. Zu oft gibt es wirklich eine einfache Lösung, wenn wir uns aus dem Weg räumen.
Es ist eine Kleinigkeit, aber manchmal macht es diese eine Sache etwas einfacher, ein Komma, einen Paren oder ein Semikolon zu finden.
Im Skriptfenster öffnet ein Rechtsklick ein Menü mit der Option "Skript neu formatieren". Sie erhalten einen Fehler und einen Speicherort, wenn das Skript nicht funktioniert. Außerdem werden Tabulatoren, Abstände und alles hinzugefügt, um den Scrip ein wenig lesbarer zu machen. Eine wirklich wackelig aussehende Formatierung ist auch eine großartige Möglichkeit, unbeabsichtigte Interpunktion zu erkennen.