사양 제한 가져오기그래서 데이터 테이블에서 Process Capability를 실행하는 스크립트가 있습니다. 이 솔루션을 사용하여 자동으로 실행할 수 있습니다. https://community.jmp.com/t5/Discussions/JSL-automate-the-columns-used-in-Process-Capability/mp/39855 . 이제 사양 시트도 자동으로 가져오려고 합니다. 현재 사용자는 자동으로 2개의 시트를 갖게 됩니다. 데이터가 있는 1개와 사양 정보가 있는 1개. 사양 시트 정보를 가져 와서 열 속성에 복사하는 솔루션을 만들 수 있지만 사용자가 다른 사양 파일과 함께 데이터 시트를 사용하려는 경우 코드에서 실행하는 것이 좋습니다.
지금까지 내 코드 ...
yyy = Eval( Parse("summ_table << 프로세스 기능(
프로세스 변수( " || TheVars || "), <
Spec Limits(Import Spec Limits(\!"" || Spec ||"\!")) <<작동하지 않음
);"
)
);
사양은 열린 사양 테이블 이름을 보유합니다. 이 두 가지 형식으로 쉽게 얻을 수 있습니다.
"specTable1.jmp"
"데이터 테이블("specTable1.jmp")"
이 블로그에서 사양 제한 코드를 얻었습니다. -- https://community.jmp.com/t5/JMPer-Cable/3-ways-to-load-your-specification-limits-into-Process-Capability/ba-p/34189
Re: 사양 제한 가져오기제한 테이블에서 데이터 테이블로 제한 쓰기 추가 기능은 하나의 옵션입니다.
Re: 사양 제한 가져오기감사합니다.수정된 스크립트로 잘 작동합니다~
제한 파일을 로드하고 모든 제한을 열 속성에 직접 저장하는 스크립트가 있습니까?
Re: 사양 제한 가져오기이것은 상당히 오래된 스크립트(및 게시물)이며 결국 수행하려는 작업에 따라 수정 방법을 정의합니다(또는 다른 스크립트를 완전히 사용하거나 제공된 추가 기능을 사용해야 할 수도 있음).
추가 기능을 사용하면 가변 열 모델링 유형을 구조화되지 않은 텍스트에서 명목상으로 변경해야 합니다.


다음은 스크립트용 JMP16+가 있는 경우 작동하는 매우 빠른 수정입니다(24행과 26행에 대한 수정).
Names Default To Here( 1 );
// Select the data table and open it
path = Pick File( "Select Data Table" );
dt = Open( path );
// Select the limits table and open it
path = Pick File( "Select Limits Table" );
dt2 = Open( path );
// Point to the data table as the main table
Current Data Table( dt );
// Open a new window to select the process variables
nw = New Window( "Select Process Variables",
Text Box( "Selection Columns" ),
H List Box(
datacolbox = Col List Box( all ),
Button Box( "Process Variables", pList << append( datacolbox << get selected ) ),
pList = List Box( {} )
),
Button Box( "OK",
thelist = plist << get items;
pvars = ":\!"" || thelist[1] ||"\!"n";
For( i = 2, i <= N Items( thelist ), i++,
pvars = pvars || ", :\!"" || thelist[i] ||"\!"n";
);
Eval(
Parse(
"obj = dt << Process Capability(
Process Variables(" || pvars || " ),
Spec Limits( Import Spec Limits( dt2 ) )
);"
)
);
nw << close window;
)
);Re: 사양 제한 가져오기안녕하십니까?
귀하의 스크립트를 사용하여 제한 파일 가져오기를 실행하려고 하지만 오류가 발생합니다. (내 제한 사양 파일 첨부)
긴 변수 이름 또는 문자 '/' 문제로 보입니다. 도와주실 수 있나요? 감사합니다.

