<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hat jemand gesehen, dass dieses Popup-Fenster beim Versuch, Zeilen zu löschen, angezeigt wurde?Ich habe den Code eingefügt, den ich unten verwende.
Bei mehreren meiner Skripts wurde dieses Popup-Fenster angezeigt – es gibt keine Option außer „Ok“, und sobald Sie darauf klicken, wird das Skript wie gewohnt fortgesetzt.Es ist Teil einer Iterationsschleife und passiert seltsamerweise nicht bei jeder Iteration.
Zuerst dachte ich, es sei passiert, weil die Zeilenauswahl im Code null war, aber als ich die Zeile „checkweek<
if (nrows(checkweek<0, checkweek<
Ich bekam Fehlermeldungen von JMP, die besagten, dass die nächste Zeile nicht aufgelöst werden konnte.
FBListWeek=:Ursache<
Ich habe sogar ein checkweek<
Ich verwende JMP 9 auf einem Windows 7 Enterprise-Computer mit 32 GB RAM, und an der Tabelle gibt es nichts Besonderes, außer der Tatsache, dass sie sehr groß ist (über 1 Million Zeilen).
Dank im Voraus,
Eugen.
Code:
for(i=1,i<=nvector,i++,
aktuelle Datentabelle (Woche);
paretoweek = Pareto Plot( Cause( :FB ), Pro Unit Rates( 1 ), Where( :PKG == eval(pkgnames ) & :Sort_Config == eval(sortconfignames ) ) );
rparetoweek=paretoweek<
rparetoweek[tablebox(1)]<
checkweek=Datentabelle("checkweek");
checkweek<
checkweek<
checkweek<
checkweek<
FBListWeek=:Ursache<Betreff: Eine JSL-Skriptfrage: JMP-Warnung Bitte wählen Sie die zu löschenden Zeilen aus
Ich habe eine E-Mail an den Helpdesk gesendet und es stellte sich heraus, dass dies die Lösung ist:
Es hört sich so an, als ob die Popup-Meldung möglicherweise generiert wird, weil keine Zeilen ausgewählt sind.Wenn Sie das Skript aus einer JSL-Datei ausführen würden, würde die Nachricht an das Protokoll gesendet und das Skript würde fortgesetzt.Wenn das Skript jedoch über eine Schaltfläche aufgerufen wurde, befindet sich JMP nicht mehr im Batch-Modus und gibt interaktiv Meldungen aus.Dies kann auf eine der beiden folgenden Arten gehandhabt werden:
A. Fügen Sie dem Schaltflächenskript die Funktion „Batch Interactive“ hinzu, um die Laufzeitumgebung auf Batch am Anfang der Schaltfläche festzulegen
Skript und schaltet es am Ende des Schaltflächenskripts aus:
Batch-Interaktiv( 1 ); //Batch-Modus
Batch Interactive( 0 ); //Kehrt zum vorherigen Modus zurück
b (Es stellte sich heraus, dass diese Option bei mir nicht funktioniert hat, nämlich die bedingte Null-Zeilenauswahlprüfung durchzuführen.)
Euge,
Ich habe festgestellt, dass in JMP 9 und höher eine robustere Methode zum Löschen von Zeilen darin besteht, die Funktion „Zeilen löschen“ mit eingebettetem „Zeilen abrufen wo“ zu verwenden.
Dadurch wird vermieden, dass versucht wird, einen Verweis auf eine Tabelle mit einer Änderung des ausgewählten Zeilenstatus an einen nachfolgenden Befehl zu übergeben, was möglicherweise die Ursache des Problems ist, aber nicht muss.
Zum Beispiel:
dt=currentdatatable();
dt<
Ich bin mir nicht sicher, ob es das Problem in Ihrem Beispiel ist, aber versuchen Sie es doch mal.
for(i=1,i<=nvector,i++,
aktuelle Datentabelle (Woche);
paretoweek = Pareto Plot( Cause( :FB ), Pro Unit Rates( 1 ), Where( :PKG == eval(pkgnames ) & :Sort_Config == eval(sortconfignames ) ) );
rparetoweek=paretoweek<
rparetoweek[tablebox(1)]<
//Erwägen Sie hier auch das Hinzufügen eines Wait(0), damit die Tabelle erstellt wird, bevor versucht wird, Zeilen daraus zu löschen
warte(0);
checkweek=Datentabelle("checkweek");
checkweek<
checkweek<
FBListWeek=:Ursache<
-Peter