La casella di modifica numero supporta << sib ma non supporta << prev sib In questo script, nelle ultime due funzioni quando è presente la casella di modifica del numero cambiato Sto usando quel valore e il suo fratello sinistro o destro calcola un nuovo valore. Quando cambio la scatola a sinistra posso farlo con successo trova il suo fratello (successivo) corretto usando << sib. Quando cambio il giusto box, non riesco a raggiungere il fratello precedente (a sinistra) usando << prev sib.
La casella di modifica numero supporta << sib ma non supporta << prev sib secondo il mio log di JMP 14. Esegui script allegato e modifica il numero
scatole da testare per te stesso.
Sto usando la funzione giusta? Se sì, c'è un modo per aggirare questa omissione?
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>
Ri: la casella di modifica numero supporta << sib ma non supporta << prev sibTipicamente quando voglio fare riferimento a un raggruppamento di oggetti, aggiungo un contenitore, ad esempio, creo una rowbox, quindi la sintassi
((this << parent) << sib) << sib
sarebbe sufficiente
Tuttavia, per il tuo esempio userei una tabella di un StringColBox, due NumColEditBox e un NumColBox. Se si desidera fare riferimento alla cella, Set Function restituisce due variabili e, quindi, fa riferimento a NumColEditBox e alla cella.
Tuttavia, nominando le tue caselle puoi ottenere una singola funzione,
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>
Ri: la casella di modifica numero supporta << sib ma non supporta << prev sibÈ possibile ottenere il genitore per l'oggetto e determinare il numero di figli per il genitore, quindi spostarsi sul figlio da trattare. In realtà non ho usato questa metodologia, ma ho giocato un po 'con essa, e penso che potresti farcela funzionare.Ri: la casella di modifica numero supporta << sib ma non supporta << prev sibCreato un elemento della lista dei desideri, per favore upvote?
https://community.jmp.com/t5/JMP-Wish-List/Implement-Prev-Sib-for-Displays/idi-p/82669#M394
Ri: la casella di modifica numero supporta << sib ma non supporta << prev sibQualche idea su come (facilmente) aggirare questo?
Immagino che una soluzione con Xpath possa funzionare e quindi utilizzare la funzione di localizzazione usando questo << ottenere il testo per capire quale delle caselle di modifica del numero è quella che è stata cambiata. Non sarebbe robusto per i valori ripetuti però 
L'altra opzione è creare un pulsante che possa scorrere attraverso tutte le caselle e fare i calcoli, ma è una soluzione brutta.Ri: la casella di modifica numero supporta << sib ma non supporta << prev sibPrec. Sib non è supportato per i display. È disponibile solo per i nodi dell'albero. Sarebbe bello se funzionasse per Displays. Ti suggerisco di inserire la richiesta nella Wish List di JMP.