Forrige Neste

Klassen BirtComp

BirtComp-klassen har funksjoner som sammenlikner verdier, for eksempel for å teste om en verdi er lik, større enn eller mindre enn en annen verdi. Alle funksjonene returnerer boolske verdier. Denne klassen er statisk. Applikasjonen kan ikke opprette forekomster av klassen.

BirtComp.anyOf

Denne funksjonen sammenlikner en eller flere verdier med innholdet i et felt.

Syntaks

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

Parametere

source

Et felt med innhold som skal brukes i sammenlikningen.

target

Verdien eller verdiene som finnes i kilden.

Returnerer

Boolsk verdi. True hvis en target-verdi samsvarer med en verdi i source, returnerer false hvis ikke.

Eksempler

Det følgende eksempelet tester om Canada, Mexico eller USA er verdier i Country-feltet. Hvis et hvilket som helst av landene finnes i feltet, returnerer funksjonen true.

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

Det følgende eksempelet tester om Jan 15, 2009 eller Jan 31, 2009 er verdier i payDate-feltet:

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

Det følgende eksempelet tester om to bestemte produktkoder er verdier i productCode-feltet. Hvis en av verdiene blir vist i feltet, blir strengen Obsolete vist, hvis ikke vises productCode-verdien slik den blir vist i feltet.

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

BirtComp.between

Denne funksjonen tester om en verdi er mellom to oppgitte verdier.

Syntaks

boolean BirtComp.between( source, target1, target2 )

Parametere

source

Verdien som skal testes.

target1

Den første verdien i verdiområdet det skal sammenliknes med.

target2

Den andre verdien i verdiområdet det skal sammenliknes med.

Returnerer

True hvis source-verdien er mellom target1- og target2-verdiene, returnerer false hvis ikke.

Eksempler

De følgende uttrykkene tester feltverdier for å se om de ligger i et oppgitt verdiområde:

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

Det følgende eksempelet beregner leveringsdatoer. Hvis en OrderDate-verdi er i desember 2008 (mellom 12/01/08 og 12/31/08), legg 5 dager til OrderDate-verdien. Hvis en OrderDate-verdi er i en annen måned enn desember, legg 3 dager til OrderDate-verdien.

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

Denne funksjonen tester om en strengverdi samsvarer med en annen strengverdi, gitt oppgitte betingelser.

Syntaks

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

Parametere

source1

Den første strengverdien som skal brukes i sammenlikningen.

source2

Den andre strengverdien som skal brukes i sammenlikningen.

ignoreCase

Oppgi true for å utføre en sammenlikning som ikke skiller mellom små og store bokstaver. Oppgi false for å utføre en sammenlikning som skiller mellom små og store bokstaver.

trim

Oppgi true for å fjerne eventuelle foranstilte eller etterfølgende blanktegn før de to verdiene sammenliknes. Blanktegn midt i en streng blir ikke fjernet. Oppgi false hvis du vil at sammenlikningen skal inkluderer foranstilte eller etterfølgende blanktegn.

Returnerer

True hvis source1-verdien samsvarer med source2-verdien, returnerer false hvis ikke.

Eksempler

De følgende uttrykkene sammenlikner strenger med forskjellige oppgitte betingelser:

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

BirtComp.equalTo

Denne funksjonen tester om er verdi er lik en annen verdi.

Syntaks

boolean BirtComp.equalTo( source, target )

Parametere

source

Den første verdien som skal brukes i sammenlikningen.

target

Den andre verdien som skal brukes i sammenlikningen.

Returnerer

True hvis source-verdien er lik target-verdien, returnerer false hvis ikke.

Eksempler

De følgende uttrykkene tester feltverdier for å se om de er lik oppgitte verdier:

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

BirtComp.greaterOrEqual

Denne funksjonen tester om en verdi er større enn eller lik en annen verdi.

Syntaks

boolean BirtComp.greaterOrEqual( source, target )

Parametere

source

Den første verdien som skal brukes i sammenlikningen.

target

Den andre verdien som skal brukes i sammenlikningen.

Returnerer

True hvis source-verdien er større enn eller lik target-verdien, returnerer false hvis ikke.

Eksempler

De følgende uttrykkene tester feltverdier for å se om de er større enn eller lik oppgitte verdier:

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

BirtComp.greaterThan

Denne funksjonen tester om en verdi er større enn en annen verdi.

Syntaks

boolean BirtComp.greaterThan( source, target )

Parametere

source

Den første verdien som skal brukes i sammenlikningen.

target

Den andre verdien som skal brukes i sammenlikningen.

Returnerer

True hvis source-verdien er større enn target-verdien, returnerer false hvis ikke.

Eksempler

De følgende uttrykkene tester feltverdier for å se om de er større enn oppgitte verdier:

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

BirtComp.lessOrEqual

Denne funksjonen tester om en verdi er mindre enn eller lik en annen verdi.

Syntaks

boolean BirtComp.lessOrEqual( source, target )

Parametere

source

Den første verdien som skal brukes i sammenlikningen.

target

Den andre verdien som skal brukes i sammenlikningen.

Returnerer

True hvis source-verdien er mindre enn eller lik target-verdien, returnerer false hvis ikke.

Eksempler

De følgende uttrykkene tester feltverdier for å se om de er mindre enn eller lik oppgitte verdier:

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

BirtComp.lessThan

Denne funksjonen tester om en verdi er mindre enn en annen verdi.

Syntaks

boolean BirtComp.lessThan( source, target )

Parametere

source

