開放資料表的層級結構如何取得所有已開啟資料表的層次結構?
子集
- 堆疊式/分離式桌子
總計表
類似主選單或視窗清單中的樹狀結構?
自動化和腳本編寫回覆:開放資料表的層級結構在我最後採用的方法中,我使用了@jthi的技巧來解析增強後的日誌:
與增強日誌對話
但或許還有更巧妙的方法,那就是破解視窗清單視圖?

很遺憾:

……而且視窗清單沒有列在getWindowList() 函數中。
回覆:開放資料表的層級結構或在 Get Window List() 函數中指定資料表?
Names Default To Here( 1 );
open_tables = Get Window List( Type( "Data Tables" ) ) << Get Window Title;
回覆:開放資料表的層級結構或者
Names Default To Here( 1 );
open_tables = Get Data Table List();
回覆:開放資料表的層級結構我知道這兩個功能,但我不知道它們可以用來取得開放資料表的層次結構。
從傳回的清單中,如何找出哪個表是另一個資料表的子集或總計表?
回覆:開放資料表的層級結構即將推出的新版助手在顯示視窗時也遇到了同樣的問題。目前只能查看名稱並解析“-”。
回覆:開放資料表的層級結構遺憾的是,從視窗名稱無法判斷這些表格是關聯的還是獨立的。
我已向 JMP 支援部門提交了問題:TS -00278736
建議:將這個想法提交到願望清單中。
已完成: GetOpenTableDependencyGraph() 和其他
回覆:開放資料表的層級結構對於報表來說,操作起來稍微簡單一些,可以使用「取得資料表」功能(比較麻煩的是取得平台引用)。以下是一些簡化範例。
get_reference_table_window = Function({reportwindow}, {Default Local},
table = Empty();
tablelist = Get Data Table List() << get name;
window_title = reportwindow << Get Window Title;
table = Empty(); // one should definitely match...
For Each({tablename}, tablelist,
If(Starts With(window_title, tablename),
table = Datatable(tablename);
break;
);
);
return(table);
);
get_reference_table_helpkey = Function({reportwindow}, {Default Local},
table = Empty();
// look for OutlineBoxes with helpKey xml attribute
obs = reportwindow << XPath("//OutlineBox[@helpKey]"); // can run out of depth, could also loop over outlineboxes
objs = obs << Get Scriptable Object;
For Each({obj}, objs,
If(Is Empty(obj),
continue();
);
sobj = obj << Get Scriptable Object;
If(!Is Empty(sobj),
table = sobj << Get Data Table;
);
);
return(table);
);
對於資料表來說,情況會變得更加複雜,對於非連結表,只能依賴表名和來源表腳本。對於連結表,您可以嘗試一些更複雜的策略。