Изчисляемата колона ви дава възможност да добавяте нови данни към таблица във вашия модел на данни в Power Pivot. Вместо да поставяте или импортирате стойности в колоната, вие създавате формула за изрази за анализ на данни (DAX ), която дефинира стойностите на колоните.
Ако например трябва да добавите стойности за печалба от продажби към всеки ред в таблица factSales . Чрез добавяне на нова изчисляема колона и с помощта на формулата =[SalesAmount]-[TotalCost]–[ReturnAmount], новите стойности се изчисляват чрез изваждане на стойности от всеки ред в колоните TotalCost и ReturnAmount от стойностите във всеки ред на колоната SalesAmount. Колоната "Печалба" след това може да бъде използвана в обобщена таблица, обобщена диаграма или отчет на Power View – както бихте направили всяка друга колона.
Тази фигура показва изчисляема колона в Power Pivot.
Забележка
Въпреки че изчисляемите колони и мерки са сходни, защото всяка разчита на формула, те са различни. Мерките се използват най-често в областта на стойностите на обобщена таблица или обобщена диаграма. Използвайте изчисляеми колони, когато искате да поставите изчислените резултати в различна област на обобщена таблица – например колона или ред в обобщена таблица, или върху ос в обобщена диаграма. За повече информация за мерките вж. "Мерки" в Power Pivot.
Разбиране на изчисляемите колони
Формулите в изчисляемите колони в голяма степен приличат на формулите, които създавате в Excel. Не можете обаче да създавате различни формули за различните редове в таблицата. Вместо това DAX формулата автоматично се прилага към цялата колона.
Когато една колона съдържа формула, стойността се изчислява за всеки ред. Резултатите се изчисляват за колоната веднага щом въведете формулата. След това стойностите на колоните се преизчисляват, ако е необходимо, например когато се обновяват базовите данни.
Можете да създавате изчисляеми колони според мерки и други изчисляеми колони. Например можете да създадете една изчисляема колона, за да извлечете число от низ от текст, и след това да използвате това число в друга изчисляема колона.
Пример
Можете да поддържате изчисляема колона с данни, които можете да добавите в съществуваща таблица. Например можете да изберете да конкатенирате стойности, да извършвате събиране, да извличате поднизове или да сравнявате стойностите в други полета. За да добавите изчисляема колона, трябва вече да имате поне една таблица в Power Pivot.
Погледнете тази формула:
=EOMONTH([Начална_дата];0])
Като използва примерните данни от Contoso, тази формула извлича месеца от колоната "Начална дата" в таблицата "Промоция". След това изчислява стойността в края на месеца за всеки ред в таблицата "Промоция". Вторият параметър указва броя на месеците преди или след месеца в StartDate; В този случай 0 означава същия месец. Например ако стойността в колоната "Начална_дата" е 1.6.2001 г., стойността в изчисляемата колона ще бъде 30.06.2001 г.
Именуване на изчисляеми колони
По подразбиране новите изчисляеми колони се добавят отдясно на другите колони и на колоната автоматично се присвоява името по подразбиране ИзчисляеКолона1, ИзчисляеКолона2 и т. н. След като създадете колони, можете да пренареждате и преименувате колони, ако е необходимо.
Има някои ограничения за промените в изчисляемите колони:
- Всяко име на колона в таблицата трябва да бъде уникално.
- Избягвайте имена, които вече са използвани за мерки в същата работна книга. Въпреки че е възможно една мярка и изчисляема колона да имат едно и също име, ако имената не са уникални, можете лесно да получите грешки при изчисление. За да избегнете случайно извикване на мярка, винаги използвайте напълно квалифицирана препратка към колона, когато препращате към колона.
- Когато преименувате изчисляема колона, трябва също да актуализирате всички формули, които разчитат на съществуващата колона. Освен ако не сте в режим на ръчно актуализиране, актуализирането на резултатите от формулите става автоматично. Тази операция обаче може да отнеме известно време.
- Има някои знаци, които не може да се използват в имената на колони или в имената на други обекти в Power Pivot. За повече информация вж. "Изисквания към именуването" в спецификацията за синтаксис на DAX за Power Pivot.
За да преименувате или редактирате съществуваща изчисляема колона:
|
|---|
Промяна на типа на данните
Можете да промените типа на данните за изчисляема колона по същия начин, по който можете да промените типа на данните за другите колони. Не можете да правите следните промени на типа данни: от текст към десетично, от текст към цяло число, от текст към валута и от текст към дата. Можете да направите промяна от текст на булев.
Производителност на изчисляемите колони
Формулата за изчисляема колона може да изисква по-много ресурси от формулата, използвана за мярка. Една от причините е, че резултатът за една изчисляема колона винаги се изчислява за всеки ред в таблицата, докато мярката се изчислява само за клетките, които се използват в обобщената таблица или обобщената диаграма.
Например таблица с милион редове винаги ще има изчисляема колона с милион резултати и съответен ефект върху техническите показатели. Обобщената таблица обаче обикновено филтрира данните, като прилага заглавия на редове и колони. Това означава, че мярката се изчислява само за подмножеството от данни във всяка клетка на обобщената таблица.
Формулата зависи от препратките към обекти във формулата, например други колони или изрази, които оценяват стойности. Например изчисляема колона, която се базира на друга колона – или изчисление, което съдържа израз с препратка към колона – не може да бъде изчислено, докато не се изчисли другата колона. По подразбиране автоматичното обновяване е разрешено. Така че помнете, че зависимостите на формулите могат да повлияят на производителността.
За да избегнете проблеми с производителността, когато създавате изчисляеми колони, следвайте тези указания:
- Вместо да създавате една-единствена формула, която съдържа много сложни зависимости, създайте формулите на стъпки, като резултатите се записват в колони, така че да можете да проверите резултатите и да оцените промените в производителността.
- Промените в данните често водят до актуализации на изчисляеми колони. Можете да предотвратите това, като зададете режима на преизчисляване на ръчен. Имайте предвид обаче, че ако някои стойности в изчисляемата колона са неправилни, колоната ще бъде забранена, докато не обновите и не преизчислите данните.
- Ако промените или изтриете релации между таблиците, формулите, които използват колони в тези таблици, ще станат невалидни.
- Ако създадете формула, която съдържа кръгова или самопрепращаща зависимост, ще възникне грешка.
Задачи
За повече информация относно работата с изчисляеми колони вижте "Създаване на изчисляема колона".