从报告窗口获取类似 jrp 的脚本大家好,
我正在尝试将报告脚本保存到 jrp 文件,如下所述:在 JSL 中将图表保存为“.jrp”文件
但是,我无法直接访问生成报告窗口的图形生成器。
我通过以下方式获取报告
Get Window List(Type("Reports"));
现在我需要提取脚本以将其保存为文本文件,但是我不知道如何获取该脚本。
当使用 << Get Script 时,我只会得到类似的结果
GraphBuilderBox(ScaleBox(ParallelScaleBox(ScaleBox(ScaleBox(ScaleBox(ScaleBox(ScaleBox(ScaleBox(GraphBuilderContainerBox(Graph[...]
我如何获得更像
Graph Builder(
Size( 1896, 975 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables(...
?
自动化和脚本编写内容组织大规模定制回复:从报告窗口获取类似 jrp 的脚本谢谢@迈克D_安德森! 我同意,这将是一个很好的补充。
回复:从报告窗口获取类似 jrp 的脚本这个小金块应该在 JSL Cookbook 中! 谢谢@tx尼尔森! @唐麦考马克
回复:从报告窗口获取类似 jrp 的脚本非常感谢,就这样搞定了!
回复:从报告窗口获取类似 jrp 的脚本“获取窗口列表”返回窗口的顶级父级。
“获取可编写脚本的对象”是发送给 Outline Box() 的消息。因此,此修改应该可以满足您的需求。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
dis = Distribution( Continuous Distribution( Column( :height ) ) );
x = (Get Window List( Type( "Reports" ) )[1][Outline Box( 1 )] << get scriptable object());
x << get script;
回复:从报告窗口获取类似 jrp 的脚本有趣的。 通过这样一步一步地进行:
wList = Get Window List(Type("Reports"));
rep = wList[1] << report;
so = rep << Get Scriptable Object();
skr = so << get script();
Print( skr );我现在收到错误消息对象“HeadBox”无法识别消息“report”;也对象“HeadBox”无法识别消息“获取可编写脚本的对象”;如果我剪掉举报信息。 所以获取窗口列表(Type("Reports"));给我一个只能识别 Get Script 的流浆箱,这又给了我同样的旧
HeadBox(V List Box(Box(OutlineBox(H List Box(NoCloneBox(IfBox(H List Box
我已经学到了一些东西,但我还没有做到这一点。 如何做我得到了我的窗口的可编写脚本的对象?
回复:从报告窗口获取类似 jrp 的脚本您的消息可能位于:
print(wList[1] << report << Get Scriptable Object() << get script());
没有按照您认为的顺序执行。
比较这两者的结果:
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = bivariate( y( :weight ), x( :height ) );
rbiv = biv << report;
Print( (rbiv << Get Scriptable Object()) << get script() );
Print( rbiv << Get Scriptable Object() << get script() );
回复:从报告窗口获取类似 jrp 的脚本感谢您的答复。 但是我还没有设法解决我的问题。
打开现有的 .jrp 文件(依次打开数据表和报告窗口)后,将执行以下脚本:
wList = Get Window List(Type("Reports"));
print(wList[1] << report << Get Scriptable Object() << get script());wList = Get Window List(Type("Reports"));
print(wList[1] << Get Scriptable Object() << get script());都会导致
HeadBox(V List Box(Box(OutlineBox(H List Box(NoCloneBox(IfBox(H List Box(V List Box(H List Box(ButtonBox, ButtonBox, ButtonBox), BorderBox(V List Box(H List Box(PopupBox, Text Box("40 Columns")), V List [... etc.]不是我正在寻找的那种脚本。 这似乎是一个特殊情况,因为我从现有的报告窗口开始。 我究竟做错了什么?
回复:从报告窗口获取类似 jrp 的脚本查看 Get Scriptable Object() 消息。 您可以使用它来访问报告中的平台(即图形生成器)。
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = bivariate( y( :weight ), x( :height ) );
rbiv = biv << report;
bivobj = rbiv << Get Scriptable Object();
bivobj<<GET script=""></GET>