腳本執行問題<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />嗨,
是否有其他人遇到過此問題,其中部分腳本在運行整個腳本時無法正常執行,但在逐行運行時將正確執行。我在JMP 7和11中經歷了幾次。我只是想澄清它是語法錯誤,還是代表我的設置或代碼邏輯,而不僅僅是JMP中的錯誤?
最近一次我注意到它是設置列公式。我正在連接字符,然後將新列數字用於其他計算。Col A和B是其中沒有任何字母的字符。當我逐行運行它時,它會像應該的那樣執行,但是運行整個腳本會產生一個空白列。
思考?
dt1 << add multiple columns( "Col C" after( "Col B"), character, nominal );
Column( "Col C)<<Formula( Concat(:Name( "Col A" ),:Name( "Col B" ) ));
Column( "Col C" )<< delete formula;
Column( "Col C" )<< Data Type( Numeric ) << Modeling Type( Continuous );
我也注意到這個問題,腳本根據特定的條件語句選擇和過濾行。
回复:腳本執行問題當你用運行公式替換Wait()時,腳本是否運行?
我可以重現你發現的故障,也許這種稍微不同的方法對你有用嗎?
在這種情況下,我沒有使用“添加多列”,然後將列移動到最後一行的前面。
名稱默認為here(1);
dt =新表();
dt <<新列(“A”,字符,標稱,設置值({“1”,“2”,“3”}));
dt <<新列(“B”,字符,標稱,設置值({“4”,“5”,“6”}));
dt <<新列(“C”,字符,標稱,公式(:A ||:B));
:C <<刪除公式();
:C <<數據類型(數字)<<設置建模類型(連續);
dt <<轉到(C);
dt <<移動選定的列(“到第一個”);
回复:腳本執行問題謝謝你的快速回复!
不幸的是我也有那些線。我可能會在模擬偽代碼時意外刪除它們。
這是一個更好的代碼摘錄:
dt1 << add multiple columns( "Bioburden", 1, after( "Bioburden B"), character, nominal );
Column( "Bioburden")<
dt1 << Run Formulas;
Column( "Bioburden ")<< delete formula;
wait(1);
Column( "Bioburden )<< Data Type( Numeric ) << Modeling Type( Continuous );
dt1 << delete column( :Name( "Bioburden A" ) );
dt1 << delete column( :Name( "Bioburden B" ) );
在第四行刪除公式後,我沒有第二次運行公式()。我從來沒有像以前那樣使用它。
回复:腳本執行問題問題是在下一步發生之前不會完全評估列公式。
dt << run formula();確保在下一步發生之前評估公式。在我手中,這比使用wait(1)好多了;
dt1 =當前數據表();
dt1 <<添加多列(“C”,1,後(:B),字符);
列(“C”)<< Formula(Concat(:Name(“A”),: Name(“B”)));
dt1 << run formula();
列(“C”)<<刪除公式;
dt1 << run formula();
列(“C”)<<數據類型(數值)<<建模類型(連續);
回复:腳本執行問題列公式是異步計算的,因此即使公式尚未完成評估,您的腳本也將繼續。 要確保您的腳本僅在完成公式評估後繼續,您可以將Run Formulas消息發送到數據表:
柱 ( “Col C. ) << 式 ( CONCAT ( : 名稱 ( “可樂” ) ,: 名稱 ( “Col B” ) )) ;
dt << Run Formulas;