IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Power BI Discussion :

Table de dates avec périodes financières


Sujet :

Power BI

  1. #1
    Membre habitué

    Inscrit en
    Mars 2007
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 325
    Points : 132
    Points
    132
    Par défaut Table de dates avec périodes financières
    Bonjour,

    J'aimerais créer un script de table de dates qui comprendrait aussi une colonne pour les périodes des années financières. Toutes les années commencent le 1er avril pour se terminer le 31 mars suivant. Chacune des 13 périodes dure 4 semaines, commence un dimanche pour se terminer un samedi. Elles durent donc toutes 28 jours... Sauf la première période qui n'a jamais plus de 28 jours et la dernière qui, elle, peut en avoir plus de 28.

    Y aurait-il possibilité d'écrire un script pour l'ajouter à ma table de dates ou ce serait mieux de créer une table Excel distincte et t'établir une relation entre les deux tables? J'ai toutes les autres colonnes (jour, numéro du jour, jour de l'année, mois, numéro du mois, trimestre, etc.) mais la plus importante pour moi est celle des périodes

    Je joins le calendrier des périodes entre 2019-2020 et 2023-2024. La date indiquée est toujours celle de la dernière journée de la période.

    Merci!
    Images attachées Images attachées  

  2. #2
    Membre émérite
    Homme Profil pro
    ingénieur
    Inscrit en
    Mars 2015
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : ingénieur
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2015
    Messages : 1 058
    Points : 2 525
    Points
    2 525
    Par défaut
    Bonjour

    pour l'année commençant au 1er avril avec Power Query: Date.Year(Date.AddMonths([Date],-3)) avec éventuellement un +1 pour avoir 2019-2020

    ensuite l'idée pour récupérer le point de départ du calcul des périodes est de calculer le dimanche qui précède le 1er avril de l'année calculée à l'étape précédente: Date.AddDays(Date.StartOfWeek(#date([Année],4,1)),-1).

    en divisant par 7*4 (7 jours et 4 semaines) et en ajoutant 1 on obtient la période Number.IntegerDivide(Duration.Days([Date] - [Début période]),7*4)+1.

    pour gérer la fin mars et les 13 périodes max, j'ajoute un List.Min({13, [Période]}).

    Au final la période est calculée avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    List.Min({13, Number.IntegerDivide(Duration.Days([Date] - Date.AddDays(Date.StartOfWeek(#date([Année],4,1)),-1)),7*4)+1})
    Stéphane

  3. #3
    Membre habitué

    Inscrit en
    Mars 2007
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 325
    Points : 132
    Points
    132
    Par défaut
    Merci! Je vois que c'est du langage M alors que mon script était en DAX. Mais ce n'est pas un problème, je peux refaire mon script de date en M.

    Par contre, dans ton explication, tu mentionnes "Date.year(Date.AddMonths([Date],-3)) avec éventuellement un +1 pour avoir 2019-2020". Or, le Date.Year ne se trouve pas dans ton code et je ne comprends pas trop où l'insérer (je cherche d'ailleurs où mettre la parenthèse ouvrante manquante). Et je présume que le +1, c'est celui qui se trouve à la fin?

    Je suis nouvelle sur Power BI et, à date (en me formant par moi-même), j'ai plutôt utilisé le langage DAX alors je galère un peu avec le M.

    Merci pour ton temps!

  4. #4
    Membre émérite
    Homme Profil pro
    ingénieur
    Inscrit en
    Mars 2015
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : ingénieur
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2015
    Messages : 1 058
    Points : 2 525
    Points
    2 525
    Par défaut
    Bonjour

    le +1 c'est pour obtenir l'année suivant 2019 afin d'afficher 2019-2020

    sinon c'est possible en DAX (à tester)

    DATE(YEAR(DATEADD([Date],-3,MONTH)),4,1) pour obtenir le 1er avril de l'année
    on retire le jour de la semaine pour obtenir le début de la semaine de ce 1er avril : -WEEKDAY([1er Avril],2)

    et la période est définie par
    MIN(13,INT(([Date]-[1er Avril]+WEEKDAY([1er Avril],2))/28)+1) .

    Stéphane

Discussions similaires

  1. Power Query - Table de date avec la date antérieure
    Par Alexis_SI dans le forum POWER
    Réponses: 4
    Dernier message: 07/12/2021, 17h46
  2. Calendrier Avec Période Financière Personnalisées
    Par sdionne dans le forum Power BI
    Réponses: 1
    Dernier message: 09/03/2021, 17h58
  3. Réponses: 5
    Dernier message: 25/11/2007, 19h32
  4. Comparaison Date avec Date dans une table avec Dlookup
    Par adrien.gendre dans le forum VBA Access
    Réponses: 1
    Dernier message: 25/07/2007, 17h55
  5. Réponses: 2
    Dernier message: 10/07/2007, 10h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo