<condition>if($getjresult('job1')==0) CTL_DOIT else CTL_ING</condition>
不過有時候還希望作業job1出錯後,人工強制通過也算成功。那麼採用getjresult函數就不太好實現了。這時候我們需要運用內置函數getjstate。查看《TASKCTL控制器與模塊代碼》 中關於getjstate的說明。我們知道11 代表成功執行,15代表忽略錯誤通過(此內容有遺漏)。因此,我們只需要把condition條件改爲如下代碼即可:
<condition>if($getjstate('job1')==11 or $getjstate('job1')==15) CTL_DOIT else CTL_ING</condition>
總結一下兩者的意義:getjresult -- 表示獲取作業本身產生的返回值,如shell腳本的exit 0
getjstate -- 表示TASKCTL執行作業的狀態結果,這個值是由TASKCTL定義和產生的