From ba68b4f04bbc5ba2c9490d6822d36b9e35e47e42 Mon Sep 17 00:00:00 2001 From: davidcallizaya Date: Thu, 2 Mar 2017 14:11:47 -0400 Subject: [PATCH] Added ID load for classic PM processes import. --- workflow/engine/classes/class.processes.php | 30 +++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/workflow/engine/classes/class.processes.php b/workflow/engine/classes/class.processes.php index a0600408e..dd3615b38 100644 --- a/workflow/engine/classes/class.processes.php +++ b/workflow/engine/classes/class.processes.php @@ -5604,8 +5604,33 @@ class Processes */ public function loadIdsFromData($oData) { - $this->loadIdsFor(Process::class, ProcessPeer::PRO_UID, ProcessPeer::PRO_ID, $oData['process']); - $this->loadIdsFor(Task::class, TaskPeer::TAS_UID, TaskPeer::TAS_ID, $oData['tasks']); + if (is_array($oData)) { + $this->loadIdsFor( + Process::class, + ProcessPeer::PRO_UID, + ProcessPeer::PRO_ID, + $oData['process'] + ); + $this->loadIdsFor( + Task::class, + TaskPeer::TAS_UID, + TaskPeer::TAS_ID, + $oData['tasks'] + ); + } else { + $this->loadIdsFor( + Process::class, + ProcessPeer::PRO_UID, + ProcessPeer::PRO_ID, + $oData->process + ); + $this->loadIdsFor( + Task::class, + TaskPeer::TAS_UID, + TaskPeer::TAS_ID, + $oData->tasks + ); + } /** * @todo The following code matches the Models and the correspondent Property * in the imported data object, so it could be used to change the UID @@ -5683,6 +5708,7 @@ class Processes */ public function updateProcessFromData($oData, $pmFilename) { + $oData = $this->loadIdsFromData($oData); $this->updateProcessRow($oData->process); $this->removeProcessRows($oData->process['PRO_UID']); $this->removeAllFieldCondition($oData->dynaforms);