대화형 사용자 입력을 위한 드롭다운 메뉴 만들기<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />JMP 스크립팅과 관련하여 질문이 있습니다. 저는 JMP11을 사용하고 있습니다. JMP에서 대화형 스크립트를 만들고 싶습니다. 스크립트에는 다음 요소가 있습니다.
1. 스크립트는 사용자에게 문서를 선택하라는 메시지를 표시합니다. 사용자는 문서 이름을 선택합니다.
2. 해당 선택에 따라 나머지 스크립트는 사용자가 선택한 문서를 기반으로 쿼리를 실행하고 관련 차트와 테이블을 생성합니다.
JMP에서 2위를 달성하는 방법을 알고 있습니다. #1의 경우 텍스트 상자를 표시하고 사용자가 전체 문서 이름을 직접 입력하도록 하는 방법을 알고 있지만 이렇게 하면 수동 오류가 발생할 수 있으며 잘못된 이름을 입력하면 나머지 쿼리가 작동하지 않습니다.
따라서 문서 테이블에 대한 데이터베이스 쿼리는 모든 활성 문서를 사용자에게 드롭다운 목록으로 표시하고 사용자는 표시된 문서 중 하나만 선택할 것이라고 생각합니다. JMP 스크립팅에서 할 수 있습니까?
대화형 스크립트를 만들기 위해 스크립팅 설명서를 살펴보았지만 사용자가 전체 텍스트를 입력하도록 하는 옵션만 있었습니다. 그래서 당신과 확인하고 싶었습니다.
미리 감사드립니다!
Re: 대화형 사용자 입력을 위한 드롭다운 메뉴 생성조금만 확대하면 존.폰테 님의 게시물입니다.이것은 내가받은 예입니다 WK 그리고 자주 수정했습니다.
/* 샘플 데이터 테이블 열기 */
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
/* 고유 연령 목록 추출 */
요약( a = By( :나이 ) );
Insert Into( a, "<나이 선택>", 1 );
/* 모달 다이얼로그 생성 */
새 창( "예제",
<<모달,
H 목록 상자(
/* 연령을 선택하면 해당 이름으로 두 번째 ComboBox를 채웁니다. */
패널 상자( "연령 선택:",
cb1 = 콤보 상자(
ㅏ,
<<세트함수(
함수( {이것},
selection = this << Get Selected();
r = dt << 행 가져오기 Where( :age == Num( selection ) );
ageNames = :이름;
Insert Into( ageNames, "<이름 선택>", 1 );
cb2 << 세트 아이템( ageNames );
)
)
)
),
/* 로그의 두 ComboBox에서 선택한 값 인쇄 */
패널 상자( "이름 선택:",
cb2 = 콤보 상자(
{"<이름 선택>"},
<<세트함수(
함수( {이것},
that=this<< Get Selected();
인쇄( 선택, 저것 )
)
)
)
)
)
);
sel=숫자(선택)
Re: 대화형 사용자 입력을 위한 드롭다운 메뉴 생성JSL에서 드롭다운 목록을 만들려면 목록과 콤보 상자를 만들기만 하면 됩니다. 다음은 몇 가지 샘플 JSL입니다.
나의 목록 = {
"<하나 선택>" ,
"하나" ,
"둘" ,
"삼" ,
"4" ,
"다섯"
} ;
doListChoice = 특급 (
선택 = 내 목록 상자 << getSelected ;
보여주다 ( 선택 ) ;
) ;
내 목록 상자 = 콤보 박스 ( 나의 목록 , doListChoice ) ;
이기다 = 새창 ( "목록 표시" , 내 목록 상자 ) ;
이것을 실행하면 창에 드롭다운 목록이 표시됩니다. 선택하면 로그에서 선택한 내용이 표시됩니다.
이제 질문은 목록을 어떻게 작성합니까? 문서가 디렉토리에 저장된 파일인 경우 디렉토리에서 목록을 생성하는 JSL을 보여드릴 수 있습니다. 하지만 문서가 데이터베이스에 있는 것처럼 들리나요? 그렇다면 데이터베이스를 쿼리하고 목록을 얻을 수 있다고 생각합니다. 그런 다음 해당 목록을 사용하여 그림과 같이 콤보 상자를 만듭니다. 나는 데이터베이스를 사용하여 아무것도 스크립팅하지 않았으므로 해당 분야에 대한 지식이 약합니다.
귀하의 질문에 답변이 되었습니까? 아니면 데이터베이스 쿼리에 도움이 필요하셨습니까?