Personnaliser des filtres de date dans des tableaux de bord de KPI

Vous pouvez personnaliser le filtre de date en modifiant la structure JSON de l’objet de métadonnées du filtre de date via l’API. Vous pouvez :

  • ajouter, modifier et retirer des granularités dans la période relative,
  • ajouter, modifier et retirer des filtres dans des périodes prédéfinies,
  • renommer des filtres,
  • définir un filtre par défaut pour les nouveaux tableaux de bord de KPI.

Pour la structure JSON par défaut, consultez la section Structure JSON du filtre de date par défaut à la fin de cet article.

Objet de métadonnées du filtre de date

Vous pouvez accéder aux objets de MD de filtre de date à l’aide des liens suivants :

  • Pour l’intégralité de l’espace de travail https://secure.gooddata.com/gdc/md/workspace_ID/objects/query?category=dateFilterConfig&limit=1

  • Pour un tableau de bord déjà créé https://secure.gooddata.com/gdc/md/workspace_ID/obj/KPI_dashboard_ID

Chaque filtre, ou partie d’un filtre, est identifié par :

  • localIdentifier, un identifiant unique d’un filtre contenu dans la structure JSON,
  • name, le nom du filtre affiché sur le tableau de bord de KPI. Si vous laissez le nom vide, le tableau de bord crée le nom. Si vous ajoutez un nom personnalisé, mettez également à jour les versions localisées. Pour en savoir plus, consultez Localisation de métadonnées.

Les types de filtres correspondent aux noms JSON suivants :

Nom du tableau de bord de KPINom JSON
Tout le tempsallTime
Période statiquerelativePresets *
Période relativerelativeForm
Périodes prédéfiniesrelativePresets
* La période statique que vous définissez est ajoutée à la section relativePresests de la structure JSON.

Modifier des granularités dans la période relative

La période relative comprend des granularités qui peuvent être des jours, semaines, mois, trimestres et années au format suivant :

"GDC.time.week_us",  “GDC.time.month”,  “GDC.time.year”,  “GDC.time.quarter”,  “GDC.time.date”

Si vous souhaitez retirer une granularité, supprimez l’élément de la section relativeForm. Le code ci-dessous montre la période relative avec seulement les mois et années.

"relativeForm" : { "granularities" : [ "GDC.time.month", "GDC.time.year" ], "localIdentifier" : "relativeForm", "name" : "relativeForm", "visible" : true },

Ajouter des périodes prédéfinies

Dans la section relativePresets de la structure JSON, vous pouvez modifier les périodes prédéfinies du filtre de date.

Chaque période prédéfinie est composée des éléments présentés ci-dessous.

  • granularité pouvant être des jours, semaines, mois, trimestres et années dans les formats suivants :

    "GDC.time.week_us",  "GDC.time.month",  "GDC.time.year",  "GDC.time.quarter",  "GDC.time.date"

  • de et à qui spécifient la durée de la période en fonction de la granularité et par rapport à la date du jour. En fonction de la granularité, le nombre spécifie la durée par rapport à la date du jour (qui est toujours 0).  Voici quelques exemples :

    DeÀGranularitéNotes
    -20GDC.time.dateTrois derniers jours
    03GDC.time.week_usDans quatre semaines
    -21GDC.time.monthDes deux derniers mois au mois prochain
    -1-1GDC.time.quarterLe trimestre dernier
    00GDC.time.yearCette année
  • localIdentifier, nom unique contenu dans l’objet de MD du filtre de date

  • name, nom du filtre affiché sur le tableau de bord de KPI

  • visible, spécifie si le filtre est disponible sur le tableau de bord

Le code ci-dessous montre un nouveau paramètre qui filtre les 10 derniers jours et s’affiche sur le tableau de bord.

{ "from" : -9, "granularity" : "GDC.time.date", "localIdentifier" : "last_10_days", "name" : "Last 10 days", "to" : 0, "visible" : true },

renommer des filtres,

Pour renommer un filtre de date ou une partie d’un filtre de date, modifiez son paramètre name. Si vous laissez le nom vide, il est créé automatiquement.

