열린 데이터 테이블의 계층 구조열려 있는 모든 데이터 테이블의 계층 구조를 어떻게 얻을 수 있나요?
- 부분집합
- 쌓인/분할 테이블
- 요약표
메인 메뉴나 창 목록에 있는 트리 구조 같은 것을 말하는 건가요?
자동화 및 스크립팅제목: 공개 데이터 테이블의 계층 구조 관련마지막 접근 방식에서는 @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);
);
데이터 테이블의 경우 상황이 좀 더 복잡해지며, 연결되지 않은 테이블의 경우 이름과 소스 테이블 스크립트에만 의존할 수 있습니다. 연결된 테이블의 경우에는 시도해 볼 수 있는 좀 더 복잡한 전략들이 있습니다.