static function get_eventos_internos(toba_datos_relacion $dr) { $eventos = array(); if (!$dr->tabla('prop_basicas')->get_columna('filas_agregar_online')) { $eventos['pedido_registro_nuevo'] = "El usuario notifica que quiere dar de alta un nuevo registro y necesita suministrarle un registro en blanco" . " para comenzar a editar. Escuchando este evento se puede cancelar el pedido de alta o brindar una fila inicial con datos usando " . " el método <em>set_registro_nuevo</em> del ML"; } if ("EVENTOS" == $dr->tabla('prop_basicas')->get_columna('analisis_cambios')) { $eventos['registro_alta'] = "El usuario crea una nuevo registro. Como primer parámetro recibe los datos y como segundo el id de la fila."; $eventos['registro_modificacion'] = "El usuario modifica un registro existente. Como primer parámetro recibe los datos y como segundo el id de la fila."; $eventos['registro_baja'] = "El usuario borra un registro existente. Como primer parámetro recibe el id de la fila eliminada."; } return $eventos; }
/** * Realiza modificaciones varias a la carga y sincroniza * Prueba Altas, bajas y modificaciones: * -Da de alta un nuevo departamento * -Le asigna los empleados de otro depto (el de transporte) * -Borra el depto de transporte (y sus tareas asignadas tambien) */ function test_memoria_modificaciones_y_sincronizacion() { $this->cargar(); //$this->dr->dump_esquema("INICIAL"); //Al ser necesario que update se ejecuta antes que delete se deben retrazar las constraints $this->dr->persistidor()->retrasar_constraints(); //Depto de transporte $transporte = $this->dr->tabla('depto')->get_id_fila_condicion(array('cod_depto' => 100)); //Nuevo Depto. $dep_c = $this->dr->tabla('depto')->nueva_fila($this->get_fila_test('depto', 'comercial')); //Se transfieren los empleados de prensa a comercial $this->dr->tabla('depto')->set_cursor(current($transporte)); $emple_trans = $this->dr->tabla('empleado')->get_id_filas(); foreach ($emple_trans as $empleado) { $this->dr->tabla('empleado')->cambiar_padre_fila($empleado, array('depto' => $dep_c)); } //Borra del depto. $this->dr->tabla('depto')->eliminar_fila(current($transporte)); $this->dr->sincronizar(); $this->cargar(); //--ASERCIONES $dep_c = $this->dr->tabla('depto')->get_id_fila_condicion($this->get_fila_test('depto', 'comercial')); $tarea_vigilancia = $this->dr->tabla('tarea')->get_id_fila_condicion(array('cod_tarea' => 3)); $this->assertEqual($this->dr->tabla('depto')->get_cantidad_filas(), 2); $this->dr->tabla('depto')->set_cursor(current($dep_c)); $this->assertEqual($this->dr->tabla('empleado')->get_cantidad_filas(), 2); //La tarea de vigilancia no debe estar más asociada con un deptro $this->dr->tabla('tarea')->set_cursor(current($tarea_vigilancia)); $this->assertEqual($this->dr->tabla('depto_tareas')->get_cantidad_filas(), 0); //$this->dr->dump_esquema("CAMBIO"); }
static function get_eventos_internos(toba_datos_relacion $dr) { $eventos = array(); if ($dr->tabla('prop_basicas')->get_columna('paginar')) { $eventos['cambiar_pagina'] = "Se recibe como parámetro el número de página a la que se cambio."; } if ($dr->tabla('prop_basicas')->get_columna('ordenar')) { $eventos['ordenar'] = "Se recibe como primer parámetro el sentido del ordenamiento ('asc' o 'des') y como segundo la columna a ordenar. " . "Si no se atrapa el evento, el ordenamiento lo asume el propio cuadro."; } return $eventos; }
static function get_eventos_internos(toba_datos_relacion $dr) { $eventos = array(); $navegacion = $dr->tabla('prop_basicas')->get_columna('tipo_navegacion'); if (isset($navegacion)) { if ($navegacion == 'wizard') { $eventos['cambiar_tab__siguiente'] = "El usuario avanza de pantalla, generalmente con el botón <em>Siguiente</em>."; $eventos['cambiar_tab__anterior'] = "El usuario retrocede de pantalla, generalmente con el botón <em>Anterior</em>."; } else { $eventos['cambiar_tab_X'] = "El usuario cambia a la pantalla X utilizando los tabs o solapas."; } } return $eventos; }