Қысқаша нұсқаулық: DAX негіздерін 30 минутта үйрену

Бұл қысқаша нұсқаулық Excel бағдарламасындағы Power Pivot қондырмасымен немесе SQL Server деректер құралдарында жасалған кестелік үлгі жобаларымен енді танысқан пайдаланушыларға арналған. Ол DAX өрнектерін бірқатар негізгі деректер үлгісін жасау және талдау мәселелерін шешу үшін пайдалану жолына қысқа және оңай кіріспе беруге арналған. Бұл бөлімде концептуалды ақпарат, орындауға болатын бірқатар тапсырма және үйренгеніңізді тексеруге арналған біраз бақылау жұмыстары бар. Бұл бөлімді аяқтағаннан кейін DAX тіліндегі негізгі түсініктердің көпшілігін жақсы түсінесіз.

DAX дегеніміз не?

DAX — формулада немесе өрнекте бір немесе одан көп мәнді есептеу және қайтару үшін пайдалануға болатын функциялардың, операторлардың және тұрақты мәндердің жиыны. Қарапайым тілмен айтқанда, DAX үлгіде бар деректерден жаңа ақпаратты жасауға көмектеседі.

DAX неліктен соншалықты маңызды?

Жұмыс кітабын жасау және оған біраз деректерді импорттау оңай. Тіпті ешбір DAX формулаларын пайдаланусыз маңызды ақпаратты көрсететін жиынтық кестелерді немесе жиынтық диаграммаларды жасауға болады. Бірақ бірнеше өнім санаттарында және әр түрлі күн ауқымдары үшін маңызды сатылым деректерін талдау керек болса ше? Я болмаса, әр түрлі деректер көздеріндегі бірнеше кестелердегі маңызды қор деректерін біріктіру керек болса ше? DAX формулалары осы мүмкіндікті, сондай-ақ, көптеген басқа маңызды мүмкіндіктерді береді. Тиімді DAX формулаларын жасау жолын үйрену деректерді барынша пайдалануға мүмкіндік береді. Қажет ақпаратты алғанда, табыстар мен шығындарды есептеу жолына әсер ететін нақты бизнес мәселелерін шешуді бастай аласыз. Бұл — Бизнес -сараптама, DAX тілі соған өтуге көмектеседі.

Алғышарттар

Microsoft Excel бағдарламасында формулаларды жасаумен таныс болуыңыз мүмкін. Бұл білім DAX тілін түсінуде пайдалы болады, бірақ тіпті Excel формулаларымен тәжірибеңіз болмаса да, мұнда сипатталған түсініктер DAX формулаларын жасауды бастауға және нақты дүниедегі Бизнес-сараптама мәселелерін бірден шешуге көмектеседі.

Біз есептеулерде пайдаланылатын DAX формулаларын түсінуге ерекше көңіл бөлеміз. Сіз есептелетін бағандар және есептелетін өрістер түсініктерінің екеуімен де таныс болуыңыз керек (сондай-ақ, өлшемдер ретінде белгілі), олардың екеуі де Power Pivot анықтамасында сипатталған. Сондай-ақ, Excel бағдарламасындағы Power Pivot қондырмасының жасау ортасымен және құралдарымен таныс болуыңыз керек.

Мысал жұмыс кітабы

DAX тілін үйренудің ең жақсы жолы — біраз қарапайым формулаларды жасау, оларды кейбір нақты деректермен пайдалану және нәтижелерді өз көзіңізбен көру. Мұндағы мысалдар мен тапсырмаларда Contoso Sample DAX Formulas.xlsx жұмыс кітабы пайдаланылады. Бұл жұмыс кітабын http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409 бетінен жүктеуге болады. Жұмыс кітабын компьютерге жүктегеннен кейін ашып, кейін Power Pivot терезесін ашыңыз.

Бастайық!

Біз DAX тілінің үш ең маңызды түсінігін қарастырамыз: синтаксис, функциялар және контекстӘрине, DAX тілінде басқа маңызды түсініктер бар, бірақ бұл үш түсінікті түсіну DAX дағдыларын құрудың ең жақсы негізін қалайды.

Синтаксис

Жеке формулаларды жасамай тұрып DAX формуласының синтаксисін қарастырайық. Синтаксис формуланы құрайтын әр түрлі элементтерді немесе оңай тілмен айтқанда, формуланың жазылу жолын қамтиды. Мысалы, НақтыСатылым кестесіндегі Маржа деп аталатын есептелетін бағандағы әр жол үшін жаңа деректерді (мәндер) жасау үшін пайдаланылатын қарапайым DAX формуласын қарастырайық: (формула мәтінінің түстері тек мысал үшін)

Есептелетін баған формуласы

