안녕하세요 여러분,
저는 길이와 너비와 같은 일부 제품에 대한 여러 매개변수를 확인하고 있습니다. 각 매개변수는 열 속성으로 사양 제한이 있는 열입니다. 각 행은 제품입니다. "InSpec"이라는 열을 자동으로 생성하려면 어떻게 해야 합니까? 이 열은 "InSpec" 열에 대한 수식으로 IF 문을 작성하지 않고도 지정된 사양 제한이 있는 모든 매개변수(열)에 대해 제품(행)이 사양에 맞는지 사양에 맞지 않는지 알려줍니다. 확인해야 할 사양 매개변수가 너무 많기 때문입니다(사양 테이블에 저장됨). 이미 for 루프를 사용하여 사양 제한을 열 속성으로 지정했으므로 모든 사양을 한 번에 확인할 방법이 있을 것이라고 생각했습니다.
감사합니다!
JSL은 이것을 할 수 있습니다. 이 게시물에는 여러분이 무엇을 할 수 있는지에 대한 몇 가지 아이디어가 있습니다.
열에 있는 색칠된 셀의 행 번호를 구하고 새로 만든 열에 태그(예: "1")를 지정하는 방법은? 그리고 Scripters Club Recordings: Tips and Tricks . 그리고 다른 방법도 있습니다.
줄 아래에:
여기서 투표해 주세요 :folded_hands: 사양(가치)에 있습니다 .
다음은 모든 열을 순환하는 제가 쓴 스크립트입니다. 열에 사양 제한이 있는 경우 새 열을 만들고 통과하는 모든 행을 1로, 실패하는 모든 열을 0으로 설정합니다. 통과하지 못하는 값의 셀은 빨간색으로 표시합니다.

Names Default To Here( 1 );
dt =
// Open Data Table: semiconductor capability.jmp
// → Data Table( "semiconductor capability" )
Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
colNames = dt << get column names( string, numeric );
For Each( {col}, colNames,
specs = {};
specs = Try( Column( dt, col ) << get property( "spec limits" ), {} );
If( specs != Empty(),
dt << New Column( Column( dt, col ) << get name || " in Spec?", set each value( 1 ) );
lsl = specs["LSL"];
usl = specs["USL"];
inSpec = dt << get rows where( !(As Column( dt, col ) >= lsl & As Column( dt, col ) <= usl ));
If( Length( inSpec ) > 0,
Column( Column( dt, col ) << get name || " in Spec?" )[inSpec] = 0;
Column( col ) << color cells( "Red", inSpec );
);
);
);