Do jazyka DAX v Power BI Desktope a SSAS Tabulare 2019 pribudla dnes poriadna dávka nových funkcií. Tentokrát sa Microsoft hecol a pridal tam takmer všetky finančné funkcie z Excelu. Našťastie iba po anglicky.
Nových funkcií je až 49, a dokonca bola pre ne vytvorená nová kategória funkcií v rámci oficiálnej dokumentácie k jazyku DAX. Úplne nečakane sa nazýva „Finančné funkcie“, a celý zoznam aj s ich dokumentáciou nájdete na tomto odkaze.
Finančné funkcie z Excelu
Doteraz boli dostupné v DAX-e tieto finančné funkcie:
- XIRR
- XNPV
Pribudlo týchto 49 funkcií:
- ACCRINT
- ACCRINTM
- AMORDEGRC
- AMORLINC
- COUPDAYBS
- COUPDAYS
- COUPDAYSNC
- COUPNCD
- COUPNUM
- COUPPCD
- CUMIPMT
- CUMPRINC
- DB
- DDB
- DISC
- DOLLARDE
- DOLLARFR
- DURATION
- EFFECT
- FV
- INTRATE
- IPMT
- ISPMT
- MDURATION
- NOMINAL
- NPER
- ODDFPRICE
- ODDFYIELD
- ODDLPRICE
- ODDLYIELD
- PDURATION
- PMT
- PPMT
- PRICE
- PRICEDISC
- PRICEMAT
- PV
- RATE
- RECEIVED
- RRI
- SLN
- SYD
- TBILLEQ
- TBILLPRICE
- TBILLYIELD
- VDB
- YIELD
- YIELDDISC
- YIELDMAT
Príklad
Ak chceme napríklad spočítať výšku splátky hypotéky, kde výška hypotéky je 200 000 EUR, ročná úroková miera je 1% a splatnosť je 30 rokov, tak môžeme vytvoriť napr. takéto merítko:
Splátka = PMT(0,01/12; 30*12; 200000)
Výsledok bude takýto:
Výsledok je vrátený ako negatívna hodnota, a jej absolútna hodnota predstavuje výšku mesačnej splátky hypotéky uvedenej vyššie. Zároveň sa z toho dá ľahko vypočítať, o koľko preplatíte hypotéku, resp. koľko je úrok za celých 30 rokov. Stačí absolútnu hodnotu prenásobiť počtom splátok, a vyjde vám suma 231 580,80 EUR. Po odpočítaní pôvodnej sumy 200 000 EUR je úrok 31 580,80 EUR.
Sú užitočné?
Väčšina týchto funkcií bude určite užitočná vo finančníctve a poisťovníctve. Niektoré z funkcií však mohli podľa môjho názoru nazvať inak – napr. funkcie DB, DURATION, PRICE, YIELD, RATE či RECEIVED majú príliš všeobecný názov na to, aby bolo z ich názvu jasné, že sa jedná o finančné funkcie a funkcionalitu súvisiacu s počítaním úrokov. Napr. funkcia DB evokuje funkciu, ktorá vráti názov databázy, a funkcia DURATION zasa láka k tomu, že počíta časový rozdiel (na čo máme už funkciu DATEDIFF). Keďže je ale Office dlhodobo najziskovejším produktom Microsoftu, tak sa mu musia podriadiť aj ostatné produkty. A nielen v DAX-e, ale aj v napr. v Power BI Desktope to vidno na kope funkcionalít, ktoré by fungovali lepšie, ak by nemuseli zrkadliť Excel. Ale tak to je, a to už nezmeníme.
Každopádne, potešiteľný fakt je ten, že jazyk DAX stále zostáva iba v angličtine, a ani tieto funkcie sa (vraj zatiaľ!) neplánujú implementovať preložené do iných jazykov. Tým je zatiaľ potvrdené, že peklo s funkciami z Excelu v DAX-e nehrozí. Ale kto vie, možno inženýři z NDR dostanú nápad, a budúci mesiac budeme mať funkcie ako AK alebo KDYŽ 🙂 Pri dnešnom rýchlom tempe vývoja a neoznamovaní väčšiny zmien dopredu je to síce malá, ale aj tak teoretická možnosť. Ktorá dúfajme že zostane len mokrým snom tímu MS Office.
Takže toto sú nové finančné funkcie z Excelu doplnené do jazyka DAX. A niektoré výpočty sa znova budú robiť ľahšie 🙂
Autor, tréner a expert na PowerPivot, Power BI a jazyk DAX. Založil som tento web, aby som pomohol dostať PowerPivot a Power BI do širšieho povedomia, a aby som ľuďom ukázal, že aj komplexné analytické problémy idú riešiť jednoducho. Po nociach vzývam Majstra Yodu a tajne plánujem ovládnutie vesmíru.