Versions Compared

Key

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

...

Align
alignjustified

Kad jūs izmantosiet Rādītāji.Pārdošana (Measures.Store Sales), tad StandardBI aprēkinās Pārdošanas lielumu katrai atbilstošās dimensijas rādītāja rindiņai/ kolonnai atskaitē.  Ja jūsu kalkulāciju formulā jūs gribat ignorēt kādas citas dimensijas vērtību, tad jums ir jāizmanto tuples, kas ir dažādu rādītāju kombinācija no dažādam dimensijām. MDX sintakse priekš tuples is  (member_1, member_2, ..., member_n). Piemēram, ja jūs velētos iegūt Pārdošanas (Store Sales) vērtību visiem klientiem tad jūs izmantotu tuple Rādītāji.Pārdošana, Klienti.Noklusētais rādītājs (Measures.Store Sales, Customers.DefaultMember ) .
Tagad ķersimies klāt aprēķināmo rādītāju definēšanai Rādītāji []( Measures.[] ) ar formulu ( un procentu formatējamu)  : Rādītāji. Pārdošana / Rādītāji.Pārdošana, Klienti.Noklusētais rādītājs (Measures.Store Sales / (Measures.Store Sales, Customers.DefaultMember).
Kad atskaitē jūs kombinēsiet Rādītāji [] (Measures.[] ) ar piemēram Klienti.USA.CA (Customers.USA.CA), tad jūs iegūsiet Californijas pārdošanas rezultātu no kopējās Pārdošanas procentuāli.
Iespējams jūs nevēlaties redzēt procentu no kopējās pārdošanas bet gan procentu no Klientu hierrhijas augtāka līmeņa pārdošanas rezultātiem (piem. pilsētas pārdošanas rezultātus pret atbilstošā štata pārdošanas rezultātiem). Šajā gadījumā jūs varat izmantot CurrentMember dimensiju vai hierarhiju, lai piekļūtu jūsu izvēlētajam rādītājam izvēlētajā dimensijā, kurš šobrīd tiek rēķināts. Piem. Klienti.CurrentMember ( Customers.CurrentMember ) atgriezīs rezultātā to CurrentMember Klientu hierarhijas rādītāju, kas šobrīd tiek rēķināts. Jeb citiem vārdien  - ja Klientu (Customers) dimensija ir atskaites rindās, tad izmantojot Klienti.CurrentMember ( Customers.CurrentMember) mēs zināsim, kurai rindiņai formula šobrīd tiek rēķināta. 
Ja mums ir tekoša rādītājs (Current member ), tad mēs varam pārvietoties arī uz citiem dimensijas rādītājiem, kas ir saistīti ar šo rādītāju ( Customers.CurrentMember).  Ancestor(Customers.CurrentMember, Customers.Country) pārvietosies uz "vecāku" jeb vienu līmeni augstāku rādītāju Valsts ( Country ) līmenī.
Tātad mēs varam definēt Aprēkināmo rādītāju Rāditāji[] ( Measures.[]) kā  (Measures.Store Sales / (Measures.Store Sales, Customers.CurrentMember.Parent)

 

...

Pārvietošanās laikā

Align
alignjustified

As you can move to different dimension hierarchy levels you can also move to different dimension members in the same dimension. It is typically used in Time dimension when you want to compare measures between different time periods or aggregate time period range.
For example, calculated measure Measures.Sales monthly growth with formulaTā 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)
will calculate aprēķinās Rādītāji.Pārdošana ( Measures.Store Sales growth comparing to previous Time dimension member period. If this calculated measure will be combined in report with month in Time dimension it will show growth comparing to previous month, if it will be combined with year then it will show growth comparing to previous year.
There are several functions that help you "move in time":) 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 returns previous member in the same hierarchy level (it will return empty member for the first member)
  • Time.CurrentMember.NextMember will return next member
  • Time.CurrentMember.Lag(2) will return previous member with distance 2 (use any number for argument, Lag(1) is the same as PrevMember)
  • Time.CurrentMember.Lead(2) will return next member with distance 2 (Lead(1) is the same as NextMember)
  • ParallelPeriod(Time.Year, 1, Time.CurrentMember) will return "parallel" Time member one year ago (e.g. for day level member Jan 01 2012 it will be day Jan 01 2011 but for month level member Jan 2012 it will be month 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)
  • 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 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. \\\\\\\\

 

...