![]() ![]() |
A Total osztály az összesítőfüggvények tárolójaként létezik. A Total osztály számos függvényt tartalmaz összesítéshez. Ezek a függvények a JavaScript BIRT kiterjesztései, amelyek sorok halmazát foglalják össze. A BIRT Report Engine az alábbi két fázisban valósítja meg a függvényeket:
A BIRT újraír minden összesítést tartalmazó parancsfájlt, hogy a két fázist végrehajtó felülvizsgált parancsfájl jöjjön létre. Ez a folyamat egyedül akkor fontos, amikor összesítést tartalmazó kifejezés hibakeresését végzi. Vegyük egy érték megjelenítésének példáját egy csoport láblécében, ahol az érték az összes számla összegének százaléka. Az alábbi utasítás hajtja végre ezt a műveletet:
Az előbbi példában a Total.OVERALL miatt a BIRT az összeg összesítést az összes sorra kiszámítja, habár a kifejezés egy csoportösszegben jelenik meg. Az előző példában szereplő kifejezés kiszámításához a BIRT végez egy átadást a teljes egyenleg kiszámításához, majd egy második átadást az egyes számlákhoz tartozó egyenleg értékének kiszámításához.
A Total osztály általános szabályai a következők:
Minden összesítő megenged két nem kötelező paramétert a szűrés és a csoportosítás jelzésére:
A szűrő argumentum egy logikai kifejezést biztosít, amelyet a BIRT minden soron kiértékel. A BIRT csak a szűrőnek megfelelő sorokat veszi figyelembe az összesítés kiszámításakor. Például egy jelentés összeadhatja az aktív vásárlók hitelkeretét a maximális hitelállomány meghatározásához.
A kifejezés az adatátalakítási fázisban fut le. Elérheti a sorok oszlopait, valamint paramétereket, felhasználó által megadott függvényeket és a fenti kontextusleírásban meghatározott egyéb erőforrásokat. Például:
A null, undefined vagy Total.NO_FILTER szűrő argumentum azt jelenti, hogy nincs szűrő. Ha az alkalmazás nem biztosít szűrőt, akkor a szűrő argumentum az undefined alapértelmezett értéket veszi fel. Ha csoport argumentumot biztosít, akkor vagy null, vagy Total.NO_FILTER értéket kell biztosítania a szűrés hiányának jelzésére.
A jelentéseknek gyakran az aktuális csoportosítási szinthez kell összegeket megjeleníteniük. Tegyük fel például, hogy egy jelentés vásárlók és rendelések szerint van csoportosítva, és a részletező rekordok termékcsoport cikkeket képviselnek a rendelésekben. Mindegyik termékcsoport cikk rendelkezik egységárral és mennyiséggel, mint az alábbi összesítőben:
Ez az összesítő az aktuális csoportban adja össze az értékeket. Ha a láblécben helyezkedik el, akkor a rendeléshez tartozó termékcsoport cikkek összegét jeleníti meg. Ha a vásárlói láblécben jelenik meg, akkor az összes termékcsoport cikk összegét jeleníti meg a vásárlóhoz tartozó összes rendelésben. Ha pedig a jelentés láblécében helyezkedik el, akkor az összes termékcsoport cikk összegét jeleníti meg az összes vásárlóra.
Néha azonban az alkalmazásnak egy másik csoportosítási szintről kell összeget elérnie. Például elképzelhető, hogy egy rendelés teljes értékét a vásárló összes rendelésének százalékában szeretné tudni. Ebben az esetben az aktuális csoporttól eltérő csoport összegét kell elérnie. Ezt a csoport argumentum segítségével lehet megtenni:
A csoport argumentum az alábbiak egyike lehet:
Az alábbi példák ezeket a fajta csoport argumentumokat szemléltetik:
Total.sum( row["myCol"] null, null ); // Aktuális csoport Total.sum( row["myCol"], null, "Vásárló" ); // Név szerint Total.sum( row["myCol"], null, "row[`vásárlóAz']" ); // Csoportkulcs szerint Total.sum( row["myCol"], null, 1 ); // Csoportindex szerint Total.sum( row["myCol"], null, "Overall" ); // Teljes összegek Total.sum( row["myCol"], null, 0 ); // Teljes összegek
A csoport argumentum használata esetén meg kell adnia a szűrő argumentumot. Ha nem igényel szűrőt, akkor adjon meg nullértéket. A csoportindex nincs idézőjelek közé zárva. Számként kell megadni. Vagyis az 1 az 1-es szinten található csoportot jelenti, az "1" pedig az "1" nevű csoportot.
OVERALL
Ez az összesítő függvény a matematikai középértéket számítja ki. Ha a kifejezés kiértékelésének eredménye szám, akkor ez a függvény azoknak a számoknak az átlagát adja vissza. Ha a kifejezés kiértékelésének eredménye dátum, akkor ez a függvény az átlagos dátumot adja vissza.
Total.ave( kifejezés [, szűrő [, csoport ]] )
Ez a függvény az adott kifejezés átlagos értékét adja vissza. Nullértéket ad vissza, ha nem volt rendelkezésre álló sor.
Az alábbi utasítás egy osztály tanulóinak átlagos életkorát adja vissza:
Az osztály tanulóinak átlagos születésnapját az alábbi utasítás adja vissza:
Total.median összesítő
Total.mode összesítő
Total.movingAve összesítő
Total.stdDev összesítő
Total.variance összesítő
Total.weightedAve összesítő
Ez a függvény megszámolja a sorok számát a csoporton belül.
Total.count( [ szűrő [, csoport ]] )
Ez a példa megszámolja a fiú és lány tanulókat egy osztályban. Szükség van két adatelem létrehozására. Állítsa az elsőt erre:
Állítsa a másodikat erre:
Total.countDistinct összesítő
Total.sum összesítő
Ez a függvény kiszámítja a különböző értékek számát a csoporton vagy adatsoron belül. A kifejezés argumentum az értékek csoportosítására használt kifejezést ad meg. A kifejezés egy oszlopra vonatkozok az adatokat tartalmazó sorban. A nullértékek egy különálló értéknek számítanak.
Total.countDistinct ( kifejezés [, szűrő [, csoport ]] )
A csoporton vagy adatsoron belüli különböző értékek száma. Nullát ad vissza, ha nem volt rendelkezésre álló sor.
Tegyük fel, hogy tudni szeretnénk, hogy egy diákcsoport hány különböző országot képvisel. Meghatározhatunk egy adatelemet, ami az alábbi kifejezést használja:
Ebben az utasításban a row.Ország egy olyan oszlop, amely a diák országának nevét vagy kódját tartalmazza. Tegyük fel, hogy néhány sor nullértéket tartalmaz, ami azt jelenti, hogy nem ismerjük az országot. Az alábbi utasítás segítségével zárja ki az ilyen sorokat a számlálásból:
Total.count összesítő
Ez az összesítő függvény az adatsorban megjelenő első értéket adja vissza. Ez az adatsorból lehívott első érték, amikor a rendszer sorokat hív le a tábla vagy lista számára meghatározott rendezési sorrend használatával.
Total.first( kifejezés [, szűrő [, csoport ]] )
Ez a függvény a sorok sorozatában először megjelenő értéket adja vissza, illetve nullértéket, ha az adatsor nem tartalmaz sorokat.
Tegyük fel, hogy egy jelentés egy adott részvény tranzakcióit sorolja fel egy időszakban. Az alábbi utasítás a részvény legkorábbi vételét jeleníti meg:
Total.isBottomNPercent összesítő
Total.max összesítő
Total.min összesítő
Ez a függvény egy olyan logikai értéket ad vissza, ami azt jelzi, hogy egy megadott numerikus mező értéke a legkisebb n érték között van-e.
Total.isBottomN( kifejezés, n, [, szűrő [, csoport ]] )
Ez a függvény true vagy false értéket ad vissza. Akkor ad vissza true értéket, ha a numerikus mező értéke az oszlopban található összes érték közül az alsó n érték között van.
Tegyük fel, hogy egy jelentés öt oszlopot tartalmaz az 1, 2, 3, 4 és 5 értékekkel. A Total.isBottomN(kifejezés, 2) megvizsgálja, hogy a kifejezés által ábrázolt mező tartalma 1 vagy 2, a két legkisebb szám az oszlopban.
Ez a függvény egy olyan logikai értéket ad vissza, ami azt jelzi, hogy egy megadott numerikus mező értéke az oszlopban található értékek alsó n százalékában van-e.
Total.isBottomNPercent( kifejezés, n, [, szűrő [, csoport ]] )
Ez a függvény true vagy false értéket ad vissza. Akkor ad vissza true értéket, ha a mező értéke az oszlopban található összes érték alsó n százalékában van.
Tegyük fel, hogy egy jelentés öt oszlopot tartalmaz az 1, 2, 3, 4 és 5 értékekkel. A Total.isBottomNPercent(kifejezés, 60) megvizsgálja, hogy a kifejezés által ábrázolt mező tartalma 1, 2 vagy 3, az oszlopban található számok alsó hatvan százaléka.
Ez a függvény egy olyan logikai értéket ad vissza, ami azt jelzi, hogy egy megadott numerikus mező értéke a legnagyobb n érték között van-e.
Total.isTopN( kifejezés, n, [, szűrő [, csoport ]] )
Ez a függvény true vagy false értéket ad vissza. Akkor ad vissza true értéket, ha a numerikus mező értéke az oszlopban található összes érték közül a felső n érték között van.
Tegyük fel, hogy egy jelentés öt oszlopot tartalmaz az 1, 2, 3, 4 és 5 értékekkel. A Total.isTopN(kifejezés, 2) megvizsgálja, hogy a kifejezés által ábrázolt mező tartalma 4 vagy 5, a két legnagyobb szám az oszlopban.
Ez a függvény egy olyan logikai értéket ad vissza, ami azt jelzi, hogy egy megadott numerikus mező értéke az oszlopban található értékek felső n százalékában van-e.
Total.isTopNPercent( kifejezés, n, [, szűrő [, csoport ]] )
Ez a függvény true vagy false értéket ad vissza. Akkor ad vissza true értéket, ha a mező értéke az oszlopban található összes érték felső n százalékában van.
Tegyük fel, hogy egy jelentés öt oszlopot tartalmaz az 1, 2, 3, 4 és 5 értékekkel. A Total.isTopNPercent(kifejezés, 60) megvizsgálja, hogy a kifejezés által ábrázolt mező tartalma 3, 4 vagy 5, az oszlopban található számok felső hatvan százaléka.
Ez a függvény az adatsorban megjelenő utolsó értéket adja vissza. Ez az adatsorból lehívott utolsó érték, amikor a rendszer sorokat hív le a tábla vagy lista számára meghatározott rendezési sorrend használatával.
Total.last( kifejezés [, szűrő [, csoport ]] )
Ez a függvény a sorok sorozatában utoljára megjelenő értéket adja vissza, illetve nullértéket, ha az adatsor nem tartalmaz sorokat.
Tegyük fel, hogy egy jelentés egy adott részvény tranzakcióit sorolja fel egy időszakban. Az alábbi utasítás a részvény legutolsó eladását jeleníti meg:
Total.first összesítő
Total.max összesítő
Total.min összesítő
Ez a függvény egy adott kifejezés maximális értékét számítja ki. A kifejezés minden egyes sorra kiértékelésre kerül, és a legnagyobb érték kerül megtartásra. Ez a függvény számokkal, dátumokkal és karaktersorozatokkal működik.
Total.max( kifejezés [, szűrő [, csoport ]] )
A függvény a megadott kifejezés maximális értékét adja vissza. Nullértéket ad vissza, ha nem volt rendelkezésre álló sor.
Az alábbi utasítás megkeresi az osztály legidősebb tanulóját:
Total.first összesítő
Total.isBottomNPercent összesítő
Total.min összesítő
Ez az összesítő függvény a matematikai medián értéket számítja ki. Az értékek fele a medián fölé, fele pedig alá esik.
Total.median( kifejezés [, szűrő [, csoport ]] )
Ez a függvény az adott kifejezés medián értékét adja vissza. Nullértéket ad vissza, ha nem volt rendelkezésre álló sor.
Az alábbi utasítás egy osztály tanulóinak medián életkorát adja vissza:
Az osztály tanulóinak medián születésnapját az alábbi utasítás adja vissza:
Total.ave összesítő
Total.mode összesítő
Total.movingAve összesítő
Total.stdDev összesítő
Total.variance összesítő
Total.weightedAve összesítő
Ez a függvény egy adott kifejezés minimális értékét számítja ki. A kifejezés minden egyes sorra kiértékelésre kerül, és a legkisebb érték kerül megtartásra. Ez a függvény bármilyen egyszerű típussal működik: szám, dátum vagy karaktersorozat.
Total.min( kifejezés [, szűrő [, csoport ]] )
Ez a függvény az adott kifejezés minimális értékét adja vissza. Nullértéket ad vissza, ha nem volt rendelkezésre álló sor.
Az alábbi utasítás az osztály legfiatalabb tanulójának életkorát adja vissza:
Total.first összesítő
Total.isBottomNPercent összesítő
Total.max összesítő
Ez az összesítő függvény a matematikai módusz értéket számítja ki. A módusz az az érték, ami leggyakrabban jelenik meg az adatokban. például az {1, 2, 3, 2, 4, 7} sorozatban a 2 a módusz, mert ez kétszer jelenik meg, míg az összes többi szám csak egyszer. Ha egy adatsor több módusszal rendelkezik, mint például az {1,2,3,2,3} sorozat, akkor a módusz összesítő nullértéket ad vissza.
Total.mode( kifejezés [, szűrő [, csoport ]] )
Ez a függvény az adott kifejezés módusz értékét adja vissza. Nullértéket ad vissza, ha nem volt rendelkezésre álló sor, illetve ha az adatok több módusszal rendelkeznek.
Az alábbi utasítás egy osztály tanulói között leggyakrabban előforduló életkort adja vissza:
Total.ave összesítő
Total.median összesítő
Total.movingAve összesítő
Total.stdDev összesítő
Total.variance összesítő
Total.weightedAve összesítő
Ez az összesítő függvény mozgó átlagot számít. A kifejezés argumentum adja meg az átlagolandó értékeket, az ablak argumentum pedig a figyelembe venni kívánt sorok számát. A sorok átlagolása a kontextus által meghatározott sorrendben történik, ami általában a Lista vagy Tábla elemhez tartozó rendezés által megadott sorrend.
Total.movingAve( kifejezés, ablak [, szűrő [, csoport ]] )
Ez a függvény az adott kifejezés mozgó átlag értékét adja vissza. Nullértéket ad vissza, ha nem volt rendelkezésre álló sor.
Tegyük fel, hogy egy jelentés egy részvény napi árfolyamát sorolja fel. A részvény legutóbbi öt napra vonatkozó mozgó átlagának megjelenítéséhez használja az alábbi utasítást:
Total.ave összesítő
Total.median összesítő
Total.mode összesítő
Total.stdDev összesítő
Total.variance összesítő
Total.weightedAve összesítő
Ez a függvény megvizsgál egy értékhalmazt, és visszaadja azt az értéket, ami a halmazban található összes érték egy megadott százalékosztályánál van. Például meg szeretné tudni, hogy milyen eredmény képviseli a 90. százalékosztályt egy teszten elért összes eredmény közül.
A függvény az az értéket adja vissza, ami az adott százalékosztálynál van az elemzett értékek halmazában.
Az alábbi utasítás az 50. százalékosztály pontszámértéket adja vissza:
Ha a teszteredmények halmaza a megadott oszlopban 10, 20, 30, 40 és 50, akkor az utasítás 30-at adna vissza.
Ez a függvény kiszámítja a megadott mezőben található értéknek a sorban elfoglalt helyét százalékban.
percentRank( kifejezés, szűrő [, csoport ]] )
Ez a függvény a megadott mezőben található értéknek a sorban elfoglalt helyét adja vissza százalékban. A visszatérési érték nulla és egy között van.
Az alábbi utasítás visszaadja egy pontszám sorban elfoglalt helyének százalékos értékét az oszlopban található összes pontszám között:
Ha a kiértékelési tartományban található pontszámok 10, 10, 20 és 50, és az utasítást tartalmazó cellában a pontszám 30, akkor a visszatérési érték .5, mivel az értékek fele 20 fölött, fele pedig 20 alatt van.
Ez a függvény kiszámítja a t értékét.
percentSum( kifejezés [, szűrő [, csoport ]] )
Ez a függvény az érték százalékos hozzájárulását a tartományban található összes érték összegéhez.
Az alábbi utasítás visszaadja ennek a rendelési összegnek a százalékos hozzájárulását az összes rendelési összeg összegéhez:
Ez a függvény kiszámítja azt az értéket egy meghatározott értékhalmazon belül, amelynél a halmazban található értékek 0%, 25%, 50%, 75% vagy 100%-a nagyobb.
quartile( kifejezés, kvartilis, [, szűrő [, csoport ]] )
Ez a függvény azt az értéket adja vissza a megadott halmazon belül, amely a megadott kvartilisba esik.
Az alábbi utasítás azt a rendelési összeget adja vissza, amelynél a rendelési összegek 75%-a kisebb és 25%-a nagyobb:
Ez a függvény kiszámítja, hogy egy érték hol következik a halmazban található értékek sorában. A sorszámok 1-től a halmazban található értékek számáig terjednek. Ha két érték azonos, akkor ugyanazt a sorszámot kapják.
rank( kifejezés [, szűrő [, csoport ]] )
Ez a függvény egy olyan egész számot ad vissza, ami az értéknek a sorban elfoglalt helyét tükrözi, és 1-től az értékhalmaz elemeinek számáig terjed
Az alábbi utasítás visszaadja a RendelésiÖsszeg mező értékének a RendelésiÖsszeg oszlop összes rendelési összeg értéke között elfoglalt helyét.
Ez a függvény a sorok folyamatos számlálását adja vissza.
runningCount( szűrő [, csoport ]] )
Ez a függvény a sorok folyamatos számlálását adja vissza.
Az alábbi utasítás egy jelentés folyamatos számlálását adja vissza:
Total.count összesítő
Total.percentRank összesítő
Ez az összesítő függvény a számok sorozatának statisztikai szórását számítja ki. A szórás az értékek halmazának terjedelmét méri.
Total.stdDev( kifejezés [, szűrő [, csoport ]] )
Ez a függvény az adott kifejezés szórását adja vissza. Nullértéket ad vissza, ha nem volt rendelkezésre álló sor.
Total.ave összesítő
Total.median összesítő
Total.mode összesítő
Total.movingAve összesítő
Total.variance összesítő
Total.weightedAve összesítő
Ez az összesítő függvény a csoport minden egyes sorához tartozó értékek összeadásával kapott összeget számítja ki. Az egyes sorokhoz tartozó értéket a kifejezés argumentumban megadott kifejezés segítségével számítja ki. Az összeg ezeknek az értékeknek az összege.
Total.sum( kifejezés [, szűrő [, csoport ]] )
Az adott kifejezés összege. Nullát ad vissza, ha nem volt rendelkezésre álló sor.
Az alábbi utasítás rendelési összegeket összesít egy vásárló esetén:
Total.count összesítő
Total.percentRank összesítő
Ez az összesítő függvény a számok sorozatának statisztikai ingadozását számítja ki. Az ingadozás az értékek halmazának terjedelmét méri.
Total.variance( kifejezés [, szűrő [, csoport ]] )
A függvény a megadott kifejezés ingadozását adja vissza. Nullértéket ad vissza, ha nem volt rendelkezésre álló sor.
Total.ave összesítő
Total.median összesítő
Total.mode összesítő
Total.movingAve összesítő
Total.stdDev összesítő
Total.weightedAve összesítő
Ez az összesítő függvény a súlyozott matematikai középértéket számítja ki. Ha a kifejezés vagy a súlyozás argumentum kiértékelése nullérték, akkor a sor kizárásra kerül az átlagból.
Total.weightedAve( kifejezés, súlyozás [, szűrő [, csoport ]] )
Ez a függvény az adott kifejezés súlyozott átlagos értékét adja vissza. Nullértéket ad vissza, ha nem volt rendelkezésre álló sor.
Tételezzük fel, hogy egy pénzügyi alkalmazás egy adott részvény különböző időpontokban vásárolt csomagjait tartja nyilván. Minden csomaghoz különböző vételi ár és vásárolt részvények száma tartozik. Az alábbi utasítás a súlyozott átlagos vételi árat számítja ki:
Total.ave összesítő
Total.median összesítő
Total.mode összesítő
Total.movingAve összesítő
Total.stdDev összesítő
Total.variance összesítő
![]() ![]() |