Бұл формула синтаксисіне келесі элементтер кіреді:

  1. Теңдік белгісі операторы (=) формуланың басын көрсетеді және есептелгенде, бұл формула нәтижені немесе мәнді қайтарады. Мәнді есептейтін барлық формулалар теңдік белгісімен басталады.

  2. [СатуКөлемі] сілтеме жасалған бағаны шегерілетін мәндерді қамтиды. Формуладағы бағанға сілтеме әрқашан тік жақшаларға [] алынады. Ұяшыққа сілтеме жасайтын Excel формулаларынан ерекше, DAX формуласы әрқашан бағанға сілтеме жасайды.

  3. Алу (-) математикалық операторы.

  4. [ЖалпыҚұны] сілтеме жасалған бағаны [СатуКөлемі] бағанындағы мәндерден алу керек мәндерді қамтиды.

DAX формуласын оқу жолын түсінуге тырысқанда, жиі элементтердің әрқайсысын күнделікті ойлайтын және сөйлейтін тілге бөлу пайдалы болады. Мысалы, формуланы келесідей оқуға болады:

НақтыСатылым кестесінде Маржа есептелетін бағанындағы әр жол үшін [ЖалпыҚұны] бағанындағы мәндерді [СатуКөлемі] бағанындағы мәндерден алу (-) арқылы мәнді есептеу (=).

Есептелетін өрісте пайдаланылатын басқа формула түрін қарастырайық:

Есептелетін баған формуласы

Бұл формулаға келесі синтаксис элементтері кіреді:

  1. «Сату көлемінің қосындысы» есептелетін өріс атауы. Есептелетін өрістердің формулалары есептелетін баған атауын, қос нүктені, есептеу формуласын қамтуы мүмкін.

  2. Теңдік белгісі операторы (=) есептеу формуласының басын көрсетеді. Есептелгенде, ол нәтижені қайтарады.

  3. SUM функциясы [СатуКөлемі] бағанындағы сандардың бәрін қосады. Функциялар туралы қосымша мәліметтерді кейінірек аласыз.

  4. Жақшаға () бір немесе одан көп аргумент алынады. Барлық функциялар кемінде бір аргументті қажет етеді. Аргумент функцияға мәнді береді.

  5. Сілтеме жасалған кесте НақтыСату.

  6. НақтыСату кестесіндегі [СатуКөлемі] сілтеме жасалған баған. Бұл аргумент бар болса, SUM функциясы қай бағанда SUM біріктіру керек екенін біледі.

Бұл формуланы келесідей оқуға болады:

«Сату көлемінің қосындысы» атты есептелетін өріс үшін НақтыСату кестесіндегі [СатуКөлемі] бағанындағы мәндердің ҚОСЫНДЫСЫН (SUM) есептеу (=).

Жиынтық кесте өрістері тізіміндегі «Мәндер» аймағына орналастырғанда, бұл есептелетін өріс жиынтық кестедегі әр ұяшық арқылы анықталған мәндерді есептейді және қайтарады, мысалы, АҚШ-тағы ұялы телефон нөмірлері.

«Маржа» есептелетін бағаны үшін пайдаланылған формуламен салыстырғанда бұл формулада біраз нәрсе басқаша екеніне назар аударыңыз. Атап айтқанда, функция, SUM, енгізілді. Функциялар — сандармен, күндермен, уақытпен, мәтінмен және т.б. күрделі есептеулерді және әрекеттерді орындауды оңайырақ ететін алдын ала жазылған формулалар. Функциялар туралы қосымша мәліметтерді кейінірек аласыз.

Алдыңғы «Маржа» есептелетін бағанынан ерекше, [СатуКөлемі] бағанының алдында баған жататын НақтыСату кестесі келгенін көресіз. Бұл толығымен анықталған баған атауы ретінде белгілі, өйткені ол алдында кесте атауы келетін баған атауын қамтиды. Бір кестеде сілтеме жасалған бағандар формулада кесте атауын қосуды қажет етпейді. Бұл көп бағандарға сілтеме жасайтын формулаларды қысқарақ және оқуды оңайырақ етеді. Дегенмен, тіпті бір кестеде болса да, есептелетін өріс формулаларына кесте атауын қосқан жөн.

Ескерту :  Егер кесте атауында бос орындар, сақталған кілтсөздер немесе рұқсат етілмеген таңбалар бар болса, кесте атауын жалғыз тырнақшаларға алу керек. Сондай-ақ, атауда ANSI алфавиттік-сандық таңбалар ауқымынан тыс таңбалар бар болса, тіл стандарты бұл таңбалар жиынын қолдайтын-қолдамайтынына қарамастан кесте атауын тырнақшаға алу керек.

Формулалардың синтаксисі дұрыс болғаны өте маңызды. Жағдайлардың көпшілігінде синтаксис дұрыс болмаса, синтаксистік қате қайтарылады. Басқа жағдайларда синтаксис дұрыс болуы, бірақ қайтарылған мәндер күткендей болмауы мүмкін. Power Pivot (және SQL Server деректер құралдары) IntelliSense қамтиды; бұл — дұрыс элементтерді таңдауға көмектесу арқылы синтаксисі дұрыс формулаларды жасау үшін пайдаланылатын мүмкіндік.

