Cuadro de diálogo Definir fórmula (Generador de informes 3.0)

Utilice el cuadro de diálogo Definir fórmula para crear una fórmula o un campo nuevo que contenga una fórmula.

El cuadro de diálogo contiene las fichas Campos y Funciones.

  • Utilice la ficha Campos para ubicar campos en el modelo de informe que desea incluir en la fórmula.

  • Utilice la ficha Funciones para seleccionar las funciones que desee utilizar en la fórmula.

Opciones de la ficha Campos

  • Entidades
    Enumera las entidades. Haga clic en una entidad para mostrar sus campos en la lista Campos.

  • Campos
    Enumera los campos en las entidades. Puede arrastrar un campo al cuadro de texto Fórmula o hacer doble clic en el campo para agregarlo al cuadro de texto Fórmula.

  • Nuevo campo
    Haga clic para agregar un campo nuevo. El valor Nuevo campo <nombre de entidad> aparece en Nombre de campo.

  • Nombre de campo
    Escriba un nombre para el nuevo campo que está creando.

  • Fórmula
    Se utiliza para escribir y editar la fórmula.

  • Buscar
    Haga clic en esta opción para iniciar el cuadro de diálogo Buscar.

  • Modo avanzado
    Haga clic para mostrar las relaciones adicionales entre las entidades. Estas relaciones permiten crear consultas complejas. Al hacer clic en el botón Modo avanzado, se muestran tres tipos de roles adicionales:

    • Roles invertidos. Los roles invertidos muestran la relación retrocediendo hasta la entidad de partida.

    • Entidades de búsqueda. Una entidad de búsqueda es un rol que contiene un solo campo de interés.

    • Entidades que heredan directamente de los antecesores directos de la entidad seleccionada pero no son antecesores directos de la entidad actual.

  • Agregar aquí
    Si hace doble clic en un nombre de campo que aparece en el cuadro de texto Fórmula, se muestra la relación entre la entidad principal y la entidad del campo. Haga clic para aplicar un agregado a la expresión en cualquier lugar de la ruta del modelo.

  • Abreviaturas de función
    Haga clic en esta opción para agregar un operador a la fórmula que aparece en el cuadro de texto Fórmula. El cuadro de diálogo Definir fórmula proporciona accesos directos a las funciones utilizadas con más frecuencia; sin embargo, puede seleccionar estos operadores también en la ficha Funciones. A continuación se muestra una explicación de cada abreviatura.

    + Se utiliza para sumar dos valores.

    - Se utiliza para restar un valor de otro.

    * Se utiliza para multiplicar dos valores.

    / Se utiliza para dividir dos valores.

    & Se utiliza para concatenar dos valores.

    ( Se utiliza para iniciar un cálculo

    ). Se utiliza para finalizar un cálculo.

  • Fórmula expandida
    Si hace doble clic en un nombre de campo que aparece en el cuadro de texto Fórmula, se muestra la relación entre la entidad principal y la entidad del campo. Es posible aplicar un filtro a la expresión en cualquier lugar de la ruta de acceso del modelo.

    • Haga clic en No se aplicó ningún filtro y, a continuación, haga clic en Crear filtro nuevo para crea un nuevo filtro para el campo.

    • Si el campo ya tiene un filtro, haga clic en él y, a continuación, hace clic en Editar filtro.

    • Para quitar un filtro existen, haga clic en él y haga clic en Quitar.

  • Guardar esta fórmula como un campo <nombre de entidad>nuevo
    Active la casilla para indicar que desea agregar la fórmula como un campo.

Opciones de la ficha Funciones

La información siguiente describe cada una de las funciones que se incluyen en la ficha Funciones del cuadro de diálogo Definir fórmula.

Funciones de agregado

