Script JMP qui modifie les propriétés USL et LSL des colonnesJ'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 des colonnes USL et LSL ne sont pas mises à jour. Si je règle la variable Speclimit sur une constante de 1,7, les propriétés des colonnes USL et LSL sont respectivement définies sur 1,7 et -1,7. 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 lui faire 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 )}
);Modélisation statistique avancéeAutomatisation et scriptsÉtudes de consommation et de marchéMélange et nettoyage des donnéesPersonnalisation de masseRe : Script JMP qui modifie les propriétés des colonnes USL et LSLLes calculs que vous spécifiez dans une liste JMP ne seront pas évalués avant leur 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
)
);
Re : Script JMP qui modifie les propriétés des colonnes 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érez une expression dans une autre à l'aide d'Eval Insert, Eval Expr, Parse et Substitute