Anterior Siguiente

Clase BirtMath

La clase BirtMath proporciona funciones para manipular datos numéricos, por ejemplo, para sumar, restar, multiplicar, dividir y redondear números. Un número es un objeto genérico que se puede convertir en otro tipo en el campo Tipo de datos del diálogo Editar enlace de datos. Esta clase es estática. La aplicación no puede crear instancias de la clase.

BirtMath.add

Esta función devuelve la suma de dos números.

Sintaxis

Number BirtMath.add( Number n1, Number n2 )

Parámetros

n1

Objeto de número. El primer número a utilizar en el cálculo.

n2

El segundo número a utilizar en el cálculo.

Devuelve

Objeto de número. El número que resulta de sumar n1 y n2.

Ejemplo

El ejemplo siguiente devuelve la suma de valores de los campos SalesTotal y Shipping:

BirtMath.add( row["SalesTotal"], row["Shipping"] )

BirtMath.ceiling

Esta función redondea un número, lejos de 0, al múltiplo más cercano especificado.

Sintaxis

Number BirtMath.ceiling( Number n, Number significance )

Parámetros

n

Objeto de número. El número a redondear.

significance

Objeto de número. El múltiplo al que redondear n.

Devuelve

Objeto de número. Un número que resulta las del redondeo. Si n es un múltiplo de significance, no se produce redondeo.

Ejemplos

BirtMath.ceiling( ) se utiliza corrientemente para redondear precios. Por ejemplo, para evitar las monedas de 1, puede redondear los precios del campo Price a la moneda de 5 más cercana con la siguiente expresión:

BirtMath.ceiling( row["Price"] , 0.05 )

Si el valor de Price es 20.52, la expresión devuelve 20.55.

La siguiente expresión redondea los precios a la siguiente moneda de 10:

BirtMath.ceiling( row["Price"] , 0.1 )

Si el valor de Price es 20.52, la expresión devuelve 20.60. Si el valor de Price es 20.40, la expresión devuelve 20.40. No se produce redondeo porque 20.40 es un múltiplo de 0.1.

La siguiente expresión redondea los precios a la siguiente moneda unitaria:

BirtMath.ceiling( row["Price"] , 1 )

Si el valor de Price es 20.30, la expresión devuelve 21.

BirtMath.divide

Esta función devuelve el resultado de dividir un número entre otro.

Sintaxis

Number BirtMath.divide( Number dividend, Number divisor )

Parámetros

dividend

Objeto de número. El número a dividir.

divisor

Objeto de número. El número por el que se divide el dividendo.

Devuelve

Objeto de número. Un número que resulta de dividir el dividendo por el divisor.

Ejemplos

El ejemplo siguiente muestra los resultados de dividir números específicos:

BirtMath.divide( 10, 2 ) // devuelve 5
BirtMath.divide( 2, 10) // devuelve 0.2

El ejemplo siguiente devuelve el resultado de dividir valores en el campo Total por valores en el campo Quantity:

BirtMath.divide( row["Total"], row["Quantity"] )

BirtMath.mod

Esta función devuelve el resto después de que un número es dividido por un divisor.

Sintaxis

Number BirtMath.mod( Number number, Number divisor )

Parámetros

number

Objeto de número. El número a dividir.

divisor

Objeto de número. El número por el que se divide el primer número. Debe especificar un número distinto de cero.

Devuelve

El resto después de que se divida el número por el divisor.

Ejemplos

Los ejemplos siguientes muestran los resultados que la función devuelve para números específicos:

BirtMath.mod( 10, 3 ) // devuelve 1
BirtMath.mod( 10, 5 ) // devuelve 0
BirtMath.mod( 10, 6 ) // devuelve 4

El ejemplo siguiente comprueba si los número del campo Grade son pares o impares. Cuando el divisor es 2, la función devuelve 0 para los números pares, y 1 para los números impares.

BirtMath.mod( row["Grade"], 2 )

BirtMath.multiply

Esta función devuelve la multiplicación de dos números.

Sintaxis

Number BirtMath.multiply( Number n1, Number n2 )

Parámetros

n1

Objeto de número. El primer número a utilizar en el cálculo.

n2

Objeto de número. El segundo número a utilizar en el cálculo.

Devuelve

Objeto de número. Un número que resulta de multiplicar n1 y n2.

Ejemplo

El ejemplo siguiente devuelve el resultado de multiplicar valores en los campos QuantityOrdered y PriceEach:

BirtMath.multiply( row["QuantityOrdered"], row["PriceEach"] )

BirtMath.round

Esta función redondea un número a un número de dígitos especificado.

Sintaxis

Number BirtMath.round( Number number, Number dec )