Para resumir un intervalo de valores numéricos, utilice las siguientes funciones.

  • SUM
    Devuelve la suma de todos los valores dentro de la expresión.

    Sintaxis

    SUM(aggregate)

    SUM se puede utilizar con campos que solo contienen valores numéricos. Los valores NULL se pasan por alto.

  • AVERAGE
    Devuelve el promedio (media aritmética) de todos los valores que no son NULL dentro de la expresión.

    Sintaxis

    AVERAGE(aggregate)

    AVERAGE solo se puede usar con campos que contengan valores numéricos. Los valores NULL se pasan por alto.

  • MAX
    Devuelve el valor máximo de la expresión.

    Sintaxis

    MAX(aggregate)

    Para las columnas de caracteres, MAX busca el valor más alto de la secuencia de intercalación. Los valores NULL se pasan por alto.

  • MIN
    Devuelve el valor mínimo de la expresión.

    Sintaxis

    MIN(aggregate)

    Para columnas de caracteres, MIN busca el valor menor en la secuencia de intercalación. Los valores NULL se pasan por alto.

  • COUNT
    Devuelve el número de elementos no NULL de un grupo.

    Sintaxis

    COUNT(aggregate)

    COUNT siempre devuelve un valor de tipo de datos Int.

  • COUNTDISTINCT
    Devuelve el número de instancias distintas no NULL de un elemento de un grupo.

    Sintaxis

    COUNTDISTINCT(aggregate)

  • STDEV
    Devuelve la desviación estándar de valores no NULL de un elemento.

    Sintaxis

    STDEV(aggregate)

  • STDEVP
    Devuelve la desviación estándar de población de valores no NULL de un elemento.

    Sintaxis

    STDEVP(aggregate)

  • VAR
    Devuelve la varianza de valores no NULL de un elemento.

    Sintaxis

    VAR(aggregate)

  • VARP
    Devuelve la varianza de población de valores no NULL de un elemento.

    Sintaxis

    VARP(aggregate)

Condicional

Para probar una condición, utilice las siguientes funciones.

  • IF
    Devuelve un valor si se especifica una condición que se evalúa como TRUE y otro valor si se especifica una condición que se evalúa como FALSE.

    Sintaxis

    IF(condition, value_if_true, value_if_false)

    La condición debe ser un valor o expresión que pueda tener como resultado TRUE o FALSE. Value_if_true representa el valor devuelto si la condición es true. Value_if_false representa el valor devuelto si la condición es false.

  • IN
    Determina si un elemento es miembro de un conjunto.

    Sintaxis

    IN(item, set)

  • SWITCH
    Evalúa una lista de expresiones y devuelve un valor de una expresión asociada a la primera expresión de la lista que se cumple (es TRUE). El modificador puede tener uno o más pares condiciones/valor.

    Sintaxis

    Switch(condition1, value1)

Conversión

Para convertir un valor de un tipo de datos en otro tipo, utilice las siguientes funciones.

  • INT
    Convierte un valor en un entero.

    Sintaxis

    INT(value)

  • DECIMAL
    Convierte un valor en un decimal.

    Sintaxis

    DECIMAL(value)

  • FLOAT
    Convierte un valor en un dato de tipo flotante.

    Sintaxis

    FLOAT(value)

  • TEXT
    Convierte un valor numérico en texto.

    Sintaxis

    TEXT(value)

Funciones de fecha y hora

