From: Martín Marrese Date: Tue, 2 Dec 2003 20:57:29 +0000 (+0000) Subject: Modificaciones a la seccion procesos X-Git-Tag: svn_import~75 X-Git-Url: https://git.llucax.com/mecon/yatta.git/commitdiff_plain/fcda5355d7e52bf400a924b192e8050f0ff580ef?ds=inline Modificaciones a la seccion procesos --- diff --git a/lib/YATTA/Proceso.php b/lib/YATTA/Proceso.php index 0f7c963..87dd3a0 100644 --- a/lib/YATTA/Proceso.php +++ b/lib/YATTA/Proceso.php @@ -185,6 +185,7 @@ class YATTA_Proceso extends MECON_DBO { { // Si es un resultado, obtengo los elemento. if (is_a($db, 'db_result')) { + $this->predefinirAtributos(); $res = $db->fetchRow(DB_FETCHMODE_ASSOC); // Si hay error lo devuelve. if (DB::isError($res)) { @@ -193,27 +194,27 @@ class YATTA_Proceso extends MECON_DBO { elseif (!$res) { return false; } + + $this->id = $res['id']; + $fecha =& new Date ($res['fecha'].' 00:00:00'); + $this->fecha = $fecha; + $this->script = $res['script']; + $this->id_sistema = $res['id_sistema']; + $this->nombre_sistema = $res['nombre_sistema']; + $this->descripcion = $res['descripcion']; + $this->pid = $res['pid']; + $this->server = $res['server']; + $this->status = $res['status']; + $this->owner = $res['owner']; + $this->destinos = split(',', $res['destinos']); + $this->prioridad = $res['prioridad']; + $this->scheduling = $res['scheduling']; + $this->notificar = $res['notificar']; + $this->resultado = $res['resultado']; + $this->nota = $res['nota']; + return true; } - - $this->id = $res['id']; - $fecha =& new Date ($res['fecha'].' 00:00:00'); - $this->fecha = $fecha; - $this->script = $res['script']; - $this->id_sistema = $res['id_sistema']; - $this->nombre_sistema = $res['nombre_sistema']; - $this->descripcion = $res['descripcion']; - $this->pid = $res['pid']; - $this->server = $res['server']; - $this->status = $res['status']; - $this->owner = $res['owner']; - $this->destinos = split(',', $res['destinos']); - $this->prioridad = $res['prioridad']; - $this->scheduling = $res['scheduling']; - $this->notificar = $res['notificar']; - $this->resultado = $res['resultado']; - $this->nota = $res['nota']; - - return true; + return false; } /** @@ -257,16 +258,16 @@ class YATTA_Proceso extends MECON_DBO { $where[] = 'p.fecha = '. $db->quote("$fecha"); } if (!is_null($this->script)) { - $where[] = 'p.script LIKE'. $db->quote("%$this->script%"); + $where[] = 'p.script LIKE '. $db->quote("%$this->script%"); } if (!is_null($this->id_sistema)) { $where[] = 'p.id_sistema = '. $this->id_sistema; } if (!is_null($this->nombre_sistema)) { - $where[] = 's.nombre_sistema LIKE'. $db->quote("%$this->nombre_sistema%"); + $where[] = 's.nombre_sistema LIKE '. $db->quote("%$this->nombre_sistema%"); } if (!is_null($this->descripcion)) { - $where[] = 'p.descripcion LIKE'. $db->quote("%$this->descripcion%"); + $where[] = 'p.descripcion LIKE '. $db->quote("%$this->descripcion%"); } if (!is_null($this->pid)) { $where[] = 'p.pid = '.$this->pid; @@ -278,39 +279,39 @@ class YATTA_Proceso extends MECON_DBO { $where[] = 'p.status = '.$this->status; } if (!is_null($this->owner)) { - $where[] = 'p.owner LIKE'. $db->quote("%$this->owner%"); + $where[] = 'p.owner LIKE '. $db->quote("%$this->owner%"); } if (!is_null($this->destinos)) { if (is_array($this->destinos)) { foreach ($this->destinos as $destino) { - $where[] = 'p.destinos LIKE'. $db->quote("%$destino"); + $where[] = 'p.destinos LIKE '. $db->quote("%$destino"); } } else { - $where[] = 'p.destinos LIKE'. $db->quote("%$this->destinos%"); + $where[] = 'p.destinos LIKE '. $db->quote("%$this->destinos%"); } } if (!is_null($this->prioridad)) { $where[] = 'p.prioridad = '.$this->prioridad; } if (!is_null($this->scheduling)) { - $where[] = 'p.scheduling LIKE'. $db->quote("%$this->scheduling%"); + $where[] = 'p.scheduling LIKE '. $db->quote("%$this->scheduling%"); } if (!is_null($this->notificar)) { $where[] = 'p.notificar ='. $this->notificar; } if (!is_null($this->resultado)) { - $where[] = 'p.resultado LIKE'. $db->quote("%$this->resultado%"); + $where[] = 'p.resultado LIKE '. $db->quote("%$this->resultado%"); } if (!is_null($this->nota)) { - $where[] = 'p.nota LIKE'. $db->quote("%$this->nota%"); + $where[] = 'p.nota LIKE '. $db->quote("%$this->nota%"); } if ($where) { $where = 'WHERE p.id_sistema = s.id_sistema AND ('. join ("$operador ", $where).')'; } else { - $where = ''; + $where = 'WHERE p.id_sistema = s.id_sistema'; } // Armo el ORDER BY. if (is_string($orden)) @@ -331,7 +332,23 @@ class YATTA_Proceso extends MECON_DBO { p.server AS server, p.status AS status, p.owner AS owner, p.destinos AS destinos, p.prioridad AS prioridad, p.scheduling AS scheduling, p.notificar AS notificar, p.resultado AS - resultado, p.nota AS nota + resultado, p.nota AS nota,". + "IF (p.status = 0, 'El proceso esta en cola. Aun no se ejecuto.". + " Puede abortar su ejecucion presionando en el icono.', ". + "IF(p.status = 1, 'El proceso se esta ejecutando en este momento.". + " Puede abortar su ejecucion presionando en el icono.',". + "IF(p.status = 2, 'El proceso ha finalizado. ". + "Puede buscar el resultado en la seccion archivos.',". + "IF(p.status = 3, 'Se produjo un error durante la ejecucion". + " del proceso. Presionando sobre el icono puede ver una". + " explicacion del mismo.',". + "'El proceso fue detenido por alguna persona (el responsable o". + " el administrador). Presionando sobre el icono puede ver una ". + "explicacion.'". + ")". + ")". + ")". + ") AS icono FROM yatta.procesos AS p, samurai.sistema AS s $where $orden"); diff --git a/sistema/www/images/estado_5.gif b/sistema/www/images/estado_4.gif similarity index 100% rename from sistema/www/images/estado_5.gif rename to sistema/www/images/estado_4.gif diff --git a/sistema/www/procesos.php b/sistema/www/procesos.php index fe92a46..9e2ec92 100644 --- a/sistema/www/procesos.php +++ b/sistema/www/procesos.php @@ -26,129 +26,94 @@ $Id$ //Require Once {{{ require_once 'MECON/HTML/TablaDB.php'; -require_once 'MECON/HTML/QuickForm.php'; -require_once 'MECON/HTML/Link.php'; +require_once 'MECON/HTML/Tabla.php'; require_once 'MECON/HTML/Image.php'; +require_once 'MECON/HTML/Link.php'; +require_once 'YATTA/Proceso.php'; //}}} -//Creo el formulario de filtro {{{ -$FORM =& new MECON_HTML_QuickForm ('procesos','get','procesos'); -$FORM->renderer->updateAttributes ('width="350"'); -$FORM->addElement('header', 'cabecera', 'Filtrar Procesos'); -$FORM->addElement('text', 'sistema', 'Sistema', array('size'=>'30')); -$FORM->addElement('text', 'descripcion', 'Descripcion', array('size'=>'30')); -$FORM->addElement ('mdate', 'fecha', 'Fecha'); -$FORM->addElement('select', 'status', 'Estado', array(' -- '=>' -- ', - 'En_Espera' => 'En Espera', 'Procesando' => 'Procesando', - 'Finalizado' => 'Finalizado', 'Error' => 'Error', 'Abortado' => - 'Abortado')); -$group[] = HTML_QuickForm::createElement('submit', 'aceptar' , 'Filtrar'); -$FORM->addGroup($group,'botones'); -//}}} +//Obtengo la informacion de la base y la agrego a la tabla {{{ +$TABLADB = new MECON_HTML_TablaDB ('Procesos'); +$TABLADB->addRow(array( + 'Listado de Procesos' + ), 'cabecera colspan="4" align="left"'); +$TABLADB->addRow(array( + 'Id', 'Fecha', 'Sistema', 'Descripcion', 'Estado' + ),'titulo'); + +$PROCESO =& new YATTA_Proceso; +$res = $PROCESO->buscar($DB, MECON_DBO_AND, ' id ASC'); +if (PEAR::isError($res)) { + die('Error: ' . $res->getMessage() . "\n"); +} -//Valido el formulario {{{ -if ($FORM->validate()) { - //Creo la tabla de resultados {{{ - $TABLADB = new MECON_HTML_TablaDB ('Usuarios'); - $TABLADB->addRow(array( - 'Listado de Procesos' - ), 'cabecera colspan="4" align="left"'); - $TABLADB->addRow(array( - 'Id', 'Fecha', 'Sistema', 'Descripcion', 'Estado' - ),'titulo'); - //}}} +$pager = $TABLADB->addPager($res, null, + new MECON_HTML_Link + ('procesos', null + ) + ); - //FIXME Usar YATTA_Proceso +$desc_estado_0 = 'MARTIN'; +$desc_estado_1 = 'MYRNA'; - //Agrego la info a la tabla {{{ - if (@$procesos) { - foreach ($procesos as $proceso) { - //Switcheo por el status {{{ - switch ($proceso['status']) { - case '0': - $estado = new MECON_HTML_Link ( - 'procesos_stop', - new MECON_HTML_Image - ('/sistemas/yatta/images/espera', - $proceso['status']) - ); - break; - case '1': - case '2': - $estado = new MECON_HTML_Link ( - 'procesos_stop', - new MECON_HTML_Image - ('/sistemas/yatta/images/procesando', - $proceso['status']) - ); - break; - case '3': - $estado = new MECON_HTML_Link ('archivos', - new MECON_HTML_Image ('/sistemas/yatta/images/fin', - $proceso['status'])); - break; - case '4': - $estado = new MECON_HTML_Link ( - 'procesos_info', - new MECON_HTML_Image - ('/sistemas/yatta/images/error', - $proceso['status']), - array ('mensaje' => $proceso['nota']), - array ( - 'OnClick' => - "javascript:window.open('popups/procesos','Procesos',". - "'width=400,height=300,scrollbars=yes');return false;", - 'target' => '_blank') - ); - break; - case '5': - $estado = new MECON_HTML_Link ( - 'procesos_info', - new MECON_HTML_Image - ('/sistemas/yatta/images/abortado', - $proceso['status']), - array ('mensaje' => $proceso['nota']), - array ( - 'OnClick' => - "javascript:window.open('popups/procesos','Procesos',". - "'width=400,height=300,scrollbars=yes');return false;", - 'target' => '_blank') - ); - break; - } - //}}} +$TABLADB->addRowsData(''. + "\"%s\"".', array ('id', 'id', 'status', 'icono')); - $row = $TABLADB->addRow(array( - $proceso['id'], - $proceso['fecha'], - $proceso['nombre_sistema'], - $proceso['descripcion'], - $estado, - )); +$TABLADB->addRows($pager, array ('id', 'fecha', 'nombre_sistema', 'descripcion')); +$TABLADB->updateColAttributes(0,'width="8%"'); +$TABLADB->updateColAttributes(2,'width="30%"'); +$TABLADB->updateColAttributes(3,'width="40%"'); +$TABLADB->updateColAttributes(4,'width="5%"'); +//}}} - $estado = null; - } - } - else { - $TABLADB->addRow(array( - 'No se encontraron procesos' - ), 'colspan="4"'); - } - $TABLADB->updateColAttributes(0,'width="8%"'); - $TABLADB->updateColAttributes(2,'width="30%"'); - $TABLADB->updateColAttributes(3,'width="40%"'); - $TABLADB->updateColAttributes(4,'width="5%"'); - //}}} -} +//Agrego la tabla con la explicacion de los iconos {{{ +$TABLA =& new MECON_HTML_Tabla ('width="400"'); +$TABLA->addRow(array('Significado de los iconos'), 'cabecera colspan="2"'); +$TABLA->addRow(array('Icono', 'Significado'), 'titulo'); +$TABLA->addRow(array( + new MECON_HTML_Image ('/sistemas/yatta/images/estado_0.gif', + 'Espera'), + "El proceso esta en cola. Aun no se ejecuto.
Puede abortar su". + ' ejecucion presionando en el icono.' + )); +$TABLA->addRow(array( + new MECON_HTML_Image ('/sistemas/yatta/images/estado_1.gif', + 'Procesando'), + 'El proceso se esta ejecutando en este momento.
Puede abortar su'. + ' ejecucion presionando en el icono.' + )); +$TABLA->addRow(array( + new MECON_HTML_Image ('/sistemas/yatta/images/estado_2.gif', + 'Finalizado'), + 'El proceso ha finalizado.
'. + 'Puede buscar el resultado en la seccion archivos.' + )); +$TABLA->addRow(array( + new MECON_HTML_Image ('/sistemas/yatta/images/estado_3.gif', + 'Error'), + 'Se produjo un error durante la ejecucion del proceso.
'. + 'Presionando sobre el icono puede ver una explicacion del mismo.' + )); +$TABLA->addRow(array( + new MECON_HTML_Image ('/sistemas/yatta/images/estado_0.gif', + 'Abortado'), + 'El proceso fue detenido por alguna persona (el responsable o'. + ' el administrador). Presionando sobre el icono puede ver una'. + 'explicacion.' + )); +$TABLA->updateColAttributes(0, 'align="center"'); +$TABLA->updateColAttributes(1, 'align="left"'); //}}} //Agrego la info al marco y la muestro {{{ $MARCO->addStyleSheet('css/yatta.css'); -$MARCO->addBody($FORM); -if (@$TABLADB) { - $MARCO->addBody('
'); - $MARCO->addBody($TABLADB); -} +$MARCO->addBody($TABLADB); +$MARCO->addBody('

'); +$MARCO->addBody($TABLA); $MARCO->display(); //}}}