Script JMP qui modifie les propriétés USL et LSL de la colonneJ'ai une fonction de script JMP qui obtient un ensemble de limites de spécifications à partir d'un fichier texte stocké dans la variable "Ntwk Osnr Spec Table Filename". J'essaie de modifier les propriétés des colonnes USL et LSL de la colonne "PctDiff_ModBer_q_calcBer dans la table de données "Ntwk Osnr Data Table". Mais lorsque j'exécute les commandes de script JMP suivantes, je n'obtiens pas d'erreur de script, mais les propriétés des colonnes USL et LSL ne sont pas mises à jour. La limite de spécification obtenue à partir de la limite de spécification est de 1,7. Lorsque je parcoure les lignes suivantes, la valeur de 1,7 est mise à jour dans la variable Speclimit mais les propriétés de colonne USL et LSL ne sont pas mises à jour. Si je définis la variable Speclimit sur une constante de 1,7, les propriétés de colonne USL et LSL sont définies sur 1,7 et -1,7 respectivement. Le problème doit donc être d'obtenir la valeur du fichier texte, mais je peux comprendre le problème. Quelqu'un peut-il me faire savoir quelle est la solution pour obtenir la limite de spécification à partir d'un fichier texte et mettre à jour les propriétés de la colonne.
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 )}
);ScriptRe : JMP Script qui modifie les propriétés de la colonne USL et LSLAssurez-vous que les valeurs sont numériques et essayez d'utiliser Eval(EvalExpr()) et 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)}
)
)
);
Insérer une expression dans une autre en utilisant Eval Insert, Eval Expr, Parse et Substitute
Re : JMP Script qui modifie les propriétés de la colonne USL et LSLLes calculs que vous spécifiez dans une liste JMP ne seront pas évalués avant l'exécution.Par conséquent, l'instruction doit être entièrement analysée et évaluée avant que la fonction de substitution n'accomplisse cela
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
)
);