Recuerda que en la informática cualquier problema casi siempre tiene varias soluciones, de igual modo compartimos lo más óptimo y mejor.
Solución:
QGIS 3
Seleccione la capa en el panel de capas y haga clic izquierdo. Seleccione propiedades. Seleccione el “Formulario de atributos” como se muestra a continuación. Seleccione los campos de la lista “Widgets disponibles” como se muestra. Proporcione una expresión para el valor predeterminado en el cuadro de diálogo “Valores predeterminados”. Si se marca la opción “Aplicar valor predeterminado al actualizar”, el valor se ajustará cada vez que la geometría de la entidad u otra attribute está cambiado. Esto hace posibles cosas como una marca de tiempo “last_modified” o un “área” actualizada.
QGIS 2.18
A partir de QGIS 2.18, esto es posible sin herramientas adicionales.
Simplemente vaya a las propiedades del campo, haga clic en el botón en el campo al que le gustaría asignar un valor predeterminado e ingrese una expresión. También puede tomar la geometría como entrada.
Nota al margen: sé que la pregunta original apunta a QGIS 2.14, pero creo que esto sigue siendo de interés para los futuros lectores de esta pregunta.
Existe el complemento AutoFields que le permite crear (o modificar) attribute campos y actualizarlos automáticamente con una expresión personalizada.
También se ha probado con varios formatos y los campos automáticos no se consideran campos virtuales (citado en la página de inicio del complemento):
¿Los AutoFields funcionan con el formato vectorial ‘X’?
Ya probamos AutoFields en PostgreSQL/PostGIS, SpatiaLite, Shapefiles, WFS-T (Transactional Web Feature Service) y capas de memoria. Avíseme si usa AutoFields en otros formatos vectoriales.
¿Son los AutoFields como campos virtuales?
No. A diferencia de los campos virtuales, los campos automáticos:
- Almacenar valores calculados en los datos;
- Son independientes de los proyectos de QGIS, es decir, puede cambiar entre proyectos de QGIS y AutoFields seguirá funcionando;
- Solo trabaje en capas vectoriales editables.
Ya que me gustaría usar estos attributes valores mencionados anteriormente para controlar algunos aspectos de la simbología (tamaño del símbolo, opacidad), algunas investigaciones posteriores revelaron que con propiedades definidas por datos hay otra gran (y flexible) manera de lograr esto. Una expresión (genérica)
if("attribute_name" is null, @default_value, "attribute_name")
donde @default_value
se define como una variable de proyectos, devuelve un valor predeterminado que puede definir el usuario cuando no se establece ningún valor para el attribute attribute_name
y su valor más.
Definir variables en las propiedades del proyecto:
Configure una expresión con propiedades definidas por datos (color rojo con opacidad definida por el usuario en este caso):
Aquí puedes ver las comentarios y valoraciones de los lectores
Si tienes algún dilema y capacidad de regenerar nuestro artículo puedes realizar una interpretación y con gusto lo estudiaremos.