Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Align
alignjustified

Tā kā jūs tagad protat pārvietoties uz citu dimensiju hierarhijas līmeņiem, tad jūs arī varat pārvietoties uz citas dimensiju rādītājiem tekošajā dimensijā. Parasti to izmanto Laika dimensijā , kad jūs vēlaties salīdzināt rādītājus dažādos laika periodos vai apvienotu laika periodu kopumos.
Piemēram, ja aprēkinātais rādītājs  Rādītāji.Mēneša pieaugums (Measures.Sales monthly growth) ar formulu ( Measures.Store Sales - (Measures.Store Sales, Time.CurrentMember.PrevMember) aprēķinās Rādītāji.Pārdošana ( Measures.Store Sales) pieaugumu salīdzinājumā ar iepriekšejo Laika dimensijas rādītāju periodu. Ja šis aprēķinātais rādītājs tiks kombinēts atskaitē ar Mēnesi ( Month) Laika (Time ) dimensijā tad tiks izvadīts pieaugums salīdzinājumā ar iepriekšējo mēnesi, ja tiks izmantots gads ( Year) , tad pieaugumu salīdzinājumā ar iepriekšējo gadu.
Ir vairākas funkcijas, kuras palīdzēs jums " pārvietoties laikā " .

  • Time.CurrentMember.PrevMember atgriež iepriekšējā rādītāja vērtību iepriekšējo rādītāju tajā pašā Hierarhijas līmenī  ( tiks atgriezts tukšs rādītājs pirmajam rādītājam)
  • Time.CurrentMember.NextMember atgriezīs nākamo rādītāju.
  • Time.CurrentMember.Lag(2) atgriezīs iepriekšejo rādītāju ar "attālumu"  2 ( var izmantot jebkuru skaitli,  Lag(1) būs tas pats kā PrevMember)
  • Time.CurrentMember.Lead(2) atgriezīs nākamā rādītāju ar " attālumu " 2, ( Lead(1) is tas pats, kas NextMember)
  • ParallelPeriod(Time.Year, 1, Time.CurrentMember) atgriezīs "paralēlā"  Laika ( Time ) rādītāju vienu gadu atpakaļ ( one year ago)  (piem. dienas līmeņa rādītājam Jan 01 2012   tas būs  Jan 01 2011, bet mēnešu līmenī rādītājam Jan 2012  tas būs Jan 2011)
  • OpeningPeriod(Time.Day, Time.CurrentMember) will return first descendant of current Time member at Day level (first day of year, quarter or month which is defined in Time dimension)rezultātā atgriezīs pirmo eksistējošo rādītāju tekošajam Laika ( Time ) rādītājam  līmenī  Dienas ( Day ) ( pirmo gada dienu , ceturksni vai   mēnesi), kas ir definēts Laika ( Time ) dimensijā.
  • ClosingPeriod(Time.Day, Time.CurrentMember) will return last descendant of current Time member at Day level (last day of year, quarter or month which is defined in Time dimension)Sometimes you would like to test if your time navigation expression is working as you expect (before using it in further calculations). Then you can use .Name member property to get member name as calculation formula result. For example, define calculated measure rezultātā atgriezīs pēdējo eksistējošo rādītāju tekošajam Laika ( Time ) rādītājam  līmenī  Dienas ( Day ) ( pēdējo gada dienu , ceturksni vai mēnesi), kas ir definēts Laika ( Time ) dimensijā.
    Dažrez jums var būt nepieciešams pārbaudīt, kā strādā Jūsu definētā " Pārvietošanās laikā " pirms Jūs to izmantojat tālākajās kalkulācijās. Tad jūs varat izmantot  .Name rādītāja iezīmi ( member property ), lai iegūtu rādītāja nosaukumu kā kalkulāciju formulas rezultātu.  Piemēram definējiet Aprēkināmo lielumu  Measures.test opening day with formulaOpeningPeriod(Time.Day, Time.CurrentMember).Name
    and use it in report together with Time dimension members and see if you get expected result for Time dimension members at different levels. \\\\\\\\Name  un izmantojiet to atskaitē kopā ar Laika ( Time) dimensijas rādītājiem, tad jūs varēsies uzskatāmi salīdzināt, vai jūs iegūstat vēlamo rezultātu laika dimensijas dažādu līmeņu rādītājiem.

 

Sets

Align
alignjustified

Now you know you to navigate to individual dimension members. But quite often you would like to perform operations on set of dimension members, for example, find sum or average value of some measure over selected set of dimension members.
The easiest way how to use sets in calculation formulas is to use list of members enclosed in curly braces, e.g.{Customers.USA.CA, Customers.USA.OR, Customers.USA.WA}
{Time.2011, Time.2012}
If you would like to select set as range of sequential dimension level members then you can specify first and last member and use : between them. For example, this will create a set of dates from Jan 01 2012 to Jan 15 2012:Time.2012.Q1 2012.Jan 2012.Jan 01 2012:Time.2012.Q1 2012.Jan 2012.Jan 15 2012
Quite often you don't want to specify exact range of members but would like to get all dimension hierarchy level members. You can do it with Members method, for example, to get all months in Time dimension:Time.Month.Members
When you want to test which members will be returned by some set expression then you can use SetToStr functions to create string of concatenated member full names. For example, define calculated measure Measures.test all months with formulaSetToStr(Time.Month.Members)
There are several other useful functions for working with sets, here are some examples how to use them:

  • Customers.USA.CA.Children returns set of children members using dimension hierarchy (in this example all cities in California)
  • Descendants(Customers.USA, Customers.City) returns set of member descendants at specified hierarchy level (in this example all cities in USA)
  • Customers.USA.CA.San Francisco.Siblings returns all members which have the same parent as this member (in this example all cities in California), it is the same as using Customers.USA.CA.San Francisco.Parent.ChildrenThere are additional methods that you can use to get just first or last members of these sets - FirstChild, LastChild, FirstSibling, LastSibling. \\\\\\\\\\\\\\\\\\\\\\\\\\

 

...