예제 #1
0
 function evt__form_filas__modificacion($datos)
 {
     //--- Este ml cuando se cambio el combo de la tabla a usar ya no tiene datos necesarios
     if (!$this->cambio_tabla) {
         //--- Se actualizan las opciones que dependen del tipo de dato seleccionado
         foreach (array_keys($datos) as $id) {
             $nuevos_seteos = toba_catalogo_asistentes::get_fila_opciones_de_tipo($datos[$id]['asistente_tipo_dato']);
             $datos[$id]['dt_tipo_dato'] = $nuevos_seteos['dt_tipo_dato'];
             $datos[$id]['cuadro_estilo'] = $nuevos_seteos['cuadro_estilo'];
             $datos[$id]['cuadro_formato'] = $nuevos_seteos['cuadro_formato'];
             $datos[$id]['elemento_formulario'] = $nuevos_seteos['elemento_formulario'];
         }
         $this->dep('datos')->tabla('filas')->procesar_filas($datos);
     }
 }
예제 #2
0
 /**
  * Asume que el dt 'filas' tiene un cursor seteado en la fila actual
  */
 function autocompletar_carga_combo($columna)
 {
     $nombre_tabla = $this->dr_molde->tabla('base')->get_columna('tabla');
     $nombre_fuente = $this->dr_molde->tabla('base')->get_columna('fuente');
     $nuevas = toba_catalogo_asistentes::get_lista_filas_tabla($nombre_tabla, $nombre_fuente);
     $datos = array();
     //-- Busca la fila a actualizar
     foreach ($nuevas as $nueva) {
         if ($nueva['columna'] == $columna) {
             $datos['ef_carga_col_clave'] = $nueva['ef_carga_col_clave'];
             $datos['ef_carga_col_desc'] = $nueva['ef_carga_col_desc'];
             $datos['ef_carga_tabla'] = $nueva['ef_carga_tabla'];
             $datos['ef_carga_sql'] = $nueva['ef_carga_sql'];
             break;
         }
     }
     $this->dr_molde->tabla('filas')->set($datos);
 }
예제 #3
0
 function posee_informacion_completa()
 {
     $mensajes = array();
     if (parent::posee_informacion_completa()) {
         $base = $this->dr_molde->tabla('base')->get();
         if (!isset($base['tabla'])) {
             return false;
         }
         if (!isset($base['cuadro_carga_origen'])) {
             $mensajes[] = 'Formulario: Falta indicar el origen de la carga del cuadro';
         }
         $filas = $this->dr_molde->tabla('filas')->get_filas();
         foreach ($filas as $fila) {
             if ($fila['asistente_tipo_dato'] == toba_catalogo_asistentes::tipo_dato_referencia()) {
                 if (!isset($fila['ef_carga_origen'])) {
                     $mensajes[] = 'Formulario: Falta indicar el origen de la carga del campo "' . $fila['columna'] . '"';
                 }
             }
         }
     }
     return empty($mensajes) ? true : $mensajes;
 }
예제 #4
0
 function asistente($reset = false)
 {
     $datos = null;
     if ($this->existe_dependencia('asistente')) {
         $datos = $this->dep('asistente')->dep('datos');
     }
     if ($reset || !isset($this->asistente)) {
         if ($this->s__molde_preexistente) {
             $this->asistente = toba_catalogo_asistentes::cargar_por_molde($this->s__clave_molde['proyecto'], $this->s__clave_molde['molde'], $datos);
             $this->asistente->preparar_molde();
         } else {
             $this->asistente = toba_catalogo_asistentes::cargar_por_tipo_operacion($this->s__datos_asistente['operacion_tipo'], $datos);
         }
     }
     return $this->asistente;
 }
예제 #5
0
 function tipo_asistente_utilizado()
 {
     $tipo = toba_catalogo_asistentes::get_asistente_molde($this->proyecto, $this->datos['basica']['molde']);
     return $tipo;
 }