Dieser Code funktioniert, weil ich ":WaferID" explizit innerhalb der Where(...)-Klausel angebe:
= Associative Array(byPara) << GetKeys();
New Window("Test", vlb = V List Box(
dt << Fit Group(
For(iC = 1, iC <= NItems(colParaList), iC++,
Oneway(Y(Eval(colParaList[iC])), X(splitPara)) ),
<< {Arrange in Rows(1)},
Where(:WaferID == "001"),
SendToReport( Dispatch( {}, "Fit Group WaferID=001", OutlineBox, {Close( 1 )} ) ) ))
);// Example Parameters<BR />colParaList = {Column(dt, "Para1"), Column(dt, "Para2"), Column(dt, "Para3")};
splitPara = Column(dt, "Site");
byPara = Column(dt, "WaferID");<BR /><CODE class="language-jsl"><BR />byParaValues
Dieser Code funktioniert nicht, weil ich stattdessen Eval(byPara) verwende.
// Example Parameters<BR />colParaList = {Column(dt, "Para1"), Column(dt, "Para2"), Column(dt, "Para3")};
splitPara = Column(dt, "Site");
byPara = Column(dt, "WaferID");
byParaValues = Associative Array(byPara) << GetKeys();<BR />New Window("Test", vlb = V List Box(<BR /> dt << Fit Group(<BR /> For(iC = 1, iC <= NItems(colParaList), iC++, <BR /> Oneway(Y(Eval(colParaList[iC])), X(splitPara)) ), <BR /> << {Arrange in Rows(1)}, <BR /> Where(Eval(byPara) == "001"), <BR /> SendToReport( Dispatch( {}, "Fit Group" || Char(Eval(byPara) << GetName()) || "=" || Char(byParaValues[1]), OutlineBox, {Close( 1 )} ) ) )<BR /> )<BR />);
Warum funktioniert eine der beiden Varianten, die andere aber nicht? Meiner Erfahrung nach funktioniert es auch nicht, wenn ich "Eval(byPara)" durch "byPara" ersetze.
Mein Ziel ist es, die Funktion ähnlich wie die zweite Version zu schreiben, da das Skript nicht davon ausgehen kann, welchen Wert „byPara“ haben wird; es sollte also allgemein gehalten sein. Gibt es eine Möglichkeit, dies zu erreichen?
Was genau möchten Sie erreichen? Möchten Sie eine Einweganalyse über mehrere Spalten durchführen, die Ergebnisse zu einer Gruppe zusammenfassen, die Daten auf eine einzige Gruppe beschränken und ein Gliederungsfeld schließen? Welche JMP-Version verwenden Sie?
Ich möchte eine Einweganalyse mit mehreren Y-Parametern und mehreren By-Parametern durchführen. Die erstellten FitGroups sollen zuerst nach dem Y-Parameter und anschließend nach den By-Parametern gruppiert werden. Daher müssen sowohl die Y- als auch die By-Parameternamen in Variablen gespeichert werden.
Ich verwende JMP 19.
Vielen Dank im Voraus.
Welches endgültige Layout wünschen Sie? Haben Sie versucht, Ihre Daten zu stapeln und dann „Fit Y by X“ auszuführen?