Forrige Neste

Klassen BirtDuration

BirtDuration-klassen har funksjoner for å hente deler av tidsrom, eller varigheter, som brukes i XML-dokumenter. Varighetene blir oppgitt i følgende format:

PnYnMnDTnHnMnS

der

*
*
nY oppgir antall år
*
nM oppgir antall måneder
*
nD oppgir antall dager
*
*
nH oppgir antall timer
*
nM oppgir antall minutter
*
nS oppgir antall sekunder

Følgende verdi angir for eksempel en varighet på 2 år, 3 måneder og 5 dager:

P2Y3M5D

Følgende verdi angir en varighet på 10 timer:

PT10H

BirtDuration-klassen er statisk. Applikasjonen kan ikke opprette forekomster av klassen.

BirtDuration.add

Denne funksjonen legger til to varigheter og returnerer summen.

Syntaks

string BirtDuration.add(string lexicalDuration1, string lexicalDuration2)

Parametere

lexicalDuration1

Streng. Den første varigheten som skal legges til.

lexicalDuration2

Streng. Den andre varigheten som skal legges til.

Returnerer

Streng. Summen av de to varighetene som er oppgitt.

Eksempler

Følgende eksempel legger sammen to varigheter:

BirtDuration.add("P1Y3M", "P13M") // returnerer P2Y4M

BirtDuration.addTo

Denne funksjonen legger en varighet til en oppgitt datoobjekt.

Syntaks

Date BirtDuration.add(string lexicalDuration, Date date)

Parametere

lexicalDuration

Streng. Varigheten som skal legges til.

date

Datoobjekt. Datoen og klokkeslettet som skal endres.

Returnerer

Datoobjekt. Datoen som følger av varigheten.

Eksempler

Følgende eksempel legger til et år i dagens dato og klokkeslett:

var today = new Date();
var annualDate = BirtDuration.addTo(today, "P1Y")

BirtDuration.compare

Denne funksjonen tester om en varighet er den samme, større enn eller mindre enn en annen varighet.

Syntaks

integer BirtDuration.compare(string lexicalDuration1, string lexicalDuration2)

Parametere

lexicalDuration1

Streng. Første varighet til å bruke sammenlikningen.

lexicalDuration2

Streng. Andre varighet til å bruke sammenlikningen.

Returnerer

Heltall. Delvis rekkefølgerelasjon mellom to varigheter. Returnerer 1 hvis første varighet er lengst, 0 hvis de er like, og -1 hvis andre varighet er lengst.

Eksempler

Følgende uttrykk sammenlikner lengdene av bestemte varigheter:

BirtDuration.compare("P1Y", "P12M"); // returnerer 0
BirtDuration.compare( "P3M" , "P100D" ) // returnerer -1
BirtDuration.compare( "PT25H" , "P1D" ) // returnerer 1

BirtDuration.day

Denne funksjonen returnerer antall dager i en gitt varighet.

Syntaks

integer BirtDuration.day( string lexicalDuration)

Parameter

lexicalDuration

Streng. En varighet som dagsverdien hentes fra.

Returnerer

Et heltall som representerer antall dager i den oppgitte varigheten.

Eksempler

Følgende eksempler viser dagantallet som returneres for bestemte varigheter:

BirtDuration.day( "P1Y15DT12H" ) // returnerer 15
BirtDuration.day( "P5Y2M" ) // returnerer 0

BirtDuration.getSign

Denne funksjonen returnerer tegnet for en varighet.

Syntaks

integer BirtDuration.getSign(string lexicalDuration)

Parametere

lexicalDuration

Streng. Varigheten som skal analyseres.

Returnerer

Heltall. Tegnet for varigheten som en multiplikator. Returnerer 1 for en positiv varighet, -1 for en negativ varighet og 0 for null eller 0-verdi.

Eksempler

Følgende uttrykk analyserer tegnene for en bestemt varighet:

BirtDuration.getSign("P0Y"); // returnerer 0
BirtDuration.getSign("-P8Y2M3D"); // returnerer -1

BirtDuration.hour

Denne funksjonen returnerer antall timer i en gitt varighet.

Syntaks

integer BirtDuration.hour( string lexicalDuration)

Parameter

lexicalDuration

Streng. En varighet som timeverdien hentes fra.

Returnerer

Et heltall som representerer antall timer i den oppgitte varigheten.

Eksempler

Følgende eksempler viser timeantallet som returneres for bestemte varigheter:

BirtDuration.hour( "P1Y15DT12H" ) // returnerer 12
BirtDuration.hour( "P5Y2M" ) // returnerer 0

BirtDuration.isLongerThan

Denne funksjonen tester om en varighet er lengre enn en annen varighet. Noen ganger kan sorteringsrelasjonen mellom bestemte varigheter ikke fastsettes, for eksempel en måned (P1M) og 30 dager (P30D), eller ett år (P1Y) og 365 dager (P365D). I slike tilfeller returnerer funksjonen false.

Syntaks

boolean BirtDuration.isLongerThan( string lexicalDuration1, string lexicalDuration2 )

Parametere

lexicalDuration1

Streng. Første varighet til å bruke sammenlikningen.

lexicalDuration2

Streng. Andre varighet til å bruke sammenlikningen.

Returnerer

Boolsk verdi. True hvis den første varigheten er lengre enn den andre varigheten, returnerer false i andre tilfeller.

Eksempler

Følgende uttrykk sammenlikner lengdene av bestemte varigheter:

BirtDuration.isLongerThan( "P1Y3M" , "P13M" ) // returnerer true
BirtDuration.isLongerThan( "P2M" , "P62D" ) // returnerer false
BirtDuration.isLongerThan( "PT25H" , "P1D" ) // returnerer true

BirtDuration.isShorterThan

Denne funksjonen tester om en varighet er kortere enn en annen varighet. Noen ganger kan sorteringsrelasjonen mellom bestemte varigheter ikke fastsettes, for eksempel en måned (P1M) og 30 dager (P30D), eller ett år (P1Y) og 365 dager (P365D). I slike tilfeller returnerer funksjonen false.

Syntaks

boolean BirtDuration.isShorterThan( string lexicalDuration1, string lexicalDuration2 )

Parametere

lexicalDuration1

Streng. Første varighet til å bruke sammenlikningen.

lexicalDuration2

Streng. Andre varighet til å bruke sammenlikningen.

Returnerer

Boolsk verdi. True hvis den første varigheten er kortere enn den andre varigheten, returnerer false i andre tilfeller.

Eksempler

Følgende uttrykk sammenlikner lengdene av bestemte varigheter:

BirtDuration.isShorterThan( "P1Y3M" , "P13M" ) // returnerer false
BirtDuration.isShorterThan( "P2M" , "P62D" ) // returnerer false
BirtDuration.isShorterThan( "PT25H" , "P1D" ) // returnerer false
BirtDuration.isShorterThan( "P27D" , "P1M" ) // returnerer true

BirtDuration.minute

Denne funksjonen returnerer antall minutter i en gitt varighet.

Syntaks

integer BirtDuration.minute(string lexicalDuration)

Parameter

lexicalDuration

Streng. En varighet som du kan hente antall minutter fra.

Returnerer

Heltall. Et tall som representerer antall minutter i den oppgitte varigheten.

Eksempler

Følgende eksempler viser minuttantallet som returneres for bestemte varigheter:

BirtDuration.minute( "P1Y15DT12H30M45S" ) // returnerer 30
BirtDuration.minute( "P5Y2M8DT15H" ) // returnerer 0

BirtDuration.month

Denne funksjonen returnerer antall måneder i en gitt varighet.

Syntaks

integer BirtDuration.month(string lexicalDuration)

Parameter

lexicalDuration

Streng. En varighet som månedsverdien hentes fra.

Returnerer

Heltall. Et tall som representerer antall måneder i den oppgitte varigheten.

Eksempler

Følgende eksempler viser månedsantallet som returneres for bestemte varigheter:

BirtDuration.month( "P1Y3M15DT12H30M45S" ) // returnerer 3
BirtDuration.month( "P5Y8DT15H" ) // returnerer 0

BirtDuration.multiply

Denne funksjonen returnerer produktet av en varighet og et regulært tall.

Syntaks

string BirtDuration.multiply(string lexicalDuration, integer factor)

Parameter

lexicalDuration

Streng. En varighet som det multipliseres med.

factor

Heltall. Et regulært tall som det multipliseres med.

Returnerer

Streng. Produktet av varighet og faktor.

Eksempler

Følgende eksempler viser produktene som returneres for bestemt varighet og faktor:

BirtDuration.multiply( "P1Y3M15DT12H30M45S", 1)
// returnerer P1Y3M15DT12H30M45S
BirtDuration.multiply( "P5Y8DT15H", 0) // returnerer P0Y0DT0H

BirtDuration.negate

Denne funksjonen returnerer den negative verdien for en varighet.

Syntaks

string BirtDuration.negate(string lexicalDuration)

Parameter

lexicalDuration

Streng. En varighet som negeres.

Returnerer

Streng. Den negative verdien for inndatavarigheten.

Eksempler

Følgende eksempler viser det negative resultatet av en bestemt varighet:

BirtDuration.negate( "P1Y3M15DT12H30M45S")
// returnerer -P1Y3M15DT12H30M45S

BirtDuration.second

Denne funksjonen returnerer antall sekunder i en gitt varighet.

Syntaks

integer BirtDuration.second(string lexicalDuration)

Parameter

lexicalDuration

Streng. En varighet som du kan hente antall sekunder fra.

Returnerer

Heltall. Et tall som representerer antall sekunder i den oppgitte varigheten.

Eksempler

Følgende eksempler viser sekundantallet som returneres for bestemte varigheter:

BirtDuration.second( "P1Y3M15DT12H30M45S" ) // returnerer 5
BirtDuration.second( "P5Y8DT15H" ) // returnerer 0

BirtDuration.subtract

Denne funksjonen trekker en varighet fra en annen varighet.

Syntaks

string BirtDuration.subtract(string lexicalDuration1, string lexicalDuration2)

Parametere

lexicalDuration1

Streng. Varigheten det skal trekkes fra.

lexicalDuration2

Streng. Varigheten som trekkes fra lexicalDuration1.

Returnerer

Streng. Differansen mellom de to varighetene som er oppgitt.

Eksempler

Følgende eksempel subtraherer to varigheter:

BirtDuration.subtract("P1Y3M", "P13M") // returnerer P0Y2M

BirtDuration.timeInMills

Denne funksjonen returnerer antall millisekunder i en gitt varighet, fra en oppgitt startdato. Antall millisekunder i en varighet kan endres avhengig av startdatoen. En varighet på for eksempel en måned kan være 28, 29, 30 eller 31 dager, avhengig av startdatoen. Hvis startdatoen er 1. januar, beregner funksjonen millisekundene mellom 1. januar og 1. februar (1. februar utelates), som er lik 2678400000 millisekunder eller 31 dager. Hvis startdatoen er 1. februar 2008 (et skuddår), beregner funksjonen millisekundene mellom 1. februar og 1. mars, som er lik 2505600000 millisekunder eller 29 dager.

Syntaks

Number BirtDuration.timeInMills( string lexicalDuration, Date startDate )

Parametere

lexicalDuration

Streng. En varighet som lengden i millisekunder skal hentes for.

startDate

Datoobjekt. Representerer startdatoen.

Returnerer

Number-objekt. Antall millisekunder i den oppgitte varigheten.

Eksempler

Følgende eksempler viser millisekundantallet som returneres for bestemte varigheter og startdatoer:

BirtDuration.timeInMills( "P1Y3M10D" , "2009-01-01" ) // returnerer 40172400000
BirtDuration.timeInMills( "P1Y3M10D" , "2008-01-01" ) // returnerer 40258800000
BirtDuration.timeInMills( "PT6H45M20S" , "2009-01-01" ) // returnerer 24320000

BirtDuration.year

Denne funksjonen returnerer antall år i en gitt varighet.

Syntaks

integer BirtDuration.year(string lexicalDuration)

Parameter

lexicalDuration

Streng. En varighet som årsverdien hentes fra.

Returnerer

Heltall. Et tall som representerer antall år i den oppgitte varigheten.

Eksempler

Følgende eksempler viser årsantallet som returneres for bestemte varigheter:

BirtDuration.year( "P1Y3M15DT12H30M45S" ) // returnerer 1
BirtDuration.year( "P8DT15H" ) // returnerer 0

(c) Copyright Actuate Corporation 2013