jmp 보고서의 ButtonBox에 스크립트 추가<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
친애하는 커뮤니티
내 문제는 간단한 문제라고 생각하지만 마찬가지로 도움을 받을 수 있습니다. 몇 가지 요인이 있는 응답의 몬테카를로 시뮬레이션을 생성하기 위해 추가된 시뮬레이터와 함께 프로파일러 플랫폼을 사용하고 있습니다.
마이프로파일러 = 프로파일러 (
와이 ( : 응답 )
) ;
마이프로파일러 << 모의 실험 장치 (
요인 (
요인 1 << 무작위의 ( 정상 ()) ,
요인 2 << 무작위의 ( 정상 ())
) ;
보고서 창의 'Simulate to Table' 개요 상자 아래에 있는 'Make Table' 버튼에 몇 가지 기능을 추가하고 싶습니다. 스크립트를 추가하여 수행합니다. 내가 하고 싶은 것은 '테이블 만들기' 버튼의 결과로 테이블 이름을 지정하고 이 테이블에서 일련의 작업을 수행하는 것입니다.
보고서 ( 마이프로파일러 )[ 버튼박스 ( 2 )] << 스크립트 설정 (
마이심테이블 = 현재 데이터 테이블 () ;
//MySimTable에서 작업 수행
) ;
문제는 ' 현재 데이터 테이블' 명령이 실행됩니다 ~ 전에 버튼을 누를 때의 다른 모든 동작. 이것은 현재 테이블이 '테이블 만들기' 버튼을 눌러 생성된 테이블이 아님을 의미합니다. 그래서 여기 내 질문이 있습니다 : '를 실행하기 전에 '빌드 인'버튼 기능을 수행하는 방법이 있습니까? 현재 데이터 테이블 ' 명령? 생성된 테이블에 대한 참조를 자동으로 제공하는 솔루션은 매우 감사할 것입니다.
고맙습니다
Re: jmp 보고서의 ButtonBox에 스크립트 추가안녕하십니까,
내장 기능이 실행되기 전에 스크립트를 실행하는 것은 의도적인 동작임을 JMP 개발 팀과 확인했습니다.
아래는 원본 버튼을 숨기고, 스크립트를 실행하고, 원본(숨겨진) 버튼을 클릭한 다음, 다른 스크립트를 실행하는 방법을 보여주는 간단한 예입니다.
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );dt << New Column( "heightplusweight", Formula( :height + :weight ) );
// replace the button in Simulate To Tablex = Profiler( y( :heightplusweight ) );x << Simulator( Factors( Factor1 << Random( Normal() ), Factor2 << Random( Normal() ) ));bb2 = Report( x )["Simulate to Table"][Button Box( 1 )];bb2 << Visibility( "Hidden" ); // new for JMP 12bb2 << Sib Prepend( Button Box( "NewButton", setfunction( Function( {this}, // this==replacement button New Window( "Before", < H List Box( Button Box( "OK" ), Button Box( "Cancel" ) ) ); (this << Sib) << Click; // sib==original button because of < New Window( "After", < H List Box( Button Box( "OK" ), Button Box( "Cancel" ) ) ); ) ) ));
이것을 모델로 사용하여 개념을 적용하여 이전 버튼을 숨기고 클릭한 다음 새 테이블의 이름을 설정할 수 있습니다.
bb2 << Sib Prepend( Button Box( "NewButton", setfunction( Function( {this}, // this==replacement button (this << Sib) << Click; // sib==original button because of < Data Table(1) << Set Name( "New Table Name" ); ) ) ));
이게 도움이 되길 바란다.
웬디
Re: jmp 보고서의 ButtonBox에 스크립트 추가안녕 이안
답장을 보내 주셔서 감사합니다. 지원 팀에 이 토론 내용을 보냈습니다.
Re: jmp 보고서의 ButtonBox에 스크립트 추가안녕 제리
해결 방법에 대해 비슷한 아이디어가 있었습니다. 이 솔루션을 구현하는 방법을 알려주셔서 감사합니다. 그것은 완벽하게 작동합니다
Re: jmp 보고서의 ButtonBox에 스크립트 추가Ian에 동의합니다. 그러나 더 나은 옵션을 얻을 때까지 해결 방법으로 테이블 만들기 기능을 가로채는 새 버튼을 추가하는 것을 고려할 수 있습니다.
보고서 ( 마이프로파일러 )[ "테이블로 시뮬레이션" ] << 추가 (
새 버튼 = 버튼 박스 ( "메이크 테이블 플러스" ,
보고서 ( 마이프로파일러 )[ 버튼박스 ( 삼 )] << 딸깍 하는 소리 () ;
마이심테이블 = 현재 데이터 테이블 () ;
)
) ;
새 버튼을 삽입하면 원래 테이블 만들기 버튼에 대한 참조가 2에서 3으로 변경됩니다.
Re: jmp 보고서의 ButtonBox에 스크립트 추가나는 아래 스크립트가 당신이 발견한 행동을 확인시켜준다고 생각합니다. 그런 경우에는 'setScript'처럼 보입니다. 추가 미리 정의된 스크립트(합리적으로 보임)에 추가하지만 다음을 추가하는 대신 앞에 추가하는 것으로 보입니다.
NamesDefaultToHere ( 1 ) ;
// 테스트 테이블
dt = 새 테이블 ( "시뮬레이션" ,
행 추가 ( 5 ) ,
새 열 ( "엑스" ,
숫자 ,
"마디 없는" ,
체재 ( "최고" , 12 ) ,
값 설정 ( [ 1 , 2 , 삼 , 4 , 5 ] )
) ,
새 열 ( "와이" ,
숫자 ,
"마디 없는" ,
체재 ( "최고" , 12 ) ,
공식 ( : 엑스 + 랜덤 노멀 ( 0 , 0.1 ) )
)
) ;
// 피팅 모델
fm = dt << 적합 모델 (
와이 ( : 와이 ) ,
효과 ( : 엑스 ) ,
인격 ( "표준 최소제곱" ) ,
중요성 ( "효과 레버리지" ) ,
운영 (
프로파일러 (
1 ,
신뢰 구간 ( 1 ) ,
기간 값 ( 엑스 ( 삼 , 자물쇠 ( 0 ) , 보여 주다 ( 1 ) ) ) ,
모의 실험 장치 (
1 ,
요인 ( 엑스 << 무작위의 ( 정상 ( 삼 , 0.8 ) ) ) ,
응답 ( 와이 << 소음 없음 )
)
) ,
: 와이 << { 적합성 부족 ( 0 ) , 예측에 의한 실제 플롯 ( 1 ) , 예측에 의한 잔차 플로팅 ( 1 ) , 플롯 효과 활용 ( 1 )}
)
) ;
// 샘플 스크립트 정의
할 일 =
특급 (
삑 하는 소리 () ;
을 위한 ( 나 = 1 , 나 <= NT테이블 () , 나 ++, 인쇄 ( 나 , 데이터 테이블 ( 나 ) << getName )) ;
) ;
// 샘플 스크립트를 버튼에 할당합니다(JMP는 이미 있는 스크립트 앞에 추가하는 것 같습니까?)
보고서 ( fm )[ 버튼박스 ( 5 )] << 세트스크립트 ( 할 일 ) ;
아마도 이 스레드를 support@jmp.com 확실한 답을 얻으려면?