사용자가 열어야 하는 데이터 테이블에서 목록을 가져오는 콤보 상자를 업데이트합니다.<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
배경
탭이 있는 작은 응용 프로그램을 만들고 있는데 그 중 하나에서 사용자에게 데이터 테이블을 열도록 요청합니다.
다른 탭에는 해당 데이터 테이블 열의 고유 값 목록("unique_copy_list')을 표시하는 콤보 상자가 있습니다.
cbx1 = 노력하다 ( 콤보 박스 ( 고유_복사_목록 ) , ) ,
문제:
응용 프로그램이 시작되면 데이터 테이블이 선택되지 않으므로 " 고유_복사_목록” 사용할 수 없습니다,
콤보 상자를 새로 고치는 방법이 있습니까?
아니면 다른 접근 방식을 사용하는 것이 좋습니다
Re: 사용자가 열어야 하는 데이터 테이블에서 목록을 가져오는 콤보 상자를 업데이트합니다.여러분의 지원에 감사드립니다. 요점을 파악하고 곧 업그레이드하겠습니다. 어쨌든 제거 및 추가로 작업이 완료되었습니다.
Re: 사용자가 열어야 하는 데이터 테이블에서 목록을 가져오는 콤보 상자를 업데이트합니다.JSL 구문은 시간이 지남에 따라 발전하므로 JMP의 아주 오래된 버전을 사용하는 경우 도움 요청을 게시할 때 이를 언급하는 것이 정말 도움이 됩니다.당신이 하려는 일은 버전 9에서 할 수 있지만 그 이후로 목록 상자와 콤보 상자를 업데이트하는 방법이 변경되었습니다.저는 세트 아이템이 버전 10의 새로운 기능이라고 생각했는데 제가 틀렸을 수도 있습니다. 하지만 Peter가 설명한 것처럼 현재 버전에서는 이것이 훨씬 더 쉽다는 것을 알고 있습니다.하지만 데이터 테이블이 선택되면 콤보 상자에 메시지를 보내는 핵심 원칙을 계속 사용할 수 있습니다.장황한 접근 방식은 반복적으로 항목을 제거(<<항목 제거)하여 목록을 지운 다음 항목을 추가(<<항목 추가)하는 것입니다.전체 콤보 상자를 제거하고 새 것으로 교체하면 됩니다!더 이상 버전 9가 설치되어 있지 않으므로 어떤 접근 방식이 가장 적합한지 확인할 수 없습니다.
Re: 사용자가 열어야 하는 데이터 테이블에서 목록을 가져오는 콤보 상자를 업데이트합니다.저는 JMP 9.0.2를 사용합니다.
솔루션을 검증하기 위해 보내주신 모든 코드를 사용하여 "복사"를 통해 열 이름을 "고객"에서 변경했지만 이는 관련이 없습니다. 고유_복사_목록 변수에 올바른 정보가 포함되어 있지만 항목 설정 명령이 원하는 효과를 내지 못하는 것 같습니다.
Re: 사용자가 열어야 하는 데이터 테이블에서 목록을 가져오는 콤보 상자를 업데이트합니다.코드를 게시할 수 있나요?또한 어떤 버전의 JMP를 사용하고 있나요?내 프로그램은 " 밴드 데이터 ".
Re: 사용자가 열어야 하는 데이터 테이블에서 목록을 가져오는 콤보 상자를 업데이트합니다.빠른 응답에 감사드립니다. 여전히 항목 설정 명령은 언급된 콤보 상자를 새로 고치지 않습니다. S
정상적으로 실행되지만 로그 오류는 없지만 콤보 상자에 반영되지 않습니다.
또한 귀하의 전체 스크립트를 실행했지만(다시 한번 감사드립니다) 여전히 아니요
Re: 사용자가 열어야 하는 데이터 테이블에서 목록을 가져오는 콤보 상자를 업데이트합니다.콤보박스를 로드하려면 콜백을 설정해야 합니다.여기에 작은 예가 있습니다.이 작업을 수행하려면 Bands Data 예제 데이터세트를 열어야 합니다.또한 열의 고유 값을 가져오는 함수도 포함했습니다.
/* 함수 이름 고유 값 가져오기
설명: 열의 고유 값을 가져옵니다. 예를 들어:
표시
------------
AAAAA
BBBB
AAAAA
CCCCC
CCCCC
Unique_list = 고유한 값 가져오기 (:Indications)
{"AAAAA", "BBBBB", "CCCCC"}를 반환합니다.
인수:
고유 값을 계산하는 dtcol 열 설명자
*/
고유한 값 얻기 = 기능 ( { dtcol } , { 기본 로컬 } ,
// 이것을 작동시키기 위한 Eval/expr 속임수입니다.
평가 ( 평가 표현식 (
요약하다 ( 고유 목록 = 에 의해 ( 특급 ( dtcol ))))) ;
고유 목록 ;
) ;
뉴 = 새창 ( "시험" ,
탭 상자 (
"첫 번째 탭" ,
open_button = 버튼 상자 ( "열려 있는" ,
dt = 열려 있는 () ;
// 이 예는 Bands Data와 함께 작동합니다...
고유_복사_목록 = 고유한 값을 얻습니다 ( 열 ( dt , "고객" )) ;
cbx1 << 세트 아이템 ( 고유_복사_목록 ) ;
) ,
"두 번째 탭" ,
cbx1 = 콤보 박스 () , // 처음에는 비어 있을 것입니다.
)
) ;