데이터 필터를 호출하는 데 사용되는 일부 JSL 코드에서 흥미로운 문제가 발생합니다. 다음 코드를 사용하면 지정된 데이터가 선택되고 데이터 필터 창이 JSL에 지정된대로 표시되지 않습니다. 그러나 코드를 두 번째 실행하면 데이터 필터 창이 표시되고 지정된 데이터가 선택되지 않습니다. 데이터 필터를 수동으로 닫고 JSL을 다시 실행하면 지정한 데이터가 다시 선택됩니다. JSL 코드가 반복적으로 실행되면이 번갈아 동작이 매번 계속됩니다. 이 문제가 발생하는 이유와 DF 창을 열지 않고 매번 데이터 필터를 강제로 실행할 수있는 방법에 대한 아이디어가 있습니까? 감사.
로그 지우기();
기본 이름은 여기에 있습니다 (1);
dt = Open ( "$ SAMPLE_DATA / Big Class.jmp");
dt << 제외 선택;
dt << 행 상태 지우기;
df = dt << 데이터 필터 (
창 표시 (0),
필터 추가 (
열 (: 연령, : 성, : 높이),
어디에 (: age == {13, 14, 15}),
어디에 (: sex == "M"),
Where (: height> = 50 & : height <= 65)
)
);
데이터 필터 동작과 관련하여 아래 JMP 기술 지원부의 공식 응답을 참조하십시오.
JMP 기술 지원에 문의 해 주셔서 감사합니다! 스크립트를 한 번 실행하고 홈 창에서 창 목록을 보면 데이터 필터가 아래 스크린 샷과 같이 보이지 않는 창으로 표시됩니다. 한 가지 유의할 점은 각 데이터 테이블에 둘 이상의 데이터 필터를 사용할 수 없다는 것입니다. 스크립팅을 통해 나이를 기준으로 데이터 필터를 만든 다음 성별에 따라 다른 데이터 필터를 만드는 경우 데이터 테이블에 이미 성별 데이터 필터가 있으므로 성별 데이터 필터를 만들 수 없습니다. 두 번째로 실행할 때 데이터 필터가 이미 존재하므로 JMP는 기존 데이터 필터를 맨 앞으로 가져와 현재 데이터 필터가 무엇이며 변경되지 않았 음을 보여줍니다. 이것은 생성 된 두 번째 데이터 필터가 실제로 아무 것도하지 않았다는 신호를 사용자에게 제공합니다. 이것은 JMP에서 예상되는 동작입니다. 데이터 필터가 표시되지 않도록하려면 새 필터를 만들기 전에 데이터 필터 창을 닫아야합니다. 아래 예제에서는 윈도우 객체 참조를 사용하여이를 수행하는 방법을 보여줍니다. 그러나 데이터 필터 (df) 핸들을 사용할 수있는 경우 해당 참조에 직접 닫기 메시지를 보낼 수 있습니다. 기본 이름은 여기에있다. ( 1 ); dt = 열다 ( "$ SAMPLE_DATA / Big Class.jmp" ); dt << 제외 선택 ; dt << 행 상태 지우기 ; // 열려있는 경우에 대비하여 데이터 필터 창을 닫으려고합니다. 시험 ( 창문 ( "빅 클래스 용 데이터 필터" ) << 창 닫기 ()); df = dt << 데이터 필터 ( 창 표시 ( 0 ), 필터 추가 ( 열 (: 연령, : 성, : 높이), 어디서 (: age == { 13 , 14 , 15 명 }), 어디에 (: sex == "엠" ), 어디 (: 높이> = 50 & : 높이 <= 65 ) ) ); 이 정보가 도움이되기를 바랍니다. 후속 질문이 있거나 설명이 필요한 경우 알려주십시오. |
짐 감사합니다. 그것이 코드에서하고있는 것이 아니라는 것을 알았습니다. 내가 제안한대로 JMP 지원에 연락했습니다.
"창 표시 (0)"기능에 문제가있는 것 같습니다. 요소 (0)의 값을 가져 오는 대신 토글 링하는 것 같습니다. 나는이 사실을 JMP에보고 할 것이다.
support@jmp.com