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

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

    Posté par RANDRIATAHINA Charles sur 31 janvier 2024 at 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 1 year, 3 months ago 4 Membres · 4 Réponses
  • 4 Réponses
  • David

    Member
    31 janvier 2024 at 13h25

    Bonjour Charles,

    Est-ce que la relation est bien active ?

  • Alexandre

    Member
    31 janvier 2024 at 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

    Member
    1 février 2024 at 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.