diff --git a/workflow/engine/classes/class.wsBase.php b/workflow/engine/classes/class.wsBase.php index 4c082d685..0875ffbbd 100755 --- a/workflow/engine/classes/class.wsBase.php +++ b/workflow/engine/classes/class.wsBase.php @@ -2688,6 +2688,10 @@ class wsBase $oPMScript->setScript( $row['TRI_WEBBOT'] ); $oPMScript->execute(); + if (isset($oPMScript->aFields["__ERROR__"]) && trim($oPMScript->aFields["__ERROR__"]) != "" && $oPMScript->aFields["__ERROR__"] != "none") { + throw new Exception($oPMScript->aFields["__ERROR__"]); + } + //Save data - Start $appFields['APP_DATA'] = $oPMScript->aFields; unset($appFields['APP_STATUS']); diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Cases.php b/workflow/engine/src/ProcessMaker/BusinessModel/Cases.php index 2b594d325..2b370490d 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Cases.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Cases.php @@ -932,7 +932,11 @@ class Cases } $case = new \wsBase(); - $case->executeTrigger( $usr_uid, $app_uid, $tri_uid, $del_index ); + $result = $case->executeTrigger($usr_uid, $app_uid, $tri_uid, $del_index); + + if ($result->status_code != 0) { + throw new \Exception($result->message); + } } /** @@ -1600,7 +1604,7 @@ class Cases $_SESSION['APPLICATION'] = $app_uid; $_SESSION['USER_LOGGED'] = $usr_uid; - + $case = new \Cases(); $fields = $case->loadCase($app_uid); $_POST['form'] = $app_data;