Den første verdien som skal brukes i sammenlikningen.

target

Den andre verdien som skal brukes i sammenlikningen.

Returnerer

True hvis source-verdien er mindre enn target-verdien, returnerer false hvis ikke.

Eksempler

De følgende uttrykkene tester feltverdier for å se om de er mindre enn oppgitte verdier:

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

BirtComp.like

Denne funksjonen tester om en strengverdi samsvarer med et mønster. Mønsteret må bruke en SQL-syntaks som samsvarer med et mønster.

Syntaks

boolean BirtComp.like( source, target )

Parametere

source

Strengverdien som skal evalueres.

target

Strengmønsteret den skal samsvare med. Du må sette mønsteret i doble anførselstegn (" "). Bruk riktig form (små eller store bokstaver) når du skriver tegnene du vil finne samsvar med. Du kan bruke de følgende spesialtegnene i et mønster:

*
*

Hvis du vil finne samsvar med et virkelig prosenttegn (%) eller understrekingstegn (_), setter du to omvendte skråstreker (\\) foran disse tegnene. Hvis du for eksempel vil finne samsvar med S_10, bruker du det følgende mønsteret:

S\\_10

Hvis du vil finne samsvar med 50%, bruker du dette mønsteret:

50\\%

Returnerer

True hvis source-verdien samsvarer med target-verdien, returnerer false hvis ikke.

Eksempler

Det følgende eksempelet returnerer true for verdier i productCode-feltet som begynner med S18:

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

Det følgende eksempelet returnerer true for productName-verdier som inneholder delstrengen Ford med ett tegn foran:

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

BirtComp.match

Denne funksjonen tester om en strengverdi samsvarer med et mønster. Mønsteret må bruke syntaks for regulære JavaScript-uttrykk.

Syntaks

boolean BirtComp.match( source, target )

Parametere

source

Strengverdien som skal evalueres.

target

Strengmønsteret den skal samsvare med. I syntaksen for regulære JavaScript-uttrykk oppgir du et mønster med en skråstrek (/) før og etter. Du kan bruke et hvilket som helst spesialtegn som støttes av regulære JavaScript-uttrykk, for eksempel følgende:

*
*
*
*
*

Hvis du vil finne samsvar med et virkelig spesialtegn, setter du en omvendt skråstrek (\) foran spesialtegnet. Hvis du for eksempel vil finne samsvar med S*10, bruker du dette mønsteret:

/S\*10/

Returnerer

True hvis source-verdien samsvarer med target-verdien, returnerer false hvis ikke.

Eksempler

Det følgende eksempelet returnerer true for verdier i productCode-feltet som begynner med S18:

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

Det følgende eksempelet returnerer true for productName-verdier som inneholder delstrengen Ford:

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

BirtComp.notBetween

Denne funksjonen tester om en verdi ikke finnes mellom to oppgitte verdier.

Syntaks

boolean BirtComp.notBetween( source, target1, target2 )

Parametere

source

Verdien som skal testes.

target1

Den første verdien i verdiområdet det skal sammenliknes med.

target2

Den andre verdien i verdiområdet det skal sammenliknes med.

Returnerer

True hvis source-verdien ikke finnes mellom target1- og target2-verdiene, returnerer false i andre tilfeller.

Eksempler

De følgende uttrykkene tester feltverdier for å se om de er utenfor et oppgitt verdiområde:

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

Det følgende eksempelet beregner leveringsdatoer. Hvis en OrderDate-verdi ikke er i desember 2008 (ikke mellom 12/01/08 og 12/31/08), legger du 3 dager til OrderDate-verdien. Hvis en OrderDate-verdi er i desember, legger du 5 dager til OrderDate-verdien.

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

Denne funksjonen tester om er verdi ikke er lik en annen verdi.

Syntaks

boolean BirtComp.notEqual( source, target )

Parametere

source

Den første verdien som skal brukes i sammenlikningen.

target

Den andre verdien som skal brukes i sammenlikningen.

Returnerer

True hvis source-verdien ikke er lik target-verdien, returnerer false i andre tilfeller.

Eksempler

De følgende uttrykkene tester feltverdier for å se om de ikke er lik oppgitte verdier:

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

BirtComp.notLike

Denne funksjonen tester om en strengverdi ikke samsvarer med et mønster. Mønsteret må bruke en SQL-syntaks som samsvarer med et mønster.

Syntaks

boolean BirtComp.notLike( source, target )

Parametere

source

Strengverdien som skal evalueres.

target

Strengen det skal sammenliknes med. Du må sette mønsteret i doble anførselstegn (" "). Bruk riktig form (små eller store bokstaver) når du skriver tegnene du vil finne samsvar med. Du kan bruke de følgende spesialtegnene i et mønster:

*
*

Hvis du vil finne samsvar med et virkelig prosenttegn (%) eller understrekingstegn (_), setter du to omvendte skråstreker (\\) foran disse tegnene. Hvis du for eksempel vil finne samsvar med S_10, bruker du det følgende mønsteret:

S\\_10

Hvis du vil finne samsvar med 50%, bruker du dette mønsteret:

50\\%

Returnerer

True hvis source-verdien ikke samsvarer med target-verdien, returnerer false i andre tilfeller.

Eksempler

Det følgende eksempelet returnerer false for verdier i productCode-feltet som begynner med S18:

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

Det følgende eksempelet returnerer false for productName-verdier som inneholder delstrengen Ford med ett tegn foran:

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

(c) Copyright Actuate Corporation 2013