以交互式 HTML 格式保存時,為什麼我會丟失圖表?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />你好,
我需要每天根據 Final Tester 測量數據發布產品監視器。
在多種產品上測量了許多參數。
我已經成功地以滿足我需要的形式設置了監視器,但是當以交互式 HTML 格式保存時,它們中的大多數都丟失了。
以下是該問題的一些屏幕截圖(僅限於一個參數):
當我手動設置控製圖時,我得到以下圖表。
這些是預期的,正是我所需要的。 3個產品,1個參數。

然後,當我使用下拉菜單將這些圖表保存為交互式 HTML 時,我得到的佈局與上面幾乎相同。
還有 3 個產品和 1 個參數
到目前為止,一切都很好.....

但是,當我嘗試使用以下方法編寫此過程的腳本時:
設置默認目錄( "C:\TEMP" ) ;
獲取默認目錄() ; // 返回 "c:/temp"
光盤=獲取默認目錄() ;
對象=控製圖(
SendToByGroup ( { :產品== “啊啊” } ) ,
樣品標籤( :晶圓) ,
組大小( 1 ) ,
克西格瑪( 3 ) ,
圖表欄( :平均A_PRIM ,個人測量) ,
經過( :產品) ,
{ :產品== “啊啊” } ,
{ “控製圖產品=AaA” ,
“A_PRIM 平均值的單獨測量” } ,
"IM 的 IR 圖表" ,
框框,
{框架尺寸( 313 , 100 )}
) ,
{ “控製圖產品=AaA” ,
“A_PRIM 平均值的單獨測量” } ,
"IM 的 IR 圖表" ,
框框( 2 ) ,
{框架尺寸( 313 , 100 )}
) ,
{ :產品== “BBB” } ,
{ “控製圖產品=BbB” ,
“A_PRIM 平均值的單獨測量” } ,
"IM 的 IR 圖表" ,
框框,
{框架尺寸( 313 , 100 )}
) ,
{ “控製圖產品=BbB” ,
“A_PRIM 平均值的單獨測量” } ,
"IM 的 IR 圖表" ,
框框( 2 ) ,
{框架尺寸( 313 , 100 )}
) ,
{ :產品== “抄送” } ,
{ “控製圖產品=CcC” ,
“A_PRIM 平均值的單獨測量” } ,
"IM 的 IR 圖表" ,
框框,
{框架尺寸( 313 , 100 )}
) ,
{ “控製圖產品=CcC” ,
“A_PRIM 平均值的單獨測量” } ,
"IM 的 IR 圖表" ,
框框( 2 ) ,
{框架尺寸( 313 , 100 )}
) ;
對象<<保存交互式 HTML ( “產品探針 Monitortest.html” ) ;
打開( “產品探針 Monitortest.html” ) ;
我得到:
只有 1 個產品和 1 個參數。

可以看出,缺少產品“AaA”和“BbB”。
我應該如何更改腳本以包含它們?
在實踐中,我將為 10 種產品設置這些監視器,每個產品都有 50 到 200 個測試參數,因此非常感謝這裡的任何提示。
非常感謝,
菲利普
回复:為什麼我在以交互式 HTML 格式保存時會丟失圖表?嗨,msharp,
感謝您對 melaniedrake 提出的解決方案的確認,並提供了一個我也會評估的替代解決方案。
此致,
菲利普
回复:為什麼我在以交互式 HTML 格式保存時會丟失圖表?嗨,梅拉尼德雷克,
感謝您的解決方案,特別是指出我的代碼中的錯誤。
我已經進行了您建議的更改,並且效果很好。
它有很大幫助。
此致,
菲利普
回复:為什麼我在以交互式 HTML 格式保存時會丟失圖表?melaniedrake 是正確的。為了更好地控制,您可以使用 'New Window("title") << Append(obj)' 格式。見下文。
// 自動化新產品最終測試監控的測試腳本
設置默認目錄("C:\TEMP"); // 僅在測試階段使用 C:TEMP
獲取默認目錄();
cd=獲取默認目錄();
dt = open("分割數據.jmp");
列(1)<<標籤(1);
列(3)<<標籤(1);
列(5)<<標籤(1);
列(6)<<標籤(1);
dt = 當前數據表();
theWindow = New Window("控製圖");
theWindow << 附加(obj = 控製圖(
樣本標籤( :DISCNR ),
組大小(1),
千西格瑪(3),
圖表 Col(:A_PRIM 的平均值,單獨測量),
作者(:SENSORTYPENR)
));
theWindow <<保存交互式 HTML("Probe_Monitor.html" );
//等待(0);
打開(“Probe_Monitor.html”);
回复:為什麼我在以交互式 HTML 格式保存時會丟失圖表?如果您查看 obj 包含的內容,它有一個控製圖列表(您示例中的三個控製圖):{Control Chart[], Control Chart[], Control Chart[]}
當您向列表發送消息(如保存交互式 HTML)時,消息會依次發送給列表的每個成員。 所以這裡發生的事情是,它首先保存一個帶有第一個控製圖的 html 頁面,然後保存第二個包含第二個控製圖的同名 html 頁面,然後保存第三個同名的 html 頁面包含第三個控製圖。 最終結果是一個僅包含第三個控製圖的 html 頁面。
解決方案是將 Save Interactive HTML 消息發送到包含所有控製圖的樹更遠的單個容器。
為此,請在代碼中替換此行:
obj <<保存交互式 HTML("Probe_Monitor.html" );
用這兩行:
tp = obj[1] << topparent();
tp <<保存交互式 HTML("Probe_Monitor.html" );
高溫高壓
回复:為什麼我在以交互式 HTML 格式保存時會丟失圖表?嗨,msharp,
感謝您的反饋意見。
如您所見,我不是腳本專家,感謝您的意見。
請參閱下面使用的代碼:
設置默認目錄( "C:\TEMP" ) ; // 僅在測試階段使用 C:TEMP
獲取默認目錄() ;
光盤=獲取默認目錄() ;
dt =打開( “拆分數據.jmp” ) ;
柱子( 1 ) <<標籤( 1 ) ;
柱子( 3 ) <<標籤( 1 ) ;
柱子( 5 ) <<標籤( 1 ) ;
柱子( 6 ) <<標籤( 1 ) ;
dt =當前數據表() ;
對象=控製圖(
樣品標籤( : DISCNR ) ,
組大小( 1 ) ,
克西格瑪( 3 ) ,
圖表欄( :平均A_PRIM ,個人測量) ,
經過( :傳感器類型NR )
) ;
對象<<保存交互式 HTML ( “Probe_Monitor.html” ) ;
打開( “Probe_Monitor.html” ) ;
請找到附件的數據表和腳本
- 菲利普
回复:為什麼我在以交互式 HTML 格式保存時會丟失圖表?這不可能是你的代碼。它已損壞,如發布。例如, obj = ( .. ) 只包含 AaA 產品信息,並且不知何故您只能在 html 中獲取 CcC 產品信息?最後有一個額外的“)”。接下來,沒有數據集。
請使用示例數據集發布工作代碼。 例如; dt = open("$Sample_Data\Big Class.jmp").或附上您在上面使用的示例數據集。當有許多其他問題必須首先處理時,很難解決您的具體問題。