PowerPivot қондырмасындағы DAX

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

DAX формулаларын түсіну

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

Дегенмен, DAX формулаларының келесідей маңызды айырмашылықтары бар:

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

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

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

Функция түрлері туралы қосымша ақпаратты DAX функцияларының түрлері бөлімінен қараңыз.

DAX формулаларын пайдаланатын жағдайлар

Power Pivot қондырмасында формулаларды есептелетін бағандарда немесе есептелетін өрістерде жасауға болады.

Есептелетін бағандар

Есептелетін баған — бар Power Pivot кестесіне қосатын баған. Бағанда мәндерді қою немесе импорттаудың орнына баған мәндерін анықтайтын DAX формуласын жасайсыз. Жиынтық кестеге (немесе жиынтық диаграммаға) Power Pivot кестесін қоссаңыз, есептелетін бағанды кез келген басқа деректер бағаны сияқты пайдалануға болады.

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

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

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

Толығырақ мәліметтерді Power Pivot қондырмасындағы есептелетін бағандар бөлімінен қараңыз.

Есептелетін өрістер

Есептелетін өріс — арнайы Power Pivot деректерін пайдаланатын жиынтық кестеде (немесе жиынтық диаграммада) пайдалану үшін жасалатын формула. Есептелетін өрістер COUNT немесе SUM сияқты стандартты біріктіру функцияларына негізделген бола алады немесе DAX тілін пайдаланып жеке формуланы анықтауға болады. Есептелетін өріс жиынтық кестенің Мәндер аумағында пайдаланылады. Егер есептелген нәтижелерді жиынтық кестенің басқа аумағында орналастыру керек болса, оның орнына есептелетін бағанды пайдаланыңыз.

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

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

Толығырақ мәліметтерді Power Pivot қондырмасындағы есептелетін өрістер бөлімінен қараңыз.

Формула жолын пайдалана отырып формулаларды жасау

Power Pivot қондырмасы, Excel бағдарламасы сияқты, формулаларды жасауды және өңдеуді жеңілдету үшін формула жолағын және теру мен синтаксис қателерін барынша азайту үшін авто толтыру функциясын қамтамасыз етеді .

Кесте атауын енгізу үшін      кесте атауын теруді бастаңыз. Формуланы авто толтыру мүмкіндігі осы әріптер бар дұрыс аттарды қамтитын ашылмалы тізімді береді.

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

Қосымша мәліметтер алу және формулаларды жасау жолынан өту үшін қондырмасында есептеулер үшін формулаларды жасауPower Pivot бөлімін қараңыз.

Авто толтыруды пайдалану туралы кеңестер

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

Тұрақты мәндер үшін жасаған анықталған атаулар авто толтыру ашылмалы тізімінде көрсетілмейді, бірақ оларды теруге болады.

Power Pivot функциялардың жабатын жақшасын қоспайды немесе жақшаларды автоматты түрде сәйкестендірмейді. Әр функцияның синтаксисі дұрыс екенін тексеру керек, әйтпесе формуланы сақтау немесе пайдалану мүмкін емес. 

Формулада бірнеше функцияны пайдалану

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

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

Ескерту :  Бағандар арасындағы тәуелділіктер қажет ететін көп есептеулер өнімділікке әсер етпеуін қамтамасыз ету үшін есептелетін өрістер ішінде функцияларды кірістіру шектеулері бар.

DAX функцияларын және Excel функцияларын салыстыру

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

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

  • DAX функциялары ешқашан сілтеме ретінде ұяшықтар сілтемесін немесе ауқымды қабылдамайды, оның орнына DAX функциялары сілтеме ретінде бағанды немесе кестені қабылдайды.

  • DAX күн және уақыт функциялары datetime деректер түрін қайтарады. Керісінше, Excel күн және уақыт функциялары күнді сериялық нөмір ретінде көрсететін бүтін санды қайтарады.

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

  • DAX тілі Excel бағдарламасындағы массив және векторлық алмастырым функцияларына ұқсас жаңа алмастырым функцияларын қамтамасыз етеді. Дегенмен, DAX функциялары кестелер арасында қатынасты орнатуды қажет етеді.

  • Бағандағы деректердің деректер түрі әрқашан бірдей болады деп күтіледі. Егер деректердің деректер түрі бірдей болмаса, DAX бүкіл бағанды барлық мәндерді ең жақсы қабылдайтын деректер түріне өзгертеді.

DAX деректер түрлері

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

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

Формулалар және реляциялық үлгі

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

