diff --git a/workflow/engine/classes/class.case.php b/workflow/engine/classes/class.case.php index 5167403c2..238c6a64c 100755 --- a/workflow/engine/classes/class.case.php +++ b/workflow/engine/classes/class.case.php @@ -1025,6 +1025,8 @@ class Cases public function removeCase($sAppUid) { try { + $this->getExecuteTriggerProcess($sAppUid, 'DELETED'); + $oAppDelegation = new AppDelegation(); $oAppDocument = new AppDocument(); @@ -1106,6 +1108,7 @@ class Cases if ($this->appSolr != null) { $this->appSolr->deleteApplicationSearchIndex($sAppUid); } + return $result; } catch (exception $e) { throw ($e); @@ -3586,6 +3589,8 @@ class Cases if ($this->appSolr != null) { $this->appSolr->updateApplicationSearchIndex($sApplicationUID); } + + $this->getExecuteTriggerProcess($sApplicationUID, 'PAUSED'); } /* @@ -3678,6 +3683,8 @@ class Cases */ public function cancelCase($sApplicationUID, $iIndex, $user_logged) { + $this->getExecuteTriggerProcess($sApplicationUID, 'CANCELED'); + $oApplication = new Application(); $aFields = $oApplication->load($sApplicationUID); $oCriteria = new Criteria('workflow'); @@ -3856,6 +3863,8 @@ class Cases if ($this->appSolr != null) { $this->appSolr->updateApplicationSearchIndex($sApplicationUID); } + + $this->getExecuteTriggerProcess($sApplicationUID, 'REASSIGNED'); return true; } @@ -4785,7 +4794,7 @@ class Cases array_push($RESULT_OBJECTS['INPUT_DOCUMENTS'], -1); array_push($RESULT_OBJECTS['OUTPUT_DOCUMENTS'], -1); array_push($RESULT_OBJECTS['CASES_NOTES'], -1); - + return $RESULT_OBJECTS; } @@ -6146,4 +6155,31 @@ class Cases } return $response; } + + public function getExecuteTriggerProcess($appUid, $action) + { + if ((!isset($appUid) && $appUid == '') || (!isset($action) && $action == '')) { + return false; + } + + $aFields = $this->loadCase($appUid); + $proUid = $aFields['PRO_UID']; + + require_once ( "classes/model/Process.php" ); + $appProcess = new Process(); + $webBotTrigger = $appProcess->getTriggerWebBotProcess($proUid, $action); + + if ($webBotTrigger != false && $webBotTrigger != '') { + global $oPMScript; + $oPMScript = new PMScript(); + $oPMScript->setFields($aFields['APP_DATA']); + $oPMScript->setScript($webBotTrigger); + $oPMScript->execute(); + $aFields['APP_DATA'] = array_merge($aFields['APP_DATA'], $oPMScript->aFields); + $this->updateCase($aFields['APP_UID'], $aFields); + return true; + } + return false; + } } + diff --git a/workflow/engine/classes/class.xpdl.php b/workflow/engine/classes/class.xpdl.php index cfd071432..af6627252 100755 --- a/workflow/engine/classes/class.xpdl.php +++ b/workflow/engine/classes/class.xpdl.php @@ -2005,6 +2005,10 @@ class Xpdl extends processes $process['PRO_SHOW_MAP'] = 0; $process['PRO_SHOW_MESSAGE'] = 0; $process['PRO_SUBPROCESS'] = 0; + $process['PRO_TRI_DELETED'] = ''; + $process['PRO_TRI_CANCELED'] = ''; + $process['PRO_TRI_PAUSED'] = ''; + $process['PRO_TRI_REASSIGNED'] = ''; $process['PRO_SHOW_DELEGATE'] = 0; $process['PRO_SHOW_DYNAFORM'] = 0; $process['PRO_CATEGORY'] = ''; diff --git a/workflow/engine/classes/model/Process.php b/workflow/engine/classes/model/Process.php index 3dccf2d80..9ee526412 100755 --- a/workflow/engine/classes/model/Process.php +++ b/workflow/engine/classes/model/Process.php @@ -455,6 +455,10 @@ class Process extends BaseProcess { $this->setProShowMap ( $aData['PRO_SHOW_MAP'] ); $this->setProShowMessage ( $aData['PRO_SHOW_MESSAGE'] ); $this->setProSubprocess ( $aData['PRO_SUBPROCESS'] ); + $this->setProTriDeleted ( $aData['PRO_TRI_DELETED'] ); + $this->setProTriCanceled ( $aData['PRO_TRI_CANCELED'] ); + $this->setProTriPaused ( $aData['PRO_TRI_PAUSED'] ); + $this->setProTriReassigned( $aData['PRO_TRI_REASSIGNED'] ); $this->setProShowDelegate ( $aData['PRO_SHOW_DELEGATE'] ); $this->setProShowDynaform ( $aData['PRO_SHOW_DYNAFORM'] ); @@ -575,7 +579,8 @@ class Process extends BaseProcess { return 0; } - function getAllProcesses($start, $limit, $category=NULL, $processName=NULL, $counters = true, $reviewSubProcess = false) { + function getAllProcesses($start, $limit, $category=NULL, $processName=NULL, $counters = true, $reviewSubProcess = false) + { require_once PATH_RBAC . "model/RbacUsers.php"; require_once "classes/model/ProcessCategory.php"; require_once "classes/model/Users.php"; @@ -604,7 +609,7 @@ class Process extends BaseProcess { $oCriteria->add(ProcessPeer::PRO_UID, '', Criteria::NOT_EQUAL); $oCriteria->add(ProcessPeer::PRO_STATUS, 'DISABLED', Criteria::NOT_EQUAL); if ($reviewSubProcess) { - $oCriteria->add(ProcessPeer::PRO_SUBPROCESS, '1', Criteria::NOT_EQUAL); + $oCriteria->add(ProcessPeer::PRO_SUBPROCESS, '1', Criteria::NOT_EQUAL); } if( isset($category) ) @@ -773,6 +778,46 @@ class Process extends BaseProcess { return $aProc; } + function getTriggerWebBotProcess ($proUid, $action) + { + require_once ("classes/model/Triggers.php"); + + if ((!isset($proUid) && $proUid == '') || (!isset($action) && $action == '')) { + return false; + } + + $action = G::toUpper($action); + $webBotTrigger = ''; + + switch ($action) { + case 'DELETED': + $var = ProcessPeer::PRO_TRI_DELETED; + break; + case 'CANCELED': + $var = ProcessPeer::PRO_TRI_CANCELED; + break; + case 'PAUSED': + $var = ProcessPeer::PRO_TRI_PAUSED; + break; + case 'REASSIGNED': + $var = ProcessPeer::PRO_TRI_REASSIGNED; + break; + } + $oCriteria = new Criteria('workflow'); + $oCriteria->addSelectColumn($var); + $oCriteria->addSelectColumn(TriggersPeer::TRI_WEBBOT); + $oCriteria->addJoin($var, TriggersPeer::TRI_UID, Criteria::LEFT_JOIN); + $oCriteria->add(ProcessPeer::PRO_UID, $proUid); + $oDataSet = ProcessPeer::doSelectRS($oCriteria); + + $oDataSet->setFetchmode(ResultSet::FETCHMODE_ASSOC); + if ($oDataSet->next()) { + $row = $oDataSet->getRow(); + $webBotTrigger = $row['TRI_WEBBOT']; + } + return $webBotTrigger; + } + public function memcachedDelete() { //Limit defined in processmaker/workflow/engine/templates/processes/main.js diff --git a/workflow/engine/classes/model/map/ProcessMapBuilder.php b/workflow/engine/classes/model/map/ProcessMapBuilder.php index 719c5680e..7aeb41c72 100755 --- a/workflow/engine/classes/model/map/ProcessMapBuilder.php +++ b/workflow/engine/classes/model/map/ProcessMapBuilder.php @@ -87,6 +87,14 @@ class ProcessMapBuilder $tMap->addColumn('PRO_SUBPROCESS', 'ProSubprocess', 'int', CreoleTypes::TINYINT, true, null); + $tMap->addColumn('PRO_TRI_DELETED', 'ProTriDeleted', 'string', CreoleTypes::VARCHAR, true, 32); + + $tMap->addColumn('PRO_TRI_CANCELED', 'ProTriCanceled', 'string', CreoleTypes::VARCHAR, true, 32); + + $tMap->addColumn('PRO_TRI_PAUSED', 'ProTriPaused', 'string', CreoleTypes::VARCHAR, true, 32); + + $tMap->addColumn('PRO_TRI_REASSIGNED', 'ProTriReassigned', 'string', CreoleTypes::VARCHAR, true, 32); + $tMap->addColumn('PRO_SHOW_DELEGATE', 'ProShowDelegate', 'int', CreoleTypes::TINYINT, true, null); $tMap->addColumn('PRO_SHOW_DYNAFORM', 'ProShowDynaform', 'int', CreoleTypes::TINYINT, true, null); diff --git a/workflow/engine/classes/model/om/BaseProcess.php b/workflow/engine/classes/model/om/BaseProcess.php index 5bf5ef446..7d8b633dd 100755 --- a/workflow/engine/classes/model/om/BaseProcess.php +++ b/workflow/engine/classes/model/om/BaseProcess.php @@ -93,6 +93,30 @@ abstract class BaseProcess extends BaseObject implements Persistent */ protected $pro_subprocess = 0; + /** + * The value for the pro_tri_deleted field. + * @var string + */ + protected $pro_tri_deleted = ''; + + /** + * The value for the pro_tri_canceled field. + * @var string + */ + protected $pro_tri_canceled = ''; + + /** + * The value for the pro_tri_paused field. + * @var string + */ + protected $pro_tri_paused = ''; + + /** + * The value for the pro_tri_reassigned field. + * @var string + */ + protected $pro_tri_reassigned = ''; + /** * The value for the pro_show_delegate field. * @var int @@ -318,6 +342,50 @@ abstract class BaseProcess extends BaseObject implements Persistent return $this->pro_subprocess; } + /** + * Get the [pro_tri_deleted] column value. + * + * @return string + */ + public function getProTriDeleted() + { + + return $this->pro_tri_deleted; + } + + /** + * Get the [pro_tri_canceled] column value. + * + * @return string + */ + public function getProTriCanceled() + { + + return $this->pro_tri_canceled; + } + + /** + * Get the [pro_tri_paused] column value. + * + * @return string + */ + public function getProTriPaused() + { + + return $this->pro_tri_paused; + } + + /** + * Get the [pro_tri_reassigned] column value. + * + * @return string + */ + public function getProTriReassigned() + { + + return $this->pro_tri_reassigned; + } + /** * Get the [pro_show_delegate] column value. * @@ -761,6 +829,94 @@ abstract class BaseProcess extends BaseObject implements Persistent } // setProSubprocess() + /** + * Set the value of [pro_tri_deleted] column. + * + * @param string $v new value + * @return void + */ + public function setProTriDeleted($v) + { + + // Since the native PHP type for this column is string, + // we will cast the input to a string (if it is not). + if ($v !== null && !is_string($v)) { + $v = (string) $v; + } + + if ($this->pro_tri_deleted !== $v || $v === '') { + $this->pro_tri_deleted = $v; + $this->modifiedColumns[] = ProcessPeer::PRO_TRI_DELETED; + } + + } // setProTriDeleted() + + /** + * Set the value of [pro_tri_canceled] column. + * + * @param string $v new value + * @return void + */ + public function setProTriCanceled($v) + { + + // Since the native PHP type for this column is string, + // we will cast the input to a string (if it is not). + if ($v !== null && !is_string($v)) { + $v = (string) $v; + } + + if ($this->pro_tri_canceled !== $v || $v === '') { + $this->pro_tri_canceled = $v; + $this->modifiedColumns[] = ProcessPeer::PRO_TRI_CANCELED; + } + + } // setProTriCanceled() + + /** + * Set the value of [pro_tri_paused] column. + * + * @param string $v new value + * @return void + */ + public function setProTriPaused($v) + { + + // Since the native PHP type for this column is string, + // we will cast the input to a string (if it is not). + if ($v !== null && !is_string($v)) { + $v = (string) $v; + } + + if ($this->pro_tri_paused !== $v || $v === '') { + $this->pro_tri_paused = $v; + $this->modifiedColumns[] = ProcessPeer::PRO_TRI_PAUSED; + } + + } // setProTriPaused() + + /** + * Set the value of [pro_tri_reassigned] column. + * + * @param string $v new value + * @return void + */ + public function setProTriReassigned($v) + { + + // Since the native PHP type for this column is string, + // we will cast the input to a string (if it is not). + if ($v !== null && !is_string($v)) { + $v = (string) $v; + } + + if ($this->pro_tri_reassigned !== $v || $v === '') { + $this->pro_tri_reassigned = $v; + $this->modifiedColumns[] = ProcessPeer::PRO_TRI_REASSIGNED; + } + + } // setProTriReassigned() + /** * Set the value of [pro_show_delegate] column. * @@ -1136,42 +1292,50 @@ abstract class BaseProcess extends BaseObject implements Persistent $this->pro_subprocess = $rs->getInt($startcol + 10); - $this->pro_show_delegate = $rs->getInt($startcol + 11); + $this->pro_tri_deleted = $rs->getString($startcol + 11); - $this->pro_show_dynaform = $rs->getInt($startcol + 12); + $this->pro_tri_canceled = $rs->getString($startcol + 12); - $this->pro_category = $rs->getString($startcol + 13); + $this->pro_tri_paused = $rs->getString($startcol + 13); - $this->pro_sub_category = $rs->getString($startcol + 14); + $this->pro_tri_reassigned = $rs->getString($startcol + 14); - $this->pro_industry = $rs->getInt($startcol + 15); + $this->pro_show_delegate = $rs->getInt($startcol + 15); - $this->pro_update_date = $rs->getTimestamp($startcol + 16, null); + $this->pro_show_dynaform = $rs->getInt($startcol + 16); - $this->pro_create_date = $rs->getTimestamp($startcol + 17, null); + $this->pro_category = $rs->getString($startcol + 17); - $this->pro_create_user = $rs->getString($startcol + 18); + $this->pro_sub_category = $rs->getString($startcol + 18); - $this->pro_height = $rs->getInt($startcol + 19); + $this->pro_industry = $rs->getInt($startcol + 19); - $this->pro_width = $rs->getInt($startcol + 20); + $this->pro_update_date = $rs->getTimestamp($startcol + 20, null); - $this->pro_title_x = $rs->getInt($startcol + 21); + $this->pro_create_date = $rs->getTimestamp($startcol + 21, null); - $this->pro_title_y = $rs->getInt($startcol + 22); + $this->pro_create_user = $rs->getString($startcol + 22); - $this->pro_debug = $rs->getInt($startcol + 23); + $this->pro_height = $rs->getInt($startcol + 23); - $this->pro_dynaforms = $rs->getString($startcol + 24); + $this->pro_width = $rs->getInt($startcol + 24); - $this->pro_derivation_screen_tpl = $rs->getString($startcol + 25); + $this->pro_title_x = $rs->getInt($startcol + 25); + + $this->pro_title_y = $rs->getInt($startcol + 26); + + $this->pro_debug = $rs->getInt($startcol + 27); + + $this->pro_dynaforms = $rs->getString($startcol + 28); + + $this->pro_derivation_screen_tpl = $rs->getString($startcol + 29); $this->resetModified(); $this->setNew(false); // FIXME - using NUM_COLUMNS may be clearer. - return $startcol + 26; // 26 = ProcessPeer::NUM_COLUMNS - ProcessPeer::NUM_LAZY_LOAD_COLUMNS). + return $startcol + 30; // 30 = ProcessPeer::NUM_COLUMNS - ProcessPeer::NUM_LAZY_LOAD_COLUMNS). } catch (Exception $e) { throw new PropelException("Error populating Process object", $e); @@ -1409,48 +1573,60 @@ abstract class BaseProcess extends BaseObject implements Persistent return $this->getProSubprocess(); break; case 11: - return $this->getProShowDelegate(); + return $this->getProTriDeleted(); break; case 12: - return $this->getProShowDynaform(); + return $this->getProTriCanceled(); break; case 13: - return $this->getProCategory(); + return $this->getProTriPaused(); break; case 14: - return $this->getProSubCategory(); + return $this->getProTriReassigned(); break; case 15: - return $this->getProIndustry(); + return $this->getProShowDelegate(); break; case 16: - return $this->getProUpdateDate(); + return $this->getProShowDynaform(); break; case 17: - return $this->getProCreateDate(); + return $this->getProCategory(); break; case 18: - return $this->getProCreateUser(); + return $this->getProSubCategory(); break; case 19: - return $this->getProHeight(); + return $this->getProIndustry(); break; case 20: - return $this->getProWidth(); + return $this->getProUpdateDate(); break; case 21: - return $this->getProTitleX(); + return $this->getProCreateDate(); break; case 22: - return $this->getProTitleY(); + return $this->getProCreateUser(); break; case 23: - return $this->getProDebug(); + return $this->getProHeight(); break; case 24: - return $this->getProDynaforms(); + return $this->getProWidth(); break; case 25: + return $this->getProTitleX(); + break; + case 26: + return $this->getProTitleY(); + break; + case 27: + return $this->getProDebug(); + break; + case 28: + return $this->getProDynaforms(); + break; + case 29: return $this->getProDerivationScreenTpl(); break; default: @@ -1484,21 +1660,25 @@ abstract class BaseProcess extends BaseObject implements Persistent $keys[8] => $this->getProShowMap(), $keys[9] => $this->getProShowMessage(), $keys[10] => $this->getProSubprocess(), - $keys[11] => $this->getProShowDelegate(), - $keys[12] => $this->getProShowDynaform(), - $keys[13] => $this->getProCategory(), - $keys[14] => $this->getProSubCategory(), - $keys[15] => $this->getProIndustry(), - $keys[16] => $this->getProUpdateDate(), - $keys[17] => $this->getProCreateDate(), - $keys[18] => $this->getProCreateUser(), - $keys[19] => $this->getProHeight(), - $keys[20] => $this->getProWidth(), - $keys[21] => $this->getProTitleX(), - $keys[22] => $this->getProTitleY(), - $keys[23] => $this->getProDebug(), - $keys[24] => $this->getProDynaforms(), - $keys[25] => $this->getProDerivationScreenTpl(), + $keys[11] => $this->getProTriDeleted(), + $keys[12] => $this->getProTriCanceled(), + $keys[13] => $this->getProTriPaused(), + $keys[14] => $this->getProTriReassigned(), + $keys[15] => $this->getProShowDelegate(), + $keys[16] => $this->getProShowDynaform(), + $keys[17] => $this->getProCategory(), + $keys[18] => $this->getProSubCategory(), + $keys[19] => $this->getProIndustry(), + $keys[20] => $this->getProUpdateDate(), + $keys[21] => $this->getProCreateDate(), + $keys[22] => $this->getProCreateUser(), + $keys[23] => $this->getProHeight(), + $keys[24] => $this->getProWidth(), + $keys[25] => $this->getProTitleX(), + $keys[26] => $this->getProTitleY(), + $keys[27] => $this->getProDebug(), + $keys[28] => $this->getProDynaforms(), + $keys[29] => $this->getProDerivationScreenTpl(), ); return $result; } @@ -1564,48 +1744,60 @@ abstract class BaseProcess extends BaseObject implements Persistent $this->setProSubprocess($value); break; case 11: - $this->setProShowDelegate($value); + $this->setProTriDeleted($value); break; case 12: - $this->setProShowDynaform($value); + $this->setProTriCanceled($value); break; case 13: - $this->setProCategory($value); + $this->setProTriPaused($value); break; case 14: - $this->setProSubCategory($value); + $this->setProTriReassigned($value); break; case 15: - $this->setProIndustry($value); + $this->setProShowDelegate($value); break; case 16: - $this->setProUpdateDate($value); + $this->setProShowDynaform($value); break; case 17: - $this->setProCreateDate($value); + $this->setProCategory($value); break; case 18: - $this->setProCreateUser($value); + $this->setProSubCategory($value); break; case 19: - $this->setProHeight($value); + $this->setProIndustry($value); break; case 20: - $this->setProWidth($value); + $this->setProUpdateDate($value); break; case 21: - $this->setProTitleX($value); + $this->setProCreateDate($value); break; case 22: - $this->setProTitleY($value); + $this->setProCreateUser($value); break; case 23: - $this->setProDebug($value); + $this->setProHeight($value); break; case 24: - $this->setProDynaforms($value); + $this->setProWidth($value); break; case 25: + $this->setProTitleX($value); + break; + case 26: + $this->setProTitleY($value); + break; + case 27: + $this->setProDebug($value); + break; + case 28: + $this->setProDynaforms($value); + break; + case 29: $this->setProDerivationScreenTpl($value); break; } // switch() @@ -1676,63 +1868,79 @@ abstract class BaseProcess extends BaseObject implements Persistent } if (array_key_exists($keys[11], $arr)) { - $this->setProShowDelegate($arr[$keys[11]]); + $this->setProTriDeleted($arr[$keys[11]]); } if (array_key_exists($keys[12], $arr)) { - $this->setProShowDynaform($arr[$keys[12]]); + $this->setProTriCanceled($arr[$keys[12]]); } if (array_key_exists($keys[13], $arr)) { - $this->setProCategory($arr[$keys[13]]); + $this->setProTriPaused($arr[$keys[13]]); } if (array_key_exists($keys[14], $arr)) { - $this->setProSubCategory($arr[$keys[14]]); + $this->setProTriReassigned($arr[$keys[14]]); } if (array_key_exists($keys[15], $arr)) { - $this->setProIndustry($arr[$keys[15]]); + $this->setProShowDelegate($arr[$keys[15]]); } if (array_key_exists($keys[16], $arr)) { - $this->setProUpdateDate($arr[$keys[16]]); + $this->setProShowDynaform($arr[$keys[16]]); } if (array_key_exists($keys[17], $arr)) { - $this->setProCreateDate($arr[$keys[17]]); + $this->setProCategory($arr[$keys[17]]); } if (array_key_exists($keys[18], $arr)) { - $this->setProCreateUser($arr[$keys[18]]); + $this->setProSubCategory($arr[$keys[18]]); } if (array_key_exists($keys[19], $arr)) { - $this->setProHeight($arr[$keys[19]]); + $this->setProIndustry($arr[$keys[19]]); } if (array_key_exists($keys[20], $arr)) { - $this->setProWidth($arr[$keys[20]]); + $this->setProUpdateDate($arr[$keys[20]]); } if (array_key_exists($keys[21], $arr)) { - $this->setProTitleX($arr[$keys[21]]); + $this->setProCreateDate($arr[$keys[21]]); } if (array_key_exists($keys[22], $arr)) { - $this->setProTitleY($arr[$keys[22]]); + $this->setProCreateUser($arr[$keys[22]]); } if (array_key_exists($keys[23], $arr)) { - $this->setProDebug($arr[$keys[23]]); + $this->setProHeight($arr[$keys[23]]); } if (array_key_exists($keys[24], $arr)) { - $this->setProDynaforms($arr[$keys[24]]); + $this->setProWidth($arr[$keys[24]]); } if (array_key_exists($keys[25], $arr)) { - $this->setProDerivationScreenTpl($arr[$keys[25]]); + $this->setProTitleX($arr[$keys[25]]); + } + + if (array_key_exists($keys[26], $arr)) { + $this->setProTitleY($arr[$keys[26]]); + } + + if (array_key_exists($keys[27], $arr)) { + $this->setProDebug($arr[$keys[27]]); + } + + if (array_key_exists($keys[28], $arr)) { + $this->setProDynaforms($arr[$keys[28]]); + } + + if (array_key_exists($keys[29], $arr)) { + $this->setProDerivationScreenTpl($arr[$keys[29]]); } } @@ -1790,6 +1998,22 @@ abstract class BaseProcess extends BaseObject implements Persistent $criteria->add(ProcessPeer::PRO_SUBPROCESS, $this->pro_subprocess); } + if ($this->isColumnModified(ProcessPeer::PRO_TRI_DELETED)) { + $criteria->add(ProcessPeer::PRO_TRI_DELETED, $this->pro_tri_deleted); + } + + if ($this->isColumnModified(ProcessPeer::PRO_TRI_CANCELED)) { + $criteria->add(ProcessPeer::PRO_TRI_CANCELED, $this->pro_tri_canceled); + } + + if ($this->isColumnModified(ProcessPeer::PRO_TRI_PAUSED)) { + $criteria->add(ProcessPeer::PRO_TRI_PAUSED, $this->pro_tri_paused); + } + + if ($this->isColumnModified(ProcessPeer::PRO_TRI_REASSIGNED)) { + $criteria->add(ProcessPeer::PRO_TRI_REASSIGNED, $this->pro_tri_reassigned); + } + if ($this->isColumnModified(ProcessPeer::PRO_SHOW_DELEGATE)) { $criteria->add(ProcessPeer::PRO_SHOW_DELEGATE, $this->pro_show_delegate); } @@ -1924,6 +2148,14 @@ abstract class BaseProcess extends BaseObject implements Persistent $copyObj->setProSubprocess($this->pro_subprocess); + $copyObj->setProTriDeleted($this->pro_tri_deleted); + + $copyObj->setProTriCanceled($this->pro_tri_canceled); + + $copyObj->setProTriPaused($this->pro_tri_paused); + + $copyObj->setProTriReassigned($this->pro_tri_reassigned); + $copyObj->setProShowDelegate($this->pro_show_delegate); $copyObj->setProShowDynaform($this->pro_show_dynaform); diff --git a/workflow/engine/classes/model/om/BaseProcessPeer.php b/workflow/engine/classes/model/om/BaseProcessPeer.php index 72c142895..53666a793 100755 --- a/workflow/engine/classes/model/om/BaseProcessPeer.php +++ b/workflow/engine/classes/model/om/BaseProcessPeer.php @@ -25,7 +25,7 @@ abstract class BaseProcessPeer const CLASS_DEFAULT = 'classes.model.Process'; /** The total number of columns. */ - const NUM_COLUMNS = 26; + const NUM_COLUMNS = 30; /** The number of lazy-loaded columns. */ const NUM_LAZY_LOAD_COLUMNS = 0; @@ -64,6 +64,18 @@ abstract class BaseProcessPeer /** the column name for the PRO_SUBPROCESS field */ const PRO_SUBPROCESS = 'PROCESS.PRO_SUBPROCESS'; + /** the column name for the PRO_TRI_DELETED field */ + const PRO_TRI_DELETED = 'PROCESS.PRO_TRI_DELETED'; + + /** the column name for the PRO_TRI_CANCELED field */ + const PRO_TRI_CANCELED = 'PROCESS.PRO_TRI_CANCELED'; + + /** the column name for the PRO_TRI_PAUSED field */ + const PRO_TRI_PAUSED = 'PROCESS.PRO_TRI_PAUSED'; + + /** the column name for the PRO_TRI_REASSIGNED field */ + const PRO_TRI_REASSIGNED = 'PROCESS.PRO_TRI_REASSIGNED'; + /** the column name for the PRO_SHOW_DELEGATE field */ const PRO_SHOW_DELEGATE = 'PROCESS.PRO_SHOW_DELEGATE'; @@ -120,10 +132,10 @@ abstract class BaseProcessPeer * e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id' */ private static $fieldNames = array ( - BasePeer::TYPE_PHPNAME => array ('ProUid', 'ProParent', 'ProTime', 'ProTimeunit', 'ProStatus', 'ProTypeDay', 'ProType', 'ProAssignment', 'ProShowMap', 'ProShowMessage', 'ProSubprocess', 'ProShowDelegate', 'ProShowDynaform', 'ProCategory', 'ProSubCategory', 'ProIndustry', 'ProUpdateDate', 'ProCreateDate', 'ProCreateUser', 'ProHeight', 'ProWidth', 'ProTitleX', 'ProTitleY', 'ProDebug', 'ProDynaforms', 'ProDerivationScreenTpl', ), - BasePeer::TYPE_COLNAME => array (ProcessPeer::PRO_UID, ProcessPeer::PRO_PARENT, ProcessPeer::PRO_TIME, ProcessPeer::PRO_TIMEUNIT, ProcessPeer::PRO_STATUS, ProcessPeer::PRO_TYPE_DAY, ProcessPeer::PRO_TYPE, ProcessPeer::PRO_ASSIGNMENT, ProcessPeer::PRO_SHOW_MAP, ProcessPeer::PRO_SHOW_MESSAGE, ProcessPeer::PRO_SUBPROCESS, ProcessPeer::PRO_SHOW_DELEGATE, ProcessPeer::PRO_SHOW_DYNAFORM, ProcessPeer::PRO_CATEGORY, ProcessPeer::PRO_SUB_CATEGORY, ProcessPeer::PRO_INDUSTRY, ProcessPeer::PRO_UPDATE_DATE, ProcessPeer::PRO_CREATE_DATE, ProcessPeer::PRO_CREATE_USER, ProcessPeer::PRO_HEIGHT, ProcessPeer::PRO_WIDTH, ProcessPeer::PRO_TITLE_X, ProcessPeer::PRO_TITLE_Y, ProcessPeer::PRO_DEBUG, ProcessPeer::PRO_DYNAFORMS, ProcessPeer::PRO_DERIVATION_SCREEN_TPL, ), - BasePeer::TYPE_FIELDNAME => array ('PRO_UID', 'PRO_PARENT', 'PRO_TIME', 'PRO_TIMEUNIT', 'PRO_STATUS', 'PRO_TYPE_DAY', 'PRO_TYPE', 'PRO_ASSIGNMENT', 'PRO_SHOW_MAP', 'PRO_SHOW_MESSAGE', 'PRO_SUBPROCESS', 'PRO_SHOW_DELEGATE', 'PRO_SHOW_DYNAFORM', 'PRO_CATEGORY', 'PRO_SUB_CATEGORY', 'PRO_INDUSTRY', 'PRO_UPDATE_DATE', 'PRO_CREATE_DATE', 'PRO_CREATE_USER', 'PRO_HEIGHT', 'PRO_WIDTH', 'PRO_TITLE_X', 'PRO_TITLE_Y', 'PRO_DEBUG', 'PRO_DYNAFORMS', 'PRO_DERIVATION_SCREEN_TPL', ), - BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, ) + BasePeer::TYPE_PHPNAME => array ('ProUid', 'ProParent', 'ProTime', 'ProTimeunit', 'ProStatus', 'ProTypeDay', 'ProType', 'ProAssignment', 'ProShowMap', 'ProShowMessage', 'ProSubprocess', 'ProTriDeleted', 'ProTriCanceled', 'ProTriPaused', 'ProTriReassigned', 'ProShowDelegate', 'ProShowDynaform', 'ProCategory', 'ProSubCategory', 'ProIndustry', 'ProUpdateDate', 'ProCreateDate', 'ProCreateUser', 'ProHeight', 'ProWidth', 'ProTitleX', 'ProTitleY', 'ProDebug', 'ProDynaforms', 'ProDerivationScreenTpl', ), + BasePeer::TYPE_COLNAME => array (ProcessPeer::PRO_UID, ProcessPeer::PRO_PARENT, ProcessPeer::PRO_TIME, ProcessPeer::PRO_TIMEUNIT, ProcessPeer::PRO_STATUS, ProcessPeer::PRO_TYPE_DAY, ProcessPeer::PRO_TYPE, ProcessPeer::PRO_ASSIGNMENT, ProcessPeer::PRO_SHOW_MAP, ProcessPeer::PRO_SHOW_MESSAGE, ProcessPeer::PRO_SUBPROCESS, ProcessPeer::PRO_TRI_DELETED, ProcessPeer::PRO_TRI_CANCELED, ProcessPeer::PRO_TRI_PAUSED, ProcessPeer::PRO_TRI_REASSIGNED, ProcessPeer::PRO_SHOW_DELEGATE, ProcessPeer::PRO_SHOW_DYNAFORM, ProcessPeer::PRO_CATEGORY, ProcessPeer::PRO_SUB_CATEGORY, ProcessPeer::PRO_INDUSTRY, ProcessPeer::PRO_UPDATE_DATE, ProcessPeer::PRO_CREATE_DATE, ProcessPeer::PRO_CREATE_USER, ProcessPeer::PRO_HEIGHT, ProcessPeer::PRO_WIDTH, ProcessPeer::PRO_TITLE_X, ProcessPeer::PRO_TITLE_Y, ProcessPeer::PRO_DEBUG, ProcessPeer::PRO_DYNAFORMS, ProcessPeer::PRO_DERIVATION_SCREEN_TPL, ), + BasePeer::TYPE_FIELDNAME => array ('PRO_UID', 'PRO_PARENT', 'PRO_TIME', 'PRO_TIMEUNIT', 'PRO_STATUS', 'PRO_TYPE_DAY', 'PRO_TYPE', 'PRO_ASSIGNMENT', 'PRO_SHOW_MAP', 'PRO_SHOW_MESSAGE', 'PRO_SUBPROCESS', 'PRO_TRI_DELETED', 'PRO_TRI_CANCELED', 'PRO_TRI_PAUSED', 'PRO_TRI_REASSIGNED', 'PRO_SHOW_DELEGATE', 'PRO_SHOW_DYNAFORM', 'PRO_CATEGORY', 'PRO_SUB_CATEGORY', 'PRO_INDUSTRY', 'PRO_UPDATE_DATE', 'PRO_CREATE_DATE', 'PRO_CREATE_USER', 'PRO_HEIGHT', 'PRO_WIDTH', 'PRO_TITLE_X', 'PRO_TITLE_Y', 'PRO_DEBUG', 'PRO_DYNAFORMS', 'PRO_DERIVATION_SCREEN_TPL', ), + BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, ) ); /** @@ -133,10 +145,10 @@ abstract class BaseProcessPeer * e.g. self::$fieldNames[BasePeer::TYPE_PHPNAME]['Id'] = 0 */ private static $fieldKeys = array ( - BasePeer::TYPE_PHPNAME => array ('ProUid' => 0, 'ProParent' => 1, 'ProTime' => 2, 'ProTimeunit' => 3, 'ProStatus' => 4, 'ProTypeDay' => 5, 'ProType' => 6, 'ProAssignment' => 7, 'ProShowMap' => 8, 'ProShowMessage' => 9, 'ProSubprocess' => 10, 'ProShowDelegate' => 11, 'ProShowDynaform' => 12, 'ProCategory' => 13, 'ProSubCategory' => 14, 'ProIndustry' => 15, 'ProUpdateDate' => 16, 'ProCreateDate' => 17, 'ProCreateUser' => 18, 'ProHeight' => 19, 'ProWidth' => 20, 'ProTitleX' => 21, 'ProTitleY' => 22, 'ProDebug' => 23, 'ProDynaforms' => 24, 'ProDerivationScreenTpl' => 25, ), - BasePeer::TYPE_COLNAME => array (ProcessPeer::PRO_UID => 0, ProcessPeer::PRO_PARENT => 1, ProcessPeer::PRO_TIME => 2, ProcessPeer::PRO_TIMEUNIT => 3, ProcessPeer::PRO_STATUS => 4, ProcessPeer::PRO_TYPE_DAY => 5, ProcessPeer::PRO_TYPE => 6, ProcessPeer::PRO_ASSIGNMENT => 7, ProcessPeer::PRO_SHOW_MAP => 8, ProcessPeer::PRO_SHOW_MESSAGE => 9, ProcessPeer::PRO_SUBPROCESS => 10, ProcessPeer::PRO_SHOW_DELEGATE => 11, ProcessPeer::PRO_SHOW_DYNAFORM => 12, ProcessPeer::PRO_CATEGORY => 13, ProcessPeer::PRO_SUB_CATEGORY => 14, ProcessPeer::PRO_INDUSTRY => 15, ProcessPeer::PRO_UPDATE_DATE => 16, ProcessPeer::PRO_CREATE_DATE => 17, ProcessPeer::PRO_CREATE_USER => 18, ProcessPeer::PRO_HEIGHT => 19, ProcessPeer::PRO_WIDTH => 20, ProcessPeer::PRO_TITLE_X => 21, ProcessPeer::PRO_TITLE_Y => 22, ProcessPeer::PRO_DEBUG => 23, ProcessPeer::PRO_DYNAFORMS => 24, ProcessPeer::PRO_DERIVATION_SCREEN_TPL => 25, ), - BasePeer::TYPE_FIELDNAME => array ('PRO_UID' => 0, 'PRO_PARENT' => 1, 'PRO_TIME' => 2, 'PRO_TIMEUNIT' => 3, 'PRO_STATUS' => 4, 'PRO_TYPE_DAY' => 5, 'PRO_TYPE' => 6, 'PRO_ASSIGNMENT' => 7, 'PRO_SHOW_MAP' => 8, 'PRO_SHOW_MESSAGE' => 9, 'PRO_SUBPROCESS' => 10, 'PRO_SHOW_DELEGATE' => 11, 'PRO_SHOW_DYNAFORM' => 12, 'PRO_CATEGORY' => 13, 'PRO_SUB_CATEGORY' => 14, 'PRO_INDUSTRY' => 15, 'PRO_UPDATE_DATE' => 16, 'PRO_CREATE_DATE' => 17, 'PRO_CREATE_USER' => 18, 'PRO_HEIGHT' => 19, 'PRO_WIDTH' => 20, 'PRO_TITLE_X' => 21, 'PRO_TITLE_Y' => 22, 'PRO_DEBUG' => 23, 'PRO_DYNAFORMS' => 24, 'PRO_DERIVATION_SCREEN_TPL' => 25, ), - BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, ) + BasePeer::TYPE_PHPNAME => array ('ProUid' => 0, 'ProParent' => 1, 'ProTime' => 2, 'ProTimeunit' => 3, 'ProStatus' => 4, 'ProTypeDay' => 5, 'ProType' => 6, 'ProAssignment' => 7, 'ProShowMap' => 8, 'ProShowMessage' => 9, 'ProSubprocess' => 10, 'ProTriDeleted' => 11, 'ProTriCanceled' => 12, 'ProTriPaused' => 13, 'ProTriReassigned' => 14, 'ProShowDelegate' => 15, 'ProShowDynaform' => 16, 'ProCategory' => 17, 'ProSubCategory' => 18, 'ProIndustry' => 19, 'ProUpdateDate' => 20, 'ProCreateDate' => 21, 'ProCreateUser' => 22, 'ProHeight' => 23, 'ProWidth' => 24, 'ProTitleX' => 25, 'ProTitleY' => 26, 'ProDebug' => 27, 'ProDynaforms' => 28, 'ProDerivationScreenTpl' => 29, ), + BasePeer::TYPE_COLNAME => array (ProcessPeer::PRO_UID => 0, ProcessPeer::PRO_PARENT => 1, ProcessPeer::PRO_TIME => 2, ProcessPeer::PRO_TIMEUNIT => 3, ProcessPeer::PRO_STATUS => 4, ProcessPeer::PRO_TYPE_DAY => 5, ProcessPeer::PRO_TYPE => 6, ProcessPeer::PRO_ASSIGNMENT => 7, ProcessPeer::PRO_SHOW_MAP => 8, ProcessPeer::PRO_SHOW_MESSAGE => 9, ProcessPeer::PRO_SUBPROCESS => 10, ProcessPeer::PRO_TRI_DELETED => 11, ProcessPeer::PRO_TRI_CANCELED => 12, ProcessPeer::PRO_TRI_PAUSED => 13, ProcessPeer::PRO_TRI_REASSIGNED => 14, ProcessPeer::PRO_SHOW_DELEGATE => 15, ProcessPeer::PRO_SHOW_DYNAFORM => 16, ProcessPeer::PRO_CATEGORY => 17, ProcessPeer::PRO_SUB_CATEGORY => 18, ProcessPeer::PRO_INDUSTRY => 19, ProcessPeer::PRO_UPDATE_DATE => 20, ProcessPeer::PRO_CREATE_DATE => 21, ProcessPeer::PRO_CREATE_USER => 22, ProcessPeer::PRO_HEIGHT => 23, ProcessPeer::PRO_WIDTH => 24, ProcessPeer::PRO_TITLE_X => 25, ProcessPeer::PRO_TITLE_Y => 26, ProcessPeer::PRO_DEBUG => 27, ProcessPeer::PRO_DYNAFORMS => 28, ProcessPeer::PRO_DERIVATION_SCREEN_TPL => 29, ), + BasePeer::TYPE_FIELDNAME => array ('PRO_UID' => 0, 'PRO_PARENT' => 1, 'PRO_TIME' => 2, 'PRO_TIMEUNIT' => 3, 'PRO_STATUS' => 4, 'PRO_TYPE_DAY' => 5, 'PRO_TYPE' => 6, 'PRO_ASSIGNMENT' => 7, 'PRO_SHOW_MAP' => 8, 'PRO_SHOW_MESSAGE' => 9, 'PRO_SUBPROCESS' => 10, 'PRO_TRI_DELETED' => 11, 'PRO_TRI_CANCELED' => 12, 'PRO_TRI_PAUSED' => 13, 'PRO_TRI_REASSIGNED' => 14, 'PRO_SHOW_DELEGATE' => 15, 'PRO_SHOW_DYNAFORM' => 16, 'PRO_CATEGORY' => 17, 'PRO_SUB_CATEGORY' => 18, 'PRO_INDUSTRY' => 19, 'PRO_UPDATE_DATE' => 20, 'PRO_CREATE_DATE' => 21, 'PRO_CREATE_USER' => 22, 'PRO_HEIGHT' => 23, 'PRO_WIDTH' => 24, 'PRO_TITLE_X' => 25, 'PRO_TITLE_Y' => 26, 'PRO_DEBUG' => 27, 'PRO_DYNAFORMS' => 28, 'PRO_DERIVATION_SCREEN_TPL' => 29, ), + BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, ) ); /** @@ -259,6 +271,14 @@ abstract class BaseProcessPeer $criteria->addSelectColumn(ProcessPeer::PRO_SUBPROCESS); + $criteria->addSelectColumn(ProcessPeer::PRO_TRI_DELETED); + + $criteria->addSelectColumn(ProcessPeer::PRO_TRI_CANCELED); + + $criteria->addSelectColumn(ProcessPeer::PRO_TRI_PAUSED); + + $criteria->addSelectColumn(ProcessPeer::PRO_TRI_REASSIGNED); + $criteria->addSelectColumn(ProcessPeer::PRO_SHOW_DELEGATE); $criteria->addSelectColumn(ProcessPeer::PRO_SHOW_DYNAFORM); diff --git a/workflow/engine/config/rest-config.ini.dist b/workflow/engine/config/rest-config.ini.dist index 5c4060806..f89ed23a0 100644 --- a/workflow/engine/config/rest-config.ini.dist +++ b/workflow/engine/config/rest-config.ini.dist @@ -185,8 +185,8 @@ enable_service = true [TABLE:PROCESS] ALLOW_METHODS = GET EXPOSE_COLUMNS_GET = * - EXPOSE_COLUMNS_POST = PRO_UID PRO_PARENT PRO_TIME PRO_TIMEUNIT PRO_STATUS PRO_TYPE_DAY PRO_TYPE PRO_ASSIGNMENT PRO_SHOW_MAP PRO_SHOW_MESSAGE PRO_SUBPROCESS PRO_SHOW_DELEGATE PRO_SHOW_DYNAFORM PRO_CATEGORY PRO_SUB_CATEGORY PRO_INDUSTRY PRO_UPDATE_DATE PRO_CREATE_DATE PRO_CREATE_USER PRO_HEIGHT PRO_WIDTH PRO_TITLE_X PRO_TITLE_Y PRO_DEBUG PRO_DYNAFORMS PRO_DERIVATION_SCREEN_TPL - EXPOSE_COLUMNS_PUT = PRO_UID PRO_PARENT PRO_TIME PRO_TIMEUNIT PRO_STATUS PRO_TYPE_DAY PRO_TYPE PRO_ASSIGNMENT PRO_SHOW_MAP PRO_SHOW_MESSAGE PRO_SUBPROCESS PRO_SHOW_DELEGATE PRO_SHOW_DYNAFORM PRO_CATEGORY PRO_SUB_CATEGORY PRO_INDUSTRY PRO_UPDATE_DATE PRO_CREATE_DATE PRO_CREATE_USER PRO_HEIGHT PRO_WIDTH PRO_TITLE_X PRO_TITLE_Y PRO_DEBUG PRO_DYNAFORMS PRO_DERIVATION_SCREEN_TPL + EXPOSE_COLUMNS_POST = PRO_UID PRO_PARENT PRO_TIME PRO_TIMEUNIT PRO_STATUS PRO_TYPE_DAY PRO_TYPE PRO_ASSIGNMENT PRO_SHOW_MAP PRO_SHOW_MESSAGE PRO_SUBPROCESS PRO_TRI_DELETED PRO_TRI_CANCELED PRO_TRI_PAUSED PRO_TRI_REASSIGNED PRO_SHOW_DELEGATE PRO_SHOW_DYNAFORM PRO_CATEGORY PRO_SUB_CATEGORY PRO_INDUSTRY PRO_UPDATE_DATE PRO_CREATE_DATE PRO_CREATE_USER PRO_HEIGHT PRO_WIDTH PRO_TITLE_X PRO_TITLE_Y PRO_DEBUG PRO_DYNAFORMS PRO_DERIVATION_SCREEN_TPL + EXPOSE_COLUMNS_PUT = PRO_UID PRO_PARENT PRO_TIME PRO_TIMEUNIT PRO_STATUS PRO_TYPE_DAY PRO_TYPE PRO_ASSIGNMENT PRO_SHOW_MAP PRO_SHOW_MESSAGE PRO_SUBPROCESS PRO_TRI_DELETED PRO_TRI_CANCELED PRO_TRI_PAUSED PRO_TRI_REASSIGNED PRO_SHOW_DELEGATE PRO_SHOW_DYNAFORM PRO_CATEGORY PRO_SUB_CATEGORY PRO_INDUSTRY PRO_UPDATE_DATE PRO_CREATE_DATE PRO_CREATE_USER PRO_HEIGHT PRO_WIDTH PRO_TITLE_X PRO_TITLE_Y PRO_DEBUG PRO_DYNAFORMS PRO_DERIVATION_SCREEN_TPL ;Table 'PROCESS_OWNER' with 2 columns. [TABLE:PROCESS_OWNER] diff --git a/workflow/engine/config/schema.xml b/workflow/engine/config/schema.xml index 1e3055e77..f6e7222c5 100755 --- a/workflow/engine/config/schema.xml +++ b/workflow/engine/config/schema.xml @@ -796,6 +796,10 @@ + + + + diff --git a/workflow/engine/data/mssql/schema.sql b/workflow/engine/data/mssql/schema.sql index ce8858199..1d96a5d99 100755 --- a/workflow/engine/data/mssql/schema.sql +++ b/workflow/engine/data/mssql/schema.sql @@ -890,6 +890,10 @@ CREATE TABLE [PROCESS] [PRO_SHOW_MAP] TINYINT default 1 NOT NULL, [PRO_SHOW_MESSAGE] TINYINT default 1 NOT NULL, [PRO_SUBPROCESS] TINYINT default 0 NOT NULL, + [PRO_TRI_DELETED] VARCHAR(32) default '' NOT NULL, + [PRO_TRI_CANCELED] VARCHAR(32) default '' NOT NULL, + [PRO_TRI_PAUSED] VARCHAR(32) default '' NOT NULL, + [PRO_TRI_REASSIGNED] VARCHAR(32) default '' NOT NULL, [PRO_SHOW_DELEGATE] TINYINT default 1 NOT NULL, [PRO_SHOW_DYNAFORM] TINYINT default 0 NOT NULL, [PRO_CATEGORY] VARCHAR(48) default '' NOT NULL, diff --git a/workflow/engine/data/mysql/schema.sql b/workflow/engine/data/mysql/schema.sql index 721a40f1e..18e5bff45 100755 --- a/workflow/engine/data/mysql/schema.sql +++ b/workflow/engine/data/mysql/schema.sql @@ -390,6 +390,10 @@ CREATE TABLE `PROCESS` `PRO_SHOW_MAP` TINYINT default 1 NOT NULL, `PRO_SHOW_MESSAGE` TINYINT default 1 NOT NULL, `PRO_SUBPROCESS` TINYINT default 0 NOT NULL, + `PRO_TRI_DELETED` VARCHAR(32) default '' NOT NULL, + `PRO_TRI_CANCELED` VARCHAR(32) default '' NOT NULL, + `PRO_TRI_PAUSED` VARCHAR(32) default '' NOT NULL, + `PRO_TRI_REASSIGNED` VARCHAR(32) default '' NOT NULL, `PRO_SHOW_DELEGATE` TINYINT default 1 NOT NULL, `PRO_SHOW_DYNAFORM` TINYINT default 0 NOT NULL, `PRO_CATEGORY` VARCHAR(48) default '' NOT NULL, diff --git a/workflow/engine/data/oracle/schema.sql b/workflow/engine/data/oracle/schema.sql index 463170c46..1a6bf4140 100755 --- a/workflow/engine/data/oracle/schema.sql +++ b/workflow/engine/data/oracle/schema.sql @@ -489,6 +489,10 @@ CREATE TABLE "PROCESS" "PRO_SHOW_MAP" NUMBER(3,0) default 1 NOT NULL, "PRO_SHOW_MESSAGE" NUMBER(3,0) default 1 NOT NULL, "PRO_SUBPROCESS" NUMBER(3,0) default 0 NOT NULL, + "PRO_TRI_DELETED" VARCHAR(32) default '' NOT NULL, + "PRO_TRI_CANCELED" VARCHAR(32) default '' NOT NULL, + "PRO_TRI_PAUSED" VARCHAR(32) default '' NOT NULL, + "PRO_TRI_REASSIGNED" VARCHAR(32) default '' NOT NULL, "PRO_SHOW_DELEGATE" NUMBER(3,0) default 1 NOT NULL, "PRO_SHOW_DYNAFORM" NUMBER(3,0) default 0 NOT NULL, "PRO_CATEGORY" VARCHAR2(48) default '' NOT NULL, diff --git a/workflow/engine/methods/cases/cases_Scheduler_List.php b/workflow/engine/methods/cases/cases_Scheduler_List.php index ce37d09bb..66011c9be 100755 --- a/workflow/engine/methods/cases/cases_Scheduler_List.php +++ b/workflow/engine/methods/cases/cases_Scheduler_List.php @@ -87,6 +87,10 @@ $fieldNames = Array( 'PRO_SHOW_MAP' => 'char', 'PRO_SHOW_MESSAGE' => 'char', 'PRO_SUBPROCESS' => 'char', + 'PRO_TRI_DELETED' => 'char', + 'PRO_TRI_CANCELED' => 'char', + 'PRO_TRI_PAUSED' => 'char', + 'PRO_TRI_REASSIGNED' => 'char', 'PRO_SHOW_DELEGATE' => 'char', 'PRO_SHOW_DYNAFORM' => 'char', 'PRO_CATEGORY' => 'char', diff --git a/workflow/engine/services/rest/crud/Process.php b/workflow/engine/services/rest/crud/Process.php index f05d6a864..2e10b50c0 100644 --- a/workflow/engine/services/rest/crud/Process.php +++ b/workflow/engine/services/rest/crud/Process.php @@ -36,6 +36,10 @@ class Services_Rest_Process $criteria->addSelectColumn(ProcessPeer::PRO_SHOW_MAP); $criteria->addSelectColumn(ProcessPeer::PRO_SHOW_MESSAGE); $criteria->addSelectColumn(ProcessPeer::PRO_SUBPROCESS); + $criteria->addSelectColumn(ProcessPeer::PRO_TRI_DELETED); + $criteria->addSelectColumn(ProcessPeer::PRO_TRI_CANCELED); + $criteria->addSelectColumn(ProcessPeer::PRO_TRI_PAUSED); + $criteria->addSelectColumn(ProcessPeer::PRO_TRI_REASSIGNED); $criteria->addSelectColumn(ProcessPeer::PRO_SHOW_DELEGATE); $criteria->addSelectColumn(ProcessPeer::PRO_SHOW_DYNAFORM); $criteria->addSelectColumn(ProcessPeer::PRO_CATEGORY); diff --git a/workflow/engine/xmlform/processes/processes_Edit.html b/workflow/engine/xmlform/processes/processes_Edit.html index 80968dd8b..95cc29da2 100755 --- a/workflow/engine/xmlform/processes/processes_Edit.html +++ b/workflow/engine/xmlform/processes/processes_Edit.html @@ -58,6 +58,23 @@ {$PRO_SUBPROCESS} {$form.PRO_SUBPROCESS} + + + {$PRO_TRI_DELETED} + {$form.PRO_TRI_DELETED} + + + {$PRO_TRI_CANCELED} + {$form.PRO_TRI_CANCELED} + + + {$PRO_TRI_PAUSED} + {$form.PRO_TRI_PAUSED} + + + {$PRO_TRI_REASSIGNED} + {$form.PRO_TRI_REASSIGNED} +
{$form.SUBMIT}   {$form.BTN_CANCEL} diff --git a/workflow/engine/xmlform/processes/processes_Edit.xml b/workflow/engine/xmlform/processes/processes_Edit.xml index ff81ff656..bbca3ccf8 100755 --- a/workflow/engine/xmlform/processes/processes_Edit.xml +++ b/workflow/engine/xmlform/processes/processes_Edit.xml @@ -16,13 +16,13 @@ -SELECT - PRO_UID -FROM - PROCESS - INNER JOIN CONTENT ON (CONTENT.CON_ID = PROCESS.PRO_UID) -WHERE - CON_LANG = @@SYS_LANG AND +SELECT + PRO_UID +FROM + PROCESS + INNER JOIN CONTENT ON (CONTENT.CON_ID = PROCESS.PRO_UID) +WHERE + CON_LANG = @@SYS_LANG AND CON_VALUE = TRIM(@@PRO_TITLE) Title @@ -72,6 +72,34 @@ WHERE This a sub process + + +Execute a trigger when a case is deleted + + + + + + +Execute a trigger when a case is cancelled + + + + + + +Execute a trigger when a case is paused + + + + + + +Execute a trigger when a case is reassigned + + + + Cancel @@ -100,7 +128,7 @@ var verifyProcessInformation = function(oForm) { } var regExp = /^(?!^(PRN|AUX|CLOCK\$|NUL|CON|COM\d|LPT\d|\..*)(\..+)?$)[^\x00-\x1f\\?*:\";|/]+$/; - + if (oAux.value.search(regExp)==-1) { alert('@G::LoadTranslation(ID_INVALID_PROCESS_NAME)'); oAux.focus(); @@ -115,14 +143,14 @@ var verifyProcessInformation = function(oForm) { } else { var nProcess = new input(getField('PRO_TITLE')); nProcess.focus(); - } + } }; leimnud.event.add(getField('PRO_TITLE'), 'change', function() { var nProcess = new input(getField('PRO_TITLE')); getField('PRO_TITLE').value = getField('PRO_TITLE').value.replace(/^\s*|\s*$/g,""); - if ( (getField('PRO_VALIDATE_TITLE').value == '') || + if ( (getField('PRO_VALIDATE_TITLE').value == '') || (getField('PRO_VALIDATE_TITLE').value == getField('PRO_UID').value) ) { validateNameProcess = true;