JMP-Skript, das die Spalten-USL- und LSL-Eigenschaften ändertIch habe eine JMP-Skriptfunktion, die eine Reihe von Spezifikationsgrenzen aus einer Textdatei abruft, die in der Variablen "Ntwk Osnr Spec Table Filename" gespeichert ist. Ich versuche, die Spalteneigenschaften USL und LSL der Spalte "PctDiff_ModBer_q_calcBer" in der Datentabelle "Ntwk Osnr Data Table" zu ändern. Aber wenn ich die folgenden JMP-Skriptbefehle ausführe, erhalte ich keinen Skriptfehler, aber die USL- und LSL-Spalteneigenschaften werden nicht aktualisiert. Die Spezifikationsgrenze, die aus der Spezifikationsgrenze erhalten wird, beträgt 1,7. Wenn ich durch die folgenden Zeilen gehe, wird der Wert von 1,7 in der Speclimit-Variablen aktualisiert, aber die USL- und LSL-Spalteneigenschaften werden nicht aktualisiert. Wenn ich die Speclimit-Variable auf eine Konstante von 1,7 setze, werden die USL- und LSL-Spalteneigenschaften auf 1,7 bzw. -1,7 gesetzt. Das Problem muss also darin bestehen, den Wert aus der Textdatei zu erhalten, aber ich kann das Problem herausfinden. Kann mir jemand sagen, was die Lösung ist, um die Spezifikationsgrenze aus einer Textdatei zu erhalten und die Spalteneigenschaften zu aktualisieren.
Include( "$CommonScriptPath/Function - Obtain Spec Limit Value.jsl" );
Speclimit = ObtainSpecLimit(
Ntwk Osnr Spec Table Filename, DeviceType, "*", "*", "ber_diffQcalc"
);
dt = Open( Ntwk Osnr Data Table Filename, invisible );
Data Table( dt ):PctDiff_ModBer_q_calcBer << Set Property(
"Spec Limits",
{LSL( (Speclimit * (-1)) ), USL( Speclimit ), Target( 0 ), Show Limits( 1 )}
);SkripterstellungBetreff: JMP-Skript, das die Spalten-USL- und LSL-Eigenschaften ändertStellen Sie sicher, dass die Werte numerisch sind und versuchen Sie es mit Eval(EvalExpr()) und Expr()
Include("$CommonScriptPath/Function - Obtain Spec Limit Value.jsl");
Speclimit = ObtainSpecLimit(Ntwk Osnr Spec Table Filename, DeviceType, "*", "*", "ber_diffQcalc");
dt = Open(Ntwk Osnr Data Table Filename, invisible);
Eval(
Eval Expr(
Data Table(dt):PctDiff_ModBer_q_calcBer << Set Property(
"Spec Limits",
{LSL(Expr(Speclimit * (-1))), USL(Expr(Speclimit)), Target(0), Show Limits(1)}
)
)
);
Fügen Sie mit Eval Insert, Eval Expr, Parse und Substitute einen Ausdruck in einen anderen ein
Betreff: JMP-Skript, das die Spalten-USL- und LSL-Eigenschaften ändertDie Berechnungen, die Sie in einer JMP-Liste angeben, werden vor der Ausführung nicht ausgewertet.Daher muss die Anweisung vollständig analysiert und ausgewertet werden, bevor die Substitutionsfunktion dies bewerkstelligt
Include( "$CommonScriptPath/Function - Obtain Spec Limit Value.jsl" );
Speclimit = ObtainSpecLimit(
Ntwk Osnr Spec Table Filename, DeviceType, "*", "*", "ber_diffQcalc"
);
dt = Open( Ntwk Osnr Data Table Filename, invisible );
Eval(
Substitute(
Expr(
Data Table( dt ):PctDiff_ModBer_q_calcBer <<
Set Property(
"Spec Limits",
{LSL( __LSL__ ), USL( __USL__ ), Target( 0 ), Show Limits( 1 )}
)
),
Expr( __LSL__ ), Speclimit * (-1),
Expr( __USL__ ), Speclimit
)
);