腳本:將 SQL 查詢結果儲存在專案中嗨,可能是個新手問題,但我自己找不到解決方案:我想將 SQL 查詢透過 JSL 產生的表格儲存到專案中。 代碼如下;標籤等被省略。 不幸的是,在後台運行查詢後,dt 似乎被刪除了。 是時間問題嗎? 謝謝你的幫忙。
query = New SQL Query(
Connection(""),
QueryName(""),
Select(Column("", "t1"), ),
From(Table("", Schema(""), Alias("t1")), )
);
query << Run Background(OnRunComplete(dt = queryResult));
project = New Project();
project << Save As("");
自動化和腳本編寫資料存取回覆:腳本編寫:將 SQL 查詢結果儲存在專案中在背景執行查詢會導致 JMP 在繼續執行下一個命令之前不等待結果,因此您必須告訴它等待。我通常在查詢之前將 dt 定義為 Empty(),然後告訴 JMP 等到 dt 可寫腳本後再繼續。
dt = Empty();
query = New SQL Query(
Connection(""),
QueryName(""),
Select(Column("", "t1"), ),
From(Table("", Schema(""), Alias("t1")), )
);
query << Run Background(OnRunComplete(dt = queryResult));
While( !Is Scriptable( dt ), Wait( 1 ) );
project = New Project();
project << Save As("");回覆:腳本編寫:將 SQL 查詢結果儲存在專案中如果您希望在背景執行查詢並在查詢完成後仍執行一些操作,您可以使用 PostQueryScript
Names Default To Here(1);
obj = New SQL Query(Connection("ODBC:DSN=SampleDSN;"), Custom SQL("SELECT c1, c2, c3 FROM my_table;"));
obj << Post Query Script("show( queryResult << Get As Matrix );");
或者我認為你也可以使用<<運行完成但您需要在其中添加更多腳本(並且您可能需要全域範圍...)。