Ir al contenido

Escribir expresiones

Tableta de escritura con fórmulas manuscritas apoyada sobre un teclado, junto a una taza de café y un bolígrafo

Una expresión es una fórmula corta que calcula un valor: el importe con IVA de una línea, una etiqueta según el total, un vencimiento a treinta días. Se usan en los listados, en las columnas calculadas y en las condiciones, y aquí está la referencia del lenguaje en tres niveles de detalle.

¿Dónde empiezo si solo quiero calcular una columna?

Por la guía rápida del lenguaje de expresiones. Es la referencia práctica: una tabla de «quiero esto, escribo esto», las funciones que más se usan y los errores típicos con el aviso que da cada uno.

Con eso se cubre casi todo lo del día a día. Un campo de la fila se escribe entre corchetes, [Importe]; los números llevan punto decimal; comparar es == y no =; y da igual cómo escribas las mayúsculas en los nombres de campo y de función.

¿Qué pasa con los campos vacíos?

Se comportan como en la base de datos: cualquier operación con un vacío da vacío. Es la causa más frecuente de que una columna calculada salga en blanco sin dar error, y el remedio es dar un valor por defecto al campo antes de operar con él.

La guía rápida tiene una sección entera dedicada a esto, con las formas de preguntar si un campo está vacío y las funciones que ignoran los vacíos en vez de propagarlos.

¿Puedo escribir en el estilo que conozco?

Sí. No hay ningún selector ni modo que activar: la gramática acepta a la vez las formas de C# y las de Python, incluso mezcladas en la misma expresión. Escribe && o and, c ? a : b o a if c else b, null o None, y el resultado es exactamente el mismo.

El manual mínimo de sintaxis y uso lo resume en una página, con la tabla de equivalencias entre los dos estilos y la sintaxis entera en diez líneas. Es el punto intermedio entre la guía rápida y la especificación.

¿Dónde está la definición exacta del lenguaje?

En la gramática del motor de expresiones: los tokens, la gramática formal, los tipos y sus conversiones, la semántica de los vacíos y la lista de funciones permitidas. Es la especificación, no un tutorial: se consulta cuando la duda es si algo es válido o no.

¿Por qué unas expresiones son cortas y otras son un script?

Porque hay dos niveles y no sirven para lo mismo. El nivel de expresión es una sola fórmula sin sentencias ni asignaciones, y esa limitación es deliberada: al no poder repetir ni asignar, siempre termina. Es lo que se usa en los listados y en las columnas calculadas.

El segundo nivel son scripts, con variables y bloques, y está pensado para automatizaciones y plugins. Los tres documentos lo tratan al final: la guía rápida lo presenta, el manual dice para qué se usa y para qué no, y la gramática lo define.

¿Qué pasa cuando una expresión está mal?

No se ejecuta a medias: el programa avisa antes. Los errores están escritos para leerse sin saber programar, y varios sugieren la corrección —un campo mal tecleado propone el nombre parecido, y usar = para comparar recuerda que se escribe ==—.

Hay un aviso que no es un error de sintaxis y conviene reconocer: si la expresión usa datos que tu perfil no puede ver, el programa lo dice y no calcula. Los permisos también mandan aquí.