Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Je vais vous montrer comment transformer un code M pour une table de dates en une requête de table. Vous pouvez regarder la vidéo complète de ce tutoriel au bas de ce blog.

Je considérerais le niveau de difficulté de ce didacticiel comme intermédiaire, car si vous avez de l'expérience avec les codes M, il vous serait facile de suivre. Si vous n'avez aucune expérience connexe, je vous suggère de vous pencher d'abord sur les codes M pour vous faciliter la compréhension des concepts présentés ici.

Table des matières

Requête de fonction invoquée et requête de table de dates

Il s'agit de la requête de table de dates et de la requête de fonction invoquée.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Si vous regardez le volet Étapes appliquées à droite, il n'y a qu'une seule étape. Il affiche la source de cette requête.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Ainsi, si vous souhaitez développer le code M pour cette table de dates, vous devrez basculer entre la fonction et la requête de table pour voir les modifications que vous appliquez.

Cela signifie qu'il est plus compliqué de gérer les erreurs causées par l'une de vos modifications. Cela conduira à une erreur dans la requête de table elle-même, puis vous devrez rechercher dans les lignes de code pour corriger l'erreur.

La page suivante montre la requête de date renvoyant une table au lieu d'une fonction.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

En regardant les étapes appliquées sur la droite, vous verrez qu'il y a plusieurs étapes répertoriées cette fois.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Cela signifie que lorsque vous développez votre code M de table de dates, vous verrez immédiatement les résultats de vos modifications dans cette requête de table.

Plus important encore, chaque fois que votre modification entraîne une erreur, vous pouvez facilement identifier l'étape à l'origine de l'erreur. Cela facilite la résolution du problème.

Application du code M

Le code M de la table de dates peut être trouvé dans le forum LuckyTemplates. C'est sous le sujet Extended Data Table Power Query M Function dans le M Code Showcase.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Le code M est tout en haut. Je vais mettre en surbrillance le code entier et le copier.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Ensuite, je vais créer une nouvelle requête vide.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Je vais ouvrir mon éditeur avancé et coller ce code.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Comme je vois qu'aucune erreur n'a été détectée, je clique sur Terminé.

Permettez-moi de le renommer et de l'appeler Dates.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Cette requête renvoie une fonction, mais ce que je veux, c'est une table.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Pour apporter les modifications nécessaires, je vais retourner dans l'éditeur avancé.

Conversion de la fonction en table

Pour que ce retour soit une table au lieu d'une fonction, je devrais apporter quelques modifications au code M dans l'éditeur avancé.

En regardant le code M, je peux facilement voir au moins deux environnements basés sur le nombre d'instructions let.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Chaque instruction let a sa propre clause in, qui se trouve en bas.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Vous pourriez penser qu'il serait plus facile de simplement supprimer cette dernière clause pour en faire un tableau.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Mais je ne vais pas faire ça. Au lieu de cela, je vais commenter cela en ajoutant deux barres obliques devant la dernière clause.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Je vais également le faire pour la première instruction let. Cela le rend inactif.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Sous l'instruction let interne, je vais créer une section pour déclarer mes paramètres car je dois encore transmettre ces paramètres à ce code.

Je vais marquer où ces variables doivent être déclarées.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Maintenant, je vais copier la première variable de l'instruction let externe et la coller dans l'espace.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Dans mon ensemble de données, les données historiques ne remontent pas plus loin que 2017. Donc, pour transmettre la valeur à la variable StartDate, je peux utiliser la date intrinsèque. Je mettrai le 1er janvier, puis je terminerai la ligne par une virgule.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Je vais ensuite copier et coller la variable suivante, qui est EndDate.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Je sais que la EndDate nécessiterait une prévision. C'est pourquoi je veux que cette EndDate soit toujours la fin de l'année prochaine.

J'ai déjà une variable dans mon code M pour CurrentDate, donc je vais y faire référence.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Encore une fois, j'utiliserai la date intrinsèque. Je vais extraire Date.Year et utiliser CurrentDate comme valeur d'année +1. Je veux aussi que la date soit le 31 décembre.

Encore une fois, je termine cette ligne par une virgule.

La variable suivante est un paramètre facultatif appelé FYStartMonth.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Donc je vais juste copier ce nom et le coller dedans.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Notez qu'un soulignement rouge est apparu sous FYStartMonth sous la variable que je viens de coller.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

C'est parce que leurs noms correspondent. Ce n'était pas un problème quand ils étaient dans des environnements séparés. Mais les noms de variables au sein d'un même environnement doivent être uniques. Cela signifie que je dois changer le nom de la nouvelle variable que je viens de coller.

Au lieu de l'appeler FYStartMonth, je vais l'appeler FYStartMonthNum.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Je ne vais pas attribuer de valeur à cette variable, donc je vais juste mettre null.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Parce que j'ai changé le nom de la variable, je dois également changer le nom partout où ce paramètre a été référencé.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Pour en revenir à la variable, je fermerai cette ligne en ajoutant une virgule à la fin.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Le paramètre suivant est la liste facultative des jours fériés. Je vais également copier et coller cela, et le déclarerai également comme nul.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Il en va de même pour le WDStartNum. Je vais le copier et le coller, puis le déclarer comme nul.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Pour marquer où commence le code de la table de dates, je vais ajouter un autre commentaire ici.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Une fois que j'appuie sur Terminé, vous verrez que la requête renvoie maintenant le bon type.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

