M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Aion näyttää sinulle, kuinka voit lisätä parametrin M-funktioon päivämäärätaulukkokyselyssäsi . Tämä esimerkki perustuu kysymykseen, joka esitettiin. Voit katsoa tämän opetusohjelman koko videon tämän blogin alaosasta.

Kysymys oli siitä, kuinka viikon 1. päivän numerointi muutetaan 0:sta 1:ksi . Huomaa, että tämä ei muuta arkipäivän todellista alkamista. Tässä päivämäärätaulukossa viikon alku on aina maanantai. Kyse on vain siitä, että maanantaina viitataan päiväksi 1 päivän 0 sijaan.

Tämä prosessi ei välttämättä ole monimutkainen, mutta tarvitset perustiedot M-kielen rakenteesta. Jos olet LuckyTemplates-jäsen, voit tarkistaa. Johdatus koskettaa aihetta.

Sisällysluettelo

M-funktio ja laajennettu päivämäärätaulukko

Aloitan siirtymällä Power Queryyn . Olen jo kopioinut päivämäärätaulukon M-funktion tänne.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Sain M-funktion LuckyTemplates Forumin M Code Showcase -luokasta . Koodi on aiheen alla.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Jos avaan Advanced Editorin , tämä on koodi.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Siinä on paljon M-koodia, mikä saattaa häiritä.

Testikyselyn luominen

Koska M-funktiossa tapahtuu liikaa, aloitan sen sijaan uudella tyhjällä kyselyllä .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Annan tälle testikyselylle nimen .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Seuraavaksi aion avata Advanced Editorin .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Koska aion luoda funktion, lisään sulkuparin ja poistan sieltä kaiken oletuskoodin.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Käynnistääksesi toiminnon, aion ilmoittaa valinnaisen parametrin .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Seuraavaksi aion lisätä muuttujan. Kutsun tätä muuttujaa WDStartNum , koska se tarkoittaa viikonpäivän aloitusnumeroa. Minun on myös ilmoitettava sen tyyppi, joten kirjoitan numeron .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Ilmoitan tyypin virheiden estämiseksi. Jos jätän sen vain tyypiksi, tämä tarkoittaa, että se voi välittää taulukon tai päivämäärän arvon pelkän numeron välittämisen sijaan.

Seuraava askel on lisätä let -lause ja in - lause.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Let-lauseen alla tarvitsen muuttujan nimen. Joten aion kutsua tätä muuttujaa WDStart .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Nyt minun on testattava, onko WDStartNum läpäissyt. Jos se menee läpi, se ei vastaa nollaa . Joten aion ilmoittaa, että jos WDStartNum ei ole yhtä suuri kuin nolla, haluan arvon palauttavan .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Mitä tulee lausekkeeseen, haluan, että sama vaihe ohitetaan. Joten laitan sinne vain WDStartin , jonka nimesimme muuttujamme aiemmin let-lauseen alla.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Kun painan Valmis, toiminto luodaan. Joten yritän välittää arvon tämän funktion kautta.

Yritän kirjoittaa a-kirjaimen.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Muista, että aiemmin julistin, että arvon on oltava numero. Koska se tunnistaa, että antamani arvo ei täytä tätä vaatimusta, se ei salli minun syöttää tätä parametria.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Joten poistan sen ja jätän tilan tyhjäksi.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Kun napsautan Invoke-painiketta, se palauttaa arvon 0.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Palatakseni alkuperäiseen kyselyyn, siinä todetaan, että jos arvo ei ole yhtä suuri kuin nolla, WDStartNum tulee palauttaa. Jos se on yhtä kuin nolla, palautetaan 0.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Eli 0 on oikein.

Tällä kertaa yritän välittää arvon muuttamalla numeroa TestQueryssa. Totta, se palauttaa "1", kun painan enteriä.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Yritän nyt läpäistä vuoden 2020 TestQueryssa. Kun painan enteriä, se palaa myös 2020.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Ilmeisesti en halua tämän tapahtuvan. Koska haluan arvon, joka edustaa viikon alkua, haluan, että näkyviin tulee joko 0 tai 1. Tämä tarkoittaa, että minun on luotava toinen testi nähdäkseni, onko syötetty numero joko 0 vai 1. Voin käyttää List.Contains- toimintoa tähän.

Käyttämällä List.Contains

Loin tyhjän kyselyn ja kirjoitin List.Contains ilman sulkeita.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Kun painan enteriä, näen toiminnon dokumentaation.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

List.Contains osoittaa, sisältääkö luettelo arvon.

Joten se vaatii listan ensimmäisenä parametrina, jonka jälkeen lisätään arvo. Jos tämä arvo löytyy luettelosta, se palauttaa tosi. Muuten se palauttaa epätosi.

Avaan Advanced Editorin uudelleen, jotta voin tehdä tarvittavat muutokset kyselyyn.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Sen sijaan, että testaisin, onko arvo yhtä suuri kuin nolla, aion käyttää List.Contains -tiedostoa .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Annan nyt luettelon arvoista, joita sovelletaan tähän funktioon.

Käytän kiharasulkuja luettelon alustajana. Laitan noihin kiharaisiin hakasulkeisiin 0, 1. Lisään pilkun sulkemisen jälkeen.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Toisen parametrin osalta aion käyttää WDStartNumia. Lisään sitten loppusulut.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Kun tämä on paikallaan, se tarkoittaa, että 0 tai 1 pitäisi antaa minulle WDStartNumber. Jos sijoitetaan jotain muuta kuin 0 tai 1, minun pitäisi saada tulos 0.

Testaan ​​sitä asettamalla 2020 TestQueryyn. Kuten odotettiin, tämä palauttaa "0" (nolla).

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Tämä johtuu siitä, että arvo 2020 ei ole luettelossa.

Parametrin lisääminen M-funktioon

Nyt kun olen varma, että koodi toimii, voin vihdoin laittaa sen todellisen päivämäärätaulukon ja M-funktion sisään. Avaan Advanced Editorin ja kopioin logiikan .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Sitten siirryn päivämäärätaulukon kyselyyn.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Avaan alkuperäisen M-funktion Advanced Editorin kautta .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Sitten liitän koodini sinne. Varmistetaan, että rivin lopussa on pilkku.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Seuraavaksi korostan ja kopioin parametrini nimen .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Lisään sitten tämän parametrin tähän .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Huomaa, että minun on ensin lisättävä pilkku olemassa olevan rivin loppuun, ja sitten minun on ilmoitettava tämä parametri valinnaiseksi . Sitten voin sijoittaa WDStartNum ja lisätä tyypin .

Olen lisännyt parametrin ja olen myös upottanut logiikan. Mutta minun on myös varmistettava, että saan odotetut tulokset. Joten aion etsiä koodiriviä, joka kattaa viikonpäivän.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Sitten aion lisätä + WDStart .

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Sulje editori napsauttamalla Valmis . Sitten aion käynnistää kyselyn.

Aloituspäiväksi laitan 1. tammikuuta 2020, sitten käytän lopetuspäivänä 31. joulukuuta 2020.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Käytän tilivuoden alkamiskuukautena numeroa 7 ja sitten WDStartNum-arvoksi 0.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Napsautan Invokea. Nyt minulla on päivämäärätaulukko.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Nimeän sen uudelleen, jotta se voidaan helposti tunnistaa.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Nyt tarkistan tulokset.

Tämä on DayOfWeek- kolumni.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Se osoittaa, että maanantai on palannut 0:na.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Palatakseni foorumin kysymykseen, minun on muutettava viikon alun numero 1:ksi 0:n sijaan. Muutan siis sen vain mitassa.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Kun painan enteriä, maanantai on nyt päivä 1 päivän 0 sijaan.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Lukualuetta tarkasteltaessa se on nyt 1-7 0-6 sijaan.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Mitä tapahtuu, jos välitän nolla-arvon?

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin

Sitten maanantain viikonpäivä muuttuu vain nollaan.

M-funktio päivämäärätaulukolle – Parametrin lisääminen kyselyeditoriin




Johtopäätös

