Anterior Siguiente

Clase BirtComp

La clase BirtComp proporciona funciones para comparar valores, por ejemplo, para probar si un valor es igual a, mayor que o menor que otro valor. Todas las funciones devuelven valores booleanos. Esta clase es estática. La aplicación no puede crear instancias de la clase.

BirtComp.anyOf

Esta función compara uno o más valores con el contenido de un campo.

Sintaxis

boolean BirtComp.anyOf( source, target1, ..., targetN )

Parámetros

source

Un campo con contenido a utilizar para la comparación.

target

El valor o valores a buscar en el origen.

Devuelve

Booleano. True si un valor de destino coincide con un valor de origen; de lo contrario, devuelve false.

Ejemplos

El ejemplo siguiente prueba si Canada, Mexico o USA son valores en el campo Country. Si alguno de los países está en el campo, la función devuelve true.

BirtComp.anyOf(dataSetRow["Country"], "Canada", "Mexico", "USA")

El ejemplo siguiente prueba si el 15 de enero de 2009 o el 31 de enero de 2009 son valores en el campo payDate:

BirtComp.anyOf(dataSetRow["payDate"], "2009-01-15", "2009-01-31")

El ejemplo siguiente prueba si dos códigos de producto específicos son valores en el campo productCode. Si aparece uno de los dos valores en el campo, se muestra la serie Obsolete; de lo contrario, el valor productCode se visualiza como aparece en el campo.

if (BirtComp.anyOf(dataSetRow["PRODUCTCODE"], "S18_1749", "S18_2248" )){
  displayString = "Obsolete"
}else{
  dataSetRow["PRODUCTCODE"]
}

BirtComp.between

Esta función prueba si hay un valor entre dos valores especificados.

Sintaxis

boolean BirtComp.between( source, target1, target2 )

Parámetros

source

El valor a probar.

target1

El primer valor en el rango de valores con que comparar.

target2

El segundo valor en el rango de valores con que comparar.

Devuelve

True si el valor de origen está entre los valores target1 y target; de lo contrario, devuelve false.

Ejemplos

Las siguientes expresiones prueban valores de campo para ver si están dentro de un rango de valores especificado:

BirtComp.between( row["SalesTotal"], 10000, 20000 )
BirtComp.between( row["CustomerName"], "A", "M" )
BirtComp.between( row["OrderDate"], "2009-01-01", "2009-01-31" )

El ejemplo siguiente calcula fechas de envío. Si un valor OrderDate está en diciembre de 2008 (entre 12/01/08 y 12/31/08), añada 5 días al valor OrderDate. Si un valor OrderDate está en un mes que no es diciembre, añada 3 días al valor OrderDate.

if (BirtComp.between(row["OrderDate"], "2008-12-01", "2008-12-31" )){
  shipDate = BirtDateTime.addDay( row["OrderDate"], 5 )
  }
else{
  ShipDate = BirtDateTime.addDay( row["OrderDate"], 3 )
  }

BirtComp.compareString

Esta función prueba si un valor de serie coincide con otro valor de serie, dadas las condiciones especificadas.

Sintaxis

boolean BirtComp.compareString( source1, source2, ignoreCase, trim )

Parámetros

source1

El primer valor de serie a utilizar en la comparación.

source2

El segundo valor de serie a utilizar en la comparación.

ignoreCase

Especifique true para realizar una comparación que no distinga mayúsculas y minúsculas. Especifique false para realizar una comparación que distinga mayúsculas y minúsculas.

trim

Especifique true para eliminar blancos iniciales o finales antes de comparar los dos valores. Los blancos en medio de una serie no se eliminan. Especifique false si desea que la comparación incluya blancos iniciales o finales.

Devuelve

True si el valor source1 coincide con el valor source2; de lo contrario, devuelve false.

Ejemplos

Las siguientes expresiones comparan series con distintas condiciones especificadas:

BirtComp.compareString( "Jackson", "Jackson", false, false ) // devuelve true
BirtComp.compareString( "Jackson", "jackson", false, true ) // devuelve false
BirtComp.compareString( "Jackson", "jackson", true, false ) // devuelve true
BirtComp.compareString( "Jackson ", "jackson", true, false ) // devuelve false
BirtComp.compareString( "Jackson ", "jackson", true, true ) // devuelve true

BirtComp.equalTo

Esta función prueba si un valor es igual a otro valor.

Sintaxis

boolean BirtComp.equalTo( source, target )

Parámetros

source

El primer valor a utilizar en la comparación.

target

El segundo valor a utilizar en la comparación.

