Example #1
0
 function conf__elementos()
 {
     $datos = $this->dependencia('datos')->tabla('dimension')->get();
     $id = explode(',', $datos['col_id']);
     $desc = explode(',', $datos['col_desc']);
     $sql = 'SELECT ' . implode(" || ' - ' || ", $id) . ' as clave, ' . implode(' || ', $desc) . " as descripcion\n\t\t\t\tFROM {$datos['tabla']}\n\t\t\t\tORDER BY descripcion";
     $datos = toba_editor::db_proyecto_cargado($datos['fuente_datos'])->consultar($sql);
     return $datos;
 }
Example #2
0
 function evt__form_auditoria__crear_auditoria()
 {
     $instalacion = toba_modelo_catalogo::instanciacion()->get_instalacion();
     $instancia = toba_editor::get_id_instancia_activa();
     $proyecto_cargado = toba_editor::get_proyecto_cargado();
     $id_base = "{$instancia} {$proyecto_cargado} {$this->s__nombre_fuente}";
     if (!$instalacion->existe_base_datos_definida($id_base)) {
         throw new toba_error('Debe definir los parámetros de conexión');
     }
     $parametros = $instalacion->get_parametros_base($id_base);
     if (!isset($parametros['schema'])) {
         $schema = 'public';
     } else {
         $schema = $parametros['schema'];
     }
     $schema_auditoria = $schema . '_auditoria';
     //Creo el objeto para asignar los roles correctos a las tablas de auditoria
     $modelo_proyecto = toba_modelo_catalogo::instanciacion()->get_proyecto($instancia, $proyecto_cargado);
     $db = toba_editor::db_proyecto_cargado($this->s__nombre_fuente);
     //,  $proyecto_cargado);
     try {
         $auditoria = $db->get_manejador_auditoria($schema, $schema_auditoria);
         if (is_null($auditoria)) {
             throw toba_error_db('No existe manejador de auditoria para este motor de bd');
         }
         $auditoria->agregar_tablas();
         ///Agrego todas las tablas
         if (!$auditoria->existe()) {
             $auditoria->crear();
         } else {
             $auditoria->migrar();
         }
         $modelo_proyecto->generar_roles_db();
     } catch (toba_error $e) {
         throw $e;
     }
     toba::notificacion()->agregar('Esquema creado satisfactoriamente', 'info');
     $this->dependencia('datos')->tabla('fuente')->set_columna_valor('tiene_auditoria', '1');
     return true;
 }