Кестелерді қатынастарды пайдалана отырып байланыстыру мүмкін болғандықтан, жиынтық кестелер, сондай-ақ, әр түрлі кестелердегі бірнеше кестедегі деректерді қамтуы мүмкін.

Бірақ, формулалар бүтіндей кестелермен және бағандармен жұмыс істеуі мүмкін болғандықтан, есептеулерді Excel бағдарламасындағыдан басқаша жасау керек.

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

  • Power Pivot қондырмасындағы кестелерде әрқашан әр жолдағы бағандар саны бірдей болуы керек және бағандағы барлық жолдардың деректер түрі бірдей болуы керек.

  • Кестелер байланыс арқылы қосылғанда, сізден кілттер ретінде пайдаланылған екі бағанда көбінесе сәйкес келетін мәндер бар екенін тексеру күтіледі. Power Pivot қондырмасы сілтемелік тұтастықты күшіне енгізбегендіктен, кілт бағанда сәйкес емес мәндер болса да, байланысты жасауға болады. Бірақ, бос немесе сәйкес емес мәндердің болуы формулалардың нәтижелеріне және жиынтық кестелердің көрінісіне әсер етуі мүмкін. Қосымша ақпаратты Power Pivot формулаларындағы іздеулер бөлімінен қараңыз.

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

Формулалардың нәтижелерін жаңарту

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

Деректерді жаңарту — жұмыс кітабындағы деректерді сыртқы деректер көзінен алынған жаңа деректермен жаңарту процесі. Деректерді көрсеткен аралықтарда қолмен жаңартуға болады. Немесе жұмыс кітабын SharePoint сайтына жариялаған болсаңыз, сыртқы көздерден автоматты жаңартуды жоспарлауға болады.

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

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

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

Формулалардың ақауларын жою

Формулаларды жазу кезіндегі қателер

Формулаларды анықтау кезінде қате пайда болса, формулада синтактикалық қате, семантикалық қате немесе есептеу қатесі болуы мүмкін.

Синтактикалық қателерді жою өте оңай. Олар жақшаның не үтірдің болмауынан пайда болады. Жеке функциялардың синтаксисі туралы анықтама алу үшін DAX функциясының анықтамасын қараңыз.

Қатенің басқа түрі синтаксис дұрыс болып, бірақ берілген баған не мән формуланың контексінде түсініксіз болған кезде пайда болады. Осындай семантикалық және есептеу қателері мына мәселелердің бірінен туындауы мүмкін:

  • Формула жоқ баған, кесте не функцияға бағыталады.

  • Формула түзетілу үшін пайда болады, деректер бағдарламасы сәйкес емес түрді тапқан кезде қатені көрсетеді.

  • Формула қате санды не параметрлердің қате түрін функцияға береді.

  • Формула қатесі бар әр түрлі бағанға бағытталғандықтан, мәндері жарамды емес.

  • Формула өңделмейтін бағанға бағытталады, яғни оның метадеректері бар, бірақ есептеулерге қолданылатын нақты деректері жоқ.

Алғашқы төрт жағдайда, DAX жарамсыз формулалары бар тұтас бағанды белгілейді. Ал соңғы жағдайда, DAX бағанның өңделмейтін күйде екендігін көрсету үшін оны сұр түске бояйды.

Баған мәндерін бағалау не реттеу кезіндегі қате не ерекше нәтижелер

NaN (Not a Number - Сан емес) мәні бар бағанды бағалау не реттеу кезінде қате немесе күтпеген нәтижелерді алуыңыз мүмкін. Мысалы, есептеу 0-ді 0-ге бөлген кезде NaN нәтижесі беріледі.

Бұл формула жүйесінің сандық мәндерді салыстыру арқылы бағалауынан және реттеуінен болады. Бірақ NaN мәнін бағандағы басқа сандармен салыстыру мүмкін емес.

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

Analysis Services кестелік үлгілерімен және DirectQuery режимімен үйлесімділік

Жалпы, Power Pivot қондырмасында жасалған DAX формулалары Analysis Services кестелік үлгілерімен толығымен үйлесімді емес. Бірақ, Power Pivot үлгісін Analysis Services нұсқасына тасымалдап, кейін үлгіні DirectQuery режимінде орналастырсаңыз, біраз шектеулер болады.

  • Кейбір DAX формулалары үлгіні DirectQuery режимінде орналастырғанда басқаша нәтижелерді қайтаруы мүмкін.

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

Қосымша ақпарат алу үшін SQL Server 2012 BooksOnline сайтындағы Analysis Services кестелік үлгілер құжаттамасын қараңыз.

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

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

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

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

×