Essbase-laskennan jäljityksen avulla saat tietoa jäsenkaavojen käsittelystä, jolloin voit korjata laskentakomentosarjojen ohjelmistovirheitä ja parantaa niitä muutenkin. Ota CALCTRACE käyttöön tilannekohtaisessa Smart View -sovelluksen laskennan jäljityksessä tai valitse jäljitettävät tietojen leikkauskohdat SET TRACE -komennolla.
Laskennan jäljityksen avulla voit käyttää lokiin kirjattuja tietoja laskennasta, kun laskentakomentosarja on onnistuneesti suoritettu kuutiolle.
Laskennan jäljitys ei muuta laskennan suoritusta millään tavalla. Jos laskenta käynnistetään Smart View -sovelluksessa ja pääkäyttäjä on ottanut yhdistetyssä palvelimessa laskennan jäljityksen käyttöön, Smart View näyttää tietoja ponnahdusikkunassa, kun laskennan suoritus on päättynyt. Laskennan jäljitystiedot voi liittää ponnahdusikkunasta tekstieditoriin. Samat tiedot löytyvät myös calc_trace.txt
-tiedostossa, joka on tietokantatiedostojen hakemistossa Essbasessa.
Laskennan jäljitystiedot voivat auttaa laskentakomentosarjojen vianmäärityksessä, jos laskennan tulokset eivät ole odotettuja.
Laskennan jäljitystä ei tueta sovelluksissa, joissa skenaarionhallinta on käytössä.
Jotta laskennan jäljityksen voi ottaa käyttöön, pääkäyttäjän täytyy ensin ottaa käyttöön CALCTRACE -sovellusmääritysparametri. Kun laskennan jäljitys on otettu käyttöön sovelluksessasi, voit hyödyntää sitä kahdella tavalla:
Komentosarjassa olevan laskennan koko laajuus lasketaan, mutta vain korostettu tietosolukonteksti jäljitetään laskennan aikana.
Jos korostettua tietosolua ei ole muutettu laskennan aikana, näet viestin, joka kertoo, että solua ei ole muutettu.
SET TRACE mbrList
(jolla otetaan käyttöön laskennan jäljitys jäsenlistassa) ja SET TRACE OFF
(jolla poistetaan laskennan jäljitys käytöstä, kunnes komentosarjassa tulee vastaan uusi SET TRACE) Jotta SET TRACE-komentoa voi käyttää, laskentakomentosarja on suoritettava Smart View -sovelluksen ulkopuolella käyttämällä Cube Designeria, CLI calc -komentoa, Laskennan ajo Essbase-verkkokäyttöliittymässä olevaa työtä tai MaxL:ää (Suorita laskutoimitus -lause).Seuraava laskentakomentosarja suoritetaan Sample Basic -tietokannassa. Komentosarja sisältää SET TRACE -komennon, jolla pyydetään yksityiskohtaisia tietoja kirjattavaksi tietojen leikkauskohtaan (soluun), joka edustaa tammikuun budjetoitua myyntiä Kalifornian markkinoilla tuotteelle, jonka SKU-numero on 100-10.
SET TRACEID "id042" SET TRACE ("100-10", "California", "Jan", "Sales", "Budget"); FIX("California", "Budget") "Sales" ( "100-10" = @MEMBER(@CONCATENATE(@NAME(@PARENT("Product")), "-20")) / 10; ); ENDFIX;
Huomautus::
Myös SET TRACEID -komentoa suositellaan, sillä se estää laskennan jäljitystiedoston korvaamisen.Sample Basic -tietokannalla on kaksi harvaa dimensiota: Product ja Market. Jäsenen kaava on Sales-kohdassa, joka on tiheän Measures-dimension jäsen. FIX-lauseen jäsenluettelo sisältää vain yhden harvan jäsenen (California), joka kuuluu Market-dimensioon.
Olemassa olevien lohkojen määrä FIX-laajuudessa määrää, kuinka monta kertaa jäljitetty solu lasketaan. Tässä esimerkissä laskenta käy läpi kaikki California-jäsenen olemassa olevat harvat jäsenyhdistelmät. Jokainen näistä yhdistelmistä muodostaa lohkon.
Kun laskenta on valmis, seuraavat jäljitystiedot kirjataan lokiin ja näytetään tiedostossa calc_trace_id042.txt
:
Tracing cell: [100-10][California][Jan][Sales][Budget] (Cell update count: 1) Previous value: 840.00 Dependent values: [100-20][California][Jan][Sales][Budget] = 140.00 New value: [100-10][California][Jan][Sales][Budget] = 14.00 Computed in lines: [91 - 93] using: "Sales"( "100-10"=@MEMBER(@CONCATENATE(@NAME(@PARENT("Product")),"-20"))/10; ) Tracing cell: [100-10][California][Jan][Sales][Budget] (Cell update count: 2) Block from FIX scope: [100-30][California] Actual block used in calculation: [100-10][California] Previous value: 14.00 Dependent values: [100-20][California][Jan][Sales][Budget] = 140.00 New value: [100-10][California][Jan][Sales][Budget] = 14.00 Computed in lines: [91 - 93] using: "Sales"( "100-10"=@MEMBER(@CONCATENATE(@NAME(@PARENT("Product")),"-20"))/10; ) Tracing cell: [100-10][California][Jan][Sales][Budget] (Cell update count: 3) Block from FIX scope: [200-10][California] Actual block used in calculation: [100-10][California] Previous value: 14.00 Dependent values: [200-20][California][Jan][Sales][Budget] = 520.00 New value: [100-10][California][Jan][Sales][Budget] = 52.00 Computed in lines: [91 - 93] using: "Sales"( "100-10"=@MEMBER(@CONCATENATE(@NAME(@PARENT("Product")),"-20"))/10; ) [...calc iterations 4-7 are omitted from example...] Tracing cell: [100-10][California][Jan][Sales][Budget] (Cell update count: 8) Block from FIX scope: [400-30][California] Actual block used in calculation: [100-10][California] Previous value: 9.00 Dependent values: [400-20][California][Jan][Sales][Budget] = 90.00 New value: [100-10][California][Jan][Sales][Budget] = 9.00 Computed in lines: [91 - 93] using: "Sales"( "100-10"=@MEMBER(@CONCATENATE(@NAME(@PARENT("Product")),"-20"))/10; )
Laskennan jäljitysloki tarjoaa seuraavat tiedot laskennan toiminnasta jäljitetyssä solussa:
Jäljitetty solu laskettiin useita kertoja ja solun arvo korvattiin joka kerta uudella arvolla (solun päivityskertojen raportointi päättyy kahdeksaan kertaan).
Ennen laskentaa solun arvo oli 840,00.
Jokaiselta laskentakerralta näytetään ei-itsenäiset arvot ja uudet arvot. Ei-itsenäiset arvot tulevat jäsenen kaavasta FIX-lauseessa.
Jäljitetyn solun lopullinen arvo laskennan jälkeen on 9, mutta se edustaa tuotteen "400-20"->California
arvoa jaettuna kymmenellä.
Laskentakomentosarjan rivit 91-93, joilla on Sales-jäsenen kaava, ovat vastuussa päivitetyistä arvoista.
Jokaisen läpi käydyn lohkon osalta lasketaan Sales-arvo seuraavalla kaavalla:
"100-10"=@MEMBER(@CONCATENATE(@NAME(@PARENT("Product")),"-20"))/10
Kaavan vasen puoli sisältää harvan jäsenen, mikä saattaa johtaa siihen, että todellinen laskentalohko eroaa alkuperäisestä FIX-lohkosta. Kun laskenta käy läpi esimerkiksi lohkon California->100-20, laskenta tapahtuu itse asiassa lohkossa California->100-10.
Jäljityslokin kirjaukset FIX-alueen lohko
ja Laskennassa käytetty todellinen lohko
tulostetaan vain, jos FIX-lauseen lohkojen ja jäsenen kaavassa esiintyvän lohkon välillä on eroavuuksia. Nämä lokikirjaukset voivat auttaa selvittämään, miksi laskennassa on toistoa, ja korjaamaan laskentakomentosarjojen virheitä.