한 열에 나타나는 사양 제한 값을 다른 열의 레이블을 기반으로 자체 속성에 적용하도록 스크립트하는 방법은 무엇입니까?첨부된 데이터 테이블과 유사한 수신 데이터가 있습니다.
나는 (예를 들어)
- 마찬가지로 T5(TestStage 아래)에 대한 USL/LSL(레이블 아래) 행에 대해 Breakdown_5 열에 나타나는(첫 번째/상단) 행 값을 Breakdown_5 열 속성의 제한으로 저장합니다.
- S7(TestStage 아래)에 대한 USL/LSL 행(레이블 아래)에 대해 Resistance_7 열에 나타나는(첫 번째/상단) 행 값을 Resistance_7 열 속성의 제한으로 저장합니다.
- S7(TestStage 아래)에 대한 USL/LSL 행(레이블 아래)에 대해 Current_7 열에 나타나는(첫 번째/상단) 행 값을 Current_7 열 속성의 제한으로 저장합니다.
- W11(TestStage 아래)에 대한 USL/LSL 행(레이블 아래)에 대해 Current_11 열에 나타나는(첫 번째/상단) 행 값을 Current_11 열 속성의 제한으로 저장합니다.
- U6(TestStage 아래)에 대한 USL/LSL(레이블 아래) 행에 대해 Capacitance_6 열에 나타나는(첫 번째/상단) 행 값을 Capacitance_6 열 속성의 제한으로 저장합니다.
일반적으로 측정된 데이터 열(Breakdown_#, Resistance_#, Current_# 등) 아래(첫 번째/상단) 나타나는 LSL/USL 행(레이블 아래)에 해당하는 사양 제한을 적용하기 위해 JSL에서 스크립트를 작성하는 방법은 무엇입니까? on) 올바른 TestStage#에 해당합니다. 여기서 #은 테스트 단계 번호를 나타냅니다.

자동화 및 스크립팅윈도우Re: 한 열에 나타나는 사양 제한 값을 다른 열의 레이블을 기반으로 자체 속성에 적용하도록 스크립트하는 방법은 무엇입니까?다음은 샘플 데이터로 작동하는 스크립트입니다.
Names Default To Here( 1 );
dt = Data Table( "exampleDataSummary" );
// Find all numeric columns and place in a list
numColList = dt << get column names( numeric, string );
// Find the unique values of TestStage
Summarize( dt, tstStage = By( :TestStage ) );
// Loop across all test stages and match with response column
stageNumber = "";
For Each( {Stage}, tstStage,
stageNumber = Substr( Stage, 2 );
resCol = "";
For Each( {col}, numColList,
If( Word( -1, col, "_" ) == stageNumber,
resCol = col
);
// Get LSL and USL
If( resCol != "",
theLSL = Column( dt, resCol )[(dt << get rows where( :TestStage == Stage & :label == "LSL" ))[1]];
theUSL = Column( dt, resCol )[(dt << get rows where( :TestStage == Stage & :label == "USL" ))[1]];
Show( theLSL, theUSL );
Eval(
Substitute(
Expr(
Column( dt, resCol ) << set property( "Spec Limits", {LSL( _LSL_ ), USL( _USL_ )} )
),
Expr( _LSL_ ), theLSL,
Expr( _USL_ ), theUSL
)
);
);
);
);Re: 한 열에 나타나는 사양 제한 값을 다른 열의 레이블을 기반으로 자체 속성에 적용하도록 스크립트하는 방법은 무엇입니까?@txnelson 네, 고마워요. 스크립트는 예제 데이터 파일과 함께 작동합니다. 두 가지 질문이 있습니다.
1. 측정된 매개변수(열) 이름이 Resistance_Null_Port_7, Capacitance_Full_Plate_6 등의 형식일 수 있다는 것을 방금 깨달았습니다. TestStage 번호가 끝나기 전에 열 이름에 밑줄이 두 개 이상 있을 때 스크립트를 변경하는 방법입니다. Word () 함수의 구현을 변경해야 할 것 같지만 문제로 어려움을 겪고 있습니다(이전에 사용해 본 적이 없어서 약간 혼란스럽습니다).
2. 제한이 적용된 후 각 열에 대해 프로그래밍 방식으로 "그래프 참조선으로 표시"를 활성화하는 방법은 무엇입니까? 사양 제한 관리()를 통해 이 작업을 수동으로 수행하는 방법을 알고 있습니다. 저는 JMP 16.2를 사용하고 있습니다.
Re: 한 열에 나타나는 사양 제한 값을 다른 열의 레이블을 기반으로 자체 속성에 적용하도록 스크립트하는 방법은 무엇입니까?제가 제공한 스크립트에서 사용한 다양한 기능에 대한 자세한 내용을 보려면 스크립팅 인덱스를 방문하세요.내가 사용한 Word() 함수는 이름에 "_"가 몇 개인지 상관하지 않습니다.제가 사용하고 있는 Word() 함수의 첫 번째 용어는 -1입니다. 이는 함수가 문자열 끝에서 시작하여 첫 번째 단어를 취하도록 지시합니다.
값을 참조선으로 자동 표시하도록 JMP에 지시하려면 사양 제한 사양의 "Show()" 매개변수를 사용하세요.
Column( dt, resCol ) << set property( "Spec Limits", {LSL( _LSL_ ), USL( _USL_ ), Show(1)} )
좀 더 효율적인 스크립터가 되는 데 도움이 되도록 시간을 내어 제가 제공한 스크립트를 연구해 보세요.
Re: 한 열에 나타나는 사양 제한 값을 다른 열의 레이블을 기반으로 자체 속성에 적용하도록 스크립트하는 방법은 무엇입니까?@txnelson 귀하의 코드를 연구하고 있으며 Word()의 작동 방식을 설명해 주셔서 감사합니다.
지금까지 스크립트는 내 실제 데이터에 대해 작동하지 않습니다(실제 열 이름에만 차이가 있습니다. 즉 밑줄이 더 많습니다).
문제는 실제 데이터에 오류가 발생하지 않고 스크립트가 실행되고 여기에 첨부된 예제 데이터 테이블에서 동일한 스크립트를 실행할 때와 달리 로그에 아무 것도 없다는 것입니다. 따라서 디버깅을 위해 제가 붙잡을 것이 없습니다.
활성화할 제한을 표시하기 위해 이미 쇼 (1)을 시도했습니다. 프로그래밍 방식으로 "그래프 참조선으로 표시". 그것 여기에 게시된 예제 데이터를 사용하면 JMP 16.2에서 작동하지 않습니다.
스크립트를 디버그해 보고 뭔가 발견하면 다시 연락드리겠습니다. 로그에 아무 것도 없을 때 디버깅을 위한 몇 가지 포인터를 얻는 것이 유용할 것입니다.
Re: 한 열에 나타나는 사양 제한 값을 다른 열의 레이블을 기반으로 자체 속성에 적용하도록 스크립트하는 방법은 무엇입니까?내 실수야, 바꿔라
쇼(1)
에게
한계 표시(1)
Re: 한 열에 나타나는 사양 제한 값을 다른 열의 레이블을 기반으로 자체 속성에 적용하도록 스크립트하는 방법은 무엇입니까?@txnelson 변경이 필요함
Substr( )
스크립트가 실제 데이터에 작동하도록 합니다. 하지만, 쇼(1)은 측정된 매개변수에 대해 분포를 플롯할 때 여전히 한계를 표시하지 않습니다.
다음은 내 JMP16.2에서도 작동하지 않습니다. 즉, 표시 제한이 활성화되지 않습니다. 열 속성의 "그래프 참조선으로 표시".
dt=Open("$SAMPLE_DATA/Process Measurements.jmp");
Column(dt, "Process 2")<<SET property=""></SET>그러나 이것은 작업을 수행합니다.
Column( dt, resCol ) << set property( "Spec Limits", {LSL( _LSL_ ), USL( _USL_ ), Show Limits( 1 )})