* @access public
*/
var $icono = null;
+
+ /**
+ * Indica si el proceso esta activo (No fue borrado por el usuario).
+ *
+ * @var int $activo
+ * @access public
+ */
+ var $activo = null;
+
+ /**
+ * Parametros del proceso. Serializado.
+ *
+ * @var string $parametros
+ * @access public
+ */
+ var $parametros = null;
/**
* Carga el objeto con los datos que se pasan por parametro.
$this->archivo = $res['archivo'];
$this->nota = $res['nota'];
$this->icono = $res['icono'];
+ $this->activo = $res['activo'];
+ $this->parametros = $res['parametros'];
return true;
}
return false;
*/
function borrar($db = null)
{
- trigger_error('Not implemented!', E_USER_WARNING);
+ if (!is_null($this->id)) {
+ $res = $this->buscar($db);
+ if (DB::isError($res)) {
+ return $res;
+ }
+ $this->cargar($res);
+
+ if (is_null($this->archivo) || is_null($this->resultado)) {
+ return $db->query('DELETE FROM yatta.procesos WHERE id = '.
+ $this->id);
+ }
+ else {
+ return $db->query ('UPDATE yatta.procesos SET activo = 0'.
+ ' WHERE id = '. $this->id);
+ }
+ }
+ else {
+ return new PEAR_Error('Debe definirse el id del proceso a borrar.');
+ }
}
/**
if (!is_null($this->nota)) {
$where[] = 'p.nota LIKE '. $db->quote("%$this->nota%");
}
+ if (!is_null($this->activo)) {
+ $where[] = 'p.activo = '. $this->activo;
+ }
+ if (!is_null($this->parametros)) {
+ $where[] = 'p.parametros LIKE '. $db->quote("%$this->parametros%");
+ }
if ($where) {
$where = 'WHERE p.owner = '. $db->quote("$this->owner").
'AND p.id_sistema = s.id_sistema AND ('. join ("$operador
p.destinos AS destinos, p.prioridad AS prioridad, p.scheduling
AS scheduling, p.notificar AS notificar, p.resultado AS
resultado, p.nota AS nota, p.archivo AS archivo, ".
- "IF (p.status = 0, 'El proceso esta en cola. Aun no se ejecuto.".
+ "p.parametros AS parametros, ".
+ "IF (p.status = 0, 'El proceso está en cola. Aún no se ejecutó.".
"', ".
- "IF(p.status = 1, 'El proceso se esta ejecutando en este momento.".
+ "IF(p.status = 1, 'El proceso se está ejecutando en este momento.".
"',".
"IF(p.status = 2, 'El proceso ha finalizado. ".
"',".
- "IF(p.status = 3, 'Se produjo un error durante la ejecucion".
+ "IF(p.status = 3, 'Se produjo un error durante la ejecución".
" del proceso.".
"',".
"'El proceso fue detenido por alguna persona (el responsable o".
")".
")".
")".
- ") AS icono
+ ") AS icono, p.activo AS activo
FROM yatta.procesos AS p, samurai.sistema AS s
$where
$orden");
*/
function guardar($db = null, $nuevo = true)
{
+ return $db->query ('UPDATE yatta.procesos SET nota = \''.$this->nota.
+ '\', status = '.$this->status.
+ ' WHERE id = '. $this->id);
}
/**
$this->archivo = null;
$this->nota = null;
$this->icono = null;
+ $this->activo = null;
}
/**
'scheduling' => $this->scheduling,
'notificar' => $this->notificar,
'resultado' => $this->resultado,
+ 'activo' => $this->activo,
+ 'parametros' => $this->parametros,
);
}
}