감사합니다, 칠리
Re: 사양 제한 가져오기따라서 이것은 문자 그대로 Scripting Index에서 복사하여 붙여넣은 것입니다. IMHO는 한 테이블에서 사양을 로드하고 다른 테이블의 열 속성에 저장하는 가장 간단한 방법입니다.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
obj = Capability(Y( :OZONE, :CO, :SO2, :NO ), Spec Limits(Import Spec Limits("$SAMPLE_DATA/CitySpecLimits.jmp")));
obj << Save Spec Limits as Column Properties;<STRIKE></STRIKE><BR />
...그래도 Jim Nelson의 추가 기능은 매우 매끄럽고 매우 편리한 일반화된 기능이 일부 포함되어 있습니다.
Re: 사양 제한 가져오기샘플 데이터 테이블을 열 수 있는지 여부에 관계없이 포함된 코드는 잘 작동한다는 사실을 알고 JMP 세션에 잘라내어 붙여넣을 수 있습니다. 따라서 자신의 데이터 테이블과 한계 테이블을 사용했는데 코드가 작동하지 않는 경우 데이터에서 문제를 찾아야 합니다.
Re: 사양 제한 가져오기내 PC가 문제라고 생각합니다. 스크립트가 제대로 작동하고 PC에서 작동하는 것처럼 보입니다. 샘플 테이블을 다운로드했지만 내 컴퓨터에서 오류/경고가 발생합니다. 솔루션이 작동하는 것처럼 보이지만 다른 일이 발생하고 있습니다. 귀하의 솔루션을 구현하기 전에 먼저 I/O를 수정해야 한다고 생각합니다.

Re: 사양 제한 가져오기JSL은 수행해야 하는 거의 모든 작업을 수행할 수 있으므로 질문에 대한 응답으로 예, 데이터 테이블을 선택한 다음 제한 테이블을 선택한 다음 프로세스 기능을 실행할 수 있습니다. 다음은 정확히 이를 수행하는 매우 간단한 스크립트입니다. 첨부된 데이터 및 한계 표로 테스트했습니다. 코드는 확실히 방탄이 아닙니다. 그러나 진행 방법을 보여주어야 합니다.
Names Default To Here( 1 );
// Select the data table and open it
path = Pick File( "Select Data Table" );
dt = Open( path );
// Select the limits table and open it
path = Pick File( "Select Limits Table" );
dt2 = Open( path );
// Point to the data table as the main table
Current Data Table( dt );
// Open a new window to select the process variables
nw = New Window( "Select Process Variables",
Text Box( "Selection Columns" ),
H List Box(
datacolbox = Col List Box( all ),
Button Box( "Process Variables", pList << append( datacolbox << get selected ) ),
pList = List Box( {} )
),
Button Box( "OK",
thelist = plist << get items;
pvars = ":" || thelist[1];
For( i = 2, i <= N Items( thelist ), i++,
pvars = pvars || ",:" || thelist[i]
);
Eval(
Parse(
"obj = dt << Process Capability(
Process Variables(" || pvars || " ),
Spec Limits( Import Spec Limits( dt2 ) )
);"
)
);
nw << close window;
)
);Re: 사양 제한 가져오기나는 그 추가 기능의 코드를 보았고 나에게 그것은 이미 수행된 무언가를 하는 것 같습니다. 기본적으로 한계 특성을 갖도록 테이블의 열을 편집합니다.
JSL을 사용하여 기본적으로 사용자에게 데이터가 있는 시트와 제한/사양이 있는 시트를 요청할 수 있는지 궁금합니다. 사용자가 2개를 입력하면 스크립트가 자동으로 실행되어 데이터가 있는 시트에서 기능 분석을 실행합니다. 따라서 기본적으로 JSL을 사용하여 기능 분석에서 사양 시트를 실행할 수 있습니다. 원래 게시물에 링크된 2번째 게시물에 설명된 것처럼 이 줄이 가능한지 궁금합니다.
Spec Limits(Import Spec Limits(\!" specLimits.jmp\!"))
작동하지 않는 것 같습니다. 그냥 이렇게 포맷해야 할까요? 모든 제한/사양 정보를 포함하는 긴 문자열이 있습니까?
Spec Limits(
c1( LSL( -1.4 ), Target( . ), USL( . ) ),
c2 2( LSL( -1.4 ), Target( . ), USL( . ) ),
Name( "c3" )(LSL( 12 ), Target( . ), USL( 144 )),
c4( LSL( . ), Target( . ), USL( -18 ) )
),
Re: 사양 제한 가져오기사양 제한이 있는 추가 데이터 테이블에서 사양 제한을 채우는 JMP Addin이 있습니다.
제한 테이블에서 데이터 테이블로 제한 쓰기
원하는 대로 작동하지 않는 경우 언제든지 JSL을 꺼내 필요에 맞게 수정할 수 있습니다.