导入规格限制所以我有一个在数据表上运行 Process Capability 的脚本。 我可以使用这个解决方案自动运行它, https://community.jmp.com/t5/Discussions/JSL-automate-the-columns-used-in-Process-Capability/mp/39855 . 我现在也在尝试自动导入规格表。 现在用户自动拥有 2 张纸。 1 个带有数据,1 个带有规格信息。 我可以制作一个获取规格表信息并将其复制到列属性的解决方案,但我宁愿让它在代码中运行,以防用户想要将数据表与另一个规格文件一起使用。
到目前为止我的代码...
yyy = Eval( Parse("summ_table << Process Capability(
过程变量(“ || TheVars || ”),<
规格限制(导入规格限制(\!“”||规格||“\!”))<<不工作
);"
)
);
spec 保存打开的规格表名称。我可以很容易地得到这两种格式。
“specTable1.jmp”
“数据表(“specTable1.jmp”)”
我从这个博客中得到了规范限制代码—— https://community.jmp.com/t5/JMPer-Cable/3-ways-to-load-your-specification-limits-into-Process-Capability/ba-p/34189
回复:导入规格限制因此,这完全是从脚本索引中复制和粘贴的。 恕我直言,这是从一个表加载规范并将它们保存到另一个表的列属性中的最简单方法。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
obj = Capability(Y( :OZONE, :CO, :SO2, :NO ), Spec Limits(Import Spec Limits("$SAMPLE_DATA/CitySpecLimits.jmp")));
obj << Save Spec Limits as Column Properties;<STRIKE></STRIKE><BR />
...尽管如此,我不得不说 Jim Nelson 的插件非常漂亮,并且具有一些非常方便的通用功能。
回复:导入规格限制无论您是否可以打开示例数据表,我包含的代码都可以剪切并粘贴到您的 JMP 会话中,并且知道它可以工作。 因此,如果您使用自己的数据表和限制表,并且代码对您不起作用,那么您需要查看您的数据以解决问题。
回复:导入规格限制我认为问题出在我的电脑上。 您的脚本看起来应该可以在您的电脑上运行。我下载了您的示例表,但在我的机器上它给出了错误/警报。 看起来您的解决方案有效,但正在发生其他事情。 我想我需要先修复 I/O,然后才能实施您的解决方案。

回复:导入规格限制JSL 几乎能够执行您需要完成的任何事情,因此针对您的问题,是的,您可以选择数据表,然后选择限制表,然后运行流程能力。 这是一个非常简单的脚本,正是这样做的。 我已经用随附的数据和限制表对其进行了测试。 该代码绝对不是防弹的。 但它应该向您展示如何进行。
Names Default To Here( 1 );
// Select the data table and open it
path = Pick File( "Select Data Table" );
dt = Open( path );
// Select the limits table and open it
path = Pick File( "Select Limits Table" );
dt2 = Open( path );
// Point to the data table as the main table
Current Data Table( dt );
// Open a new window to select the process variables
nw = New Window( "Select Process Variables",
Text Box( "Selection Columns" ),
H List Box(
datacolbox = Col List Box( all ),
Button Box( "Process Variables", pList << append( datacolbox << get selected ) ),
pList = List Box( {} )
),
Button Box( "OK",
thelist = plist << get items;
pvars = ":" || thelist[1];
For( i = 2, i <= N Items( thelist ), i++,
pvars = pvars || ",:" || thelist[i]
);
Eval(
Parse(
"obj = dt << Process Capability(
Process Variables(" || pvars || " ),
Spec Limits( Import Spec Limits( dt2 ) )
);"
)
);
nw << close window;
)
);回复:导入规格限制我查看了那个插件的代码,对我来说它似乎做了一些我已经做过的事情。基本上它编辑表中的列以具有限制特征。
我想知道是否可以使用 JSL 基本上要求用户提供一张带有数据的表格和一张带有限制/规格的表格。 在用户输入这两个之后,脚本将自动运行,并在数据表上运行能力分析。所以基本上可以使用 JSL 在能力分析中运行规格表。 我想知道这条线是否可能像原始帖子中链接的第二篇文章中描述的那样。
Spec Limits(Import Spec Limits(\!" specLimits.jmp\!"))
它似乎不起作用。 我应该尝试像这样格式化它吗?并且有一个包含所有限制/规格信息的长字符串?
Spec Limits(
c1( LSL( -1.4 ), Target( . ), USL( . ) ),
c2 2( LSL( -1.4 ), Target( . ), USL( . ) ),
Name( "c3" )(LSL( 12 ), Target( . ), USL( 144 )),
c4( LSL( . ), Target( . ), USL( -18 ) )
),
回复:导入规格限制有一个 JMP 插件可以从包含规格限制的附加数据表中填充规格限制。
从限制表向数据表写入限制
如果它不完全符合您的要求,您可以随时提取 JSL 并对其进行修改以满足您的需求