J'ai maintenant une table au lieu d'une fonction.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Dans le volet Étapes appliquées, je peux également voir toutes les étapes qui composent la requête.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Si je souhaite apporter des modifications au tableau des dates, il est assez simple d'utiliser le ruban pour modifier ou ajouter des étapes. Pour chaque modification que j'apporte, je verrai également les résultats dans la requête immédiatement.

Transformer la requête de table en une fonction

Disons que je veux transformer la requête de table de date en une fonction. Il s'agit simplement de peaufiner quelques éléments dans le code M pour annuler les modifications que j'ai apportées précédemment.

Je vais retourner dans l'éditeur avancé et supprimer les barres obliques avant l'instruction let externe.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Ensuite, je vais supprimer les barres obliques avant les déclarations in.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Ensuite, je commenterai le bloc variable que j'ai ajouté plus tôt. Je vais donc ajouter une barre oblique et un astérisque ici.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Puis un astérisque et une barre oblique après le bloc variable.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Rappelez-vous quand j'ai changé cette ligne de code plus tôt à cause du FYStartMonthNum ?

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Je vais copier cette ligne de code. Ensuite, je vais ajouter une nouvelle ligne et la coller.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Je vais supprimer le premier (c'est là que j'ai apporté les modifications au nom de la variable plus tôt).

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Ensuite, sur le second, je trouverai les noms de variables édités.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Et je vais les transformer en FYStartMonth.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates

Une fois que j'appuie sur Terminé, la requête de table se transformera à nouveau en fonction.

Convertir la fonction de table de dates en une requête de table dans LuckyTemplates


Création d'une table de requête de date dynamique dans LuckyTemplates : un didacticiel sur l'éditeur de requêtes
Création d'une table de dates dans LuckyTemplates
Configuration d'une date de début et d'une date de fin dynamiques pour les tables de dates Power Query

Conclusion

Encore une fois, je vous ai montré à quel point les codes M sont pratiques, en particulier dans des cas comme ceux-ci où nous avons converti une fonction en une requête de table, et vice versa. Tant que vous avez accès au code M que nous avons sur le forum LuckyTemplates, vous pouvez l'utiliser dans des scénarios comme ceux-ci à l'avenir.

Vous pouvez également parcourir d'autres codes M que vous pouvez utiliser dans d'autres situations dans la vitrine des codes M sur le . C'est une communauté collaborative, vous pouvez donc lire les commentaires pour d'autres idées de nos experts et membres.

Tous mes vœux,

Mélisse

***** Apprendre LuckyTemplates ? *****






Leave a Comment

Gestion des erreurs dans Power Automate via le branchement parallèle

Gestion des erreurs dans Power Automate via le branchement parallèle

Découvrez l

Comparaison de tables dans Power Query | Tutoriel LuckyTemplates

Comparaison de tables dans Power Query | Tutoriel LuckyTemplates

Découvrez comment comparer facilement des tables dans Power Query pour signaler les différences et optimiser vos analyses de données.

Colonne fractionnée LuckyTemplates par délimiteurs dans DAX

Colonne fractionnée LuckyTemplates par délimiteurs dans DAX

Dans ce blog, vous découvrirez comment diviser les colonnes dans LuckyTemplates par délimiteurs à l'aide de DAX, une méthode efficace pour gérer des modèles de données complexes.

SELECTEDVALUE DAX Exemple - Sélection de trancheuse de récolte

SELECTEDVALUE DAX Exemple - Sélection de trancheuse de récolte

Découvrez comment récolter une valeur avec SELECTEDVALUE DAX pour des calculs dynamiques dans LuckyTemplates.

Calculer la marge en pourcentage dans LuckyTemplates à laide de DAX

Calculer la marge en pourcentage dans LuckyTemplates à laide de DAX

Calculez la marge en pourcentage à l

Modifier les formats de date à laide de léditeur Power Query

Modifier les formats de date à laide de léditeur Power Query

Dans ce didacticiel, nous allons explorer une méthode rapide pour convertir du texte en formats de date à l

Enregistrer la pièce jointe dun e-mail sur SharePoint avec Power Automate

Enregistrer la pièce jointe dun e-mail sur SharePoint avec Power Automate

Dans ce blog, vous apprendrez à enregistrer automatiquement la pièce jointe d

Comment adapter les cellules Excel au texte : 4 solutions simples

Comment adapter les cellules Excel au texte : 4 solutions simples

Découvrez comment adapter les cellules Excel au texte avec ces 4 solutions simples pour améliorer la présentation de vos données.

Générateur de rapports SSRS : formater les en-têtes dans un rapport paginé

Générateur de rapports SSRS : formater les en-têtes dans un rapport paginé

Dans ce didacticiel SSRS Report Builder, découvrez comment utiliser le générateur d

Thème de couleur dans les rapports LuckyTemplates - Conseils et techniques

Thème de couleur dans les rapports LuckyTemplates - Conseils et techniques

Découvrez les outils pour créer un thème de couleur efficace pour vos rapports LuckyTemplates et améliorer leur apparence.