Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Ik ga je laten zien hoe je een M-code voor een datumtabel omzet in een tabelquery. Je kunt de volledige video van deze tutorial onderaan deze blog bekijken.

Ik zou de moeilijkheidsgraad van deze tutorial als gemiddeld beschouwen, want als je enige ervaring hebt met M-codes, zou het gemakkelijk voor je zijn om mee te doen. Als je geen gerelateerde ervaring hebt, stel ik voor dat je eerst naar M-codes kijkt, zodat je de hier gepresenteerde concepten gemakkelijker kunt begrijpen.

Inhoudsopgave

Aangeroepen functiequery en datumtabelquery

Dit is de datumtabelquery en de aangeroepen functiequery.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Als u naar het deelvenster Toegepaste stappen aan de rechterkant kijkt, is er slechts één stap. Het toont de bron voor die query.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Dus als u de M-code voor deze datumtabel wilt ontwikkelen, moet u schakelen tussen de functie en de tabelquery om eventuele wijzigingen te zien die u toepast.

Dit betekent dat het ingewikkelder is om met fouten om te gaan die worden veroorzaakt door uw wijzigingen. Het zal leiden tot een fout in de tabelquery zelf, waarna u door coderegels moet zoeken om de fout op te lossen.

De volgende pagina toont de datumquery die een tabel retourneert in plaats van een functie.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Als u naar de toegepaste stappen aan de rechterkant kijkt, ziet u dat er deze keer meerdere stappen worden vermeld.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Dit betekent dat terwijl u uw datumtabel M-code ontwikkelt, u onmiddellijk de resultaten van uw wijzigingen in deze tabelquery ziet.

Wat nog belangrijker is, wanneer uw wijziging een fout veroorzaakt, kunt u eenvoudig de stap identificeren die de fout heeft veroorzaakt. Dit maakt het gemakkelijker om het probleem op te lossen.

De M-code toepassen

De datumtabel M-code is te vinden op het LuckyTemplates-forum. Het staat onder het onderwerp Uitgebreide gegevenstabel Power Query M-functie binnen de M Code Showcase.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

De M-code staat helemaal bovenaan. Ik zal de hele code markeren en kopiëren.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Vervolgens maak ik een nieuwe lege query.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Ik open mijn geavanceerde editor en plak die code erin.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Aangezien ik zie dat er geen fouten zijn gedetecteerd, klik ik op Gereed.

Laat me dit hernoemen en het Dates noemen.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Deze query retourneert een functie, maar wat ik wil is een tabel.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Om de nodige wijzigingen aan te brengen, ga ik terug naar de geavanceerde editor.

De functie omzetten in een tabel

Om ervoor te zorgen dat dit een tabel retourneert in plaats van een functie, moet ik enkele wijzigingen aanbrengen in de M-code in de geavanceerde editor.

Als ik naar de M-code kijk, kan ik gemakkelijk ten minste twee omgevingen zien op basis van het aantal let-statements.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Elke let-verklaring heeft zijn eigen in-clausule, die u onderaan kunt vinden.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Je zou kunnen denken dat het eenvoudiger zou zijn om deze laatste in-clausule gewoon te verwijderen om er een tabel van te maken.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Maar dat ga ik niet doen. In plaats daarvan ga ik dat becommentariëren door twee schuine strepen toe te voegen voor de laatste in-clausule.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Dat ga ik ook doen voor de first let statement. Dit maakt het inactief.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Onder de instructie inner let ga ik een sectie maken om mijn parameters te declareren, omdat ik die parameters nog steeds aan deze code moet doorgeven.

Ik ga markeren waar die variabelen moeten worden gedeclareerd.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Nu ga ik de eerste variabele uit de buitenste let-instructie kopiëren en in de ruimte plakken.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

In mijn dataset gaan de historische gegevens niet verder terug dan 2017. Dus om de waarde door te geven aan de variabele StartDate, kan ik de intrinsieke datum gebruiken. Ik zet 1 januari, dan eindig ik de regel met een komma.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Ik kopieer en plak dan de volgende variabele, de EndDate.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Ik weet dat de EndDate prognoses zou vereisen. Daarom wil ik dat deze EndDate altijd het einde van volgend jaar is.

Ik heb al een variabele in mijn M-code voor de CurrentDate, dus daar ga ik naar verwijzen.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Nogmaals, ik zal de intrinsieke datum gebruiken. Ik zal Date.Year extraheren en CurrentDate gebruiken als de jaarwaarde +1. Ik wil ook dat de datum 31 december is.

Nogmaals, ik beëindig die regel met een komma.

De volgende variabele is een optionele parameter genaamd FYStartMonth.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Dus ik kopieer die naam en plak die erin.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Merk op dat er een rode onderstreping verscheen onder de FYStartMonth onder de variabele die ik zojuist heb geplakt.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Dit komt omdat hun namen overeenkomen. Het was geen probleem als ze zich in aparte omgevingen bevonden. Maar namen van variabelen binnen een enkele omgeving moeten uniek zijn. Dit betekent dat ik de naam moet wijzigen van de nieuwe variabele die ik zojuist heb geplakt.

