정보 조회 창여보세요,
새로운 .jsl 사용자로서 저는 사용자 입력이있는 큰 클래스 샘플 데이터 테이블에서 데이터를 가져 오는 작은 스크립트를 생성하여 학습하려고했습니다.
내가 만난 문제의 대부분은이 토론 게시판에서 찾을 수 있지만 몇 가지 추가 정보가 있습니다. 정보를 찾을 수 없습니다.
- 사용자가 잘못된 이름을 입력하면 (예 : 일치하는 행이없는 경우) 팝업 창이 나타나도록 스크립트를 작성하고이를 사용자에게 알리는 방법은 무엇입니까?
- 하위 집합 데이터 테이블을 여는 대신 반환 된 셀 값을 UI 창 자체 (검색 및 취소 버튼 아래)에 인쇄 할 수 있습니까? 그렇지 않은 경우 위에 설명 된 알림 창과 유사한 새 창으로 이동합니다.
- 어떤 최적화가 이루어 지거나 스크립트의 전반적인 개선이 가능합니까?
어떤 도움을 주셔서 미리 감사드립니다.
No7
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp", "Invisible" );
dt << Clear Selected;
cols = dt << getColumnNames( "String" );
delcols = {"name"};
For( i = 1, i <= N Items( delcols ), i++,
Remove From( cols, As List( Loc( cols, delcols[i] ) ) )
);
lookup_script = Expr(
myName = Uppercase( name1 << get text );
If( myName != "",
match_rows = dt << get rows where( :name == myName )
);
dt << subset( columns( cols[cb << get] ), rows( match_rows ) );
);
UIwin = New Window( "Big Class Age/Height Lookup",
Show Menu( 0 ),
Show Toolbars( 0 ),
//<<MODAL></MODAL>다시 : 정보 조회 창 @uday_guntupalli 환상적인 다음 일했습니다;
If( Nrows(match_rows) == 0,
Text Box( "Serial Not Found."),
빠른 응답 주셔서 감사합니다!
다시 : 정보 조회 창 @ JMPUserNumber7 ,
행 벡터 인 경우 N 행 ()을 시도합니다. 행 벡터 인 경우 N Cols ()를 시도합니다.
다시 : 정보 조회 창 @uday_guntupalli 대단히 고마워,이게 정확히 내가 뭘 찾고 있었는지, 나는이 경우 Append 함수를 알지 못했다!
이름을 입력하지 않았을 때 문자열을 반환하고 수정 사항을 약간 변경하기 위해 스크립트를 업데이트했습니다. 그러나 나는 다음과 같은 일을 할 수 없다.
If(IsEmpty(match_rows),
Text Box("The name you looked up does not exist")독서에서 이리 JMP가 원하는 텍스트 대신 배열을 반환하기 때문입니다. 주위에 어떤 아이디어가 있습니까?
다시 한번 감사드립니다.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp", "Invisible" );
dt << Clear Selected;
cols = dt << getColumnNames( "String" );
delcols = {"name"};
For( i = 1, i <= N Items( delcols ), i++,
Remove From( cols, As List( Loc( cols, delcols[i] ) ) )
);
lookup_script = Expr(
myName = Uppercase( name1 << get text );
If( myName == "",
VL1 << Append( H List Box( Text Box( "Please enter a name.", <<BULLET point=""></BULLET>
다시 : 정보 조회 창 @ JMPUserNumber7 ,
다음과 같이 해보십시오.
dt = Open( "$SAMPLE_DATA/Big Class.jmp", "Invisible" );
dt << Clear Selected;
cols = dt << getColumnNames( "String" );
delcols = {"name"};
For( i = 1, i <= N Items( delcols ), i++,
Remove From( cols, As List( Loc( cols, delcols[i] ) ) )
);
lookup_script = Expr(
myName = Uppercase( name1 << get text );
If( myName != "",
match_rows = As List(dt << get rows where( :name == myName ))
);
// dt << subset( columns( cols[cb << get] ), rows( match_rows ) );
// My Edit
VL1 << Append(
H List Box(
If(IsEmpty(match_rows),
Text Box("The information you looked up does not exist")
,
Text Box("The information you looked up is" || char(dt[match_rows,cols[cb<<GET></GET>