Parámetros

number

Objeto de número. El número a redondear.

dec

Objeto de número. El número de dígitos a los que redondear el número. Si omite este argumento, la función toma 0.

Devuelve

Objeto de número. Un número redondeado a un número de dígitos especificado.

Ejemplos

Los ejemplos siguientes muestran los resultados que la función devuelve para números específicos:

BirtMath.round( 1545.50 ) // devuelve 1546
BirtMath.round( 1545.56, 1 ) // devuelve 1545.6
BirtMath.round( 1545.23, 1 ) // devuelve 1545.2
BirtMath.round( 1545.50, -1 ) // devuelve 1550

El ejemplo siguiente redondea los valores del campo PriceEstimate para devolver un entero:

BirtMath.round( row["PriceEstimate"], 0 )

BirtMath.roundDown

Esta función redondea un número por abajo a un número de dígitos especificado.

Sintaxis

Number BirtMath.roundDown( Number number, Number dec )

Parámetros

number

Objeto de número. El número a redondear.

dec

Objeto de número. El número de dígitos a los que redondear a la baja el número. Si omite este argumento, la función toma 0.

Devuelve

Objeto de número. Un número redondeado a la baja a un número de dígitos especificado.

Ejemplos

Los ejemplos siguientes muestran los resultados que la función devuelve para números específicos:

BirtMath.roundDown( 1545.50 ) // devuelve 1545
BirtMath.roundDown( 1545.56, 1 ) // devuelve 1545.5
BirtMath.roundDown( 1545.23, 1 ) // devuelve 1545.2
BirtMath.roundDown( 1545.50, -1 ) // devuelve 1540

El ejemplo siguiente redondea a la baja los valores del campo PriceEstimate para devolver un entero:

BirtMath.roundDown( row["PriceEstimate"], 0 )

BirtMath.roundUp

Esta función redondea un número por arriba a un número de dígitos especificado.

Sintaxis

Number BirtMath.roundUp( Number number, Number dec )

Parámetros

number

Objeto de número. El número a redondear.

dec

Objeto de número. El número de dígitos a los que redondear a la baja el número. Si omite este argumento, la función toma 0.

Devuelve

Objeto de número. Un número redondeado a la baja a un número de dígitos especificado.

Ejemplos

Los ejemplos siguientes muestran los resultados que la función devuelve para números específicos:

BirtMath.roundUp( 1545.50 ) // devuelve 1546
BirtMath.roundUp( 1545.56, 1 ) // devuelve 1545.6
BirtMath.roundUp( 1545.23, 1 ) // devuelve 1545.3
BirtMath.roundUp( 1545.50, -1 ) // devuelve 1550

El ejemplo siguiente redondea a la baja los valores del campo PriceEstimate para devolver un entero:

BirtMath.roundUp( row["PriceEstimate"], 0 )

BirtMath.safeDivide

Esta función devuelve el resultado de dividir un número entre otro, evitando una condición de división entre 0.

Sintaxis

Number BirtMath.safeDivide( Number dividend, Number divisor, object ifZero )

Parámetros

dividend

Objeto de número. El número a dividir.

divisor

Objeto de número. El número por el que se divide el dividendo.

ifZero

Objeto. El valor a devolver cuando el divisor es cero.

Devuelve

Objeto de número. Objeto de número. Un número que resulta de dividir el dividendo por el divisor.

Ejemplos

El ejemplo siguiente muestra los resultados que la función devuelve para números específicos:

BirtMath.safeDivide( 10, 2, 0 ) // devuelve 5
BirtMath.safeDivide( 10, 0, 0 ) // devuelve 0

El ejemplo siguiente devuelve el resultado de dividir valores en el campo Revenue por valores en el campo Volume. Si el valor de Volume es 0, la función devuelve 0.

BirtMath.safeDivide( row["Revenue"], row["Volume"], 0 )

BirtMath.subtract

Esta función devuelve el resultado de restar un número de otro.

Sintaxis

Number BirtMath.subtract( Number n1, Number n2 )

Parámetros

n1

Objeto de número. El número del que se resta.

n2

Objeto de número. El número que restar de n1.

Devuelve

Objeto de número. Un número que resulta de restar n2 de n1.

Ejemplo

El ejemplo siguiente muestra los resultados de restar números específicos:

BirtMath.subtract( 12, 4 ) // devuelve 8
BirtMath.subtract( 4, 12) // devuelve -8

El ejemplo siguiente devuelve el resultado de restar valores en el campo Discount de valores en el campo Total:

BirtMath.subtract( row["Total"], row["Discount"] )

(c) Copyright Actuate Corporation 2013