Näin voit lisätä lisäparametrin suoraan M-funktioon päivämäärätaulukkokyselyssäsi. Prosessi ei ole ollenkaan monimutkainen, kuten aiemmin mainitsin. Niin kauan kuin sinulla on M-koodin lähde, se on tarpeeksi helppoa sieltä.

Jälleen voit aina tarkistaa Advanced Data Transformations & Modeling -kurssinVerkossa, jos sinulla ei ole taustaa M-koodien toiminnasta.

Kaikki parhaat,

Melissa

***** Opitko LuckyTemplates? *****







Päivämäärätaulukon luominen LuckyTemplatesissa

Päivämäärätaulukon luominen LuckyTemplatesissa

Ota selvää, miksi LuckyTemplatesissa on tärkeää pitää oma päivämäärätaulukko ja opi nopein ja tehokkain tapa tehdä se.

LuckyTemplates mobiiliraportointivinkkejä ja -tekniikoita

LuckyTemplates mobiiliraportointivinkkejä ja -tekniikoita

Tämä lyhyt opetusohjelma korostaa LuckyTemplates-mobiiliraportointiominaisuutta. Näytän sinulle, kuinka voit kehittää raportteja tehokkaasti mobiililaitteille.

Ammattimainen palveluanalyysiraportit LuckyTemplatesissa

Ammattimainen palveluanalyysiraportit LuckyTemplatesissa

Tässä LuckyTemplates Showcase -esittelyssä käymme läpi raportteja, jotka näyttävät ammattitaitoisen palveluanalytiikan yritykseltä, jolla on useita sopimuksia ja asiakkaiden sitoumuksia.

Microsoft Power Platform -päivitykset | Microsoft Ignite 2021

Microsoft Power Platform -päivitykset | Microsoft Ignite 2021

Käy läpi tärkeimmät Power Appsin ja Power Automaten päivitykset sekä niiden edut ja vaikutukset Microsoft Power Platformiin.

Yleiset SQL-funktiot: Yleiskatsaus

Yleiset SQL-funktiot: Yleiskatsaus

Tutustu joihinkin yleisiin SQL-toimintoihin, joita voimme käyttää, kuten merkkijono, päivämäärä ja joitain lisätoimintoja tietojen käsittelyyn tai käsittelyyn.

LuckyTemplates-mallin luominen: opas ja vinkkejä

LuckyTemplates-mallin luominen: opas ja vinkkejä

Tässä opetusohjelmassa opit luomaan täydellisen LuckyTemplates-mallin, joka on määritetty tarpeidesi ja mieltymystesi mukaan.

Kenttäparametrit ja pienet kertoimet LuckyTemplatesissa

Kenttäparametrit ja pienet kertoimet LuckyTemplatesissa

Tässä blogissa esittelemme, kuinka kerrostat kenttäparametreja pienillä kerroilla uskomattoman hyödyllisten näkemysten ja visuaalien luomiseksi.

LuckyTemplates-sijoitus ja mukautettu ryhmittely

LuckyTemplates-sijoitus ja mukautettu ryhmittely

Tässä blogissa opit käyttämään LuckyTemplates-sijoitus- ja mukautettuja ryhmittelyominaisuuksia näytetietojen segmentoimiseen ja luokitteluun kriteerien mukaan.

LuckyTemplatesissa näytetään vain tiettyyn päivämäärään asti kumulatiivinen kokonaissumma

LuckyTemplatesissa näytetään vain tiettyyn päivämäärään asti kumulatiivinen kokonaissumma

Tässä opetusohjelmassa käsittelen tiettyä tekniikkaa, jolla voit näyttää kumulatiivisen kokonaissumman LuckyTemplates-visuaaleissasi vain tiettyyn päivämäärään asti.

Bullet Charts: Kehittyneet mukautetut visuaalit LuckyTemplatesille

Bullet Charts: Kehittyneet mukautetut visuaalit LuckyTemplatesille

Opi luomaan ja mukauttamaan Bullet-kaavioita LuckyTemplatesissa, joita käytetään pääasiassa suorituskyvyn mittaamiseen suhteessa tavoitteeseen tai edellisiin vuosiin.