Algunas notas rápidas sobre cómo agregar líneas de límite de especificaciones a todas las columnas de una tabla con límites de especificaciones
Cuando los límites de especificación se definen en las propiedades de una columna, a menudo es conveniente dibujar los límites de especificación como líneas de referencia en los gráficos de esa columna. I En las propiedades de la columna para Límites de especificación, hay una casilla de verificación que hará que la especificación para esa columna se use cada vez que se use la columna en un gráfico. Es posible que desee marcar esa pequeña casilla en una gran cantidad de columnas que tienen especificaciones. Manualmente esto sería tedioso, así que aquí hay un poco de JSL para realizar esta tarea.
collist=dt<<GET column="" names=""></GET>
El script recopila una lista de columnas continuas. (Las columnas de caracteres y nominales no tendrían especificaciones de todos modos).
El script obtiene la propiedad de la columna Límites de especificación de cada columna de la lista. La función Obtener propiedades de columna obtiene todas las propiedades, pero eso no es lo que queremos aquí, por lo que extraemos solo la propiedad de límite de especificación. Si no hay ninguna propiedad de límite de especificación, se devuelve Vacío(). A continuación, el script inserta y, que es una expresión no evaluada que contiene "mostrar límites(1)" en la lista que proviene de la propiedad Límites de especificación. Finalmente, el script establece la nueva propiedad Límite de especificación nuevamente en la columna con la que comenzó... a menos que la propiedad Límite de especificación sea una expresión en lugar de una lista.
¿Problemas con los tipos de propiedades de columna?
Hay dos formas de configurar una propiedad de columna
1. Como expresión:
col<< Establecer propiedad ( "Límites de especificaciones", Límites de especificaciones ( LSL ( 10 ) , USL ( 50 ) , Objetivo ( 30 ) ) ) ;
2. Como lista:
col<< Establecer propiedad ( "Límites de especificaciones", { LSL ( 10 ) , USL ( 50 ) , Objetivo ( 30 )} ) ;
Una pequeña explicación: esta parte del guión...
si ( Nombre del jefe Expr ( a ) =="Límites de especificaciones",
nn=narg ( a ) ;
aa= {} ;
para ( ii= 1 ,ii<=nn,ii++,insertar en ( aa, argumento ( a,ii ))) ;espectáculo ( Automóvil club británico ) ;
colista [ i ] << Eliminar propiedad ( "Límites de especificaciones" ) ;
colista [ i ] << establecer propiedad ( "Límites de especificaciones", evaluación ( Automóvil club británico ))
...comprueba si la propiedad de especificación es el tipo de expresión. Luego inserta los componentes del argumento en una lista. Después eliminando la propiedad existente, se vuelve a agregar la nueva propiedad de tipo de lista.
Este es el script para estandarizar el tipo de propiedad de la columna de especificación
dt=current data table();
collist=dt<<GET column="" names=""></GET>
Para las pruebas : Este es un caso de prueba reducido para usar como ejemplo. Este fragmento de JSL crea una nueva tabla con los dos tipos diferentes de formatos de propiedades de especificación.
dt=New Table( "target", Add Rows( 1 ), New Column( "a-b", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [1] ) ),
New Column( "b minus a",Numeric, "Continuous", Format( "Best", 12 ), Set Selected,Set Values( [3] )));
//Add both formats of specification limits
:column(1)<<SET property=""></SET>
Estos enlaces están relacionados y tienen comentarios que pueden ser útiles:
Intentando extraer límites de especificaciones de las columnas
Mostrar como líneas de referencia del gráfico
http://www.jmp.com/support/notes/46/953.html