La table de dimension Date ne filtre pas sur les données

Étiquetté : , , , ,

  • La table de dimension Date ne filtre pas sur les données

    Posté par RANDRIATAHINA Charles sur 31 janvier 2024 à 10h54

    Bonjour,

    J’ai une table de dimension Date créée à partir d’une requête PowerQuery :

    let
    DateDebut = #date(Année_Debut,1,1),
    DateFin = #date(Année_Fin,12,31),
    NombreJours = Duration.Days (DateFin - DateDebut),
    Dates = List.Dates(DateDebut, NombreJours+1, #duration(1,0,0,0)),
    #"Converted to Table" = Table.FromList(Dates, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Renamed Columns" = Table.RenameColumns(#"Converted to Table",{{"Column1", "DateAternateKey"}}),
    #"Changed Type" = Table.TransformColumnTypes(#"Renamed Columns",{{"DateAternateKey", type date}}),
    #"Inserted Year" = Table.AddColumn(#"Changed Type", "Year", each Date.Year([DateAternateKey]), Int64.Type),
    #"Inserted Month" = Table.AddColumn(#"Inserted Year", "Month", each Date.Month([DateAternateKey]), Int64.Type),
    #"Inserted Quarter" = Table.AddColumn(#"Inserted Month", "Quarter", each Date.QuarterOfYear([DateAternateKey]), Int64.Type),
    #"Inserted Week of Month" = Table.AddColumn(#"Inserted Quarter", "Week of Month", each Date.WeekOfMonth([DateAternateKey]), Int64.Type),
    #"Inserted Day of Week" = Table.AddColumn(#"Inserted Week of Month", "Day of Week", each Date.DayOfWeek([DateAternateKey]), Int64.Type),
    #"Inserted Day Name" = Table.AddColumn(#"Inserted Day of Week", "Day Name", each Date.DayOfWeekName([DateAternateKey]), type text),
    #"Removed Columns" = Table.RemoveColumns(#"Inserted Day Name",{"Day of Week"}),
    #"Inserted Month Name" = Table.AddColumn(#"Removed Columns", "Month Name", each Date.MonthName([DateAternateKey]), type text),
    #"Changed Type1" = Table.TransformColumnTypes(#"Inserted Month Name",{{"DateAternateKey", type date}})
    in
    #"Changed Type1"

    J’ai établi une relation entre ma table de Fait et ladite table de Dimension, la relation est faite au niveau de colonne “DateAlternatekey” de ma table Date et la colonne “Date de debut” de ma table de fait. Le format de date de ces deux colonnes sont exactement pareils (dd/mm/yyyy).


    Cependant, lorsque je veux utiliser ma table de Date pour filtre mes données au niveau de mon rapport, cela ne fonctionne pas. Je n’arrive pas à afficher de données quand je filtre sur une année ou un mois par exemple.

    Quelqu’un saurait d’où vient le problème et ce qui pourrait faire fonctionner le filtre?
    Merci d’avance.

    Thomas a répondu Il y a 5 mois, 3 semaines 4 Membres · 4 Réponses
  • 4 Réponses
  • David

    Membre
    31 janvier 2024 à 13h25

    Bonjour Charles,

    Est-ce que la relation est bien active ?

  • Alexandre

    Membre
    31 janvier 2024 à 14h55

    Bonjour Charles,

    les deux champs utilisés pour la jointure sont bien au format Date ?

    Après je ne sais pas si ca a un impact mais il faut déclarer la table temporelle comme “table de dates” :

    Enfin, je suppose que tu as utilisé un segment pour créer ton filtre dans ton rapport. Il pointe bien sur le bon champ?

  • Thomas

    Membre
    1 février 2024 à 9h44

    Comme dit Alexandre, faire attention au sens de la relation et au niveau de quel date tu as mis dans le segement qui filtre. Après tu peux faire un test simple en faisant un tableau avec en colonne la date de ton calendrier et en deuxième une mesure qui compte les dates de la clé de ta table de dimension.

Connectez-vous pour répondre.