Vorheriges Nächstes

Klasse "BirtComp"

Die Klasse 'BirtComp' stellt Funktionen für den Vergleich von Werten bereit, beispielsweise um zu prüfen, ob ein Wert gleich, größer als oder kleiner als ein anderer Wert ist. Alle diese Funktionen geben boolesche Werte zurück. Diese Klasse ist statisch. Die Anwendung kann keine Instanzen der Klasse erstellen.

BirtComp.anyOf

Diese Funktion vergleicht mindestens einen Wert mit dem Inhalt eines Felds.

Syntax

boolean BirtComp.anyOf( quelle, ziel1, ..., zielN )

Parameter

quelle

Ein Feld mit Inhalt, der zum Vergleich herangezogen wird.

ziel

Der bzw. die Wert(e), der bzw. die in der Quelle gesucht werden soll(en).

Rückgabe

Boolean. Die Rückgabe ist 'true' (wahr), wenn ein Zielwert mit einem Wert in der Quelle übereinstimmt. Andernfalls wird der Wert 'false' (falsch) zurückgegeben.

Beispiele

Im folgenden Beispiel wird geprüft, ob 'Canada', 'Mexico' oder 'USA' Werte im Feld 'Country' sind. Wenn sich ein beliebiges dieser Länder in dem Feld befindet, gibt die Funktion 'true' zurück.

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

Im folgenden Beispiel wird geprüft, ob 'Jan 15, 2009' oder 'Jan 31, 2009' Werte im Feld 'payDate' sind:

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

Im folgenden Beispiel wird geprüft, ob zwei bestimmte Produktcodes Werte im Feld 'productCode' sind. Wenn einer dieser Werte in dem Feld gefunden wird, so wird die Zeichenfolge 'Obsolete' angezeigt. Andernfalls wird der Wert in 'productCode' so angezeigt, wie er im Feld angegeben wird.

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

BirtComp.between

Diese Funktion prüft, ob ein Wert zwischen zwei angegebenen Werten liegt.

Syntax

boolean BirtComp.between( quelle, ziel1, ziel2 )

Parameter

quelle

Der Wert, der geprüft werden soll.

ziel1

Der erste Wert in dem Wertebereich, mit dem der Vergleich erfolgen soll.

ziel2

Der zweite Wert in dem Wertebereich, mit dem der Vergleich erfolgen soll.

Rückgabe

Die Rückgabe ist 'true' (wahr), wenn der Quellenwert zwischen den Werten für 'ziel1' und 'ziel2' liegt. Andernfalls wird der Wert 'false' (falsch) zurückgegeben.

Beispiele

Die folgenden Ausdrücke prüfen Feldwerte, um festzustellen, ob diese innerhalb eines angegebenen Wertebereichs liegen:

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

Im folgenden Beispiel werden Versanddaten berechnet. Wenn der Wert für ein Bestelldatum (OrderDate) im Zeitraum 'Dezember 2008' (also zwischen dem 1. und dem 31. Dezember 2008) liegt, müssen fünf Tage zum Wert für 'OrderDate' hinzugerechnet werden. Wenn ein Wert für 'OrderDate' in einem anderen Monat als Dezember liegt, müssen drei Tage zum Wert für 'OrderDate' hinzugerechnet werden.

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

Diese Funktion prüft, ob ein Zeichenfolgewert mit einem anderen Zeichenfolgewert unter bestimmten angegebenen Bedingungen übereinstimmt.

Syntax

boolean BirtComp.compareString( quelle1, quelle2, ignoreCase, trim )

Parameter

quelle1

Der erste Zeichenfolgewert, der in dem Vergleich verwendet werden soll.

quelle2

Der zweite Zeichenfolgewert, der in dem Vergleich verwendet werden soll.

ignoreCase

Geben Sie "true" (wahr) an, um einen von der Groß-/Kleinschreibung unabhängigen Vergleich auszuführen. Geben Sie 'false' (falsch) an, um einen von der Groß-/Kleinschreibung abhängigen Vergleich auszuführen.

trim

