diff --git a/workflow/engine/classes/model/AppEvent.php b/workflow/engine/classes/model/AppEvent.php index a88113fae..2f5b421c6 100755 --- a/workflow/engine/classes/model/AppEvent.php +++ b/workflow/engine/classes/model/AppEvent.php @@ -146,9 +146,13 @@ class AppEvent extends BaseAppEvent $aConditions[] = array (AppEventPeer::DEL_INDEX,AppDelegationPeer::DEL_INDEX ); $oCriteria->addJoinMC( $aConditions, Criteria::LEFT_JOIN ); - $oCriteria->addJoin(AppDelegationPeer::TAS_UID, TaskPeer::TAS_UID, Criteria::LEFT_JOIN); + $aConditions = array (); + $aConditions[] = array (AppDelegationPeer::TAS_UID,TaskPeer::TAS_UID); + $oCriteria->addJoinMC( $aConditions, Criteria::LEFT_JOIN ); $oCriteria->addJoin(AppEventPeer::APP_UID, ApplicationPeer::APP_UID, Criteria::LEFT_JOIN); - $oCriteria->addJoin(AppDelegationPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); + $aConditions = array (); + $aConditions[] = array (AppDelegationPeer::PRO_UID,ProcessPeer::PRO_UID); + $oCriteria->addJoinMC( $aConditions, Criteria::LEFT_JOIN ); $oCriteria->add( AppEventPeer::EVN_UID, '', Criteria::NOT_EQUAL ); if ($sProcessUid != '') { $oCriteria->add( EventPeer::PRO_UID, $sProcessUid ); diff --git a/workflow/engine/methods/cases/cases_Derivate.php b/workflow/engine/methods/cases/cases_Derivate.php index c0fe09090..5c313961b 100755 --- a/workflow/engine/methods/cases/cases_Derivate.php +++ b/workflow/engine/methods/cases/cases_Derivate.php @@ -123,7 +123,13 @@ try { $aCurrentDerivation = array ('APP_UID' => $_SESSION['APPLICATION'],'DEL_INDEX' => $_SESSION['INDEX'],'APP_STATUS' => $sStatus,'TAS_UID' => $_SESSION['TASK'],'ROU_TYPE' => $_POST['form']['ROU_TYPE'] ); - $arrayDerivationResult = $oDerivation->derivate($aCurrentDerivation, $_POST['form']['TASKS']); + $aPInformation = $oDerivation->prepareInformation( array ('USER_UID' => $_SESSION['USER_LOGGED'],'APP_UID' => $_SESSION['APPLICATION'],'DEL_INDEX' => $_SESSION['INDEX'] + ) ); + + //$_POST['form']['TASKS'] is the information after the cases_ScreenDerivation + $nextTasks = G::array_merges($aPInformation,$_POST['form']['TASKS']); + + $arrayDerivationResult = $oDerivation->derivate($aCurrentDerivation, $nextTasks); if (!empty($arrayDerivationResult)) { foreach ($_POST['form']['TASKS'] as $key => $value) {