protected function updateCampoFromRequest()
 {
     $campo = $this->getRequestParameter('campo');
     $this->campo->setEsGeneral(isset($campo['es_general']) ? true : false);
     $this->campo->setEsNombre(isset($campo['es_nombre']) ? true : false);
     $this->campo->setObligatorio(isset($campo['obligatorio']) ? true : false);
     $this->campo->setMismaFila(isset($campo['misma_fila']) ? true : false);
     $this->campo->setEnLista(isset($campo['en_lista']) ? true : false);
     if (isset($campo['id_empresa'])) {
         $this->campo->setIdEmpresa($campo['id_empresa'] ? $campo['id_empresa'] : null);
     }
     if (isset($campo['nombre'])) {
         $this->campo->setNombre($campo['nombre']);
     }
     if (isset($campo['descripcion'])) {
         $this->campo->setDescripcion($campo['descripcion']);
     }
     if (isset($campo['tipo'])) {
         $this->campo->setTipo(isset($campo['tipo']) ? $campo['tipo'] : CampoPeer::getDefaultId());
     }
     $this->campo->setSeleccionMultiple(isset($campo['seleccion_multiple']) ? true : false);
     $this->campo->setDesplegable(isset($campo['desplegable']) ? true : false);
     if (isset($campo['tipo_items'])) {
         $this->campo->setTipoItems($campo['tipo_items'] ? $campo['tipo_items'] : CampoPeer::getDefaultIdTipoItems());
     }
     if (isset($campo['unidad_rangos'])) {
         $this->campo->setUnidadRangos($campo['unidad_rangos'] ? $campo['unidad_rangos'] : null);
     }
     if (isset($campo['tipo_periodo'])) {
         $this->campo->setTipoPeriodo($campo['tipo_periodo'] ? $campo['tipo_periodo'] : null);
     }
     if (isset($campo['tipo_tabla'])) {
         $this->campo->setValorTabla($campo['tipo_tabla'] ? $campo['tipo_tabla'] : null);
     }
     //Si el tipo es otra tabla, significa que se ha de mostrar en el padre, si es fecha significa que es ALARMA
     $this->campo->setMostrarEnPadre(isset($campo['mostrar_en_padre']) ? true : false);
     if (isset($campo['tipo_objeto'])) {
         $this->campo->setValorObjeto($campo['tipo_objeto'] ? $campo['tipo_objeto'] : null);
     }
     switch ($this->campo->getTipo()) {
         case CampoPeer::ID_TEXTO_CORTO:
             $this->campo->setTamano($campo['tamano_texto_corto'] ? $campo['tamano_texto_corto'] : null);
             break;
         case CampoPeer::ID_TEXTO_LARGO:
             $this->campo->setTamano($campo['tamano_texto_largo'] ? $campo['tamano_texto_largo'] : null);
             break;
         case CampoPeer::ID_NUMERO:
             $this->campo->setTamano($campo['tamano_numero'] ? $campo['tamano_numero'] : null);
             break;
     }
     switch ($this->campo->getTipo()) {
         case CampoPeer::ID_TEXTO_CORTO:
             $this->campo->setDefecto($campo['defecto_texto_corto']);
             break;
         case CampoPeer::ID_TEXTO_LARGO:
             $this->campo->setDefecto($campo['defecto_texto_largo']);
             break;
         case CampoPeer::ID_BOOLEANO:
             $this->campo->setDefecto($campo['defecto_sino']);
             break;
         case CampoPeer::ID_LISTA:
             $this->campo->setDefecto($campo['defecto_lista']);
             break;
         case CampoPeer::ID_TABLA:
             $this->campo->setDefecto($campo['defecto_tabla']);
             break;
         case CampoPeer::ID_OBJETO:
             $this->campo->setDefecto($campo['defecto_objeto']);
             break;
         case CampoPeer::ID_NUMERO:
             $this->campo->setDefecto($campo['defecto_numero']);
             break;
         case CampoPeer::ID_FECHA:
             $this->campo->setDefecto($campo['defecto_fecha']);
             break;
     }
 }