Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?Probablemente puedas usar el JMP Query Builder para crear este flujo de trabajo automáticamente. Use la columna de números de producto como su columna de Filtro y elija la Preguntar en Ejecutar opción.

Luego puede ir al triángulo rojo y elegir Copiar secuencia de comandos de ejecución y pegar esa secuencia de comandos en su secuencia de comandos para crear la tabla de subconjuntos como parte de su secuencia de comandos.

Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?Esto es 'huesos desnudos' pero debería comenzar.
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Summarize( age group = By( :age ) );
// you could also use an associative array to get the unique levels.
New Window( "Selection", << Modal,
lb = List Box(
age group,
),
Button Box( "OK",
got em = lb << Get Selected;
)
);
For( g = 1, g <= N Items( got em), g++,
// do something with each selected group
Show( got em[g] );
);
Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?Sobre la base de @markbailey El enfoque, aquí hay un poco más de código (antiguo):
NamesDefaultToHere(1);
// Make a table with a list of 'products'
dt = NewTable("Products", NewColumn("Product ID", Character, Nominal, Formula(Char(RandomInteger(1, 10)))));
dt << addRows(20);
dt << runFormulas;
// Put up a list of distinct products that occur in 'dt'
prods = AssociativeArray(Column(dt, "Product ID") << getValues) << getKeys;
nw = NewWindow("Pick some Products from the List",
lb = ListBox(prods),
ButtonBox("OK", OKscript)
);
// This script runs when the user hits 'OK'
OKscript =
Expr(
nw << closeWindow;
// Find out which products were selected
selecedProds = lb << getSelected;
// Find out all corresponding rows in 'dt'
selectedRows = [];
for(p=1, p<=NItems(selecedProds), p++,
selectedRows = VConcat(selectedRows, dt << getRowsWhere(:Product ID == selecedProds[p]))
);
// Make the subset table
dt2 = dt << Subset(Rows(selectedRows), LinkToOriginalDataTable(1));
);Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?Si deseo hacer esto en una tabla existente, y también tomar TODAS las columnas asociadas a esta tabla, pero solo traer las filas respectivas específicas de los Productos filtrados, ¿cómo puedo hacer eso?
Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?Aquí hay un fragmento de este código, tenga en cuenta que dt2 (PrimaryRFR_OUT_2015) es la tabla de datos que me interesa filtrar por Producto CFN, crear una nueva tabla y guardar esta tabla. Tenga en cuenta que el cuadro de filtro se muestra con precisión con la lista de CFN de producto correcta, pero una vez que hago clic en Aceptar, aparece "Fila no válida":
dt2 << Save( "PrimaryRFR_OUT_2015.jmp" );
tab = dt2 << Tabulate(
Add Table(
Column Table( Grouping Columns( :Code LLT of OUT_2015 ) ),
Row Table( Grouping Columns( :Code LLT of PrimaryRFR_2015, :Code LLT Desc of PrimaryRFR_2015) )
)
);
dt_tab = tab << Make Into Data Table;
dt_tab << set name( "Tabulate" );
dt_tab << Save( "PrimaryRFR_OUT_Tabulate_2015.jmp" );
prods = AssociativeArray(Column(dt2, "Product CFN") << getValues) << getKeys;
nw = NewWindow("Pick Products from the List to be filtered",
lb = ListBox(prods),
ButtonBox("OK", OKscript)
);
OKscript =
Expr(
nw << closeWindow;
SelectedProds = lb << getSelected;
selectedRows = [];
for( p = 1, p <= NItems( SelectedProds ), p++,
selectedRows = VConcat( selectedRows, dt << getRowsWhere( :Product CFN == SelectedProds[p]))
);
dt5 = dt2 << Subset(Rows(selectedRows), LinkToOriginalDataTable(1));
);
Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?En tu línea que comienza con
selectedRows = VConcat (selectedRows ……….
la referencia a "dt" debe ser "dt2"Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?A veces te pierdes tanto en tu propia codificación que olvidas qué camino está arriba y qué camino está abajo. ¡Gracias a todos!
Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada? Encontré el error, porque he cometido el mismo error muchas veces antes 
Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?Una vez más, ¿cómo guardo este archivo con el nuevo número de producto ahora? No está guardando mi ZACH_2015.jmp
//*** Create a window to prompt user to filter for Model numbers they would like to use
prods = AssociativeArray(Column( dt2, "Product CFN" ) << getValues) << getKeys;
nw = NewWindow( "Pick Products from the List to be filtered",
lb = ListBox( prods ),
ButtonBox( "OK", OKscript )
);
OKscript =
Expr(
nw << closeWindow;
SelectedProds = lb << getSelected;
selectedRows = [];
for( p = 1, p <= NItems( SelectedProds ), p++,
selectedRows = VConcat( selectedRows, dt2 << getRowsWhere( :Product CFN == SelectedProds[p]))
);
dt5 = dt2 << Subset(Rows(selectedRows), LinkToOriginalDataTable(1));
);
dt5 << Save( "ZACH_2015.jmp");
Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?¿Qué dice el registro sobre el guardar? Le sugiero que utilice una referencia de tabla de ruta / datos más precisa. Es posible que la ubicación predeterminada en la que se está guardando la tabla de datos no esté donde usted cree que se está guardando.Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?Esto funciona cuando especifico la ruta / ubicación del archivo.
Seguimiento: si quiero simplificar para el usuario y hacer que se guarde en el directorio activo seleccionado que le pido al usuario que elija al principio, ¿cómo lo hago?
Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?- Ver mi actualización a la última respuesta que publiqué.
- Puede especificar variables de entorno en su ruta para su Guardar.
dt << save( "$TEMP/myfile.jmp" );
Puede obtener una lista de variables de entorno JMP en la Guía de secuencias de comandos
- También puede crear carpetas. Usando las variables de entorno de Windows para encontrar la ruta a su carpeta de documentos, puede crear una nueva carpeta y colocar allí toda la salida. En las ejecuciones posteriores, puede probar si la carpeta existe y, en caso afirmativo, omitir el paso de creación.
Re: ¿Hay una manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?En 3 ¿Hay una línea de código para comenzar sobre cómo configurar una nueva carpeta llamada "Datos JMP" y para almacenar todo lo que hay allí, y en las ejecuciones subsiguientes, simplemente verifique que ya existe en el directorio del usuario?
Saludos cordiales,
Zach¿Hay alguna manera de pedirle al usuario que seleccione los productos comunes en una columna para filtrar y luego generar un informe de esa selección filtrada?Por ejemplo, me gustaría pedirle al usuario en un punto particular de la secuencia de comandos que haga que seleccionen los números de producto que están representados en esta fila en particular para filtrar y que JMP cree una nueva tabla basada en esta entrada.
Gracias,
Zach