Para mostrar la fecha o la hora, utilice las siguientes funciones.

  • DATE
    Devuelve un valor de fecha y hora para un año, mes y día dados a las 12:00:00 AM.

    Sintaxis

    DATE(year, month, day)

  • DATEONLY
    Devuelve el año, mes y día a partir de un valor de fecha y hora.

    Sintaxis

    DATEONLY(datetime)

  • DATETIME
    Devuelve un valor de fecha y hora para un año, mes, día, hora, minuto y segundo dados.

    Sintaxis

    DATETIME(year, month, day, hour, minute, second)

  • YEAR
    Devuelve un valor de año a partir de un valor de fecha y hora.

    Sintaxis

    YEAR(datetime)

  • QUARTER
    Devuelve el trimestre (1-4) de un valor de fecha y hora.

    Sintaxis

    QUARTER(datetime)

  • MONTH
    Devuelve el mes de un valor de fecha y hora.

    Sintaxis

    MONTH(datetime)

  • DAY
    Extrae el día de un valor de fecha y hora.

    Sintaxis

    DAY(datetime)

  • HOUR
    Extrae la hora de un valor de fecha y hora.

    Sintaxis

    HOUR(datetime)

  • MINUTE
    Extrae el minuto de un valor de fecha y hora.

    Sintaxis

    MINUTE(datetime)

  • SECOND
    Extrae el segundo de un valor de fecha y hora.

    Sintaxis

    SECOND(datetime)

  • WEEK
    Devuelve el valor numérico correspondiente a la semana dentro del año natural.

    Sintaxis

    WEEK(datetime)

  • DAYOFWEEK
    Devuelve el día de la semana, empezando por el lunes. Los valores van de lunes = 1 a domingo = 7.

    Sintaxis

    DAYOFWEEK(datetime)

  • NOW
    Devuelve la fecha y hora actuales.

    Sintaxis

    NOW( )

  • TODAY
    Devuelve la fecha actual.

    Sintaxis

    TODAY( )

  • DATEDIFF
    Devuelve la diferencia entre los valores de fecha y hora de inicio y de fin.

    Sintaxis

    DATEDIFF(interval, datetime, datetime)

  • DATEADD
    Devuelve un valor de fecha y hora que es el resultado de agregar el número especificado de unidades de intervalo de tiempo a la fecha y hora originales.

    Sintaxis

    DATEADD(interval, units, datetime)

Funciones lógicas

Para probar la lógica de una condición, utilice las siguientes funciones.

  • AND
    Devuelve TRUE si todos los argumentos son TRUE; devuelve FALSE si uno o más argumentos son FALSE.

    Sintaxis

    AND(logical, logical)

    Los argumentos deben evaluarse como valores lógicos, como TRUE o FALSE, o deben ser matrices o referencias que contengan valores lógicos. Si un argumento de matriz o referencia contiene texto o celdas vacíos, dichos valores se pasan por alto.

  • OR
    Devuelve TRUE si algún argumento es TRUE; devuelve FALSE si todos los argumentos son FALSE.

    Sintaxis

    OR(logical, logical)

    Los argumentos deben evaluarse como valores lógicos, como TRUE o FALSE, o en matrices o referencias que contengan valores lógicos. Si una matriz o referencia contiene texto o celdas vacíos, dichos valores se pasan por alto.

  • NOT
    Invierte el valor de su argumento. Utilice NOT cuando desee asegurarse de que una cláusula no es igual a un valor específico.

    Sintaxis

    NOT(logical)

    Si el valor es FALSE, NOT devuelve TRUE; si el valor es TRUE, NOT devuelve FALSE.

Funciones matemáticas

Para manipular valores numéricos, utilice las siguientes funciones.

  • MOD
    Devuelve el resto después de dividir un número entre un divisor. El divisor no puede ser 0.

    Sintaxis

    MOD(number, divisor)

  • TRUNC
    Trunca un número en el número de dígitos especificado. Si el número es positivo, el número se trunca a la derecha del separador decimal. Si el número es negativo, el número se trunca a la izquierda del separador decimal.

    Sintaxis

    TRUNC(number, digits)

  • ROUND
    Redondea un número al número de dígitos especificado.

    Sintaxis

    ROUND(number, digits)

    Si el número de dígitos es mayor que 0 (cero), el número se redondea al número especificado de posiciones decimales. Si el número de dígitos es 0, el número se redondea al entero más cercano. Si el número es menor que 0, entonces se redondea a la izquierda del separador decimal.

Operadores

Operadores aritméticos

