Referencia de objetos en scripts jmpHola comunidad JMP,
Tengo una pregunta sobre la referencia de objetos en los scripts de JMP. El código a continuación se ejecuta (JMP pro 17.2), pero la revisión del proceso aparece en una ventana diferente, no en la función Make_Win, donde también se encuentra el botón. Sé que si copio y pego el código,
PS = dt << Selección de procesos(...); parte dentro del cuadro de lista V, entonces el comportamiento se vuelve como se esperaba, pero luego el código se vuelve menos legible y más desordenado.
¿Hay alguna manera de definir PS en otro lugar y solo incluir su referencia dentro de la función (como se muestra en el ejemplo a continuación), o de qué otra manera haría que el código a continuación funcione según lo previsto?
Cols = {"NPN1", "PNP1", "PNP2", "NPN2", "PNP3", "IVP1", "PNP4", "NPN3", "IVP2", "NPN4", "SIT1", "INM1", "INM2",
"VPM1", "VPM2"};
dt = Open( "$SAMPLE_DATA/Semiconductor Capability.jmp" );
PS = dt << Process Screening(
Y( Eval(Cols)),
Control Chart Type( "Indiv and MR" ),
Minimum Process Length( 1 ),
Use Medians instead of Means( 1 ),
Show tests( 0 ),
Test 1( 0 ),
Cp( 1 ),
Spec Limits( 1 ),
);
Make_Win = Expr(
New Window( "ProcessScreening",
Vlist_box = V List Box(
PS,
MyButton = Button Box( "SelectedRows", SendRows ),
),
),
);
SendRows = Expr(
print_cols = Report( PS )[Table Box( 1 )][String Col Box( 1 )] << getselectedrows();
Print( Report( PS )[Table Box( 1 )][String Col Box( 1 )][print_cols] );
);
Make_Win();Gracias,
JNS
Automatización y scriptingRe: Referencia de objetos en scripts jmpQuiere utilizar la función plataforma(...).
Scripting Index is in the Help menuEl índice de secuencias de comandos se encuentra en el menú Ayuda
Cuando se inicia una plataforma, se adjuntará a una nueva ventana si se está creando dentro de la construcción de la nueva ventana, o a un displaybox si se está creando dentro de una construcción de displaybox. De lo contrario, crea una nueva ventana. La función platform() devuelve el displaybox raíz sin adjuntarlo a nada. En el pasado, también he recomendado usar un contenedor borderbox alrededor de dt<
El ejemplo del índice de scripts tendría más sentido así:
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
p=Platform(
dt,
Bubble Plot(
X( :weight ),
Y( :age ),
Sizes( :height ),
Title Position( 0, 0 )
)
);
New Window( "Platform example",
H List Box(
Platform(
dt,
Bubble Plot(
X( :weight ),
Y( :height ),
Sizes( :age ),
Title Position( 0, 0 )
)
),
p
)
);
Re: Referencia de objetos en scripts jmpHay muchas opciones diferentes para hacer esto, aquí hay una
Names Default To Here(1);
Cols = {"NPN1", "PNP1", "PNP2", "NPN2", "PNP3", "IVP1", "PNP4", "NPN3", "IVP2", "NPN4", "SIT1", "INM1", "INM2",
"VPM1", "VPM2"};
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");
ps_collector = V List Box(
PS = dt << Process Screening(
Y(Eval(Cols)),
Control Chart Type("Indiv and MR"),
Minimum Process Length(1),
Use Medians instead of Means(1),
Show tests(0),
Test 1(0),
Cp(1),
Spec Limits(1),
)
);
SendRows = Expr(
print_cols = Report(PS)[Table Box(1)][String Col Box(1)] << getselectedrows();
Print(Report(PS)[Table Box(1)][String Col Box(1)][print_cols]);
);
nw = New Window("ProcessScreening", Vlist_box = V List Box(ps_collector),
Button Box("OK", sendrows);
);