從報告窗口獲取類似 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>