La zone de saisie Numéro prend en charge << sib mais ne prend pas en charge << sib précédente Dans ce script, dans les deux dernières fonctions lorsque la boîte d'édition de numéro est changé, j'utilise cette valeur et son frère gauche ou droit de calculer une nouvelle valeur. Quand je change la case de gauche je peux avec succès trouver son frère juste à côté en utilisant << sib. Quand je change le droit case, je ne peux pas me rendre à son frère précédent (à gauche) avec << prev sib.
La zone de saisie Numéro prend en charge << sib mais ne prend pas en charge << sib précédente selon mon journal JMP 14. Exécuter le script attaché et changer le numéro
boîtes à tester par vous-même.
Est-ce que j'utilise la bonne fonction? Si oui, y a-t-il un moyen de contourner le problème cette omission?
dt = New Table( "untitled 1",
Add Rows( 0 ),
Compress File When Saved( 1 ),
New Table Variable( "First", 1.5 ),
New Table Variable( "Second", 2.4 ),
New Table Variable( "Third", 0 ),
New Column( "Column 1",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [] )
)
);
LB = lineup box(NCol(4),
Text box("Factor"),
Text box("Total"),
Text box("Metrology"),
Text box("Process"),
);
TableVariables = dt << Get Table Variable Names();
New window("Variation",
v list box(
LB = lineup box(NCol(4),
Text box("Factor"),
Text box("Total"),
Text box("Metrology"),
Text box("Process"),
),
Button Box( "Write Total",ApplyTotalButton)
)
);
for(i=1,i<=N items(TableVariables),i++,
LB << Append(text Box(TableVariables[i]));
LB << Append(number edit Box(num(dt<<GET table="" variable=""></GET>
Re: La zone d'édition numéro supporte << sib mais ne supporte pas << prev sibGénéralement, lorsque je veux faire référence à un groupe d'objets, j'ajoute un conteneur, par exemple, crée une ligne de rangée, puis la syntaxe
((this << parent) << sib) << sib
suffirait.
Cependant, pour votre exemple, j'utiliserais une zone de tableau d'un StringColBox, deux NumColEditBox et un NumColBox. Si vous voulez faire référence à la cellule, Set Function renvoie deux variables this et it, ainsi il fait référence à NumColEditBox et à la cellule.
Cependant, en nommant vos boîtes, vous pouvez vous en tirer avec une seule fonction,
Names Default to Here(1);
dt = New Table( "untitled 1",
Add Rows( 0 ),
Compress File When Saved( 1 ),
New Table Variable( "First", 1.5 ),
New Table Variable( "Second", 2.4 ),
New Table Variable( "Third", 0 ),
New Column( "Column 1",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [] )
)
);
TableVariables = dt << Get Table Variable Names();
nvar = nitems(TableVariables);
totval = {};
metval = AsList(J(nvar,1,0));
procval = metval;
For(i=1, i<=nvar, i++,
InsertInto(totval, num(dt<< get Table Variable(TableVAriables[i])))
);
TB = TableBox(
vcol = StringColBox("Factor",TableVariables),
tcol = NumberColEditBox("Total",totval),
mcol = NumberColEditBox("Metrology", metval),
pcol = NumberColBox("Process", procval)
);
vcol << set row borders(0);
pcol << set row borders(0);
New window("Variation",
v list box(
TB,
Button Box( "Write Total",ApplyTotalButton)
)
);
recalcFunction = Function( {this, which},
//When value in this Number Edit Box is changed, get the value from this box and the one to the right and add the result and put it in the text box on the far right.
RMSE = tcol <<GET as="" matrix=""></GET>
Re: La zone d'édition numéro supporte << sib mais ne supporte pas << prev sibVous pouvez obtenir le parent de l'objet et déterminer le nombre d'enfants pour le parent, puis passer à l'enfant que vous devez gérer. Je n'ai pas réellement utilisé cette méthodologie, mais j'ai un peu joué avec elle et je pense que vous pourriez la faire fonctionner.Re: La zone d'édition numéro supporte << sib mais ne supporte pas << prev sibÉlément de liste de souhaits créé, s'il vous plaît upvote?
https://community.jmp.com/t5/JMP-Wish-List/Implement-Prev-Sib-for-Displays/idi-p/82669#M394
Re: La zone d'édition numéro supporte << sib mais ne supporte pas << prev sibUne idée de comment (facilement) contourner ce problème?
J'imagine qu'une solution avec Xpath pourrait fonctionner, puis d'utiliser la fonction de localisation en utilisant ce texte << get >> pour déterminer laquelle des zones d'édition des numéros est celle qui a été modifiée. Cela ne serait cependant pas robuste pour les valeurs répétées 
L'autre option consiste à créer un bouton qui parcourrait toutes les cases et ferait le calcul, mais c'est une solution laide.Re: La zone d'édition numéro supporte << sib mais ne supporte pas << prev sibPrev Sib n'est pas pris en charge pour les écrans. Il n'est disponible que pour les nœuds d'arbre. Ce serait bien si cela fonctionnait pour Displays. Je vous suggère d’inscrire la demande dans la liste de souhaits JMP.