# Campos calculados

La mayoría de elementos del catálogo serán campos existentes en las tablas de la base de datos, y por lo tanto podremos crearlos arrastrándolos directamente desde el diagrama a la vista catálogo. Sin embargo, en ocasiones necesitamos hacer algún cálculo o transformación adicional.

Desde las propiedades de un elemento de negocio (dimensión, indicador o filtro) podemos establecer la definición Crono SQL de dicho elemento. Podemos utilizar cualquier código SQL que admita la base de datos (incluyendo las funciones Crono SQL propias de Crono).

Por ejemplo, si se quiere que el nombre del responsable comercial se muestre siempre en mayúsculas (independientemente de cómo esté guardado en la base de datos) podemos utilizar la función upper:

image-20200302181754134

Crono detectará automáticamente el tipo de datos y si la fórmula corresponde a una dimensión, un indicador, o un filtro.

image-20200302182217992

Se pueden crear indicadores que utilicen distintas columnas (incluso si esas columnas están en diferentes tablas). Por ejemplo, podemos crear el "Importe €" multiplicando el precio unitario por las unidades vendidas:

image-20200302183229972

Tal como se muestra en la imagen anterior, hemos de utilizar el identificador completo de la columna: [nombre de la tabla].[nombre del campo]. Crono utilizará esta información para detectar las tablas necesarias y generar la consulta correspondiente.

Es posible definir elementos calculados a partir de los elementos existentes en el catálogo. Por ejemplo, podemos crear el indicador Precio medio a partir de los indicadores existentes Importe € y Unidades vendidas.

image-20200302183927161

En este ejemplo, se ha utilizado la función Crono SQL divide. Esta función realiza el cociente de los dos valores cuando el denominador no es cero. Es decir, evita el problema de la "división entre cero".

El usuario podrá utilizar todos estos indicadores del mismo modo que utiliza el resto de elementos del catálogo. Crono detectará las tablas necesarias y generará la consulta correspondiente.

image-20200302184402723