Escribir límites en una tabla de datos de una tabla de límites Txnelson ,
publicar este complemento hace un tiempo .. Es muy útil, sin embargo, me gustaría saber cómo incorporar esto en un script sin tener que hacer todas las selecciones. Eso es a menos que haya una versión mejor de esto en algún lugar ... La publicación volvió hace 5 años, así que no estoy seguro de si hay algo más nuevo.
dave
Re: Escribir límites en una tabla de datos de una tabla de límitesPido disculpas porque mi post fue un poco prematuro .. Pude averiguar cómo entrar en el .jsl (Límites de escritura ...) desde mi script ... Ahora necesito pasar de ese .jsl al Tabulate Yield .jsl ..
Re: Escribir límites en una tabla de datos de una tabla de límitesUna función Include () funciona como si hubiera escrito el código directamente en su script. Así que, si tuvieras un guión
x = 22;
y lo guardó en un archivo llamado
c: \ myfile.jsl
y luego tenía un guión
Names Default to Here( 1 );
x = 44;
include( "c:\myfile.jsl" );
print( x );
El valor impreso sería 22. El código se interpretaría como si tuviera un script
Names Default to Here( 1 );
x = 44;
x = 22;
print( x );
Ahora, con respecto al código que ha incorporado en su script ... crea nuevas columnas que tienen "0" y "1". No hay valores de "Pass" o "Fail". Dicho esto, sí, se muestran "Pasar" y "Error", pero eso se debe a que la propiedad de la columna, "Etiquetas de valor" se ha establecido. Las etiquetas de valor no cambian los valores reales en las columnas, solo cambia los valores mostrados.
Te sugiero que pases un tiempo leyendo lo siguiente:
Ayuda ==> Libros ==> Usando JMP
y
Ayuda ==> Libros ==> Guía de scripting
Re: Escribir límites en una tabla de datos de una tabla de límitesSr. Txnelson,
¿Podría por favor echarme una mano con los límites de escritura en un script de tabla de datos? Respondí al pie de este hilo ..
DaveRe: Escribir límites en una tabla de datos de una tabla de límitesseñor. Txnelson ,
Abrí el complemento y pude extraer el script para incorporarlo en el mío. Sin embargo, estoy teniendo problemas para ejecutarlo. He probado el Include () y luego referenciando el main; parte de mi script y luego hice un Abrir ("xxxxxx", Ejecutar JSL (1)); e incluso un Open ("xxxxx", main);
Ninguno de esos métodos funcionó. ¿Podría por favor darme algunos consejos sobre cómo hacer que se ejecute?
Gracias es anticipado .. Después de que esto se resuelva, tengo un par de preguntas más para hacerte
dt_tablelimits_tx = Open( "limitstable.jmp", invisible);
current data table ( ::dt_testdata_tx );
// Trying to open and run the "Write Limits to Table" script
// The script you wrote to assign value labels based on the "Write Limits to Table"
dt = current data table();
// Get all numeric columns
colList = dt << get column names( numeric, string );
foundCols = "";
// Loop across the columns and generate the test pass/fails
For( i = 1, i <= N Items( colList ), i++,
spec = Column( dt, colList[i] ) << get property( "Spec Limits" );
dt << clear select;
If( Is Empty( spec ) == 0,
dt << New Column( (Column( dt, colList[i] ) << get name) || " Pass_Fail" );
If( Is Missing( Try( spec["LSL"], . ) ) == 0,
dt << select where( As Column( dt, colList[i] ) < spec["LSL"] );
Try( Column( dt, N Cols( dt ) )[dt << get selected rows] = 0 );
);
If( Is Missing( Try( spec["USL"], . ) ) == 0,
dt << select where( As Column( dt, colList[i] ) > spec["USL"], current selection( "extend" ) );
Try( Column( dt, N Cols( dt ) )[dt << get selected rows] = 0 );
);
dt << invert row selection;
Try( Column( dt, N Cols( dt ) )[dt << get selected rows] = 1 );
Column( dt, N Cols( dt ) ) << set property( "Value Labels", { 0 = "Fail", 1 = "Pass" } );
If( foundCols == "",
foundCols = ":Name(\!"" || (Column( dt, colList[i] ) << get name) || " Pass/Fail\!")",
foundCols = foundCols || ", " || ":Name(\!"" || (Column( dt, colList[i] ) << get name) || " Pass/Fail\!")"
);
);
);
dt << clear select;
// The script you wrote called Tabulate Yield has ... Pass_Fail == "Pass" however I can only get it to populate using .. Pass_Fail == 1
dt << New Column( "TxCH0 Numberic Pass", formula( value_ss_TxCH0 Pass_Fail == 1 ) );
dt << New Column( "TxCH1 Numberic Pass", formula( value_ss_TxCH1 Pass_Fail == 1 ) );
dt << New Column( "TxCH2 Numberic Pass", formula( value_ss_TxCH2 Pass_Fail == 1 ) );
dt << New Column( "TxCH3 Numberic Pass", formula( value_ss_TxCH3 Pass_Fail == 1 ) );
dt << New Column( "TxCH4 Numberic Pass", formula( value_ss_TxCH4 Pass_Fail == 1 ) );
dt << New Column( "TxCH5 Numberic Pass", formula( value_ss_TxCH5 Pass_Fail == 1 ) );
dt << New Column( "TxCH6 Numberic Pass", formula( value_ss_TxCH6 Pass_Fail == 1 ) );
dt << New Column( "TxCH7 Numberic Pass", formula( value_ss_TxCH7 Pass_Fail == 1 ) );
dt << New Column( "TxCH8 Numberic Pass", formula( value_ss_TxCH8 Pass_Fail == 1 ) );
dt << New Column( "TxCH9 Numberic Pass", formula( value_ss_TxCH9 Pass_Fail == 1 ) );
dt << New Column( "TxCH10 Numberic Pass", formula( value_ss_TxCH10 Pass_Fail == 1 ) );
dt << New Column( "TxCH11 Numberic Pass", formula( value_ss_TxCH11 Pass_Fail == 1 ) );
dt << New Column( "TxCH12 Numberic Pass", formula( value_ss_TxCH12 Pass_Fail == 1 ) );
dt << New Column( "TxCH13 Numberic Pass", formula( value_ss_TxCH13 Pass_Fail == 1 ) );
dt << New Column( "TxCH14 Numberic Pass", formula( value_ss_TxCH14 Pass_Fail == 1 ) );
dt << New Column( "TxCH15 Numberic Pass", formula( value_ss_TxCH15 Pass_Fail == 1 ) );
new column ( "TxTally" ) << formula( sum(
:TxCH0 Numberic Pass, :TxCH1 Numberic Pass, :TxCH2 Numberic Pass,
:TxCH3 Numberic Pass, :TxCH4 Numberic Pass, :TxCH5 Numberic Pass,
:TxCH6 Numberic Pass, :TxCH7 Numberic Pass, :TxCH8 Numberic Pass,
:TxCH9 Numberic Pass, :TxCH10 Numberic Pass, :TxCH11 Numberic Pass,
:TxCH12 Numberic Pass, :TxCH13 Numberic Pass, :TxCH14 Numberic Pass,
:TxCH15 Numberic Pass
)
);
dt << select where( :TxTally != 16 ) << delete rows;
show( LotListSQLString );
Re: Escribir límites en una tabla de datos de una tabla de límitesLa orden de compra fue colocada, aprobada y ahora solo estamos esperando el lanzamiento. Estoy en la lista para la primera ronda de distribución, pero me toma una eternidad ..
Quiero el tablero de mandos tan malo ...
Gracias por la info.. Voy a tener que empezar a ver videos de YouTube en JMP 14
Re: Escribir límites en una tabla de datos de una tabla de límitesCuando tenga instalada la versión 14, es posible que desee revisar la plataforma Administrar límites de especificaciones en el menú Analizar -> Calidad y proceso.
Re: Escribir límites en una tabla de datos de una tabla de límitesEstoy esperando a que nuestro departamento de TI distribuya las licencias para JMP 14. El kit de herramientas de semiconductores no funciona para 12, o al menos el que descargué ..
Voy a ir al intercambio de archivos y ver el código.
También estoy usando un par de otros scripts [Tabulate Yield Script.jsl] y uno que publiques en una respuesta ... Déjame revisar ese archivo y te responderé en breve.
Gracias
Re: Escribir límites en una tabla de datos de una tabla de límitesLos límites de escritura en una tabla de datos de una tabla de límites se han actualizado. Además, se ha agregado a Semiconductor Toolkit.
Si descarga e instala la última versión de File Exchange, puede ver el JSL utilizado.