信息查詢窗口你好,
作為一個新的.jsl用戶,我試圖通過生成一個小腳本來學習,在給定用戶輸入的情況下從大類示例數據表中提取數據。
對於我遇到的大多數問題,可以在這些討論板上找到解決方案,但我還有一些額外的東西,我想補充一點,我找不到任何信息。
- 如果用戶輸入了錯誤的名稱(即如果沒有找到匹配的行),我如何編寫警告窗口的腳本以彈出並通知用戶?
- 是否可以將返回的單元格值打印到UI窗口本身(在搜索和取消按鈕下方),而不是打開子集數據表?或者如果沒有,則進入類似於上述警報窗口的新窗口。
- 可以進行任何優化或對腳本進行一般性改進嗎?
在此先感謝您的幫助,
7號
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>Re:信息查詢窗口 @uday_guntupalli 神奇的以下工作;
If( Nrows(match_rows) == 0,
Text Box( "Serial Not Found."),
謝謝你快速的回复!
Re:信息查詢窗口 @ JMPUserNumber7 ,
如果它是行向量N Cols(),如果它是col向量,請嘗試N行()。
Re:信息查詢窗口 @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>
Re:信息查詢窗口 @ 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>