Geben Sie 'true' (wahr) an, um alle führenden oder abschließenden Leerzeichen vor dem Vergleich der beiden Werte zu entfernen. Leerzeichen im Inneren einer Zeichenfolge werden hierbei nicht entfernt. Geben Sie 'false' (falsch) an, wenn bei dem Vergleich die führenden bzw. abschließenden Leerzeichen eingeschlossen werden sollen.

Rückgabe

Die Rückgabe ist "true" (wahr), wenn der Wert von "quelle1" mit dem Wert von "quelle2" übereinstimmt. Andernfalls wird der Wert "false" (falsch) zurückgegeben.

Beispiele

Die folgenden Ausdrücke vergleichen Zeichenfolgen unter Angabe unterschiedlicher Bedingungen:

BirtComp.compareString( "Jackson", "Jackson", false, false ) // Rückgabewert: true
BirtComp.compareString( "Jackson", "jackson", false, true ) // Rückgabewert: false
BirtComp.compareString( "Jackson", "jackson", true, false ) // Rückgabewert: true
BirtComp.compareString( "Jackson ", "jackson", true, false ) // Rückgabewert: false
BirtComp.compareString( "Jackson ", "jackson", true, true ) // Rückgabewert: true

BirtComp.equalTo

Diese Funktion prüft, ob ein Wert gleich einem anderen Wert ist.

Syntax

boolean BirtComp.equalTo( quelle, ziel )

Parameter

quelle

Der erste Wert, der in dem Vergleich verwendet werden soll.

ziel

Der zweite Wert, der in dem Vergleich verwendet werden soll.

Rückgabe

Die Rückgabe ist "true" (wahr), wenn der Wert von "quelle" mit dem Wert von "ziel" übereinstimmt. Andernfalls wird der Wert "false" (falsch) zurückgegeben.

Beispiele

Die folgenden Ausdrücke prüfen Feldwerte, um festzustellen, ob diese mit angegebenen Werten übereinstimmen:

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

BirtComp.greaterOrEqual

Diese Funktion prüft, ob ein Wert größer-gleich einem anderen Wert ist.

Syntax

boolean BirtComp.greaterOrEqual( quelle, ziel )

Parameter

quelle

Der erste Wert, der in dem Vergleich verwendet werden soll.

ziel

Der zweite Wert, der in dem Vergleich verwendet werden soll.

Rückgabe

Die Rückgabe ist 'true' (wahr), wenn der Quellenwert größer-gleich dem Zielwert ist. Andernfalls wird der Wert 'false' (falsch) zurückgegeben.

Beispiele

Die folgenden Ausdrücke prüfen Feldwerte, um festzustellen, ob diese größer-gleich den angegebenen Werten sind:

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

BirtComp.greaterThan

Diese Funktion prüft, ob ein Wert größer als ein anderer Wert ist.

Syntax

boolean BirtComp.greaterThan( quelle, ziel )

Parameter

quelle

Der erste Wert, der in dem Vergleich verwendet werden soll.

ziel

Der zweite Wert, der in dem Vergleich verwendet werden soll.

Rückgabe

Die Rückgabe ist "true" (wahr), wenn der Wert von "quelle" größer ist als der Wert von "ziel". Andernfalls wird der Wert "false" (falsch) zurückgegeben.

Beispiele

Die folgenden Ausdrücke prüfen Feldwerte, um festzustellen, ob diese größer als angegebene Werte sind:

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

BirtComp.lessOrEqual

Diese Funktion prüft, ob ein Wert kleiner-gleich einem anderen Wert ist.

Syntax

boolean BirtComp.lessOrEqual( quelle, ziel )

Parameter

quelle

Der erste Wert, der in dem Vergleich verwendet werden soll.

ziel

Der zweite Wert, der in dem Vergleich verwendet werden soll.

Rückgabe

Die Rückgabe ist 'true' (wahr), wenn der Quellenwert kleiner-gleich dem Zielwert ist. Andernfalls wird der Wert 'false' (falsch) zurückgegeben.

Beispiele

Die folgenden Ausdrücke prüfen Feldwerte, um festzustellen, ob diese kleiner-gleich den angegebenen Werten sind:

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

BirtComp.lessThan

Diese Funktion prüft, ob ein Wert kleiner als einer anderer Wert ist.

Syntax

boolean BirtComp.lessThan( quelle, ziel )

Parameter

quelle

Der erste Wert, der in dem Vergleich verwendet werden soll.

ziel

Der zweite Wert, der in dem Vergleich verwendet werden soll.

Rückgabe

Die Rückgabe ist "true" (wahr), wenn der Wert von "quelle" kleiner ist als der Wert von "ziel". Andernfalls wird der Wert "false" (falsch) zurückgegeben.

Beispiele

Die folgenden Ausdrücke prüfen Feldwerte, um festzustellen, ob diese kleiner als angegebene Werte sind:

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

BirtComp.like

Diese Funktion prüft, ob eine Zeichenfolge mit einem Muster übereinstimmt. Das Muster muss hierbei die SQL-Mustererkennungssyntax verwenden.

Syntax

boolean BirtComp.like( quelle, ziel )

Parameter

quelle

Der Zeichenfolgewert, der ausgewertet werden soll.

ziel

Das Zeichenfolgemuster, das abgeglichen werden soll. Das Muster muss in doppelte Anführungszeichen (" ") eingeschlossen werden. Verwenden Sie die korrekte Groß-/Kleinschreibung bei der Eingabe der Zeichen, für die ein Übereinstimmungsabgleich durchgeführt werden soll. Sie können in einem Muster die folgenden Sonderzeichen verwenden:

*
*

Um einen Abgleich mit einem Prozentzeichen (%) oder einem Unterstreichungszeichen (_) als Literale durchzuführen, müssen Sie diesen Zeichen zwei umgekehrte Schrägstriche (\\) voranstellen. Für einen Abgleich mit 'S_10' beispielsweise müssen Sie das folgende Muster verwenden:

S\\_10

Für einen Abgleich mit "50%" müssen Sie folgendes Muster verwenden:

50\\%

Rückgabe

Die Rückgabe ist "true" (wahr), wenn der Wert von "quelle" mit dem Wert von "ziel" übereinstimmt. Andernfalls wird der Wert "false" (falsch) zurückgegeben.

Beispiele

Das folgende Beispiel gibt 'true' (wahr) für solche Werte im Feld 'productCode' zurück, die mit 'S18' beginnen:

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

Das folgende Beispiel gibt 'true' (wahr) für solche Werte im Feld 'productName' zurück, die die Unterzeichenfolge 'Ford' mit einem einzelnen vorangestellten Zeichen enthalten:

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

BirtComp.match

Diese Funktion prüft, ob eine Zeichenfolge mit einem Muster übereinstimmt. Das Muster muss hierbei die JavaScript-Syntax für reguläre Ausdrücke verwenden.

Syntax

boolean BirtComp.match( quelle, ziel )

Parameter

quelle

Der Zeichenfolgewert, der ausgewertet werden soll.

ziel

Das Zeichenfolgemuster, das abgeglichen werden soll. Bei der JavaScript-Syntax für reguläre Ausdrücke geben Sie ein Muster in einem Paar von Schrägstrichen (/muster/) an. Sie können alle Sonderzeichen verwenden, die von regulären JavaScript-Ausdrücken unterstützt werden, wie beispielsweise die folgenden:

*
*
*
*
*

Für die buchstabengetreue Übereinstimmung mit einem Sonderzeichen muss dem Sonderzeichen ein umgekehrter Schrägstrich (\) vorangestellt werden. Für einen Abgleich mit 'S*10' beispielsweise müssen Sie das folgende Muster verwenden:

/S\*10/

Rückgabe

Die Rückgabe ist "true" (wahr), wenn der Wert von "quelle" mit dem Wert von "ziel" übereinstimmt. Andernfalls wird der Wert "false" (falsch) zurückgegeben.

Beispiele

Das folgende Beispiel gibt 'true' (wahr) für solche Werte im Feld 'productCode' zurück, die mit 'S18' beginnen:

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

Das folgende Beispiel gibt 'true' (wahr) für solche Werte im Feld 'productName' zurück, die die Unterzeichenfolge 'Ford' enthalten:

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

BirtComp.notBetween

Diese Funktion prüft, ob ein Wert nicht zwischen zwei angegebenen Werten liegt.

Syntax

boolean BirtComp.notBetween( quelle, ziel1, ziel2 )

Parameter

quelle

Der Wert, der geprüft werden soll.

ziel1

Der erste Wert in dem Wertebereich, mit dem der Vergleich erfolgen soll.

ziel2

Der zweite Wert in dem Wertebereich, mit dem der Vergleich erfolgen soll.

Rückgabe

Die Rückgabe ist 'true' (wahr), wenn der Quellenwert nicht zwischen den Werten für 'ziel1' und 'ziel2' liegt. Andernfalls wird der Wert 'false' (falsch) zurückgegeben.

Beispiele

Die folgenden Ausdrücke prüfen Feldwerte, um festzustellen, ob diese außerhalb eines angegebenen Wertebereichs liegen:

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

Im folgenden Beispiel werden Versanddaten berechnet. Wenn der Wert für ein Bestelldatum (OrderDate) nicht im Zeitraum 'Dezember 2008' (also nicht zwischen dem 1. und dem 31. Dezember 2008) liegt, müssen drei Tage zum Wert für 'OrderDate' hinzugerechnet werden. Wenn ein Wert für 'OrderDate' im Monat Dezember liegt, müssen fünf Tage zum Wert für 'OrderDate' hinzugerechnet werden.

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

Diese Funktion prüft, ob ein Wert ungleich einem anderen Wert ist.

Syntax

boolean BirtComp.notEqual( quelle, ziel )

Parameter

quelle

Der erste Wert, der in dem Vergleich verwendet werden soll.

ziel

Der zweite Wert, der in dem Vergleich verwendet werden soll.

Rückgabe

Die Rückgabe ist "true" (wahr), wenn der Wert von "quelle" nicht mit dem Wert von "ziel" übereinstimmt. Andernfalls wird der Wert "false" (falsch) zurückgegeben.

Beispiele

Die folgenden Ausdrücke prüfen Feldwerte, um festzustellen, ob diese ungleich den angegebenen Werten sind:

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

BirtComp.notLike

Diese Funktion prüft, ob eine Zeichenfolge mit einem Muster übereinstimmt. Das Muster muss hierbei die SQL-Mustererkennungssyntax verwenden.

Syntax

boolean BirtComp.notLike( quelle, ziel )

Parameter

quelle

Der Zeichenfolgewert, der ausgewertet werden soll.

ziel

Das Zeichenfolgemuster, mit dem verglichen werden soll. Das Muster muss in doppelte Anführungszeichen (" ") eingeschlossen werden. Verwenden Sie die korrekte Groß-/Kleinschreibung bei der Eingabe der Zeichen, für die ein Übereinstimmungsabgleich durchgeführt werden soll. Sie können in einem Muster die folgenden Sonderzeichen verwenden:

*
*

Um einen Abgleich mit einem Prozentzeichen (%) oder einem Unterstreichungszeichen (_) als Literale durchzuführen, müssen Sie diesen Zeichen zwei umgekehrte Schrägstriche (\\) voranstellen. Für einen Abgleich mit 'S_10' beispielsweise müssen Sie das folgende Muster verwenden:

S\\_10

Für einen Abgleich mit "50%" müssen Sie folgendes Muster verwenden:

50\\%

Rückgabe

Die Rückgabe ist "true" (wahr), wenn der Wert von "quelle" nicht mit dem Wert von "ziel" übereinstimmt. Andernfalls wird der Wert "false" (falsch) zurückgegeben.

Beispiele

Das folgende Beispiel gibt 'false' (falsch) für solche Werte im Feld 'productCode' zurück, die mit 'S18' beginnen:

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

Das folgende Beispiel gibt 'false' (falsch) für solche Werte im Feld 'productName' zurück, die die Unterzeichenfolge 'Ford' mit einem einzelnen vorangestellten Zeichen enthalten:

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

(c) Copyright Actuate Corporation 2013