diff --git a/workflow/engine/classes/class.case.php b/workflow/engine/classes/class.case.php index 57f40c482..5167403c2 100755 --- a/workflow/engine/classes/class.case.php +++ b/workflow/engine/classes/class.case.php @@ -94,6 +94,7 @@ class Cases $c->addJoin(TaskPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->addJoin(TaskPeer::TAS_UID, TaskUserPeer::TAS_UID, Criteria::LEFT_JOIN); $c->add(ProcessPeer::PRO_STATUS, 'ACTIVE'); + $c->add(ProcessPeer::PRO_SUBPROCESS, '0'); $c->add(TaskPeer::TAS_START, 'TRUE'); $c->add(TaskUserPeer::USR_UID, $sUIDUser); if ($processUid != '') { @@ -119,6 +120,7 @@ class Cases $c->addJoin(TaskPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->addJoin(TaskPeer::TAS_UID, TaskUserPeer::TAS_UID, Criteria::LEFT_JOIN); $c->add(ProcessPeer::PRO_STATUS, 'ACTIVE'); + $c->add(ProcessPeer::PRO_SUBPROCESS, '0'); $c->add(TaskPeer::TAS_START, 'TRUE'); $c->add(TaskUserPeer::USR_UID, $aGroups, Criteria::IN); if ($processUid != '') { diff --git a/workflow/engine/classes/class.xpdl.php b/workflow/engine/classes/class.xpdl.php index b69e9e279..cfd071432 100755 --- a/workflow/engine/classes/class.xpdl.php +++ b/workflow/engine/classes/class.xpdl.php @@ -2004,6 +2004,7 @@ class Xpdl extends processes $process['PRO_ASSIGNMENT'] = 'FALSE'; $process['PRO_SHOW_MAP'] = 0; $process['PRO_SHOW_MESSAGE'] = 0; + $process['PRO_SUBPROCESS'] = 0; $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 08086344e..669fc2c0a 100755 --- a/workflow/engine/classes/model/Process.php +++ b/workflow/engine/classes/model/Process.php @@ -454,6 +454,7 @@ class Process extends BaseProcess { $this->setProAssignment ( $aData['PRO_ASSIGNMENT'] ); $this->setProShowMap ( $aData['PRO_SHOW_MAP'] ); $this->setProShowMessage ( $aData['PRO_SHOW_MESSAGE'] ); + $this->setProSubprocess ( $aData['PRO_SUBPROCESS'] ); $this->setProShowDelegate ( $aData['PRO_SHOW_DELEGATE'] ); $this->setProShowDynaform ( $aData['PRO_SHOW_DYNAFORM'] ); @@ -602,6 +603,7 @@ class Process extends BaseProcess { $oCriteria->add(ProcessPeer::PRO_UID, '', Criteria::NOT_EQUAL); $oCriteria->add(ProcessPeer::PRO_STATUS, 'DISABLED', Criteria::NOT_EQUAL); + $oCriteria->add(ProcessPeer::PRO_SUBPROCESS, '1', Criteria::NOT_EQUAL); if( isset($category) ) $oCriteria->add(ProcessPeer::PRO_CATEGORY, $category, Criteria::EQUAL); diff --git a/workflow/engine/classes/model/map/ProcessMapBuilder.php b/workflow/engine/classes/model/map/ProcessMapBuilder.php index 9ea1230b2..719c5680e 100755 --- a/workflow/engine/classes/model/map/ProcessMapBuilder.php +++ b/workflow/engine/classes/model/map/ProcessMapBuilder.php @@ -85,6 +85,8 @@ class ProcessMapBuilder $tMap->addColumn('PRO_SHOW_MESSAGE', 'ProShowMessage', 'int', CreoleTypes::TINYINT, true, null); + $tMap->addColumn('PRO_SUBPROCESS', 'ProSubprocess', 'int', CreoleTypes::TINYINT, true, null); + $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 e4b87bf01..5bf5ef446 100755 --- a/workflow/engine/classes/model/om/BaseProcess.php +++ b/workflow/engine/classes/model/om/BaseProcess.php @@ -87,6 +87,12 @@ abstract class BaseProcess extends BaseObject implements Persistent */ protected $pro_show_message = 1; + /** + * The value for the pro_subprocess field. + * @var int + */ + protected $pro_subprocess = 0; + /** * The value for the pro_show_delegate field. * @var int @@ -301,6 +307,17 @@ abstract class BaseProcess extends BaseObject implements Persistent return $this->pro_show_message; } + /** + * Get the [pro_subprocess] column value. + * + * @return int + */ + public function getProSubprocess() + { + + return $this->pro_subprocess; + } + /** * Get the [pro_show_delegate] column value. * @@ -722,6 +739,28 @@ abstract class BaseProcess extends BaseObject implements Persistent } // setProShowMessage() + /** + * Set the value of [pro_subprocess] column. + * + * @param int $v new value + * @return void + */ + public function setProSubprocess($v) + { + + // Since the native PHP type for this column is integer, + // we will cast the input value to an int (if it is not). + if ($v !== null && !is_int($v) && is_numeric($v)) { + $v = (int) $v; + } + + if ($this->pro_subprocess !== $v || $v === 0) { + $this->pro_subprocess = $v; + $this->modifiedColumns[] = ProcessPeer::PRO_SUBPROCESS; + } + + } // setProSubprocess() + /** * Set the value of [pro_show_delegate] column. * @@ -1095,42 +1134,44 @@ abstract class BaseProcess extends BaseObject implements Persistent $this->pro_show_message = $rs->getInt($startcol + 9); - $this->pro_show_delegate = $rs->getInt($startcol + 10); + $this->pro_subprocess = $rs->getInt($startcol + 10); - $this->pro_show_dynaform = $rs->getInt($startcol + 11); + $this->pro_show_delegate = $rs->getInt($startcol + 11); - $this->pro_category = $rs->getString($startcol + 12); + $this->pro_show_dynaform = $rs->getInt($startcol + 12); - $this->pro_sub_category = $rs->getString($startcol + 13); + $this->pro_category = $rs->getString($startcol + 13); - $this->pro_industry = $rs->getInt($startcol + 14); + $this->pro_sub_category = $rs->getString($startcol + 14); - $this->pro_update_date = $rs->getTimestamp($startcol + 15, null); + $this->pro_industry = $rs->getInt($startcol + 15); - $this->pro_create_date = $rs->getTimestamp($startcol + 16, null); + $this->pro_update_date = $rs->getTimestamp($startcol + 16, null); - $this->pro_create_user = $rs->getString($startcol + 17); + $this->pro_create_date = $rs->getTimestamp($startcol + 17, null); - $this->pro_height = $rs->getInt($startcol + 18); + $this->pro_create_user = $rs->getString($startcol + 18); - $this->pro_width = $rs->getInt($startcol + 19); + $this->pro_height = $rs->getInt($startcol + 19); - $this->pro_title_x = $rs->getInt($startcol + 20); + $this->pro_width = $rs->getInt($startcol + 20); - $this->pro_title_y = $rs->getInt($startcol + 21); + $this->pro_title_x = $rs->getInt($startcol + 21); - $this->pro_debug = $rs->getInt($startcol + 22); + $this->pro_title_y = $rs->getInt($startcol + 22); - $this->pro_dynaforms = $rs->getString($startcol + 23); + $this->pro_debug = $rs->getInt($startcol + 23); - $this->pro_derivation_screen_tpl = $rs->getString($startcol + 24); + $this->pro_dynaforms = $rs->getString($startcol + 24); + + $this->pro_derivation_screen_tpl = $rs->getString($startcol + 25); $this->resetModified(); $this->setNew(false); // FIXME - using NUM_COLUMNS may be clearer. - return $startcol + 25; // 25 = ProcessPeer::NUM_COLUMNS - ProcessPeer::NUM_LAZY_LOAD_COLUMNS). + return $startcol + 26; // 26 = ProcessPeer::NUM_COLUMNS - ProcessPeer::NUM_LAZY_LOAD_COLUMNS). } catch (Exception $e) { throw new PropelException("Error populating Process object", $e); @@ -1365,48 +1406,51 @@ abstract class BaseProcess extends BaseObject implements Persistent return $this->getProShowMessage(); break; case 10: - return $this->getProShowDelegate(); + return $this->getProSubprocess(); break; case 11: - return $this->getProShowDynaform(); + return $this->getProShowDelegate(); break; case 12: - return $this->getProCategory(); + return $this->getProShowDynaform(); break; case 13: - return $this->getProSubCategory(); + return $this->getProCategory(); break; case 14: - return $this->getProIndustry(); + return $this->getProSubCategory(); break; case 15: - return $this->getProUpdateDate(); + return $this->getProIndustry(); break; case 16: - return $this->getProCreateDate(); + return $this->getProUpdateDate(); break; case 17: - return $this->getProCreateUser(); + return $this->getProCreateDate(); break; case 18: - return $this->getProHeight(); + return $this->getProCreateUser(); break; case 19: - return $this->getProWidth(); + return $this->getProHeight(); break; case 20: - return $this->getProTitleX(); + return $this->getProWidth(); break; case 21: - return $this->getProTitleY(); + return $this->getProTitleX(); break; case 22: - return $this->getProDebug(); + return $this->getProTitleY(); break; case 23: - return $this->getProDynaforms(); + return $this->getProDebug(); break; case 24: + return $this->getProDynaforms(); + break; + case 25: return $this->getProDerivationScreenTpl(); break; default: @@ -1439,21 +1483,22 @@ abstract class BaseProcess extends BaseObject implements Persistent $keys[7] => $this->getProAssignment(), $keys[8] => $this->getProShowMap(), $keys[9] => $this->getProShowMessage(), - $keys[10] => $this->getProShowDelegate(), - $keys[11] => $this->getProShowDynaform(), - $keys[12] => $this->getProCategory(), - $keys[13] => $this->getProSubCategory(), - $keys[14] => $this->getProIndustry(), - $keys[15] => $this->getProUpdateDate(), - $keys[16] => $this->getProCreateDate(), - $keys[17] => $this->getProCreateUser(), - $keys[18] => $this->getProHeight(), - $keys[19] => $this->getProWidth(), - $keys[20] => $this->getProTitleX(), - $keys[21] => $this->getProTitleY(), - $keys[22] => $this->getProDebug(), - $keys[23] => $this->getProDynaforms(), - $keys[24] => $this->getProDerivationScreenTpl(), + $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(), ); return $result; } @@ -1516,48 +1561,51 @@ abstract class BaseProcess extends BaseObject implements Persistent $this->setProShowMessage($value); break; case 10: - $this->setProShowDelegate($value); + $this->setProSubprocess($value); break; case 11: - $this->setProShowDynaform($value); + $this->setProShowDelegate($value); break; case 12: - $this->setProCategory($value); + $this->setProShowDynaform($value); break; case 13: - $this->setProSubCategory($value); + $this->setProCategory($value); break; case 14: - $this->setProIndustry($value); + $this->setProSubCategory($value); break; case 15: - $this->setProUpdateDate($value); + $this->setProIndustry($value); break; case 16: - $this->setProCreateDate($value); + $this->setProUpdateDate($value); break; case 17: - $this->setProCreateUser($value); + $this->setProCreateDate($value); break; case 18: - $this->setProHeight($value); + $this->setProCreateUser($value); break; case 19: - $this->setProWidth($value); + $this->setProHeight($value); break; case 20: - $this->setProTitleX($value); + $this->setProWidth($value); break; case 21: - $this->setProTitleY($value); + $this->setProTitleX($value); break; case 22: - $this->setProDebug($value); + $this->setProTitleY($value); break; case 23: - $this->setProDynaforms($value); + $this->setProDebug($value); break; case 24: + $this->setProDynaforms($value); + break; + case 25: $this->setProDerivationScreenTpl($value); break; } // switch() @@ -1624,63 +1672,67 @@ abstract class BaseProcess extends BaseObject implements Persistent } if (array_key_exists($keys[10], $arr)) { - $this->setProShowDelegate($arr[$keys[10]]); + $this->setProSubprocess($arr[$keys[10]]); } if (array_key_exists($keys[11], $arr)) { - $this->setProShowDynaform($arr[$keys[11]]); + $this->setProShowDelegate($arr[$keys[11]]); } if (array_key_exists($keys[12], $arr)) { - $this->setProCategory($arr[$keys[12]]); + $this->setProShowDynaform($arr[$keys[12]]); } if (array_key_exists($keys[13], $arr)) { - $this->setProSubCategory($arr[$keys[13]]); + $this->setProCategory($arr[$keys[13]]); } if (array_key_exists($keys[14], $arr)) { - $this->setProIndustry($arr[$keys[14]]); + $this->setProSubCategory($arr[$keys[14]]); } if (array_key_exists($keys[15], $arr)) { - $this->setProUpdateDate($arr[$keys[15]]); + $this->setProIndustry($arr[$keys[15]]); } if (array_key_exists($keys[16], $arr)) { - $this->setProCreateDate($arr[$keys[16]]); + $this->setProUpdateDate($arr[$keys[16]]); } if (array_key_exists($keys[17], $arr)) { - $this->setProCreateUser($arr[$keys[17]]); + $this->setProCreateDate($arr[$keys[17]]); } if (array_key_exists($keys[18], $arr)) { - $this->setProHeight($arr[$keys[18]]); + $this->setProCreateUser($arr[$keys[18]]); } if (array_key_exists($keys[19], $arr)) { - $this->setProWidth($arr[$keys[19]]); + $this->setProHeight($arr[$keys[19]]); } if (array_key_exists($keys[20], $arr)) { - $this->setProTitleX($arr[$keys[20]]); + $this->setProWidth($arr[$keys[20]]); } if (array_key_exists($keys[21], $arr)) { - $this->setProTitleY($arr[$keys[21]]); + $this->setProTitleX($arr[$keys[21]]); } if (array_key_exists($keys[22], $arr)) { - $this->setProDebug($arr[$keys[22]]); + $this->setProTitleY($arr[$keys[22]]); } if (array_key_exists($keys[23], $arr)) { - $this->setProDynaforms($arr[$keys[23]]); + $this->setProDebug($arr[$keys[23]]); } if (array_key_exists($keys[24], $arr)) { - $this->setProDerivationScreenTpl($arr[$keys[24]]); + $this->setProDynaforms($arr[$keys[24]]); + } + + if (array_key_exists($keys[25], $arr)) { + $this->setProDerivationScreenTpl($arr[$keys[25]]); } } @@ -1734,6 +1786,10 @@ abstract class BaseProcess extends BaseObject implements Persistent $criteria->add(ProcessPeer::PRO_SHOW_MESSAGE, $this->pro_show_message); } + if ($this->isColumnModified(ProcessPeer::PRO_SUBPROCESS)) { + $criteria->add(ProcessPeer::PRO_SUBPROCESS, $this->pro_subprocess); + } + if ($this->isColumnModified(ProcessPeer::PRO_SHOW_DELEGATE)) { $criteria->add(ProcessPeer::PRO_SHOW_DELEGATE, $this->pro_show_delegate); } @@ -1866,6 +1922,8 @@ abstract class BaseProcess extends BaseObject implements Persistent $copyObj->setProShowMessage($this->pro_show_message); + $copyObj->setProSubprocess($this->pro_subprocess); + $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 3321d75e7..72c142895 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 = 25; + const NUM_COLUMNS = 26; /** The number of lazy-loaded columns. */ const NUM_LAZY_LOAD_COLUMNS = 0; @@ -61,6 +61,9 @@ abstract class BaseProcessPeer /** the column name for the PRO_SHOW_MESSAGE field */ const PRO_SHOW_MESSAGE = 'PROCESS.PRO_SHOW_MESSAGE'; + /** the column name for the PRO_SUBPROCESS field */ + const PRO_SUBPROCESS = 'PROCESS.PRO_SUBPROCESS'; + /** the column name for the PRO_SHOW_DELEGATE field */ const PRO_SHOW_DELEGATE = 'PROCESS.PRO_SHOW_DELEGATE'; @@ -117,10 +120,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', '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_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_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, ) + 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, ) ); /** @@ -130,10 +133,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, 'ProShowDelegate' => 10, 'ProShowDynaform' => 11, 'ProCategory' => 12, 'ProSubCategory' => 13, 'ProIndustry' => 14, 'ProUpdateDate' => 15, 'ProCreateDate' => 16, 'ProCreateUser' => 17, 'ProHeight' => 18, 'ProWidth' => 19, 'ProTitleX' => 20, 'ProTitleY' => 21, 'ProDebug' => 22, 'ProDynaforms' => 23, 'ProDerivationScreenTpl' => 24, ), - 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_SHOW_DELEGATE => 10, ProcessPeer::PRO_SHOW_DYNAFORM => 11, ProcessPeer::PRO_CATEGORY => 12, ProcessPeer::PRO_SUB_CATEGORY => 13, ProcessPeer::PRO_INDUSTRY => 14, ProcessPeer::PRO_UPDATE_DATE => 15, ProcessPeer::PRO_CREATE_DATE => 16, ProcessPeer::PRO_CREATE_USER => 17, ProcessPeer::PRO_HEIGHT => 18, ProcessPeer::PRO_WIDTH => 19, ProcessPeer::PRO_TITLE_X => 20, ProcessPeer::PRO_TITLE_Y => 21, ProcessPeer::PRO_DEBUG => 22, ProcessPeer::PRO_DYNAFORMS => 23, ProcessPeer::PRO_DERIVATION_SCREEN_TPL => 24, ), - 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_SHOW_DELEGATE' => 10, 'PRO_SHOW_DYNAFORM' => 11, 'PRO_CATEGORY' => 12, 'PRO_SUB_CATEGORY' => 13, 'PRO_INDUSTRY' => 14, 'PRO_UPDATE_DATE' => 15, 'PRO_CREATE_DATE' => 16, 'PRO_CREATE_USER' => 17, 'PRO_HEIGHT' => 18, 'PRO_WIDTH' => 19, 'PRO_TITLE_X' => 20, 'PRO_TITLE_Y' => 21, 'PRO_DEBUG' => 22, 'PRO_DYNAFORMS' => 23, 'PRO_DERIVATION_SCREEN_TPL' => 24, ), - 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, ) + 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, ) ); /** @@ -254,6 +257,8 @@ abstract class BaseProcessPeer $criteria->addSelectColumn(ProcessPeer::PRO_SHOW_MESSAGE); + $criteria->addSelectColumn(ProcessPeer::PRO_SUBPROCESS); + $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 6f9009c9c..5c4060806 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_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_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_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 ;Table 'PROCESS_OWNER' with 2 columns. [TABLE:PROCESS_OWNER] diff --git a/workflow/engine/config/schema.xml b/workflow/engine/config/schema.xml index a9ad1b4c1..1e3055e77 100755 --- a/workflow/engine/config/schema.xml +++ b/workflow/engine/config/schema.xml @@ -795,6 +795,7 @@ + diff --git a/workflow/engine/data/mssql/schema.sql b/workflow/engine/data/mssql/schema.sql index 7be5e32f0..ce8858199 100755 --- a/workflow/engine/data/mssql/schema.sql +++ b/workflow/engine/data/mssql/schema.sql @@ -889,6 +889,7 @@ CREATE TABLE [PROCESS] [PRO_ASSIGNMENT] VARCHAR(20) default 'FALSE' NOT NULL, [PRO_SHOW_MAP] TINYINT default 1 NOT NULL, [PRO_SHOW_MESSAGE] TINYINT default 1 NOT NULL, + [PRO_SUBPROCESS] TINYINT default 0 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 b40b4b14f..721a40f1e 100755 --- a/workflow/engine/data/mysql/schema.sql +++ b/workflow/engine/data/mysql/schema.sql @@ -89,6 +89,7 @@ CREATE TABLE `APP_DOCUMENT` `APP_DOC_TAGS` MEDIUMTEXT, `APP_DOC_STATUS` VARCHAR(32) default 'ACTIVE' NOT NULL, `APP_DOC_STATUS_DATE` DATETIME, + `APP_DOC_FIELDNAME` VARCHAR(150), PRIMARY KEY (`APP_DOC_UID`,`DOC_VERSION`) )ENGINE=MyISAM DEFAULT CHARSET='utf8' COMMENT='Documents in an Application'; #----------------------------------------------------------------------------- @@ -388,6 +389,7 @@ CREATE TABLE `PROCESS` `PRO_ASSIGNMENT` VARCHAR(20) default 'FALSE' NOT NULL, `PRO_SHOW_MAP` TINYINT default 1 NOT NULL, `PRO_SHOW_MESSAGE` TINYINT default 1 NOT NULL, + `PRO_SUBPROCESS` TINYINT default 0 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, @@ -557,6 +559,7 @@ CREATE TABLE `TASK` `TAS_PRIORITY_VARIABLE` VARCHAR(100) default '' NOT NULL, `TAS_ASSIGN_TYPE` VARCHAR(30) default 'BALANCED' NOT NULL, `TAS_ASSIGN_VARIABLE` VARCHAR(100) default '@@SYS_NEXT_USER_TO_BE_ASSIGNED' NOT NULL, + `TAS_GROUP_VARIABLE` VARCHAR(100) default '@@SYS_GROUP_TO_BE_ASSIGNED', `TAS_MI_INSTANCE_VARIABLE` VARCHAR(100) default '@@SYS_VAR_TOTAL_INSTANCE' NOT NULL, `TAS_MI_COMPLETE_VARIABLE` VARCHAR(100) default '@@SYS_VAR_TOTAL_INSTANCES_COMPLETE' NOT NULL, `TAS_ASSIGN_LOCATION` VARCHAR(20) default 'FALSE' NOT NULL, diff --git a/workflow/engine/data/oracle/schema.sql b/workflow/engine/data/oracle/schema.sql index 1fb04caaf..463170c46 100755 --- a/workflow/engine/data/oracle/schema.sql +++ b/workflow/engine/data/oracle/schema.sql @@ -488,6 +488,7 @@ CREATE TABLE "PROCESS" "PRO_ASSIGNMENT" VARCHAR2(20) default 'FALSE' NOT NULL, "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_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/js/processmap/core/processmap.js b/workflow/engine/js/processmap/core/processmap.js index a8f11387e..12956ab54 100755 --- a/workflow/engine/js/processmap/core/processmap.js +++ b/workflow/engine/js/processmap/core/processmap.js @@ -359,7 +359,7 @@ var processmap=function(){ this.tmp.editProcessPanel = panel =new leimnud.module.panel(); panel.options={ limit :true, - size :{w:700,h:480}, + size :{w:700,h:520}, position:{x:50,y:50,center:true}, title :G_STRINGS.ID_PROCESSMAP_EDIT_PROCESS+": "+ moldTitle(this.data.db.title.label,700),//this.data.db.title.label,s theme :this.options.theme, diff --git a/workflow/engine/methods/cases/cases_Scheduler_List.php b/workflow/engine/methods/cases/cases_Scheduler_List.php index 191c3de46..ce37d09bb 100755 --- a/workflow/engine/methods/cases/cases_Scheduler_List.php +++ b/workflow/engine/methods/cases/cases_Scheduler_List.php @@ -86,6 +86,7 @@ $fieldNames = Array( 'PRO_ASSIGNMENT' => 'char', 'PRO_SHOW_MAP' => 'char', 'PRO_SHOW_MESSAGE' => 'char', + 'PRO_SUBPROCESS' => '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 bb243c3f7..f05d6a864 100644 --- a/workflow/engine/services/rest/crud/Process.php +++ b/workflow/engine/services/rest/crud/Process.php @@ -35,6 +35,7 @@ class Services_Rest_Process $criteria->addSelectColumn(ProcessPeer::PRO_ASSIGNMENT); $criteria->addSelectColumn(ProcessPeer::PRO_SHOW_MAP); $criteria->addSelectColumn(ProcessPeer::PRO_SHOW_MESSAGE); + $criteria->addSelectColumn(ProcessPeer::PRO_SUBPROCESS); $criteria->addSelectColumn(ProcessPeer::PRO_SHOW_DELEGATE); $criteria->addSelectColumn(ProcessPeer::PRO_SHOW_DYNAFORM); $criteria->addSelectColumn(ProcessPeer::PRO_CATEGORY); diff --git a/workflow/engine/skinEngine/skinEngine.php b/workflow/engine/skinEngine/skinEngine.php index 992c52aa2..25df380ca 100755 --- a/workflow/engine/skinEngine/skinEngine.php +++ b/workflow/engine/skinEngine/skinEngine.php @@ -230,7 +230,16 @@ class SkinEngine $styles = $oHeadPublisher->getExtJsStylesheets($this->cssFileName); $body = $oHeadPublisher->getExtJsScripts(); + //default $templateFile = G::ExpandPath( "skinEngine" ).'base'.PATH_SEP .'extJsInitLoad.html'; + //Custom skins + if (defined('PATH_CUSTOM_SKINS') && is_dir(PATH_CUSTOM_SKINS . $this->mainSkin)) { + $templateFile = PATH_CUSTOM_SKINS . $this->mainSkin . PATH_SEP .'extJsInitLoad.html'; + } + //Skin uxs - simplefied + if ($_SESSION['user_experience'] != 'NORMAL') { + $templateFile = (is_dir(PATH_CUSTOM_SKINS . 'uxs')) ? PATH_CUSTOM_SKINS . 'simplified' . PATH_SEP . 'extJsInitLoad.html' : $templateFile; + } } else { $styles = ""; diff --git a/workflow/engine/xmlform/processes/processes_Edit.html b/workflow/engine/xmlform/processes/processes_Edit.html index fe9ec01c2..80968dd8b 100755 --- a/workflow/engine/xmlform/processes/processes_Edit.html +++ b/workflow/engine/xmlform/processes/processes_Edit.html @@ -54,6 +54,10 @@ {$PRO_SHOW_MESSAGE} {$form.PRO_SHOW_MESSAGE} + + {$PRO_SUBPROCESS} + {$form.PRO_SUBPROCESS} +
{$form.SUBMIT}   {$form.BTN_CANCEL} diff --git a/workflow/engine/xmlform/processes/processes_Edit.xml b/workflow/engine/xmlform/processes/processes_Edit.xml index 67effbc50..ff81ff656 100755 --- a/workflow/engine/xmlform/processes/processes_Edit.xml +++ b/workflow/engine/xmlform/processes/processes_Edit.xml @@ -68,6 +68,10 @@ WHERE Hide the case number and the case title in the steps + + This a sub process + + Cancel