Files
luos/workflow/engine/methods/reports/reports_Duration.php

88 lines
3.3 KiB
PHP
Raw Normal View History

2010-12-02 23:34:41 +00:00
<?php
/**
* users_New.php
*
* ProcessMaker Open Source Edition
* Copyright (C) 2004 - 2008 Colosa Inc.23
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2010-12-02 23:34:41 +00:00
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
2010-12-02 23:34:41 +00:00
*
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
*/
$oDates = new dates();
$oCriteria = new Criteria( 'workflow' );
$oCriteria->addSelectColumn( AppDelegationPeer::APP_UID );
$oCriteria->addSelectColumn( AppDelegationPeer::DEL_INDEX );
$oCriteria->addSelectColumn( AppDelegationPeer::TAS_UID );
$oCriteria->addSelectColumn( AppDelegationPeer::DEL_INIT_DATE );
$oCriteria->addSelectColumn( AppDelegationPeer::DEL_FINISH_DATE );
$oDataset = AppDelegationPeer::doSelectRS( $oCriteria );
$oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC );
$oDataset->next();
while ($aRow = $oDataset->getRow()) {
$oCriteria = new Criteria( 'workflow' );
$oCriteria->addSelectColumn( TaskPeer::TAS_UID );
$oCriteria->add( TaskPeer::TAS_UID, $aRow['TAS_UID'] );
$oDataseti = TaskPeer::doSelectRS( $oCriteria );
$oDataseti->setFetchmode( ResultSet::FETCHMODE_ASSOC );
$oDataseti->next();
$b = 0;
while ($aRows = $oDataseti->getRow()) {
if (TaskPeer::doCount( $oCriteria ) == 1) {
$b = 1;
}
$oDataseti->next();
}
if ($b == 1) {
if ($aRow['DEL_INIT_DATE'] != null && $aRow['DEL_FINISH_DATE'] != null) {
$fDuration = $oDates->calculateDuration( $aRow['DEL_INIT_DATE'], $aRow['DEL_FINISH_DATE'], null, null, $aRow['TAS_UID'] );
$oCriteria = new Criteria( 'workflow' );
$sql = "UPDATE APP_DELEGATION SET DEL_DURATION='" . $fDuration . "'
WHERE APP_UID='" . $aRow['APP_UID'] . "' AND DEL_INDEX='" . $aRow['DEL_INDEX'] . "'";
$con = Propel::getConnection( "workflow" );
$stmt = $con->prepareStatement( $sql );
$rs = $stmt->executeQuery();
} else {
$oCriteria = new Criteria( 'workflow' );
$sql = "UPDATE APP_DELEGATION SET DEL_DURATION=0
WHERE APP_UID='" . $aRow['APP_UID'] . "' AND DEL_INDEX='" . $aRow['DEL_INDEX'] . "'";
$con = Propel::getConnection( "workflow" );
$stmt = $con->prepareStatement( $sql );
$rs = $stmt->executeQuery();
}
} else {
$oCriteria = new Criteria( 'workflow' );
$sql = "UPDATE APP_DELEGATION SET DEL_DURATION=0
WHERE APP_UID='" . $aRow['APP_UID'] . "' AND DEL_INDEX='" . $aRow['DEL_INDEX'] . "'";
$con = Propel::getConnection( "workflow" );
$stmt = $con->prepareStatement( $sql );
$rs = $stmt->executeQuery();
2010-12-02 23:34:41 +00:00
}
$oDataset->next();
}
2010-12-02 23:34:41 +00:00
//G::header('location: reportsList');