PM-3984
PM-3984 Se ejecuta el trigger de un dynaform (con condición) y no los triggers del segundo
This commit is contained in:
@@ -923,6 +923,9 @@ class Process extends BaseProcess
|
||||
$webBotTrigger = '';
|
||||
|
||||
switch ($action) {
|
||||
case 'OPEN':
|
||||
$var = ProcessPeer::PRO_TRI_OPEN;
|
||||
break;
|
||||
case 'DELETED':
|
||||
$var = ProcessPeer::PRO_TRI_DELETED;
|
||||
break;
|
||||
|
||||
@@ -840,6 +840,7 @@
|
||||
<column name="PRO_SHOW_MAP" type="TINYINT" required="true" default="1"/>
|
||||
<column name="PRO_SHOW_MESSAGE" type="TINYINT" required="true" default="1"/>
|
||||
<column name="PRO_SUBPROCESS" type="TINYINT" required="true" default="0"/>
|
||||
<column name="PRO_TRI_OPEN" type="VARCHAR" size="32" required="true" default=""/>
|
||||
<column name="PRO_TRI_DELETED" type="VARCHAR" size="32" required="true" default=""/>
|
||||
<column name="PRO_TRI_CANCELED" type="VARCHAR" size="32" required="true" default=""/>
|
||||
<column name="PRO_TRI_PAUSED" type="VARCHAR" size="32" required="true" default=""/>
|
||||
|
||||
@@ -409,6 +409,7 @@ 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_OPEN` VARCHAR(32) default '' 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,
|
||||
|
||||
@@ -171,14 +171,7 @@ try {
|
||||
unset( $_SESSION['bNoShowSteps'] );
|
||||
|
||||
/* Execute Before Triggers for first Task*/
|
||||
$oStep = new Step;
|
||||
$oStep = $oStep->loadByProcessTaskPosition($_SESSION['PROCESS'], $_SESSION['TASK'], 1);
|
||||
if($oStep) {
|
||||
$aFields['APP_DATA'] = array_merge( $aFields['APP_DATA'], G::getSystemConstants() );
|
||||
$triggerFields["APP_DATA"] = $oCase->ExecuteTriggers( $_SESSION['TASK'], $oStep->getStepTypeObj(), $oStep->getStepUidObj(), 'BEFORE', $aFields['APP_DATA'] );
|
||||
$oCase->updateCase( $_SESSION['APPLICATION'], $triggerFields );
|
||||
$_SESSION['beforeTriggersExecuted'] = true;
|
||||
}
|
||||
$oCase->getExecuteTriggerProcess($sAppUid, 'OPEN');
|
||||
/*end Execute Before Triggers for first Task*/
|
||||
|
||||
$aNextStep = $oCase->getNextStep( $_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION'] );
|
||||
|
||||
@@ -160,11 +160,7 @@ if ($flagExecuteBeforeTriggers) {
|
||||
|
||||
if (! isset( $_SESSION['_NO_EXECUTE_TRIGGERS_'] )) {
|
||||
//Execute before triggers - Start
|
||||
if (!isset($_SESSION['beforeTriggersExecuted']) || $triggers) {
|
||||
$Fields['APP_DATA'] = $oCase->ExecuteTriggers( $_SESSION['TASK'], $_GET['TYPE'], $_GET['UID'], 'BEFORE', $Fields['APP_DATA'] );
|
||||
} else {
|
||||
unset($_SESSION['beforeTriggersExecuted']);
|
||||
}
|
||||
$Fields['APP_DATA'] = $oCase->ExecuteTriggers( $_SESSION['TASK'], $_GET['TYPE'], $_GET['UID'], 'BEFORE', $Fields['APP_DATA'] );
|
||||
//Execute before triggers - End
|
||||
} else {
|
||||
unset( $_SESSION['_NO_EXECUTE_TRIGGERS_'] );
|
||||
|
||||
Reference in New Issue
Block a user