應用當前數據表親愛的社區,
在您的幫助下,以及許多搜索和迭代過程中,我現在即將結束我的第一個JMP應用程序。
我仍在努力解決以下幾點,可以肯定的是有人會提出簡單的解決方案;):
- Dialog1腳本的結尾,我要打開一個由用戶選擇的數據表
OnNext1 = Function( {},
file_path = FilePath << GetText();
If ( file_path != "",
//IST Text File
dt = Open(
file_path,
Columns(...)
...
);
...
CurrentDataTable( dt );
Dialog2 << CreateInstance( dt );
)- 但是到達Dialog2時,我永遠不會正確設置CurrentDataTable
- 填寫文件路徑字段並按“下一步”後可以看到:
Dialog2標題= ^ APPNAME-^ TABLENAME
不顯示表名,或其他預加載的數據表名:( 
- 下一個問題應該由上一個問題解決:
- Dialog2腳本的結尾,我願意將以給定字符串開頭的所有列追加到Dialog2 Col List Box。
- 由於問題1,目前它仍然處於空缺狀態
- 加上以下錯誤:
- 在訪問或評估“發送”,ColList1 << / * ### * /背景色(2147483647)/ * ### * /時,發送Expected Scriptable Object 22次
在訪問或評估“發送”,ColList1 << / * ### * /設置數據類型(“ numeric”)/ * ### * /時,發送3個“期望腳本對象”
發送期望腳本對像以訪問或評估'Send',ColList1 << / * ### * / Get Items / * ### * /
- 無論我在Dialog2上發生什麼,如果我現在按“確定”,我都會收到以下錯誤,與模塊“ Report1”中使用的計算出的自定義分位數變量有關:
- 無效的矩陣令牌。
69行41列:... les((Percent1 / 100),[►(Percent1 / 100),(Perc ...
數據表腳本編寫回复:應用程序當前數據表將數據表引用保留在變量中(在示例中為dt),並始終使用dt:col(等)引用列。 不要依賴當前的數據表;當用戶單擊任何表時,或者在打開任何新窗口時,當前數據表都會更改。
錯誤 ”發送期望腳本對象”可以更好地說明自己。 @audrey_shull 。 <<操作符是send操作符。 左手邊應該是一個對象,右手邊應該是要處理的消息。
myobject << message( ... );
該錯誤表示左側不是接受消息的對象(可編寫腳本的對象)。 “ myobject”不是您所期望的。 嘗試
show(myobject);
or
show(type(myobject));
了解發生了什麼。
回复:應用程序當前數據表謝謝馬克,
- 如果仔細查看“ Dialog1”腳本的末尾,您會看到我正在將“ dt”引用傳遞給“ Dialog2”,然後在代碼中顯式使用該引用。
- 這兩者(而不是CurrentDataTable命令)似乎都不會填充“ “對話框2”標題字段中的“ ^ TABLENAME”全局引用。
- 我嘗試使用“ ^ APPNAME-^ dt”,但隨後將“ ^ dt”顯示為原始字符串

- 我還嘗試添加“ TABLENAME = dt;”。在“ Dialog2”“ OnModuleLoad”中,但Dialog2窗口標題中的任何更改:TABLENAME保持為空
- 在處理“腳本對象”錯誤時,我懷疑它與“ Dialog2”的ColList對像有關,該對象顯然為空,並且該表在應用啟動時尚未打開。
- 我想我必須在腳本中動態創建Col List Box才能解決此問題。
乾杯!