diff --git a/workflow/engine/classes/class.derivation.php b/workflow/engine/classes/class.derivation.php index 3e1cdb133..fa57411e4 100755 --- a/workflow/engine/classes/class.derivation.php +++ b/workflow/engine/classes/class.derivation.php @@ -605,6 +605,9 @@ class Derivation break; case "MULTIPLE_INSTANCE": $userFields = $this->getUsersFullNameFromArray($this->getAllUsersFromAnyTask($nextAssignedTask["TAS_UID"])); + if(empty($userFields)){ + throw (new Exception( G::LoadTranslation( 'ID_NO_USERS' ) )); + } break; case "MULTIPLE_INSTANCE_VALUE_BASED": $arrayApplicationData = $this->case->loadCase($tasInfo["APP_UID"]); diff --git a/workflow/engine/classes/model/Task.php b/workflow/engine/classes/model/Task.php index 524ed3cc1..7654164b6 100755 --- a/workflow/engine/classes/model/Task.php +++ b/workflow/engine/classes/model/Task.php @@ -804,6 +804,7 @@ class Task extends BaseTask $oCriteria = new Criteria(); $oCriteria->add(AppDelegationPeer::DEL_THREAD_STATUS, "OPEN"); $oCriteria->add(AppDelegationPeer::TAS_UID, $newValues['TAS_UID']); + $oCriteria->add(AppDelegationPeer::USR_UID, ""); $oApplication = AppDelegationPeer::doSelectOne($oCriteria); if(!empty($oApplication)) { throw (new Exception(G::LoadTranslation('ID_CURRENT_ASSING_TYPE_WITH_CASES'))); diff --git a/workflow/engine/src/ProcessMaker/Project/Adapter/BpmnWorkflow.php b/workflow/engine/src/ProcessMaker/Project/Adapter/BpmnWorkflow.php index 6a0fb9fa8..9ac91b14f 100755 --- a/workflow/engine/src/ProcessMaker/Project/Adapter/BpmnWorkflow.php +++ b/workflow/engine/src/ProcessMaker/Project/Adapter/BpmnWorkflow.php @@ -255,7 +255,7 @@ class BpmnWorkflow extends Project\Bpmn if($activityCurrent->getActLoopType() == "PARALLEL"){ $task = \TaskPeer::retrieveByPK($actUid); - if($task->getTasAssignType() == "BALANCED"){ + if($task->getTasAssignType() == "BALANCED" || $task->getTasAssignType() == "MANUAL" || $task->getTasAssignType() == "EVALUATE" || $task->getTasAssignType() == "REPORT_TO" || $task->getTasAssignType() == "SELF_SERVICE"){ $taskData["TAS_ASSIGN_TYPE"] = "MULTIPLE_INSTANCE"; } }