프로젝트 탭을 선택하고 스크립트를 실행하는 JSL여러분,
저는 프로젝트 작업이 처음이고 JSL에서 일상적으로 수행하는 다양한 작업을 수행하는 데 어려움을 겪고 있습니다.내 프로젝트에는 4개의 데이터 테이블이 있고 그 중 하나를 선택한 다음 해당 데이터 테이블에 나열된 특정 스크립트를 실행하려고 합니다.프로젝트에 대한 도움말 정보를 살펴봤지만 이 작업을 수행하는 방법을 잘 모르겠습니다.어떤 제안이나 아이디어라도 주시면 감사하겠습니다.
Re: 프로젝트 탭을 선택하고 스크립트를 실행하는 JSL또한 각 블록마다 별도의 Run Script 메시지가 필요하지 않습니다. 가독성을 위해 그렇게 한 것뿐입니다. 그러나 뭔가를 열려고 한 다음 즉시 포커스를 설정하려는 경우에는 wait(0) 호출이 필요할 수 있습니다. 그렇지 않으면 탭을 앞으로 가져오려고 할 때까지 탭 로드가 완료되지 않았을 수 있습니다.Re: 프로젝트 탭을 선택하고 스크립트를 실행하는 JSL
@테라핀 썼다:
댕,
그것은 쉽다.각 명령이나 명령 집합에 대해 Run Script를 사용해야 한다는 사실을 몰랐습니다.
이제 변수를 창 또는 데이터 테이블 이름으로 전달할 수 있다는 점을 제외하면 매우 잘 작동합니다. 나는 JSL을 사용하여 수많은 사이트의 데이터를 처리하고 열린 데이터 파일에서 사이트 ID를 가져온 다음 JSL의 다른 많은 섹션에서 이를 사용하여 데이터 파일을 사이트별 디렉터리로 저장하고 이름을 바꾸고 이동합니다.안타깝게도 아래와 같이 내 변수 stn을 창 또는 데이터 테이블 이름에 전달할 수 없습니다.프로젝트를 사용하여 이 작업을 수행할 수 있습니까? 그렇다면 이를 수행하는 방법에 대한 제안이 있습니까?
프로젝트 << 스크립트 실행( 데이터 테이블 가져오기( stn || " Amp_Hr Per Day" ) ); << 스크립트 실행( "PAR이 있는 매개변수의 OP" );
프로젝트 << 스크립트 실행( Get Window( stn || " Amp_Hr Per Day" ) << 창을 앞으로 가져오기() );
프로젝트에 자체 JSL 범위가 있도록 의도된 것이지만 프로젝트 간에 변수를 공유하려고 할 때 문제가 발생할 수 있습니다. 이를 수행하는 한 가지 방법은 Eval/EvalExpr을 사용하는 것입니다. 예쁘지는 않지만 트릭을 수행합니다.
win name = "Big Class";
Eval(
Eval Expr(
project << Run Script( Get Window( Expr( win name ) ) << Bring Window To Front() )
)
);
Re: 프로젝트 탭을 선택하고 스크립트를 실행하는 JSL댕,
그것은 쉽다.각 명령이나 명령 집합에 대해 Run Script를 사용해야 한다는 사실을 몰랐습니다.
이제 변수를 창 또는 데이터 테이블 이름으로 전달할 수 있다는 점을 제외하면 매우 잘 작동합니다. 나는 JSL을 사용하여 수많은 사이트의 데이터를 처리하고 열린 데이터 파일에서 사이트 ID를 가져온 다음 JSL의 다른 많은 섹션에서 이를 사용하여 데이터 파일을 사이트별 디렉터리로 저장하고 이름을 바꾸고 이동합니다.안타깝게도 아래와 같이 내 변수 stn을 창 또는 데이터 테이블 이름에 전달할 수 없습니다.프로젝트를 사용하여 이 작업을 수행할 수 있습니까? 그렇다면 이를 수행하는 방법에 대한 제안이 있습니까?
프로젝트 << 스크립트 실행( 데이터 테이블 가져오기( stn || " Amp_Hr Per Day" ) ); << 스크립트 실행( "PAR이 있는 매개변수의 OP" );
프로젝트 << 스크립트 실행( Get Window( stn || " Amp_Hr Per Day" ) << 창을 앞으로 가져오기() );
Re: 프로젝트 탭을 선택하고 스크립트를 실행하는 JSLProject << Run Script()를 사용하여 프로젝트 외부에서 프로젝트 내부에서 JSL을 실행합니다.
// 1. Create a project and open two data table in it
p = new Project();
p << Run Script(
Open("$SAMPLE_DATA/Big Class.jmp");
Open("$SAMPLE_DATA/Airline Delays.jmp");
);
// 2. Run the a saved script from each table
p << Run Script(
Get Data Table("Big Class") << Run Script("Distribution");
Get Data Table("Airline Delays") << Run Script("Graph Builder Heatmap");
);
// 3. Optionally, make Big Class the visible tab
wait(0);
p << Run Script(
Get Window("Big Class") << Bring Window To Front();
);
Re: 프로젝트 탭을 선택하고 스크립트를 실행하는 JSL안녕하십니까?
JSL을 사용하여 기존 프로젝트 외부에서 작업하려고 합니다.즉, 열린 프로젝트에서 특정 탭을 선택하고 해당 탭에 저장된 스크립트를 실행하는 외부 스크립트를 실행하고 싶습니다.예를 들어 Big Class, Abrasion 및 Bicycle Moved 데이터 테이블이 있는 경우(이 프로젝트의 보관된 버전을 보내려고 했지만 "첨부 파일의 내용이 해당 파일 형식과 일치하지 않습니다."라는 오류 메시지가 표시됨) 프로젝트 외부에 저장된 JSL 파일을 사용하여 프로젝트를 열고 Tab Big Class를 선택하고 배포 스크립트를 실행하고 Tab Bicycle로 전환하고 Fit Model 스크립트를 실행합니다.아무런 문제 없이 프로젝트를 열 수 있지만 나머지는 수행할 수 없습니다.
Re: 프로젝트 탭을 선택하고 스크립트를 실행하는 JSL거의 예외를 제외하고 JSL 스크립트는 이전과 마찬가지로 프로젝트 내부에서 동일하게 작동합니다. 따라서 이미 필요한 작업을 수행하는 JSL이 있는 경우 프로젝트 탭에서 해당 JSL을 실행하기만 하면 됩니다. 오류가 있거나 예상한 대로 작동하지 않는 경우 이를 해결하는 데 도움을 드릴 수 있습니다.Re: 프로젝트 탭을 선택하고 스크립트를 실행하는 JSL명확히 하자면, 프로젝트 외부에서 JSL로 일반적으로 수행하는 작업을 수행하기 위해 프로젝트에서 JSL을 사용하시겠습니까, 아니면 JSL에서 일반적으로 수행하는 작업을 프로젝트에서 GUI 인터페이스를 사용하시겠습니까?