Para realizar las operaciones matemáticas básicas, como la suma, la resta o la multiplicación; combinar números; y generar resultados numéricos, utilice los siguientes operadores. Los accesos directos a funciones contienen los operadores aritméticos que más se usan.

  • + Sumar
    Se utiliza para sumar dos o más elementos.

    Sintaxis

    value + value

  • - Restar
    Se utiliza para restar un elemento de otro.

    Sintaxis

    value- value

  • * Multiplicar
    Se utiliza para multiplicar elementos.

    Sintaxis

    value* value

  • / Dividir
    Se utiliza para dividir elementos. El divisor no puede ser 0.

    Sintaxis

    value/divisor

  • - Cambiar a negativo
    Cambia el signo del valor.

    Sintaxis

    -value

  • ^ Exponenciación
    Se utiliza para elevar un valor (value) a una potencia (power) (exponenciación).

    Sintaxis

    value^power

  • = Igual a
    Se utiliza para igualar dos valores. Es TRUE cuando value1 es igual a value2.

    Sintaxis

    value1= value2

  • <> No es igual a
    Se utiliza para indicar que dos valores no son iguales entre sí. Es TRUE cuando value1 no es igual a value2.

    Sintaxis

    value1 <> value2

  • > Mayor que
    Se utiliza para indicar que un valor es mayor que otro. Es TRUE cuando value1 es mayor que value2.

    Sintaxis

    value1 > value2

  • >= Mayor o igual que
    Se utiliza para indicar que un valor es mayor o igual que otro. Es TRUE cuando value1 es mayor o igual que value2.

    Sintaxis

    value1 >= value2

  • < Menor que
    Se utiliza para indicar que un valor es menor que otro. Es TRUE cuando value1 es menor que value2.

    Sintaxis

    value1 < value2

  • <= Menor o igual que
    Se utiliza para indicar que un valor es menor o igual que otro. TRUE cuando value1 es menor o igual que value2.

    Sintaxis

    value1 <= value2

Funciones de texto

Para manipular texto, utilice las siguientes funciones.

  • CONCAT (&)
    Combina dos cadenas en una. La segunda cadena se anexa a la primera.

    Sintaxis

    string & string

  • FIND
    Posición de la primera instancia de una cadena.

    Sintaxis

    FIND(string, substring)

  • LEFT
    Devuelve los caracteres del extremo izquierdo de una cadena. Si especifica un valor inferior a cero para el argumento length dentro de la función, el comportamiento quedará sin definir.

    Sintaxis

    LEFT(string, length)

  • LENGTH
    Devuelve el número de caracteres de una cadena.

    Sintaxis

    LENGTH(string)

  • LOWER
    Convierte en minúsculas una cadena que estaba en mayúsculas.

    Sintaxis

    LOWER(string)

  • LTRIM
    Devuelve una cadena donde se han quitado los espacios iniciales.

    Sintaxis

    LTRIM(string)

  • REPLACE
    Devuelve una cadena en la que se han reemplazado todas las instancias de una subcadena por otra subcadena.

    Sintaxis

    REPLACE(find, replace, string)

  • RIGHT
    Devuelve los caracteres del extremo derecho de una cadena. Si especifica un valor inferior a cero para el argumento length dentro de la función, el comportamiento quedará sin definir.

    Sintaxis

    RIGHT(string, length)

  • RTRIM
    Devuelve una cadena donde se han quitado los espacios finales.

    Sintaxis

    RTRIM(string)

  • TEXT
    Convierte un valor numérico en una cadena.

    Sintaxis

    TEXT(value)

  • SUBSTRING
    Devuelve una subcadena de una cadena. Si especifica un valor inferior a cero para el argumento length dentro de la función, el comportamiento quedará sin definir.

    Sintaxis

    SUBSTRING(string, start, length)

  • UPPER
    Convierte en mayúsculas una cadena que estaba en minúsculas.

    Sintaxis

    UPPER(string)

Funciones de información

Para devolver información global acerca de los usuarios, utilice las siguientes funciones.

  • GETUSERID
    Devuelve el identificador que el usuario utilizó para obtener acceso a los datos.

    Sintaxis

    GETUSERID()

  • GETUSERCULTURE
    Devuelve el idioma del usuario o la configuración regional.

    Syntax

    GETUSERCULTURE()