In plaats van het FYStartMonth te noemen, ga ik het FYStartMonthNum noemen.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Ik ga geen waarde toekennen aan deze variabele, dus ik ga gewoon null zetten.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Omdat ik de naam van de variabele heb gewijzigd, moet ik ook de naam wijzigen waar naar deze parameter wordt verwezen.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Terugkomend op de variabele, zal ik die regel sluiten door aan het einde een komma toe te voegen.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

De volgende parameter is de optionele vakantielijst. Ik ga dat ook kopiëren en plakken, en zal het ook als null verklaren.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Hetzelfde geldt voor de WDStartNum. Ik kopieer en plak het en verklaar het vervolgens als null.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Om aan te geven waar de datumtabelcode begint, ga ik hier nog een opmerking toevoegen.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Zodra ik op Gereed druk, ziet u dat de query nu het juiste type retourneert.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Ik heb nu een tabel in plaats van een functie.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

In het deelvenster Toegepaste stappen kan ik ook alle stappen zien waaruit de query bestaat.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Als ik wijzigingen wil aanbrengen in de datumtabel, is het eenvoudig genoeg om het lint te gebruiken om stappen te wijzigen of toe te voegen. Voor elke wijziging die ik aanbreng, zie ik ook meteen de resultaten in de query.

De tabelquery terugdraaien in een functie

Laten we zeggen dat ik de datumtabelquery weer in een functie wil veranderen. Het is gewoon een kwestie van een paar dingen in de M-code aanpassen om de wijzigingen die ik eerder heb aangebracht ongedaan te maken.

Ik ga terug naar de geavanceerde editor en verwijder de schuine strepen voor de buitenste let-instructie.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Vervolgens ga ik de schuine strepen voor de in-statements verwijderen.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Dan zal ik het variabele blok dat ik eerder heb toegevoegd, becommentariëren. Dus ik voeg hier een schuine streep en een sterretje toe.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Dan een sterretje en een schuine streep na het variabele blok.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Weet je nog dat ik deze coderegel eerder heb gewijzigd vanwege het FYStartMonthNum?

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Ik ga die regel code kopiëren. Vervolgens voeg ik een nieuwe regel toe en plak deze erin.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Ik zal de eerste weghalen (waar ik eerder de wijzigingen in de naam van de variabele heb aangebracht).

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Op de tweede vind ik de bewerkte variabelenamen.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

En ik verander ze weer in FYStartMonth.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates

Zodra ik op Gereed druk, verandert de tabelquery opnieuw in een functie.

Converteer de datumtabelfunctie naar een tabelquery in LuckyTemplates


Een dynamische datumquerytabel maken in LuckyTemplates: een zelfstudie over een query-editor
Een datumtabel maken in LuckyTemplates
Een dynamische startdatum en einddatum instellen voor Power Query-datumtabellen

Conclusie

Nogmaals, ik heb je laten zien hoe handig M-codes zijn, vooral in gevallen zoals deze waarin we een functie hebben omgezet in een tabelquery, en vice versa. Zolang je toegang hebt tot de M-code die we op het LuckyTemplates-forum hebben, kun je deze in de toekomst in scenario's als deze gebruiken.

U kunt ook door andere M-codes bladeren die u in andere situaties kunt gebruiken in de M Code Showcase op het . Het is een samenwerkingscommunity, dus u kunt de opmerkingen lezen voor andere ideeën van onze experts en leden.

Al het beste,

Melissa

***** LuckyTemplates leren? *****







Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Een RDS-bestand opslaan en laden in R

Een RDS-bestand opslaan en laden in R

Je leert hoe je objecten uit een .rds-bestand in R opslaat en laadt. In deze blog wordt ook besproken hoe je objecten uit R naar LuckyTemplates importeert.

First N Business Days Revisited – Een DAX-coderingstaaloplossing

First N Business Days Revisited – Een DAX-coderingstaaloplossing

In deze tutorial over DAX-coderingstaal leert u hoe u de functie GENERATE gebruikt en hoe u de titel van een maat dynamisch wijzigt.

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Deze zelfstudie behandelt hoe u de Multi Threaded Dynamic Visuals-techniek kunt gebruiken om inzichten te creëren op basis van dynamische gegevensvisualisaties in uw rapporten.

Inleiding tot het filteren van context in LuckyTemplates

Inleiding tot het filteren van context in LuckyTemplates

In dit artikel zal ik de filtercontext doornemen. Filtercontext is een van de belangrijkste onderwerpen waarover elke LuckyTemplates-gebruiker in eerste instantie zou moeten leren.

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Ik wil laten zien hoe de online service LuckyTemplates Apps kan helpen bij het beheren van verschillende rapporten en inzichten die uit verschillende bronnen zijn gegenereerd.

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Leer hoe u wijzigingen in uw winstmarge kunt berekenen met behulp van technieken zoals vertakking van metingen en het combineren van DAX-formules in LuckyTemplates.

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Deze tutorial bespreekt de ideeën van materialisatie van datacaches en hoe deze de prestaties van DAX beïnvloeden bij het leveren van resultaten.

Zakelijke rapportage met behulp van LuckyTemplates

Zakelijke rapportage met behulp van LuckyTemplates

Als u tot nu toe nog steeds Excel gebruikt, is dit het beste moment om LuckyTemplates te gaan gebruiken voor uw zakelijke rapportagebehoeften.

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten