![]() ![]() |
Total-luokka on koostefunktioiden säilö. Total-luokka sisältää joukon koostamisessa käytettäviä funktioita. Nämä funktiot ovat JavaScript-koodin BIRT-laajennuksia, jotka laskevat rivijoukon summan. BIRT-raporttiohjelma toteuttaa funktion seuraavissa kahdessa vaiheessa:
BIRT-järjestelmä luot nämä kaksi vaihetta toteuttavan komentosarjamuunnelman kirjoittamalla kaikki koosteen sisältävät komentosarjat uudelleen. Tämän prosessin tuntemusta ei tarvita muulloin kuin tehtäessä koosteen sisältävän lausekkeen vianmääritystä. Oletetaan esimerkiksi, että haluat ryhmän alaviitteessä olevan näkyvissä arvon, joka on prosenttiosuus kaikkien tilien summasta. Voit toteuttaa tämän seuraavalla lauseella:
Tässä esimerkissä Total.OVERALL on BIRT-järjestelmän funktio, joka laskee kaikkien rivien summan, vaikka lauseke on ryhmän kokonaisarvon määrityksessä. BIRT-järjestelmä laskee esimerkin mukaisen lausekkeen laskemalla ensin kokonaissumman ensimmäisen läpikäynnin aikana ja sitten kunkin tilin arvon toisen läpikäynnin aikana.
Total-luokan yleissäännöt ovat seuraavat:
Voit käyttää kaikissa koosteissa kahta valinnaista argumenttia suodatukseen ja ryhmittelyyn:
Suodatusargumentti on Boolen lauseke, jonka arvon BIRT-järjestelmä laskee joka rivillä. BIRT-järjestelmä laskee koosteeseen vain ne rivit, joiden arvo vastaa suodatusarvoa. Voit luoda näin esimerkiksi raportin, joka määrittää enimmäisluottoriskin laskemalla yhteen aktiivisten asiakkaiden luottorajat.
Järjestelmä suorittaa lausekkeen tietojen muuntovaiheessa. Voit käsitellä lausekkeella rivin sarakkeita, parametreja, käyttäjän määrittämiä funktioita ja muita edellisissä kontekstikuvauksissa määritettyjä resursseja. Esimerkki:
Jos suodatusargumenttina on tyhjäarvo, suodatusargumenttia ei ole määritetty tai argumenttina on Total.NO_FILTER, suodatus ei ole käytössä. Jos sovellus ei määritä suodatusta, järjestelmä käyttää oletusarvon mukaan määrittämätöntä suodatusta. Jos käytät ryhmäargumenttia, poista suodatus käytöstä määrittämällä suodatusargumentiksi joko tyhjäarvo tai Total.NO_FILTER.
Raporteissa on usein esitettävä käytössä olevan ryhmittelytason summat. Oletetaan esimerkiksi, että raportti ryhmitelty asiakkaiden ja tilausten mukaan ja käsiteltävät tiedot ovat tilausten rivejä. Kullakin rivillä on yksikköhinta ja määrä, kuten seuraavassa koosteessa:
Tämä kooste laskee yhteen käytössä olevan ryhmän arvot. Jos sijoitat tämän koosteen alaviitteeseen, siinä on näkyvissä tilauksen rivien summa. Jos sijoitat tämän koosteen asiakastietojen alaviitteeseen, siinä on näkyvissä kyseisen asiakkaan kaikkien tilausten rivien summa. Jos sijoitat tämän raportin alaviitteeseen, siinä on näkyvissä kaikkien asiakkaiden kaikkien tilausten rivien summa.
Tietyissä tapauksissa sovelluksen on laskettava summa jostakin toisesta ryhmittelytasosta. Oletetaan esimerkiksi, että haluat selvittää asiakkaan yksittäisen tilauksen prosenttiosuuden asiakkaan kaikista tilauksista. Tällöin on laskettava muun kuin käytössä olevan ryhmän summa. Voit tehdä tämän käyttämällä ryhmittelyargumenttia:
Ryhmittelyargumentin arvo voi olla jokin seuraavista:
Seuraavissa esimerkeissä on esitelty näiden ryhmittelyargumenttien käyttöä:
Total.sum( row["myCol"] null, null ); // Käytössä oleva ryhmä Total.sum( row["myCol"], null, "Customer" ); // Ryhmittely nimen mukaan Total.sum( row["myCol"], null, "row[`custID']" ); // Ryhmittely ryhmäavaimen mukaan Total.sum( row["myCol"], null, 1 ); // Ryhmittely ryhmäindeksin mukaan Total.sum( row["myCol"], null, "Overall" ); // Kokonaissumma Total.sum( row["myCol"], null, 0 ); // Kokonaissumma
Ryhmittelyargumentin kanssa on käytettävä suodatusargumenttia. Jos suodatusta ei tarvita, määritä suodatusargumentin arvoksi tyhjäarvo. Ryhmäindeksiä ei tarvitse kirjoittaa lainausmerkkeihin. Määritä se numerona. 1 vastaa ryhmätasoa 1, kun taas "1" vastaisi ryhmää nimeltä "1".
OVERALL
Tämä koostefunktio laskee keskiarvon. Jos lausekkeen tulos on luku, tämä funktio palauttaa näiden lukujen keskiarvon. Jos lausekkeen tulos on päivämäärä, tämä funktio palauttaa näiden päivämäärien keskiarvon.
Total.ave( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn lausekkeen tulosten keskiarvon. Jos rivejä ei ole käytettävissä, funktio palauttaa tyhjäarvon.
Seuraava lause palauttaa luokan oppilaiden ikien keskiarvon:
Seuraava lause palauttaa luokan oppilaiden syntymäpäivien keskiarvopäivän:
Total.median-kooste
Total.mode-kooste
Total.movingAve-kooste
Total.stdDev-kooste
Total.variance-kooste
Total.weightedAve-kooste
Tämä funktio laskee ryhmän rivimäärän.
Total.count( [ suodatus [, ryhmittely ]] )
Tässä esimerkissä lasketaan miesten ja naisten määrä luokassa. Tätä laskentaa varten on luotava kaksi tieto-objektia. Ensimmäinen tieto-objekti on seuraava:
Toinen tieto-objekti on seuraava:
Total.countDistinct-kooste
Total.sum-kooste
Tämä funktio laskee erilaisten arvojen määrän ryhmässä tai tietojoukossa. Lausekeargumentti määrittää arvojen ryhmittelylausekkeen. Lauseke on viittaus tietorivin sarakkeeseen. Funktio laskee tyhjäarvot yhdeksi erilaiseksi arvoksi.
Total.countDistinct ( lauseke [, suodatus [, ryhmittely ]] )
Erilaisten arvojen määrä ryhmässä tai tietojoukossa. Jos rivejä ei ole käytettävissä, funktio palauttaa arvon nolla.
Oletetaan, että haluat tietää eri kansalaisuuksien määrän oppilasjoukossa. Voit määrittää tieto-objektin seuraavalla lausekkeella:
Tässä lauseessa row.Country on sarake, joka sisältää oppilaan kotimaan nimen tai koodin. Oletetaan, että sarakkeessa on tyhjäarvo niiden oppilaiden kohdalla, joiden kotimaa ei ole tiedossa. Voit jättää tällaiset rivit pois laskusta seuraavalla lauseella:
Total.count-kooste
Tämä koostefunktio palauttaa tietojoukon ensimmäisen arvon. Se on ensimmäinen arvo, jonka funktio noutaa tietojoukosta, kun lajittelujärjestys on taulukon tai luettelon mukainen.
Total.first( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa rivijoukon ensimmäisen arvon tai tyhjäarvon, jos tietojoukossa ei ole rivejä.
Oletetaan esimerkiksi, että raportissa on luettelo tiettyyn osakkeeseen liittyvistä tapahtumista tietyltä ajalta. Voit selvittää osakkeen ensimmäisen ostotapahtuman seuraavalla lauseella:
Total.isBottomNPercent-kooste
Total.max-kooste
Total.min-kooste
Tämä funktio palauttaa Boolen arvon, joka ilmaisee, onko määritetyn numerokentän arvo n:n pienimmän arvon joukossa.
Total.isBottomN( lauseke, n, [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa totuusarvon true (tosi) tai false (epätosi). Funktio palauttaa arvon true, jos numerokentän arvo on määritetyn sarakkeen n:n pienimmän arvon joukossa.
Oletetaan, että raporttisarakkeessa on viisi riviä, joissa on arvot 1, 2, 3, 4 ja 5. Lauseella Total.isBottomN(lauseke, 2) voit testata, onko lausekeargumentin lausekkeen mukaisessa numerokentässä arvo 1 tai 2, eli onko numerokenttä sarakkeen kahden pienimmän arvon joukossa.
Tämä funktio palauttaa Boolen arvon, joka ilmaisee, onko määritetyn numerokentän arvo n:n pienimmän arvon joukossa prosentuaalisesti.
Total.isBottomNPercent( lauseke, n, [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa totuusarvon true (tosi) tai false (epätosi). Funktio palauttaa arvon true, jos kentän arvo on määritetyn sarakkeen n:n pienimmän arvon joukossa prosentuaalisesti.
Oletetaan, että raporttisarakkeessa on viisi riviä, joissa on arvot 1, 2, 3, 4 ja 5. Lauseella Total.isBottomNPercent(lauseke, 60) voit testata, onko lausekeargumentin lausekkeen mukaisessa numerokentässä arvo 1, 2 tai 3, eli onko numerokenttä niiden arvojen joukossa, jotka ovat 60 prosenttia sarakkeen arvoista pienimmästä arvosta lukien.
Tämä funktio palauttaa Boolen arvon, joka ilmaisee, onko määritetyn numerokentän arvo n:n suurimman arvon joukossa.
Total.isTopN( lauseke, n, [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa totuusarvon true (tosi) tai false (epätosi). Funktio palauttaa arvon true, jos numerokentän arvo on määritetyn sarakkeen n:n suurimman arvon joukossa.
Oletetaan, että raporttisarakkeessa on viisi riviä, joissa on arvot 1, 2, 3, 4 ja 5. Lauseella Total.isTopN(lauseke, 2) voit testata, onko lausekeargumentin lausekkeen mukaisessa numerokentässä arvo 4 tai 5, eli onko numerokenttä sarakkeen kahden suurimman arvon joukossa.
Tämä funktio palauttaa Boolen arvon, joka ilmaisee, onko määritetyn numerokentän arvo n:n suurimman arvon joukossa prosentuaalisesti.
Total.isTopNPercent( lauseke, n, [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa totuusarvon true (tosi) tai false (epätosi). Funktio palauttaa arvon true, jos kentän arvo on määritetyn sarakkeen n:n suurimman arvon joukossa prosentuaalisesti.
Oletetaan, että raporttisarakkeessa on viisi riviä, joissa on arvot 1, 2, 3, 4 ja 5. Lauseella Total.isTopNPercent(lauseke, 60) voit testata, onko lausekeargumentin lausekkeen mukaisessa numerokentässä arvo 3, 4 tai 5, eli onko numerokenttä niiden arvojen joukossa, jotka ovat 60 prosenttia sarakkeen arvoista suurimmasta arvosta lukien.
Tämä funktio palauttaa tietojoukon viimeisen arvon. Se on viimeinen arvo, jonka funktio noutaa tietojoukosta, kun lajittelujärjestys on taulukon tai luettelon mukainen.
Total.last( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa rivijoukon viimeisen arvon tai tyhjäarvon, jos tietojoukossa ei ole rivejä.
Oletetaan esimerkiksi, että raportissa on luettelo tiettyyn osakkeeseen liittyvistä tapahtumista tietyltä ajalta. Voit selvittää osakkeen viimeisimmän myyntitapahtuman seuraavalla lauseella:
Total.first-kooste
Total.max-kooste
Total.min-kooste
Tämä funktio laskee määritetyn lausekkeen suurimman arvon. Funktio laskee lausekkeen arvon kullakin rivillä ja palauttaa suurimman arvon. Voit käyttää tätä funktiota lukujen, päivämäärien ja merkkijonojen käsittelyyn.
Total.max( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn lausekkeen suurimman arvon. Jos rivejä ei ole käytettävissä, funktio palauttaa tyhjäarvon.
Seuraava lause hakee luokan vanhimman oppilaan:
Total.first-kooste
Total.isBottomNPercent-kooste
Total.min-kooste
Tämä koostefunktio laskee mediaaniarvon. Mediaaniarvo on arvo, jota suurempia arvoja on tietojoukossa yhtä paljon kuin sitä pienempiä arvoja.
Total.median( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn lausekkeen mediaaniarvon. Jos rivejä ei ole käytettävissä, funktio palauttaa tyhjäarvon.
Seuraava lause palauttaa luokan oppilaiden ikien mediaanin:
Seuraava lause palauttaa luokan oppilaiden syntymäpäivien mediaanipäivämäärän:
Total.ave-kooste
Total.mode-kooste
Total.movingAve-kooste
Total.stdDev-kooste
Total.variance-kooste
Total.weightedAve-kooste
Tämä funktio laskee määritetyn lausekkeen pienimmän arvon. Funktio laskee lausekkeen arvon kullakin rivillä ja palauttaa pienimmän arvon. Voit käyttää tätä funktiota kaikkien yksinkertaisten lajien (lukujen, päivämäärien ja merkkijonojen) käsittelyyn.
Total.min( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn lausekkeen pienimmän arvon. Jos rivejä ei ole käytettävissä, funktio palauttaa tyhjäarvon.
Seuraava lause palauttaa luokan nuorimman oppilaan iän:
Total.first-kooste
Total.isBottomNPercent-kooste
Total.max-kooste
Tämä koostefunktio laskee tyyppiarvon. Tyyppiarvo on tietojoukon yleisin arvo. Esimerkiksi tietojoukon {1, 2, 3, 2, 4, 7} tyyppiarvo on 2, koska se esiintyy tietojoukossa kahdesti ja muut arvot vain kerran. Jos tietojoukossa on useita tyyppiarvoja (kuten tietojoukossa {1,2,3,2,3}) tyyppiarvon koostefunktio palauttaa tyhjäarvon.
Total.mode( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn lausekkeen tyyppiarvon. Jos rivejä ei ole käytettävissä tai jos tietojoukossa on useita tyyppiarvoja, funktio palauttaa tyhjäarvon.
Seuraava lause palauttaa luokan oppilaiden yleisimmän iän:
Total.ave-kooste
Total.median-kooste
Total.movingAve-kooste
Total.stdDev-kooste
Total.variance-kooste
Total.weightedAve-kooste
Tämä koostefunktio laskee liukuvan keskiarvon. Lausekeargumentin lauseke määrittää arvon, jonka keskiarvo lasketaan, ja arvoalueargumentti käsiteltävien rivien määrän. Funktio laskee rivien keskiarvon kontekstin mukaisessa järjestyksessä, joka on yleensä luettelo- tai taulukkoelementin lajittelujärjestys.
Total.movingAve( lauseke, arvoalue [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn lausekkeen liukuvan keskiarvon. Jos rivejä ei ole käytettävissä, funktio palauttaa tyhjäarvon.
Oletetaan, että raportissa on luettelo osakkeen päivän hinnoista. Voit määrittää näytettäväksi osakkeen hinnan liukuvan keskiarvon viiden päivän ajalta seuraavalla lauseella:
Total.ave-kooste
Total.median-kooste
Total.mode-kooste
Total.stdDev-kooste
Total.variance-kooste
Total.weightedAve-kooste
Tämä funktio vertaa arvojoukon arvoja ja palauttaa arvon, joka vastaa määritettyä prosenttipistettä arvojoukon arvoista. Tällä funktiolla voit esimerkiksi selvittää, mikä pistearvo on 90 prosenttipisteen kohdalla kokeen pistearvojoukossa.
Tämä funktio palauttaa arvon, joka vastaa määritettyä prosenttipistettä analysoitujen arvojen tietojoukossa.
Seuraava lause palauttaa arvon, jonka 50 prosenttipisteen kohdalla pistearvoista:
Jos määritetyssä sarakkeessa olisi pistearvot 10, 20, 30, 40 ja 50, tämä lause palauttaisi arvon 30.
Tämä funktio laskee määritetyn kentän arvon prosenttipisteluokituksen.
percentRank( lauseke, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn kentän arvon prosenttipisteluokituksen. Palautettava arvo on 0-1.
Seuraava lause palauttaa prosenttilukeman, joka ilmaisee, missä prosenttipisteessä määritetty arvo on sarakkeen kaikkien pistearvojen joukossa:
Jos arvioitavan joukon pistearvot ovat 10, 10, 20 ja 50 ja tämän lauseen sisältävän solun pistearvon 30, funktio palauttaisi arvon 0,5, koska puolet arvoista on pienempiä kuin 20 ja puolet suurempia kuin 20.
Tämä funktio laskee .
percentSum( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa prosenttiarvon, joka ilmaisee tämän joukon prosenttiosuuden kaikista arvosarjan arvoista.
Seuraava lause palauttaa prosenttiarvon, joka ilmaisee, kuinka suuren osuuden tilaussumma muodostaa kaikkien tilauksien yhteissummasta:
Tämä funktio laskee sen määritetyn tietojoukon arvon, jota suurempia on 0, 25, 50, 75 tai 100 prosenttia tietojoukon arvoista.
quartile( lauseke, kvartaali, [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn tietojoukon määritetyn kvartaaliarvon.
Seuraava lause palauttaa sen tilauksen summan, jota pienempiä tilauksia on 75 prosenttia tilauksia ja suurempia tilauksia on 25 prosenttia tilauksista:
Tämä funktio laskee arvon järjestysnumeron arvosarjassa. Järjestysnumero voi olla 1 - arvosarjan arvojen määrä. Jos arvosarjassa on samoja arvoja, niiden järjestysnumero on sama.
rank( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa kokonaisluvun, joka on arvon järjestysnumero. Järjestysnumero voi olla 1 - arvosarjan arvojen määrä.
Seuraava lause palauttaa OrderAmt-kentän (tilauksen summa) järjestysnumeron, joka määrittää monenneksi suurin kentän arvo on kaikista OrderAmt-sarakkeen arvoista.
Tämä funktio laskee rivien määrän.
runningCount( suodatus [, ryhmittely ]] )
Tämä funktio palauttaa rivien määrän.
Seuraava lause palauttaa raportin rivien määrän:
Total.count-kooste
Total.percentRank-kooste
Tämä koostefunktio laskee arvosarjan tilastollisen keskipoikkeaman. Keskipoikkeama ilmaisee arvosarjan hajonnan laajuuden.
Total.stdDev( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn lausekkeen keskipoikkeaman. Jos rivejä ei ole käytettävissä, funktio palauttaa tyhjäarvon.
Total.ave-kooste
Total.median-kooste
Total.mode-kooste
Total.movingAve-kooste
Total.variance-kooste
Total.weightedAve-kooste
Tämä koostefunktio laskee ryhmän kaikkien rivien kokonaissumman. Funktio laskee kunkin rivin arvon lausekeargumentin mukaisen lausekkeen perusteella. Kokonaissumma on kaikkien näin laskettujen arvojen summa.
Total.sum( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn lausekkeen summan. Jos rivejä ei ole käytettävissä, funktio palauttaa arvon nolla.
Seuraava lause laskee yhteen asiakkaan tilausten summat:
Total.count-kooste
Total.percentRank-kooste
Tämä koostefunktio laskee arvosarjan tilastollisen varianssin. Varianssi ilmaisee arvosarjan hajonnan.
Total.variance( lauseke [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn lausekkeen varianssin. Jos rivejä ei ole käytettävissä, funktio palauttaa tyhjäarvon.
Total.ave-kooste
Total.median-kooste
Total.mode-kooste
Total.movingAve-kooste
Total.stdDev-kooste
Total.weightedAve-kooste
Tämä koostefunktio laskee painotetun keskiarvon. Jos joko lauseke- tai painoarvoargumentin tulos on tyhjäarvo, funktio ei huomioi riviä keskiarvon laskennassa.
Total.weightedAve( lauseke, painoarvo [, suodatus [, ryhmittely ]] )
Tämä funktio palauttaa määritetyn lausekkeen painotetun keskiarvon. Jos rivejä ei ole käytettävissä, funktio palauttaa tyhjäarvon.
Oletetaan, että taloussovellus seuraa tietyn osakkeen ostoeriä eri aikoina. Kullakin erällä on eri ostohinta ja osakkeita on ostettu eri määrä kussakin erässä. Seuraava lause laskee ostohintojen painotetun keskiarvon:
Total.ave-kooste
Total.median-kooste
Total.mode-kooste
Total.movingAve-kooste
Total.stdDev-kooste
Total.variance-kooste
![]() ![]() |