В тази статия ще разгледаме основите на създаването на формули за изчисление както за изчисляеми колони, така и за мерки в Power Pivot. Ако сте нови в DAX, не забравяйте да проверите QuickStart: Научете основите на DAX в 30 минути.
Основи на формулите
Power Pivot предоставя изрази за анализ на данни (DAX) за създаване на изчисления по избор в Power Pivot таблици и в Excel обобщени таблици. DAX включва някои от функциите, които се използват във Excel формули, и допълнителни функции, които са предназначени да работят с релационни данни и да извършват динамично агрегиране.
Ето някои основни формули, които могат да се използват в изчисляема колона:
Формула |
Описание |
|
Вмъква днешната дата във всеки ред на колоната. |
|
Вмъква стойността 3 във всеки ред на колоната. |
|
Добавя стойностите в същия ред на [Колона1] и [Колона2] и поставя резултатите в същия ред на изчисляемата колона. |
Можете да създавате Power Pivot за изчисляеми колони толкова, колкото създавате формули в Microsoft Excel.
Използвайте следните стъпки, когато създавате формула:
-
Всяка формула трябва да започва със знак за равенство.
-
Можете или да въведете или да изберете име на функция, или да въведете израз.
-
Започнете да въвеждате първите няколко букви на функцията или името, които искате, а автодовършването показва списък с наличните функции, таблици и колони. Натиснете TAB, за да добавите елемент от списъка Автодовършване към формулата.
-
Щракнете върху бутона Fx, за да покажете списък с наличните функции. За да изберете функция от падащия списък, използвайте клавишите със стрелки, за да маркирате елемента, и след това щракнете върху Ok, за да добавите функцията към формулата.
-
Дайте аргументите на функцията, като ги изберете от падащ списък с възможни таблици и колони или като въведете стойности или друга функция.
-
Проверете за синтаксисни грешки: уверете се, че всички скоби са затворени и че колоните, таблиците и стойностите се препращат правилно.
-
Натиснете ENTER, за да приемете формулата.
Забележка: В изчисляема колона, веднага щом приемете формулата, колоната се попълва със стойности. В мярка натискането на ENTER записва дефиницията на мярката.
Създаване на проста формула
За да създадете изчисляема колона с проста формула
След това стойностите се попълват в новата изчисляема колона за всички редове. |
Съвети за използване на автодовършване
-
Можете да използвате автодовършване на формули по средата на съществуваща формула с вложени функции. Текстът непосредствено преди точката на вмъкване се използва за показване на стойности в падащия списък и целият текст след точката на вмъкване остава непроменен.
-
Power Pivot не добавя затваряща скоба на функциите или автоматично съответства на скобите. Трябва да се уверите, че всяка функция е синтактично правилна или че не можете да запишете или използвате формулата. Power Pivot осветява скобите, което улеснява проверката дали са правилно затворени.
Работа с таблици и колони
Power Pivot таблици изглеждат подобно на Excel таблици, но са различни по начина, по който работят с данни и с формули:
-
Формулите в Power Pivot работят само с таблици и колони, а не с отделни клетки, препратки към диапазони или масиви.
-
Формулите могат да използват релации за получаване на стойности от свързани таблици. Стойностите, които се извличат, винаги са свързани със стойността на текущия ред.
-
Не можете Power Pivot поставяте формули в Excel работен лист и обратно.
-
Не можете да имате нередовни или "неравнени" данни, както правите в Excel работен лист. Всеки ред в таблица трябва да съдържа същия брой колони. Можете обаче да имате празни стойности в някои колони. Excel таблици с данни и Power Pivot с данни не са взаимозаменяеми, но можете да се свържете към Excel таблици от Power Pivot и да поставите Excel данни в Power Pivot. За повече информация вижте Добавяне на данни в работен лист към модел на данни с помощта на свързана таблица и Копиране и поставяне на редове в модел на данни в Power Pivot.
Препращане към таблици и колони във формули и изрази
Можете да препращате към всяка таблица и колона с помощта на името й. Например следната формула илюстрира как да препращате към колони от две таблици с помощта на пълното име:
=SUM("Нови продажби"[Сума]) + SUM("Минали продажби"[Сума])
Когато се оценява формула, Power Pivot първо проверява за общ синтаксис и след това проверява имената на колоните и таблиците, които предоставяте, спрямо възможните колони и таблици в текущия контекст. Ако името е нееднозначно или ако колоната или таблицата не могат да бъдат намерени, ще получите грешка във вашата формула (низ #ERROR вместо стойност на данни в клетки, където възниква грешката). За повече информация относно изискванията за именуване за таблици, колони и други обекти вижте "Изисквания за именуване в спецификацията на синтаксиса на DAX за Power Pivot.
Забележка: Контекстът е важна функция на Power Pivot на данни, която ви позволява да създавате динамични формули. Контекстът се определя от таблиците в модела на данни, релациите между таблиците и всички филтри, които са приложени. За повече информация вижте Контекст във формули на DAX.
Релации между таблици
Таблиците могат да бъдат свързани с други таблици. Чрез създаването на релации получавате възможността да търсите данни в друга таблица и да използвате свързани стойности, за да извършвате сложни изчисления. Можете например да използвате изчисляема колона, за да търсите всички записи за доставка, свързани с текущия риселър, и след това да сумирате разходите за доставка за всеки. Ефектът е като параметризирана заявка: можете да изчислите различна сума за всеки ред в текущата таблица.
Много функции на DAX изискват да съществува релация между таблиците или между няколко таблици, за да намерите колоните, към които сте препращали, и да връщате резултати, които имат смисъл. Други функции ще се опитат да идентифицират релацията; за най-добри резултати обаче винаги трябва да създадете релация, когато е възможно.
Когато работите с обобщени таблици, особено важно е да свържете всички таблици, които се използват в обобщената таблица, така че обобщените данни да могат да се изчисляват правилно. За повече информация вижте Работа с релации в обобщени таблици.
Отстраняване на грешки във формули
Ако получите грешка, когато дефинирате изчисляема колона, формулата може да съдържа или синтактична грешка, или семантична грешка.
Синтактичните грешки са най-лесните за разрешаване. Те обикновено включват липсваща скоба или запетая. За помощ относно синтаксиса на отделните функции вижте Справка за функцията DAX.
Другият тип грешка възниква, когато синтаксисът е правилен, но стойността или колоната, към която има препратка, няма смисъл в контекста на формулата. Такива семантични грешки може да са причинени от някой от следните проблеми:
-
Формулата препраща към несъ съществуваща колона, таблица или функция.
-
Формулата изглежда правилна, но когато Power Pivot извлича данните, тя намира несъответствие на типа и повдига грешка.
-
Формулата предава неправилно число или тип параметри на функция.
-
Формулата препраща към друга колона, която има грешка, и следователно нейните стойности са невалидни.
-
Формулата препраща към колона, която не е обработена. Това може да се случи, ако сте променили работната книга в ръчен режим, направили сте промени и след това никога не сте обновявали данните или сте актуализирали изчисленията.
В първите четири случая DAX маркира цялата колона, която съдържа невалидната формула. В последния случай DAX сиво излиза от колоната, за да покаже, че колоната е в непреработено състояние.