Le code ci-dessous montre la « Période relative » renommée « Set a relative filter » (Configurer un filtre relatif).

"relativeForm" : { "granularities" : [ "GDC.time.month", "GDC.time.year", "GDC.time.quarter", "GDC.time.date" ], "localIdentifier" : "relativeForm", "name" : "Set a relative filter", "visible" : true },

Changer le filtre par défaut pour les nouveaux tableaux de bord

Le paramètre selectedOption détermine quel filtre de date est affiché par défaut pour les nouveaux tableaux de bord de KPI.

Par défaut, tous les nouveaux tableaux de bord de KPI sont filtrés sur Ce mois-ci.

Pour changer le filtre par défaut, ajoutez son paramètre localIdentifier au paramètre selectedOption.

"selectedOption" : "relative_last_7_days"

Structure JSON du filtre de date par défaut

La structure JSON du filtre de date est composée de la définition des filtres individuels.

Vous pouvez utiliser la structure JSON par défaut suivante en tant que référence ou pour mettre à jour votre filtre de date.

 { "dateFilterConfig" : { "content" : { "absoluteForm" : { "localIdentifier" : "absoluteForm", "name" : "absoluteForm", "visible" : true }, "allTime" : { "localIdentifier" : "allTime", "name" : "allTime", "visible" : true }, "relativeForm" : { "granularities" : [ "GDC.time.week_us", "GDC.time.month", "GDC.time.year", "GDC.time.quarter", "GDC.time.date" ], "localIdentifier" : "relativeForm", "name" : "relativeForm", "visible" : true }, "relativePresets" : [ { "from" : -6, "granularity" : "GDC.time.date", "localIdentifier" : "relative_last_7_days", "name" : "Last 7 days", "to" : 0, "visible" : true }, { "from" : -29, "granularity" : "GDC.time.date", "localIdentifier" : "relative_last_30_days", "name" : "Last 30 days", "to" : 0, "visible" : true }, { "from" : -89, "granularity" : "GDC.time.date", "localIdentifier" : "relative_last_90_days", "name" : "Last 90 days", "to" : 0, "visible" : true }, { "from" : 0, "granularity" : "GDC.time.week_us", "localIdentifier" : "relative_this_week", "name" : "This week", "to" : 0, "visible" : true }, { "from" : -1, "granularity" : "GDC.time.week_us", "localIdentifier" : "relative_last_week", "name" : "Last week", "to" : -1, "visible" : true }, { "from" : -1, "granularity" : "GDC.time.week_us", "localIdentifier" : "relative_last_two_weeks", "name" : "Last two weeks", "to" : 0, "visible" : true }, { "from" : 0, "granularity" : "GDC.time.month", "localIdentifier" : "relative_this_month", "name" : "This month", "to" : 0, "visible" : true }, { "from" : -1, "granularity" : "GDC.time.month", "localIdentifier" : "relative_last_month", "name" : "Last month", "to" : -1, "visible" : true }, { "from" : -11, "granularity" : "GDC.time.month", "localIdentifier" : "relative_last_12_months", "name" : "Last 12 months", "to" : 0, "visible" : true }, { "from" : 0, "granularity" : "GDC.time.quarter", "localIdentifier" : "relative_this_quarter", "name" : "This quarter", "to" : 0, "visible" : true }, { "from" : -1, "granularity" : "GDC.time.quarter", "localIdentifier" : "relative_last_quarter", "name" : "Last quarter", "to" : -1, "visible" : true }, { "from" : -3, "granularity" : "GDC.time.quarter", "localIdentifier" : "relative_last_4_quarters", "name" : "Last 4 quarters", "to" : 0, "visible" : true }, { "from" : 0, "granularity" : "GDC.time.year", "localIdentifier" : "relative_this_year", "name" : "This year", "to" : 0, "visible" : true }, { "from" : -1, "granularity" : "GDC.time.year", "localIdentifier" : "relative_last_year", "name" : "Last year", "to" : -1, "visible" : true } ], "selectedOption" : "relative_this_month" } } }