如果表格不存在,如何繼續執行腳本。我使用子集函數將主資料表分解為幾個表。然後我正在執行一些操作並嘗試使用更新功能將它們合併回來。但有時我只有一張桌子,有時有兩張桌子。如果第二個表不存在,我如何告訴腳本繼續。
// 更新資料表
數據表(“材料A”)<<更新(
With(數據表(“材料B”)),
匹配列( :SN = :SN )
我如何告訴腳本如果材料A或材料B表不存在,仍然繼續執行。
基礎資料分析與建模回覆:如果表格不存在,如何繼續執行腳本。您可以使用 Try 語句,或者可以在更新之前檢查這些表是否存在。就我個人而言,我會執行檢查而不是依賴 Try。通常,最好使用變數來儲存對錶的引用,而不是依賴表名稱。
編輯:使用Try看起來像這樣( https://www.jmp.com/support/help/en/17.2/#page/jmp/throw-and-catch-exceptions.shtml )
Try(
Data Table("Big Class") << Update(
With(Data Table("Big Class Families")),
Match Columns(:name = :name)
)
);
並檢查表名
tablelist = Get Data Table List() << get name;
// Only join if both are found
If(Contains(tablelist, "Big Class") & Contains(tablelist, "Big Class Families"),
Data Table("Big Class") << Update(
With(Data Table("Big Class Families")),
Match Columns(:name = :name)
)
);
回覆:如果表格不存在,如何繼續執行腳本。感謝您提供解決方案和建議,使用變數來儲存對錶的引用,而不是依賴表名。
回覆:如果表格不存在,如何繼續執行腳本。如果您使用變數那麼您也可以使用 Is Empty(dtref)
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
Try(dt2 = Open("$SAMPLE_DATA/Big Class Families"));
Show(Is Empty(dt), Is Empty(dt2));
但您可能必須使用其他方法,具體取決於您取得表格的位置(如果其他方法都不起作用,您可以想辦法使用 Try() )。