Қарапайым формуланы жасайық. Бұл тапсырма формула синтаксисін және формула жолындағы IntelliSense мүмкіндігі сізге қалай көмектесе алатынын одан әрі түсінуге көмектеседі.

Тапсырма: есептелетін баған үшін қарапайым формуланы жасау

  1. Сіз әлі Power Pivot терезесінде, Excel бағдарламасында, Power Pivot таспасында болмасаңыз, Power Pivot терезесі түймешігін басыңыз.

  2. Power Pivot терезесінде НақтыСату кестесін (қойындысын) басыңыз.

  3. Оң жақ бұрыштың соңындағы бағанға жылжыңыз да, баған тақырыбында Бағанды қосу пәрменін таңдаңыз.

  4. Үлгілер құрастырғышы терезесінің жоғарғы жағының бойындағы формула жолының ішінен басыңыз.

    PowerPivot формула жолы

    Енді курсор формула жолында пайда болады. Формула жолы — есептелетін баған немесе есептелетін өріс үшін формуланы теретін орын.

    Формула жолының сол жағындағы үш түймешікті қарастыруға уақыт бөлейік.

    Формула жолы

    Формула жолында курсор белсенді кезде бұл үш түймешік белсенді болады. Сол жақ бұрыштағы түймешік, X, бұл жай ғана бас тарту түймешігі. Оған барып, басыңыз. Курсор формула жолында енді көрінбейді және бас тарту түймешігі мен құсбелгі түймешігі енді көрінбейді. Барып, формула жолында қайтадан басыңыз. Енді бас тарту түймешігі және құсбелгі түймешігі қайтадан пайда болады. Яғни, формуланы енгізуді бастауға дайынсыз.

    Құсбелгі түймешігі — формуланы тексеру түймешігі. Ол формуланы енгізбегенше ештеңе істемейді. Оған біраздан кейін ораламыз.

    Fx түймешігін басыңыз. Жаңа диалогтық терезе пайда болатынын көресіз; «Функцияны кірістіру» диалогтық терезесі. «Функцияны кірістіру» диалогтық терезесі — DAX формуласын енгізуді бастаудың ең оңай жолы. Біз формулаға функцияны біраздан кейін есептелетін өрісті жасағанда қосамыз, ал қазір есептелетін баған формуласына функцияны қосудың қажеті жоқ. «Функцияны кірістіру» диалогтық терезесін жабыңыз.

  5. Формула жолында теңдік белгісін (=) теріңіз де, ашатын тік жақшаны ([) теріңіз. НақтыСату кестесіндегі барлық бағандар бар шағын терезе пайда болғанын көресіз. Бұл жұмыс істеп жатқан IntelliSense.

    Есептелетін бағандар әрқашан сіз орналасқан белсенді кестеде жасалатындықтан, баған атауының алдында кесте атауын көрсету қажет емес. Төмен жылжыңыз да, [СатуМөлшері] тармағын екі рет басыңыз. Сондай-ақ, қажет баған атауына жылжып, Tab пернесін басуға болады.

    Енді курсор [СатуМөлшері] тармағының оң жағында белсенді болады.

  6. Бос орынды теріңіз де, алу операторын - (минус белгісі) теріңіз, содан кейін тағы бір бос орынды теріңіз.

  7. Енді, тағы бір ашатын тік жақшаны ([) теріңіз. Бұл ретте [ҚайтарылатынМөлшер] бағанын таңдаңыз да, Enter пернесін басыңыз.

    Егер қате алсаңыз, синтаксиске мұқият қараңыз. Қажет болса, оны бұрынырақ сипатталған «Маржа» есептелетін бағанындағы формуламен салыстырыңыз.

    Формуланы аяқтау үшін Enter пернесін басқаннан кейін Power Pivot терезесінің төменгі жағындағы күй жолағында Есептеу сөзі пайда болады. Тіпті үш миллионнан астам жол үшін жаңа мәндерді есептесеңіз де, бұл тез орындалады.

  8. Баған тақырыбын тінтуірдің оң жақ түймешігімен басып, бағанды қайта атаңыз (ТазаСатылым).

Болды! Жаңа ғана қарапайым, бірақ өте қуатты DAX формуласын жасадыңыз. НақтыСату кестесіндегі әр жол үшін ТазаСатылым формуласы [ҚайтарылатынМөлшер] бағанындағы мәнді [СатуМөлшері] бағанындағы мәннен алу арқылы мәнді есептейді. Біз жаңа «Әр жол үшін» деп айтқанымызға назар аударыңыз. Бұл DAX тіліндегі басқа өте маңызды түсініктің қысқаша мысалы; жолконтекстіЖол контексті туралы қосымша мәліметтерді кейінірек аласыз.

Кеңес : 

DAX формуласында операторы тергенде түсіну керек шынымен маңызды нәрсе — пайдаланып жатқан аргументтердегі деректер түрі. Мысалы, келесі формуланы терсеңіз, = 1 & 2, қайтарылатын мән «12» мәтіндік мәні болатын еді. Бұл амперсанд (&) операторы мәтінді біріктіруге арналғандықтан болады. DAX бұл формуланы келесідей түсінеді: 1 мәнін мәтін ретінде алу және 2 мәнін мәтін ретінде қосу арқылы нәтижені есептеу. Енді, = 1 + 2 деп терсеңіз, DAX бұл формуланы былай оқиды: 1 сандық мәнін алып, 2 сандық мәнін қосу арқылы нәтижені есептеу. Нәтиже — әрине «3», сандық мән. DAX нәтижесіндегі мәндерді аргументте пайдаланылған бағандардың деректер түріне негізделіп емес, формуладағы операторға байланысты есептейді. DAX тілінде деректер түрлері өте маңызды, бірақ бұл қысқаша нұсқаулықтың ауқымынан тыс. DAX формулаларындағы деректер түрлері мен операторлар туралы қосымша мәліметтерді алу үшін Books Online торабында DAX анықтамасын (http://go.microsoft.com/fwlink/?LinkId=239769&clcid=0x409) қараңыз.

Басқасын қолданып көрейік. Бұл ретте сіз формуланы теру және IntelliSense мүмкіндігін пайдалана отырып есептелетін өрісті жасайсыз. Формуланы толық түсінбесеңіз, қатты уайымдамаңыз. Мұндағы маңызды нәрсе — бірнеше элементті пайдаланып, синтаксисі дұрыс формуланы жасау жолын үйрену.

Тапсырма: есептелетін өріс формуласын жасау

  1. НақтыСату кестесінде есептеу аумағындағы кез келген бос ұяшықта басыңыз. Бұл — Power Pivot терезесіндегі кестенің тура астындағы бос ұяшықтар аумағы.

PowerPivot есептеу аумағы

  1. Формула жолында «Алдыңғы тоқсан сатылымдары:» атауын теріңіз.

  2. Есептеу формуласын бастау үшін теңдік белгісін (=) теріңіз.

  3. Бірінші бірнеше әріпті (CAL) теріңіз де, пайдалану қажет функцияны екі рет басыңыз. Бұл формулада CALCULATE функциясын пайдалану керек.

  4. CALCULATE функциясына берілетін аргументтерді бастау үшін ашатын жақшаны (() теріңіз.

    Ашатын жақшаны тергеннен кейін IntelliSense мүмкіндігі CALCULATE функциясы үшін қажет аргументтерді көрсететініне назар аударыңыз. Аргументтер туралы біраздан кейін мәліметтер аласыз.

  5. НақтыСату кестесінің бірінші бірнеше әрпін теріңіз де, ашылмалы тізімде НақтыСату[Сату] тармағын екі рет басыңыз.

  6. Бірінші сүзгіні көрсету үшін үтірді (,) теріңіз, содан кейін PRE деп теріңіз, содан кейін PREVIOUSQUARTER функциясын екі рет басыңыз.

    PREVIOUSQUARTER функциясын таңдағаннан кейін аргументтің міндетті екенін көрсететін екінші ашатын жақша пайда болады (бұл ретте PREVIOUSQUARTER функциясы үшін).

  7. Dim бірінші бірнеше әрпін теріп, содан кейін КүнӨлш[КүнКілті] параметрін екі рет басыңыз.

  8. PREVIOUSQUARTER функциясына және CALCULATE функциясына берілетін аргументтерді екі жабатын жақшаны ())) теру арқылы жабыңыз.

    Формулаңыз енді мына сияқты болуы керек:

    Алдыңғы тоқсан сатылымдары:=CALCULATE(НақтыСату[Сату], PREVIOUSQUARTER(КүнӨлш[КүнКілті]))

  9. Формуланы тексеру үшін формула жолында формуланы тексеру түймешігін басыңыз. Қате алсаңыз, синтаксистің әр элементін тексеріңіз.

Сіз мұны істедіңіз! Жаңа ғана DAX тілін пайдаланып есептелетін өрісті жасадыңыз және бұл оңай емес болды. Бұл формуланың істейтіні — жиынтық кестеде немесе жиынтық диаграммада қолданылған сүзгілерге байланысты алдыңғы тоқсандағы жалпы сатылымды есептеу.

Жаңа ғана сізге DAX формулаларының бірнеше маңызды жағы туралы кіріспе мәліметтер берілді. Алдымен, бұл формулада екі функция болды. PREVIOUSQUARTER функциясының CALCULATE функциясына берілген аргумент ретінде ендірілгенін ескеріңіз. DAX формулаларында 64-ке дейін кірістірілген функциялар бола алады. Формулада қашан да болсын осыншама көп кірістірілген функциялардың болуы екіталай. Іс жүзінде мұндай формуланы жасау және күйін келтіру өте қиын болатын еді және жылдам да болмайтын еді.

Бұл формулада, сонымен бірге, сүзгілерді пайдаландыңыз. Сүзгілер есептелетінді тарылтады. Бұл жағдайда, сіз іс жүзінде басқа функция болып табылатын бір сүзгіні аргумент ретінде таңдадыңыз. Сүзгілер туралы қосымша мәліметтерді кейінірек аласыз.

Соңында, CALCULATE функциясын пайдаландыңыз. Бұл — DAX тіліндегі ең қуатты функциялардың бірі. Деректер үлгілерін жасағанда және күрделірек формулаларды жасағанда, бұл функцияны көп рет пайдалануыңыз мүмкін. CALCULATE функциясын талқылау бұл қысқаша нұсқаулықтың ауқымынан тыс, бірақ DAX тілі туралы біліміңіз көбейген сайын оған ерекше көңіл бөліңіз.

Ескерту :  Әдетте, DAX формулаларында уақыт функцияларын пайдалану үшін «Күн кестесі ретінде белгілеу» диалогтық терезесін пайдалана отырып бір мәнді күн бағанын көрсету керек. Contoso DAX Formula Samples.xlsx жұмыс кітабы бағанында ӨлшКүн кестесіндегі КүнКілті бағаны бір мәнді күн бағаны ретінде таңдалған.

Қосымша несие

«Жасауға болатын ең оңай DAX формуласы қандай?» деп сұрауыңыз мүмкін. Бұған жауап — «сізде жоқ формуланы». Және есептелетін өрісте стандартты біріктіру функциясын пайдалана отырып дәл осыны істеуге болады. Кез келген дерлік деректер үлгісі біріктірілген деректерді сүзуді және есептеуді қажет етеді. Мысалы, бұрынырақ көрген «Сату көлемінің қосындысы» есептелетін өрісіндегі SUM функциясы нақты бағандағы барлық сандарды қосу үшін пайдаланылады. DAX тілінде мәндерді біріктіретін тағы бірнеше басқа функция бар. Автоқосынды мүмкіндігін пайдалана отырып, стандартты біріктірулерді пайдаланып, формулаларды автоматты түрде жасауға болады.

Қосымша несие тапсырмасы: Автоқосынды мүмкіндігін пайдалана отырып есептелетін өріс формуласын жасау

  1. НақтыСату кестесінде ҚайтарылатынМөлшер бағанына жылжыңыз да, баған тақырыбын басып, бүкіл бағанды бөлектеңіз.

  2. Таспадағы Басты қойындысының Есептеулер тобынан Автоқосынды түймешігін басыңыз.

PowerPivot қондырмасындағы автоқосынды

  1. Автоқосынды жанындағы төмен көрсеткіні басыңыз да, Орташа мән (пайдалануға болатын басқа стандартты біріктіру функцияларына да назар аударыңыз) параметрін таңдаңыз.
    Бұдан кейін бірден ҚайтарылатынМөлшер орташа мәні: атты жаңа есептелетін өріс, одан кейін келетін =AVERAGE([ҚайтарылатынМөлшер]) формуласы жасалады.

Оңай, солай емес пе? Әрине, сіз жасайтын формулалардың бәрі осындай оңай бола бермейді. Бірақ Автоқосынды мүмкіндігін пайдалана отырып, стандартты біріктіру функцияларын пайдалана отырып жылдам және оңай формулаларды жасай аласыз.

Бұл DAX формулаларында пайдаланылатын синтаксиске айтарлықтай жақсы түсінік береді. Сондай-ақ, сізге тез, оңай және дәл формулаларды жасауға көмектесетін IntelliSense және Автоқосынды сияқты біраз тамаша мүмкіндіктерге кіріспе берілді. Әрине, синтаксис туралы білетін әлі көп мәліметтер бар. Қосымша мәліметтер алудың жақсы орны — DAX анықтамасы немесе SQL Books Online торабы.

Синтаксис бойынша қысқаша бақылау жұмысы

  1. Мына түймешік формула жолында не істейді?
    Функция түймешігі

  2. DAX формуласында баған атауы әрқашан ненің ішіне алынады?

  3. Мынау үшін формуланы қалай жазатын едіңіз:
    ӨлшӨнім кестесінде БірлікАралығы есептелетін бағанындағы әр жол үшін БірлікҚұны бағанындағы мәндерді БірлікБағасы бағанындағы мәндерден алу арқылы мәнді есептеу?

Жауаптар осы бөлімнің соңында берілген.

Функциялар

Функциялар — аргументтер деп аталатын ерекше мәндерді нақты ретпен немесе құрылыммен пайдалана отырып есептеулерді орындайтын алдын ала анықталған формулалар. Аргументтер басқа функциялар, басқа формула, баған сілтемелері, сандар, мәтін, TRUE немесе FALSE сияқты логикалық мәндер я болмаса тұрақты мәндер бола алады.

DAX функциялардың келесі санаттарын қамтиды: Күн және уақыт, Ақпарат, Логикалық, Математикалық, Статистикалық, Мәтін және Уақыт функциялары. Егер Excel формулаларындағы функциялармен таныс болсаңыз, DAX тіліндегі функциялардың көпшілігі сізге таныс болып көрінеді; дегенмен, DAX функцияларының келесідей ерекшеліктері бар:

  • DAX функциясы әрқашан бүкіл бағанға немесе кестеге сілтеме жасайды. Егер кестедегі немесе бағандағы нақты мәндерді ғана пайдалану керек болса, формулаға сүзгілерді қосуға болады.

  • Егер есептеулерді әр жолда бөлек реттеу керек болса, DAX тілі контексті әр түрлі есептеулерді орындау үшін ағымдағы жол мәнін немесе қатысты мәнді аргумент сияқты пайдалануға мүмкіндік беретін функцияларды қамтамасыз етеді. Контекст туралы қосымша мәліметтерді кейінірек аласыз.

  • DAX тілі мән емес, кестені қайтаратын көп функцияларды қамтиды. Кесте көрсетілмейді, басқа функцияларға кірісті қамтамасыз ету үшін пайдаланылады. Мысалы, кестені шығарып алып, содан кейін ондағы ерекше мәндерді есептеуге я болмаса сүзілген кестелерде немесе бағандарда динамикалық қосындыларды есептеуге болады.

  • DAX тілі әр түрлі уақыт функцияларын қамтиды. Бұл функциялар күн ауқымдарын анықтауға немесе таңдауға және олардың негізінде динамикалық есептеулерді орындауға мүмкіндік береді. Мысалы, параллель кезеңдердегі қосындыларды салыстыруға болады.

Кейде формулада қай функцияларды пайдалану қажет болуы мүмкін екенін білу қиын. Power Pivot және SQL Server деректер құралдары ішіндегі кестелік үлгі құрастырғышы «Функцияны кірістіру» мүмкіндігін, функцияларды санат бойынша таңдауға көмектесетін және әр функция үшін қысқа сипаттамаларды қамтамасыз ететін диалогтық терезені қамтиды.

Функцияны кірістіру

«Функцияны кірістіру» мүмкіндігін пайдалана отырып таңдайтын функцияны қамтитын жаңа формуланы жасайық:

Тапсырма: «Функцияны кірістіру» мүмкіндігін пайдалана отырып формулаға функцияны қосу

  1. НақтыСату кестесінде оң жақ бұрыштағы бағанға жылжыңыз да, баған тақырыбында «Бағанды қосу» пәрменін таңдаңыз.

  2. Формула жолында теңдік белгісін (=) теріңіз.

  3. «Функцияны кірістіру» түймешігін басыңыз. Функцияны кірістіру Бұл «Функцияны кірістіру» диалогтық терезесін ашады.

  4. «Функцияны кірістіру» диалогтық терезесінде Санатты таңдау тізімін басыңыз. Әдепкі бойынша, Барлығы параметрі таңдалады және төменде Барлығы санатындағы барлық функциялар тізіледі. Бұл функциялар көп, сондықтан іздеп жатқан функция түрін табуды оңайырақ ету үшін функцияларды сүзуге болады.

  5. Бұл формула үшін басқа кестеде бар біраз деректерді қайтару керек. Бұл үшін Сүзгі санатындағы функцияны пайдаланасыз. Сүзгі санатын басыңыз да, Функцияны таңдау тізімінде төмен жылжып, RELATED функциясын екі рет басыңыз. ОК түймешігін басып, «Функцияны кірістіру» диалогтық терезесін жабыңыз.

  6. IntelliSense мүмкіндігін пайдаланып, ӨлшАрна[АрнаАтауы] бағанын тауып, бөлектеңіз.

  7. Формуланы жабыңыз да, Enter пернесін басыңыз.

  8. Формуланы аяқтау үшін Enter пернесін басқаннан кейін Power Pivot терезесінің төменгі жағындағы күй жолағында Есептеу сөзі пайда болады. Енді НақтыСату кестесінде ӨлшАрна кестесінен алынған арна туралы ақпараты бар жаңа баған жасағаныңызды көресіз.

  9. Бағанды Арна деп қайта атаңыз.

    Формула мынадай болуы керек: =RELATED(ӨлшАрна[АрнаАтауы])

Сізге DAX ішіндегі басқа өте маңызды функция RELATED функциясы түсіндірілді. RELATED функциясы басқа кестедегі мәндерді қайтарады. RELATED функциясы қазіргі уақытта орналасқан кесте мен алу қажет мәндерді қамтитын кесте арасында қатынас бар болған жағдайда пайдалануға болады. Әрине, RELATED функциясының үлкен мүмкіндіктері бар. Бұл жағдайда НақтыСату кестесіндегі әр сату үшін сату арнасын қосуға болады. Енді ӨлшАрна кестесін жиынтық кесте өрістері тізімінен жасырып, шарлауды оңайлатуға және тек шынымен қажет ең маңызды ақпаратты көруге болады. Дәл бұрынырақ сипатталған CALCULATE функциясы сияқты RELATED функциясы өте маңызды және оны көп рет пайдаланасыз.

Көріп тұрғаныңыздай, DAX тіліндегі функциялар өте қуатты формулаларды жасауға көмектесе алады. Біз тек функциялардың негіздерін ғана қамтыдық. DAX дағдыларыңыз жақсарған сайын сіз көптеген басқа функцияларды пайдаланып формулаларды жасайсыз. Барлық DAX функциялары туралы мәліметтерді алудың ең жақсы орындарының бірі — DAX анықтамасы.

Функциялар бойынша қысқаша бақылау жұмысы

  1. Функция әрқашан неге сілтеме жасайды?

  2. Формулада біреуден көп функция болуына рұқсат етіле ме?

  3. Екі мәтіндік жолды бір жолға біріктіру үшін функциялардың қай санатын пайдаланатын едіңіз?

Жауаптар осы бөлімнің соңында берілген.

Контекст

Контекст — түсіну керек ең маңызды DAX түсініктерінің бірі. DAX тілінде контекстің екі түрі бар: жол контексті және сүзгі контекстіАлдымен жол контекстін қарастырамыз.

Жол контексті

Жол контекстін ағымдағы жол деп ойлау — түсінудің ең оңай жолы. Мысалы, синтаксис туралы мәлімет алғанда көрген «Маржа» есептелетін бағаны есіңізде ме? =[СатуКөлемі] - [ЖалпыШығын] формуласы кестедегі әр жол үшін «Маржа» бағанындағы мәнді есептейді. Әр жолдың мәндері сол жолдағы екі басқа бағандарда, [СатуКөлемі] және [ЖалпыҚұны], есептеледі. DAX «Маржа» бағанындағы әр жол үшін мәндерді контекст бар болғандықтан есептей алады: әр жол үшін ол [ЖалпыҚұны] бағанындағы мәндерді алып, оларды [СатуКөлемі] бағанындағы мәндерден шегереді.

Төменде көрсетілген бөлектелген ұяшықта, ағымдағы жолдағы 49,54 тг мәні [ЖалпыҚұны] бағанындағы 51,54 тг мәнін [СатуКөлемі] бағанындағы 101,08 тг мәнінен алу арқылы есептелген.

PowerPivot қондырмасындағы жол контексті

Жол контексті тек есептелетін бағандарға ғана қолданылмайды. Жол контексті формулада кестедегі бір жолды анықтау үшін сүзгілерді қолданатын функция болған кез келген уақытта қолданылады. Функция жол контекстін сүзу орындалып жатқан кестенің әр жолына қолданады. Жол контекстінің бұл түрі көбінесе есептелетін өрістерге қолданылады.

Сүзгі контексті

Сүзгі контекстін түсіну жол контекстімен салыстырғанда аздап қиындау. Сүзгі контексті туралы келесідей деп ойлау — түсінудің оңай жолы: нәтижені немесе мәнді анықтайтын есептеуде қолданылған бір немесе одан көп сүзгі.

Сүзгі контексті жол контекстін ауыстырмайды; ол жол контекстіне қосымша қолданылады. Мысалы, есептеуге қосатын мәндерді одан әрі тарылту үшін жол контекстін ғана емес, сонымен бірге сол жол контекстіндегі нақты мәнді (сүзгі) ғана көрсететін сүзгі контекстін қолдануға болады.

Сүзгі контекстін жиынтық кестелерде оңай көруге болады. Мысалы, мәндер аймағына ЖалпыҚұны қосылғанда, содан кейін Жол немесе Бағандарға Жыл және Аймақ қосылғанда, берілген жыл мен аймаққа негізделген деректер жиынын таңдайтын сүзгі контексті анықталады.

DAX тілінде сүзгі контексті неліктен сонша маңызды? Өйткені, сүзгі контекстін жиынтық кестеде баған және жол белгілерін және шектегіштерді қосу арқылы қолдану ең оңай болғанымен, сүзгі контекстін, сонымен бірге, ALL, RELATED, FILTER, CALCULATE функцияларын пайдаланып сүзгіні анықтау арқылы, қатынастар арқылы және басқа есептелетін өрістер мен бағандар арқылы DAX формуласында да пайдалануға болады. Мысалы, ДүкенСатылымы атты есептелетін өрістегі келесі формуланы қарастырайық:

Формула

Бұл формула сіз көрген кейбір басқа формулалардан күрделірек екені анық. Дегенмен, бұл формуланы жақсырақ түсіну үшін оны дәл басқа формулалар сияқты бөлуге болады.

Бұл формулаға келесі синтаксис элементтері кіреді:

  1. Есептелетін өрістің атауы ДүкенСатылымы, одан кейін қос нүкте :.

  2. Теңдік белгісі операторы (=) формуланың басын көрсетеді.

  3. CALCULATE функциясы көрсетілген сүзгілермен өзгертілген контексте өрнекті аргумент ретінде есептейді.

  4. Жақшаға () бір немесе одан көп аргумент алынады.

  5. [Сату] есептелетін өрісі өрнекпен бір кестеде. «Сату» есептелетін өрісінде мына формула бар: =SUM(НақтыСату[СатуКөлемі]).

  6. Үтір (,) әр сүзгіні бөледі.

  7. Сілтеме жасалған баған және сүзгі ретінде нақты мән, ӨлшАрна[АрнаАтауы] =”Дүкен”.

Бұл формула сүзгі ретіндегі «Сату» есептелетін өрісі арқылы анықталған сату мәндері ғана сүзгі ретінде «Дүкен» мәні бар ӨлшАрна[АрнаАтауы] бағанындағы жолдар үшін ғана есептелуін қамтамасыз етеді.

Түсінгеніңіздей, формула ішінде сүзгі контекст анықтай алу үлкен және қуатты мүмкіндікті береді. Қатысты кестедегі нақты мәнге ғана сілтеме жасау мүмкіндігі — осындай мысалдың біреуі ғана. Контекстті бірден толық түсінбесеңіз, уайымдамаңыз. Жеке формулаларды жасағанда, контексті жақсырақ түсінесіз және DAX тілінде оның неге сонша маңызды екенін түсінесіз.

Контекст бойынша қысқаша бақылау жұмысы

  1. Контекстің екі түрі қандай?

  2. Сүзгі контексті дегеніміз не?

  3. Жол контексті дегеніміз не?

Жауаптар осы бөлімнің соңында берілген.

Жиынтық

Енді сіз DAX тіліндегі ең маңызды түсініктерді негізгі деңгейде түсіндіңіз, есептелетін бағандар мен есептелетін өрістер үшін DAX формулаларын жасауды өзіңіз бастай аласыз. DAX тілін шынымен де үйрену қиын болуы мүмкін, бірақ сіз үшін көп ресурстар бар. Осы бөлімді бірнеше рет оқып шыққаннан кейін және біраз жеке формулалармен тәжірибе жасағаннан кейін жеке бизнес мәселелерін шешуге көмектесе алатын басқа DAX түсініктері мен формулалары туралы қосымша мәліметтер ала аласыз. Power Pivot анықтамасында, SQL Server Books Online сайтында, есептерде және Microsoft пен жетекші бизнес сараптама кәсіпқойларының блогтарында сіз үшін көптеген DAX ресурстары бар. DAX ресурстар орталығының вики-сайты (http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx) — үйренуді бастау үшін тамаша орын. DAX анықтамасы да тамаша ресурс болып табылады. Оны таңдаулылар ішінде сақтаңыз.

Жүктеуге болатын «Бизнес сараптамадағы кестелік үлгідегі DAX» есебінде (http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409) осында таныстырылған түсініктер, сонымен бірге басқа кеңейтілген түсініктер мен формулалар толық қарастырылады. Сондай-ақ, бұл есепте сізде әлдеқашан бар Contoso DAX Sample Formulas.xlsx жұмыс кітабы пайдаланылады.

Қысқаша бақылау жұмысының жауаптары

Синтаксис:

  1. «Функцияны кірістіру» мүмкіндігін ашады.

  2. Тік жақша [].

  3. =[БірлікБағасы] - [БірлікҚұны]

Функциялар:

  1. Кесте және баған.

  2. Иә. Формулада 64-ке дейін кірістірілген функциялар бола алады.

  3. Мәтіндік функциялар.

Контекст:

  1. Жол контексті және сүзгі контексті.

  2. Есептеудегі бір мәнді анықтайтын бір немесе одан көп сүзгі.

  3. Ағымдағы жол.

Дағдыларды жетілдіру
Оқыту курсымен танысыңыз
Жаңа мүмкіндіктерге бірінші болып қол жеткізу
Office Insider бағдарламасына қосылу

Осы ақпарат пайдалы болды ма?

Пікіріңіз үшін рақмет!

Пікіріңізге рақмет! Сізді Office қолдау көрсету қызметіндегі агенттердің бірімен байланыстырған жөн болуы мүмкін.

×