Devuelve

True si el valor de origen es igual que el valor de destino; de lo contrario, devuelve false.

Ejemplos

Las siguientes expresiones prueban valores de campo para ver si son iguales a valores especificados:

BirtComp.equalTo( row["SalesTotal"], 10000 )
BirtComp.equalTo( row["Country"], "France" )
BirtComp.equalTo( row["OrderDate"], "2009-02-15" )

BirtComp.greaterOrEqual

Esta función prueba si un valor es mayor o igual que otro valor.

Sintaxis

boolean BirtComp.greaterOrEqual( source, target )

Parámetros

source

El primer valor a utilizar en la comparación.

target

El segundo valor a utilizar en la comparación.

Devuelve

True si el valor de origen es mayor o igual que el valor de destino; de lo contrario, devuelve false.

Ejemplos

Las siguientes expresiones prueban valores de campo para ver si son mayores o iguales a valores especificados:

BirtComp.greaterOrEqual( row["SalesTotal"], 10000 )
BirtComp.greaterOrEqual( row["ProductCode"], "S50_4000" )
BirtComp.greaterOrEqual( row["OrderDate"], "2009-02-15" )

BirtComp.greaterThan

Esta función prueba si un valor es mayor que otro valor.

Sintaxis

boolean BirtComp.greaterThan( source, target )

Parámetros

source

El primer valor a utilizar en la comparación.

target

El segundo valor a utilizar en la comparación.

Devuelve

True si el valor de origen es mayor o igual que el valor de destino; de lo contrario, devuelve false.

Ejemplos

Las siguientes expresiones prueban valores de campo para ver si son mayores que valores especificados:

BirtComp.greaterThan( row["SalesTotal"], 10000 )
BirtComp.greaterThan( row["CustomerName"], "M" )
BirtComp.greaterThan( row["OrderDate"], "2009-02-15" )

BirtComp.lessOrEqual

Esta función prueba si un valor es menor o igual que otro valor.

Sintaxis

boolean BirtComp.lessOrEqual( source, target )

Parámetros

source

El primer valor a utilizar en la comparación.

target

El segundo valor a utilizar en la comparación.

Devuelve

True si el valor de origen es menor o igual que el valor de destino; de lo contrario, devuelve false.

Ejemplos

Las siguientes expresiones prueban valores de campo para ver si son menores o iguales a valores especificados:

BirtComp.lessOrEqual( row["SalesTotal"], 10000 )
BirtComp.lessOrEqual( row["ProductCode"], "S18_4000" )
BirtComp.lessOrEqual( row["OrderDate"], "2009-02-15" )

BirtComp.lessThan

Esta función prueba si un valor es menor que otro valor.

Sintaxis

boolean BirtComp.lessThan( source, target )

Parámetros

source

El primer valor a utilizar en la comparación.

target

El segundo valor a utilizar en la comparación.

Devuelve

True si el valor de origen es menor que el valor de destino; de lo contrario, devuelve false.

Ejemplos

Las siguientes expresiones prueban valores de campo para ver si son menores que valores especificados:

BirtComp.lessThan( row["SalesTotal"], 10000 )
BirtComp.lessThan( row["CustomerName"], "M" )
BirtComp.lessThan( row["OrderDate"], "2009-02-15" )

BirtComp.like

Esta función prueba si un valor de serie coincide con un patrón. El patrón debe utilizar la sintaxis de coincidencia de patrón de SQL.

Sintaxis

boolean BirtComp.like( source, target )

Parámetros

source

El valor de serie a evaluar.

target

El patrón de serie a comparar. Debe especificar el patrón entre comillas (" "). Utilice mayúsculas y minúsculas correctamente al escribir los caracteres que desee comparar. Puede utilizar el carácter especial siguiente en un patrón:

*
*

Para emparejar un carácter de porcentaje (%) o subrayado (_) literal, coloque antes de esos caracteres dos caracteres de barra inclinada invertida (\\). Por ejemplo, para emparejar S_10, utilice el siguiente patrón:

S\\_10

Para emparejar 50%, utilice el siguiente patrón:

50\\%

Devuelve

True si el valor de origen coincide con el valor de destino; de lo contrario, devuelve false.

Ejemplos

El ejemplo siguiente devuelve true para los valores del campo productCode que empiezan por S18:

BirtComp.like( row["productCode"], "S18%" )

El ejemplo siguiente devuelve true para los valores de productName que contienen la subserie Ford precedida de un solo carácter:

BirtComp.like( row["productName"], "_Ford%" )

