Vorheriges Nächstes

Klasse "BirtComp"

Die Klasse "BirtComp" stellt Funktionen für den Vergleich von Werten bereit, um zum Beispiel zu prüfen, ob ein Wert gleich, größer als oder kleiner als ein anderer Wert ist. Alle Funktionen geben entweder "true" (wahr) oder "false" (falsch) zurück. Diese Klasse ist statisch. Die Anwendung kann keine Instanzen der Klasse erstellen.

BirtComp.anyOf

Diese Funktion prüft, ob sich ein oder mehrere Werte in einem Feld befinden.

Syntax

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

Parameter

quelle

Das Feld, das die zu vergleichenden Werte enthält.

ziel

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

Rückgabe

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, so gibt die Funktion "true" zurück.

BirtComp.anyOf( row["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( row["payDate"], "2009-01-15", "2009-01-31" )

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

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

BirtComp.between

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

Syntax

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 zu dem 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

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 Vergleich unter Berücksichtigung der Groß-/Kleinschreibung 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

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

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 Wert von "quelle" größer-gleich dem Wert von "ziel" 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

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

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 Wert von "quelle" kleiner-gleich dem Wert von "ziel" 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

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

BirtComp.like( quelle, ziel )

Parameter

quelle

Der Zeichenfolgewert, der ausgewertet werden soll.

ziel

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

*
Ein Prozentzeichen (%) entspricht einem oder mehreren Zeichen. Die Zeichenfolge %ace% stimmt mit allen Zeichenfolgewerten überein, die die Unterzeichenfolge "ace" enthalten, zum Beispiel auch "Facebook" und "MySpace". Sie stimmt jedoch nicht mit "Ace Corporation" überein, denn diese Zeichenfolge enthält den Großbuchstaben "A" und nicht den Buchstaben "a" in Kleinschreibung.
*
Ein Unterstreichungszeichen (_) entspricht genau einem Zeichen. Die Zeichenfolge "t_n" stimmt genau mit "tan", "ten", "tin" und "ton" überein. Sie stimmt jedoch weder mit "teen" noch mit "tn" überein.

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" müssen Sie zum Beispiel 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 Java-Script-Syntax für reguläre Ausdrücke verwenden.

Syntax

BirtComp.match( quelle, ziel )

Parameter

quelle

Der Zeichenfolgewert, der ausgewertet werden soll.

ziel

Das Zeichenfolgemuster, das abgeglichen werden soll. Bei der 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 zum Beispiel die folgenden:

*
Ein Fragezeichen (?) entspricht null oder einem Vorkommen des Zeichens, das ihm vorangestellt ist. Die Zeichenfolge "/te?n/" stimmt zum Beispiel mit "tn", "ten" und "often" überein. Sie stimmt jedoch weder mit "teen" noch mit "intern" überein.
*
Ein Stern (*) entspricht null oder einer beliebigen Anzahl von Vorkommen des Zeichens, das ihm vorangestellt ist. Die Zeichenfolge "/te*n/" stimmt zum Beispiel mit "tn", "ten", "often" und "teen" überein. Sie stimmt jedoch nicht mit "intern" überein.
*
*
Ein Winkelzeichen (^) gibt an, dass die Unterzeichenfolge, nach der gesucht werden soll, sich am Anfang einer Zeichenfolge befindet. Die Zeichenfolge "/^ten/" stimmt zum Beispiel mit "ten", "tennis" und "tense" überein. Sie stimmt jedoch nicht mit "often" oder mit "pretend" überein.
*

Für die buchstabengetreue Übereinstimmung mit einem Sonderzeichen muss dem Sonderzeichen ein umgekehrter Schrägstrich (\) vorangestellt werden. Für einen Abgleich mit "S*10" müssen Sie zum Beispiel 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

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 zu dem 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

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 nicht mit angegebenen Werten übereinstimmen:

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

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 hochgestellte Anführungszeichen (" ") gestellt werden. Verwenden Sie die korrekte Groß-/Kleinschreibung bei der Eingabe der Zeichen, für die ein Übereinstimmungsabgleich durchgeführt werden soll. Die folgenden Sonderzeichen können in einem Muster verwendet werden:

*
Ein Prozentzeichen (%) entspricht einem oder mehreren Zeichen. Die Zeichenfolge %ace% stimmt mit allen Zeichenfolgewerten überein, die die Unterzeichenfolge "ace" enthalten, zum Beispiel auch "Facebook" und "MySpace". Sie stimmt jedoch nicht mit "Ace Corporation" überein, denn diese Zeichenfolge enthält den Großbuchstaben "A" und nicht den Buchstaben "a" in Kleinschreibung.
*
Ein Unterstreichungszeichen (_) entspricht genau einem Zeichen. Die Zeichenfolge "t_n" stimmt genau mit "tan", "ten", "tin" und "ton" überein. Sie stimmt jedoch weder mit "teen" noch mit "tn" überein.

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" müssen Sie zum Beispiel 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 2012