Establezca límites de especificación utilizando una variable en lugar de un número codificadoHola,
Estoy intentando automatizar la configuración de límites de especificación para una columna. Parece que este proceso se realiza fácilmente utilizando un valor codificado, pero no funciona cuando se ingresa el límite de especificación como una variable. Así que esto funciona:
Column(4) << Set Property("Spec Limits", {LSL(0), USL(1), Show Limits(1)});

Pero esto no:
lowerLimit = 0;
upperLimit = 1;
Column(4) << Set Property("Spec Limits", {LSL(lowerLimit), USL(upperLimit), Show Limits(1)});
¿Alguien sabe cómo solucionar esto? Gracias.
Mejor,
Llama caótica
Automatización y scriptingExploración y visualización de datosRe: Establecer límites de especificación utilizando una variable en lugar de un número codificadoAlgunas notas adicionales:
- Administrar los límites de especificaciones es mucho más fácil de usar, PERO es posible que no siempre funcione ya que algunos de los nombres de columnas tienden a ser muy estrictos en la tabla de especificaciones.
- JMP no puede registrar las pulsaciones de botones en la plataforma Manage Spec Limits (registro/flujo de trabajo mejorado), por lo que tendrá que hacer algunas secuencias de comandos aquí, pero los mensajes son muy fáciles de encontrar en el índice de secuencias de comandos en Manage Limits, ya que son los mismos que los nombres de esos botones.
- El método que Jim proporcionó siempre funcionará, pero requerirá una secuencia de comandos. Una de las ventajas de aprender esto es que no es el único lugar donde se puede utilizar.
(Utilizo ambos, pero más el método Administrar límites de especificaciones, solo para establecer los límites de especificaciones).
También para mostrar líneas de especificaciones en sus gráficos, antes de enviar el
obj << Save to Column Properties;
enviar
obj << Show Limits All;
para habilitar la marca de verificación

Re: Establecer límites de especificación utilizando una variable en lugar de un número codificadoAh, ya veo. ¡Gracias por la información, Byron!
Re: Establecer límites de especificación utilizando una variable en lugar de un número codificado¡Eso funciona de maravilla, gracias de nuevo Jim!
Re: Establecer límites de especificación utilizando una variable en lugar de un número codificadoLa respuesta de @txnelson es perfecta; sin embargo, cuando se trabaja con límites de especificaciones, las plataformas de scripting presentan una solución más simple y versátil.
En este ejemplo del índice de secuencias de comandos (busque "límites de carga" o "guardar en la propiedad de la columna"), primero se crea una tabla de límites. Es posible que ya haya creado esta tabla (o matriz).
Después de abrir la tabla de datos de destino, se utiliza la plataforma Administrar límites para cargar los límites de la tabla de límites definidos y luego los límites se guardan en la tabla de datos de destino.
;</CODE> <BR /><CODE class=" language-jsl">Names Default To Here( 1 );<BR />//First construct a table of limits for the example
dtLimits = New Table( "Cities Limits",Add Rows( 4 ),
New Column( "Process",Character,Set Values( {"OZONE", "CO", "SO2", "NO"} )),
New Column( "LSL", Numeric, Set Values( [0, 0, 0, 0] ) ),
New Column( "Target",Numeric,Set Values( [0.2, 15, 0.05, 0.035] )),
New Column( "USL",Numeric,Set Values( [0.4, 30, 0.1, 0.07] )),
Set Label Columns( :Process ));<BR /><BR />//Open the target data table to act on
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
<BR />//Script the Mangae Limits Platform<BR />obj = dt << Manage Limits(Process Variables( :OZONE, :CO, :SO2, :NO ));
obj << Load From Limits Table( dtLimits ); <BR />obj << Save to Column Properties;<BR />obj << Close Window
Re: Establecer límites de especificación utilizando una variable en lugar de un número codificadoUna lista JMP puede ser cualquier cosa, por lo que cuando especifica algo como upperLimit en una lista, JMP simplemente supone que desea exactamente eso en la lista. Para indicarle a JMP que procese lo que hay en la lista, antes de crearla puede hacer lo siguiente
Names Default To Here( 1 );
lowerLimit = 0;
upperLimit = 1;
Eval(
Eval Expr(
Column( 4 ) << Set Property(
"Spec Limits",
{LSL( Expr( lowerLimit ) ), USL( Expr( upperLimit ) ), Show Limits( 1 )}
)
)
);