BirtComp.match

Esta función prueba si un valor de serie coincide con un patrón. El patrón debe utilizar la sintaxis de expresión regular de JavaScript.

Sintaxis

boolean BirtComp.match( source, target )

Parámetros

source

El valor de serie a evaluar.

target

El patrón de serie a comparar. En la sintaxis de expresión regular de JavaScript, especificará un patrón dentro de un par de caracteres de barra inclinada (/). Puede utilizar cualquier carácter especial soportado por las expresiones regulares de JavaScript, por ejemplo los siguientes:

*
*
*
*
*

Para emparejar un carácter especial literalmente coloque, antes del carácter especial, un carácter de barra inclinada invertida (\). Por ejemplo, para emparejar S*10, utilice el siguiente patrón:

/S\*10/

Devuelve

True si el valor de origen coincide con el valor de destino; de lo contrario, devuelve false.

Ejemplos

El ejemplo siguiente devuelve true para los valores del campo productCode que empiezan por S18:

BirtComp.match( row["productCode"], /^S18/ )

El ejemplo siguiente devuelve true para los valores de productName que contienen la subserie Ford:

BirtComp.match( row["productName"], /Ford/ )

BirtComp.notBetween

Esta función prueba si no hay un valor entre dos valores especificados.

Sintaxis

boolean BirtComp.notBetween( source, target1, target2 )

Parámetros

source

El valor a probar.

target1

El primer valor en el rango de valores con que comparar.

target2

El segundo valor en el rango de valores con que comparar.

Devuelve

True si el valor de origen no está entre los valores target1 y target; de lo contrario, devuelve false.

Ejemplos

Las siguientes expresiones prueban valores de campo para ver si están fuera de un rango de valores especificado:

BirtComp.notBetween( row["SalesTotal"], 10000, 20000 )
BirtComp.notBetween( row["CustomerName"], "A", "M" )
BirtComp.notBetween( row["OrderDate"], "2009-01-01", "2009-01-31" )

El ejemplo siguiente calcula fechas de envío. Si un valor OrderDate no está en diciembre de 2008 (no está entre 12/01/08 y 12/31/08), añada 3 días al valor OrderDate. Si un valor OrderDate está en diciembre, añada 5 días al valor OrderDate.

if (BirtComp.notBetween(row["OrderDate"], "2008-12-01", "2008-12-31" )){
  shipDate = BirtDateTime.addDay( row["OrderDate"], 3 )
  }
else{
  ShipDate = BirtDateTime.addDay( row["OrderDate"], 5 )
  }

BirtComp.notEqual

Esta función prueba si un valor no es igual a otro valor.

Sintaxis

boolean BirtComp.notEqual( source, target )

Parámetros

source

El primer valor a utilizar en la comparación.

target

El segundo valor a utilizar en la comparación.

Devuelve

True si el valor de origen no es igual que el valor de destino; de lo contrario, devuelve false.

Ejemplos

Las siguientes expresiones prueban valores de campo para ver si no son iguales a valores especificados:

BirtComp.notEqual( row["SalesTotal"], 10000 )
BirtComp.notEqual( row["Country"], "France" )
BirtComp.notEqual( row["OrderDate"], "2009-02-15" )

BirtComp.notLike

Esta función prueba si un valor de serie coincide o no con un patrón. El patrón debe utilizar la sintaxis de coincidencia de patrón de SQL.

Sintaxis

boolean BirtComp.notLike( source, target )

Parámetros

source

El valor de serie a evaluar.

target

El patrón de serie a comparar. Debe especificar el patrón entre comillas (" "). Utilice mayúsculas y minúsculas correctamente al escribir los caracteres que desee comparar. Puede utilizar el carácter especial siguiente en un patrón:

*
*

Para emparejar un carácter de porcentaje (%) o subrayado (_) literal, coloque antes de esos caracteres dos caracteres de barra inclinada invertida (\\). Por ejemplo, para emparejar S_10, utilice el siguiente patrón:

S\\_10

Para emparejar 50%, utilice el siguiente patrón:

50\\%

Devuelve

True si el valor de origen no coincide con el valor de destino; de lo contrario, devuelve false.

Ejemplos

El ejemplo siguiente devuelve false para los valores del campo productCode que empiezan por S18:

BirtComp.notLike( row["productCode"], "S18%" )

El ejemplo siguiente devuelve false para los valores de productName que contienen la subserie Ford precedida de un solo carácter:

BirtComp.notLike( row["productName"], "_Ford%" )

(c) Copyright Actuate Corporation 2013