Gestion des dimensions de date personnalisées
La dimension de date personnalisée permet de charger et de mettre à jour les données avec vos propres dimensions comptables dans les espaces de travail GoodData. Par exemple, si l’année comptable de votre espace de travail démarre au 1er avril, vous pouvez utiliser la dimension de date personnalisée pour le mois d’avril.
Dans GoodData, les termes « espace de travail » et « projet » désignent la même entité. Par exemple, l’ID de projet est le même que l’ID d’espace de travail. Voir Trouver l’ID d’un espace de travail.
À propos des dimensions de date personnalisées
La dimension de date personnalisée est représentée dans le modèle logique de données (LDM) de votre espace de travail par un ensemble de données Date (voir Dates dans le modèle de données logique) basé sur le modèle de dimension de date urn:custom_v2:date
. Par défaut, ce modèle contient des données du calendrier grégorien, du 01/01/1900 au 31/12/2050.
Que vous ayez besoin d’une ou plusieurs dimensions de date dans votre espace de travail (par exemple, si vous souhaitez différencier la date d’achat de la date de livraison), vous pouvez avoir un ou plusieurs ensembles de données Date avec une dimension de date personnalisée. Vous pouvez ajouter une autre dimension de date personnalisée à votre espace de travail à tout moment et commencer à l’utiliser immédiatement.
Quand vous utilisez la dimension de date personnalisée, vous avez les options ci-dessous.
- Utiliser la dimension de date personnalisée telle quelle (calendrier grégorien du 01/01/1900 au 31/12/2050)
- Personnaliser la dimension de date personnalisée :
- charger un calendrier pour une année comptable commençant par un mois arbitraire (par exemple, pour une année comptable commençant en avril),
- charger votre propre calendrier.
Au besoin, vous pouvez personnaliser une dimension de date personnalisée existante dans votre espace de travail en chargeant un autre calendrier. Si une métrique ou un rapport utilise cette dimension de date, elle ou il est automatiquement mis à jour.
Le calendrier personnalisé que vous voulez charger et le calendrier actuel doivent avoir les mêmes intervalles de dates. Sinon, charger un calendrier avec des intervalles différents peut entraîner des interprétations erronées avec les données chargées précédemment et les filtres de dates utilisés.
Par exemple, suite au chargement d’un autre calendrier, la métrique suivante :
SELECT Amount where Quarter=Q1/2017
peut devenir la métrique ci-dessous :
SELECT Amount where Quarter=Q4/FY2016
Pour éviter cette situation, utilisez des intervalles flottants dans les filtres de date (par exemple, SELECT Amount where Quarter=THIS
).
Rallonger des dimensions de date
Par défaut, le modèle de dimension de date urn:custom_v2:date
contient les données du calendrier grégorien du 01/01/1900 au 12/31/2050. Vous pouvez rallonger les dimensions de date des calendriers personnalisés au-delà des données par défaut, du 01/01/1900 au 12/31/2100. Toutefois, des plages plus étendues peuvent ralentir les performances. Pour améliorer les performances quand vous utilisez des dimensions de date personnalisées, n’utilisez pas de périodes inutiles en-dehors de vos cas d’utilisation de données et d’analyse. Par exemple, si vous ne devez analyser que de 2010 à 2030, gardez votre dimension personnalisée entre ces dates.
Si vous avez besoin d’une prise en charge des dates jusqu’au 12/31/2100 tout en évitant de potentiels problèmes de performances, vous pouvez télécharger l’archive urn_custom_v2_date_2100.csv.zip. Ce modèle de dimension de date contient les dates du 01/01/1950 au 12/31/2100.
Anciennes dimensions de date
Les dimensions de date suivantes sont utilisées mais ne sont pas recommandées pour les nouveaux projets :
urn:custom:date
: Cette dimension de date est similaire à la dimension de dateurn:custom_v2:date
et propose toutes les fonctionnalités deurn:custom_v2:date
, à l’exception de l’option de comparaison des données à celles de la même période sur l’année précédente, avec le paramètre Semaines, dans les filtres de date d’Analytical Designer et des tableaux de bord de KPI.urn:gooddata:date
: Cette dimension de date contient par défaut les dates du calendrier grégorien (du 01/01/1900 au 31/12/2050) et ne peut pas être adaptée pour créer un calendrier comptable personnalisé.
Si vous utilisez une ancienne dimension de date et voulez passer à la dimension de date urn:custom_v2:date
, consultez Passer d’une ancienne dimension de date à urn:custom_v2:date.
Ajouter la dimension de date personnalisée à un espace de travail
Pour ajouter la dimension de date personnalisée à votre espace de travail, ajoutez un ensemble de données Date au modèle de données logique (LDM) de votre espace de travail.
L’intégration de la dimension de date personnalisée à un espace de travail n’affecte pas et ne modifie pas les autres dimensions de date déjà présentes dans l’espace de travail.
Étapes :
Dans votre espace de travail, basculez vers l’onglet Données.
Cliquez sur Modèle en haut. Le modèle de données logique s’affiche.
Cliquez sur Modifier.
Glissez-déposez Date à partir du panneau de gauche vers le canevas. Un ensemble de données Date basé sur la dimension de date
urn:custom_v2:date
est ajouté. Par défaut, il est appelé « Date ».Avant de publier le LDM, vous pouvez modifier la dimension de date dans le nouvel ensemble de données Date en cliquant sur Modifier et en réécrivant manuellement la dimension de date. Toutefois, nous vous le déconseillons et vous encourageons à utiliser la dimension de date par défaut,
urn:custom_v2:date
.Après la publication du LDM, la dimension de date ne peut plus être modifiée.
Saisissez le nom de l’ensemble de données.
Créez une relation entre l’ensemble de données Date et un autre ensemble de données que vous souhaitez analyser par date.
- Sélectionnez l’ensemble de données Date.
- Cliquez sur le point bleu sur la bordure droite de l’ensemble de données Date et faites glisser la flèche qui s’affiche pour connecter l’ensemble de données Date à l’autre ensemble de données. La relation est établie.
Publiez le LDM (pour en savoir plus, consultez Publier un modèle de données logique). Lors de la publication, utilisez l’option Préserver les données pour garantir que les données sont chargées dans l’espace de travail et non supprimées.
La dimension de date urn:custom_v2:date
contenant des données de calendrier grégorien (le calendrier par défaut de GoodData), est maintenant ajoutée à votre espace de travail.
- Si vous voulez utiliser le calendrier par défaut, vous pouvez l’utiliser immédiatement dans votre espace de travail. Aucune action supplémentaire n’est nécessaire.
- Si vous souhaitez charger un autre calendrier, consultez Modifier urn:custom_v2:date avec un calendrier personnalisé.
Utiliser un script MAQL DDL pour intégrer la dimension de date personnalisée
Vous pouvez utiliser une API pour ajouter une dimension de date personnalisée à votre espace de travail.
Pour cela, utilisez l’API d'exécution de script MAQL DDL avec le corps de requête suivant :
{ "manage": { "maql": "INCLUDE TEMPLATE \"urn:custom_v2:date\"" } }
Cette API ajoute la dimension de date urn:custom_v2:date
avec les données de calendrier grégorien par défaut à votre espace de travail.
Modifier urn:custom_v2:date avec un calendrier personnalisé
Par défaut, urn:custom_v2:date
contient le calendrier par défaut (calendrier grégorien du 01/01/1900 au 31/12/2050). Si vous ne voulez pas utiliser le calendrier par défaut, modifiez la dimension de date personnalisée avec un calendrier personnalisé :
- Préparez un fichier CSV avec les conditions requises du calendrier.
- Transférez le fichier CSV vers un stockage spécifique à l’utilisateur.
- Exécutez une tâche de chargement.
Préparer un fichier CSV avec les conditions requises du calendrier
Vous pouvez choisir d’utiliser un calendrier pour années comptables commençant par un mois arbitraire ou de créer votre propre calendrier.
Vous pouvez aussi revenir au calendrier par défaut (calendrier grégorien du 01/01/1900 au 31/12/2050) à partir de n’importe quel calendrier chargé.
Vous ne pouvez charger qu’une dimension entière. Vous ne pouvez pas en charger qu’une partie.
Utiliser un calendrier pour années comptables commençant par un mois arbitraire
Téléchargez le fichier CSV avec la dimension de date du mois de départ de votre année comptable :
Mois | Fichier CSV |
---|---|
Janvier | urn_fcjan1_v2_date.csv.zip |
Février | urn_fcfeb1_v2_date.csv.zip |
Mars | urn_fcmar1_v2_date.csv.zip |
Avril | urn_fcapr1_v2_date.csv.zip |
Mai | urn_fcmay1_v2_date.csv.zip |
Juin | urn_fcjun1_v2_date.csv.zip |
Juillet | urn_fcjul1_v2_date.csv.zip |
Août | urn_fcaug1_v2_date.csv.zip |
Septembre | urn_fcsep1_v2_date.csv.zip |
Octobre | urn_fcoct1_v2_date.csv.zip |
Novembre | urn_fcnov1_v2_date.csv.zip |
Décembre | urn_fcdec1_v2_date.csv.zip |
Utiliser votre propre calendrier
Créez un fichier CSV avec vos conditions requises de calendrier comptable personnalisé. Vous pouvez télécharger le fichier CSV avec le calendrier par défaut (urn_custom_v2_date.csv.zip) et le modifier en fonction de vos besoins.
Votre fichier CSV doit remplir les conditions requises ci-dessous.
- Le fichier contient des colonnes respectant l’ordre prédéfini (listé dans le tableau ci-dessous) et des exemples de valeur.
- Une colonne contient maximum 50 caractères.
- Les en-têtes de colonne représentent les identificateurs d’attributs
displayForm
(libellés d’attribut). - Les lignes sont triées par
date.day.yyyy_mm_dd
. - Les contraintes suivantes sont respectées pour certaines colonnes (consulter le tableau ci-dessous).
- Séquence incrémentielle (colonnes de date) : la différence entre deux enregistrements strictement suivants doit être 1.
- Séquence périodique non décroissante (jour du mois, jour de la semaine, etc.) : deux enregistrements strictement suivants
a
etb
doivent remplir une des conditions suivantes :b=a
b=a+1
b
est égal à la valeur minimum de la séquence (par exemple, la séquence(5,5,6,6,7,7,1,2,3,3,3,3,1,2,3,4,5)
est valide).
- Séquence non décroissante (semaine, année, etc.) : deux enregistrements strictement suivants
a
etb
doivent remplir l’une ou l’autre des conditions suivantes :b=a
b=a+1
Le chargement de la dimension comptable ajoute les enregistrements par défaut représentant les valeurs vides. Vous ne pouvez pas modifier ces valeurs.
Identificateur de libellé | Modèle de valeur | Exemple | Contrainte |
---|---|---|---|
date.day.yyyy_mm_dd | yyyy-MM-dd | 1900-12-31 | Séquence incrémentielle |
date.day.uk.dd_mm_yyyy | 31/12/1900 | ||
date.day.us.mm_dd_yyyy | 12/31/1900 | ||
date.day.eu.dd_mm_yyyy | 01-01-1900 | ||
date.day.us.long | Lun, 1er jan, 1900 | ||
date.day.us.m_d_yy | 1/1/00 | ||
day.in.euweek.short | Lun | ||
day.in.euweek.number | [a-zA-Z_ ]*[0-9] | 1 | Séquence périodique |
day.in.euweek.long | Lundi | ||
day.in.year.default | [a-zA-Z_ ]*[0-9] | D1 | Séquence périodique |
quarter.in.year.default | [a-zA-Z_ ]*[0-9] | Q1 | Séquence périodique |
month.in.quarter.number | [a-zA-Z_ ]*[0-9] | M1 | Séquence périodique |
month.in.year.short | Jan | ||
month.in.year.m_q | M1/Q1 | ||
month.in.year.number | [a-zA-Z_ ]*[0-9] | M1 | Séquence périodique |
month.in.year.long | Janvier | ||
week.wk_qtr_year | W1/Q1/1900 | ||
week.from_to | Dec 31, 1899 - Jan 6, 1900 | ||
week.starting | Wk. of Sun 12/31/1899 | ||
week.wk_year_cont | W53/1899 - W1/1900 | ||
week.wk_year | W1/1900 | Séquence non décroissante | |
week.wk_qtr_year_cont | W14/Q4/1899 - W1/Q1/1900 | ||
euweek.wk_qtr_year | W1/Q1/1900 | ||
euweek.from_to | Jan 1, 1900 - Jan 7, 1900 | ||
euweek.starting | Wk. of Mon 01/01/1900 | ||
euweek.wk_year_cont | W1/1900 | ||
euweek.wk_year | W1/1900 | Séquence non décroissante | |
euweek.wk_qtr_year_cont | W1/Q1/1900 | ||
week.in.year.number_us | [a-zA-Z_ ]*[0-9] | W1 | Séquence périodique |
day.in.week.short | Lun | ||
day.in.week.number | [a-zA-Z_ ]*[0-9] | 2 | Séquence périodique |
day.in.week.long | Lundi | ||
week.in.quarter.number_us | [a-zA-Z_ ]*[0-9] | W1 | Séquence périodique |
euweek.in.quarter.number_eu | [a-zA-Z_ ]*[0-9] | W1 | Séquence périodique |
day.in.quarter.default | [a-zA-Z_ ]*[0-9] | D1 | Séquence périodique |
month.short | Jan 1900 | ||
month.number | 1/1900 | Séquence non décroissante | |
month.long | January 1900 | ||
day.in.month.default | [a-zA-Z_ ]*[0-9] | D1 | Séquence périodique |
year.default | 1900 | Séquence non décroissante | |
euweek.in.year.number_eu | [a-zA-Z_ ]*[0-9] | W1 | Séquence périodique |
quarter.short_us | Q1/1900 | Séquence non décroissante | |
year.for.week.number | 1900 | Séquence non décroissante | |
year.for.euweek.number | 1900 | Séquence non décroissante | |
quarter.for.week.number | Q1/1900 | Séquence non décroissante | |
quarter.for.euweek.number | Q1/1900 | Séquence non décroissante |
Utiliser le calendrier par défaut
Si vous voulez réinitialiser le calendrier pour utiliser le calendrier par défaut, téléchargez urn_custom_v2_date.csv.zip. Cette dimension de date correspond au calendrier par défaut dans la dimension de date urn:custom_v2:date
(calendrier grégorien du 01/01/1900 au 31/12/2050).
Transférer le fichier CSV à un stockage spécifique à l’utilisateur
Étapes :
- Compressez le fichier CSV. Le fichier d’archive doit contenir un fichier avec le même nom que le fichier zip, sans l’extension .zip. Par exemple, le fichier d’archive
urn_fcnov1_v2_date.csv.zip
contiendraurn_fcnov1_v2_date.csv
. - Mettez le fichier d’archive dans votre stockage de données (voir Stockage de données spécifique de l’utilisateur).
Exécuter une tâche de chargement
La procédure suivante suppose que vous accédez à vos espaces de travail sur https://secure.gooddata.com/. Si vous êtes client en marque blanche, remplacez secure.gooddata.com
par votre domaine de marque blanche dans les étapes de la procédure.
Dans GoodData, les termes « espace de travail » et « projet » désignent la même entité. Par exemple, l’ID de projet est le même que l’ID d’espace de travail. Voir Trouver l’ID d’un espace de travail.
Étapes :
Utilisez l'API de chargement des dimensions de date.
Ressource d’API :
https://secure.gooddata.com/gdc/md/{workspace_id}/datedimension/pull
Méthode :
POST
Corps de requête :
{ "dateIntegration": { "file": "/path/to/archive/file.zip", "datasets": [ "{date_dataset_identifier}" ] } }
- N’incluez pas la section
/uploads
dans le chemin d’accès au fichier. Par exemple, si le fichier s’appelleurn_fcapr1_v2_date.csv.zip
et est stocké dans/uploads/
, saisissez le chemin d’accès/urn_fcapr1_v2_date.csv.zip
. {date_dataset_identifier}
spécifie l’ensemble de données Date dans lequel vous voulez charger le fichier CSV. Par exemple,date1.dataset.dt
.
- N’incluez pas la section
En-têtes de la requête :
Content-Type:application/json Accept:application/json
La tâche s’exécute et le lien d’interrogation du statut de la tâche est renvoyé.
Interrogez le statut jusqu’à ce que le statut de tâche OK soit renvoyé. La dimension de date personnalisée est mise à jour avec le calendrier sélectionné.
Les fichiers CSV chargés ne sont pas stockés et ne peuvent pas être récupérés à partir de la plateforme GoodData.
Au lieu d’utiliser l’API, vous pouvez utiliser la page grise pour mettre à jour la dimension de date personnalisée :
https://secure.gooddata.com/gdc/md/{workspace_id}/datedimension/pull
Gestion du cycle de vie (LCM) et dimension de date personnalisée
La Gestion du cycle de vie (voir Gérer des espaces de travail via LCM (Gestion du cycle de vie)) prend en charge la dimension de date personnalisée.
- Si l’espace de travail principal inclut la dimension de date personnalisée, les espaces de travail client créés à partir de cet espace de travail principal héritent de cette dimension personnalisée, mais avec le calendrier grégorien par défaut, indépendamment du calendrier contenu dans la dimension de date de l’espace de travail principal. Vous pouvez ensuite charger un autre calendrier dans la dimension de date personnalisée de l’espace de travail client si nécessaire. Ce calendrier ne sera pas écrasé lors de la synchronisation.
- Vous pouvez utiliser différents calendriers dans la dimension de date personnalisée dans différents espaces de travail client du même segment. Si vous devez unifier le calendrier de la dimension de date personnalisée de l’espace principal et de son espace de travail client, vous devez charger le calendrier cible dans la dimension personnalisée de chaque espace de travail séparément.
Passer d’une ancienne dimension de date à urn:custom_v2:date
Pourquoi migrer vers urn:custom_v2:date ?
Si vous utilisez Analytical Designer et des tableaux de bord de KPI, nous vous conseillons de passer à la dimension de date urn:custom_v2:date
. Avec la dimension de date urn:custom_v2:date
, vous avez l’option de comparer des données à celles de l’année précédente sur une même période, par semaine, dans les filtres de date (par exemple, comparer les données de la Semaine 25 en 2018 et de la Semaine 25 en 2017). Lorsque vous effectuez une comparaison de semaines sur deux années différentes, les dates diffèrent. Si une semaine est partagée sur deux années ou trimestres (elle commence sur l’année ou le trimestre précédent et se termine sur l’année ou le trimestre en cours), le critère établissant à quel trimestre ou année cette semaine appartient doit être défini. La dimension de date urn:custom_v2:date
s’applique à ces cas d’utilisation.
Pour en savoir plus sur les filtres de date dans Analytical Designer et les tableaux de bord de KPI, consultez Filtres dans Analytical Designer et Filtres de date dans les tableaux de bord.
Le passage à la dimension de date urn:custom_v2:date
permet uniquement à la plateforme GoodData de calculer correctement les rapports comparant des données d’une même période sur plusieurs années, par semaine, dans les filtres de date. Pour utiliser entièrement le filtrage par semaine, vous devez effectuer des étapes supplémentaires. Pour plus d’informations, reportez-vous à Activer les semaines dans les filtres de données.
Effets de la migration vers urn:custom_v2:date sur vos données
Colonnes supplémentaires dans urn:custom_v2:date
Par rapport aux anciennes dimensions de date, urn:custom_v2:date
contient quatre colonnes supplémentaires :
year.for.week.number
year.for.euweek.number
quarter.for.week.number
quarter.for.euweek.number
Ces colonnes vous donne l’option de comparer des données d’une même période sur plusieurs années, par semaines, dans les filtres de date. Ces colonnes ne sont pas visibles dans l’interface d’Analytical Designer ou des tableaux de bord de KPI et sont utilisées par XAE (Extensible Analytics Engine) pour le calcul de rapports.
Si une semaine est partagée sur deux années ou trimestres (elle commence sur l’année ou le trimestre précédent et se termine sur l’année ou le trimestre en cours), voici comment son appartenance à une année ou un trimestre est définie :
year.for.week.number
etquarter.for.week.number
: la semaine appartient à l’année à laquelle appartient le samedi de cette semaine.year.for.euweek.number
etquarter.for.euweek.number
: la semaine appartient à l’année ou au trimestre auquel appartient le jeudi de cette semaine.
Après être passé à urn:custom_v2:date
, les éléments suivants sont appliqués :
euweek.in.year.number_eu
est calculé à l’aide de la norme ISO 8601 (c’est-à-dire, la semaine appartient à l’année à laquelle appartient le jeudi de cette semaine) ; une année comporte 52 semaines (ou 53 dans une année bissextile intercalaire).week.in.year.number_us
commence un dimanche et appartient à l’année à laquelle appartient son dernier jour.euweek.in.quarter.number_eu
s’aligne sureuweek.in.year.number_eu
:- la première semaine d’une année est la première semaine d’un trimestre,
- chaque trimestre comporte 13 semaines (ou 14 dans le dernier trimestre d’une année bissextile intercalaire).
week.in.quarter.number_us
s’aligne surweek.in.year.number_us
, en suivant les mêmes règles qu’une semaine européenne, avec des données américaines.
Différents identificateurs de libellés d’attribut
Applicable uniquement si vous effectuez la transition à partir de la dimension de date urn:gooddata:date
.
Par rapport à la dimension de date urn:gooddata:date
, urn:custom_v2:date
contient des identificateurs de libellés d’attribut différents (displayForm
).
- Si vous chargez des données sur la plateforme GoodDate à l’aide de l’API (voir Chargement de données via l’API REST), modifiez votre manifeste SLI pour intégrer les nouveaux identificateurs.
- Si vous chargez des données sur la plateforme GoodData à l’aide de graphiques CloudConnect, vérifiez le mappage de données dans les composants GD Dataset Writer de vos graphiques.
Première semaine de 1900 supprimée
Applicable uniquement si vous effectuez la transition à partir de la dimension de date urn:gooddata:date
.
Par rapport à la dimension de date urn:gooddata:date
, urn:custom_v2:date
ne contient pas la première semaine de l’année 1900 (1900-01-01 – 1900-01-07).
Une autre méthode de calcul des agrégations de dates
Applicable uniquement si vous effectuez la transition à partir de la dimension de date urn:gooddata:date
.
Par rapport à la dimension de date urn:gooddata:date
, la dimension de date urn:custom_v2:date
utilise une autre méthode de calcul des agrégations de date.
Par exemple, une métrique qui renvoie l’année la plus récente (telle que SELECT MAX(Year)
) renvoie l’ID de la valeur d’attribut correspondant à l’année et non l’année (par exemple, 121
au lieu de 2020
).
Si vous avez besoin d’afficher l’année, modifiez la métrique :
- Soustrayez une valeur numérique égale à l’ID de la valeur d’attribut de l’année. Pour cela, sélectionnez l’année correspondante dans le menu de droite
Valeurs d'attribut
. Pour en savoir plus sur la modification de métrique dans l’Éditeur de métriques personnalisées, consultez Apprendre à utiliser MAQL pour écrire des métriques. - Ajoutez une valeur numérique égale à l’année.
Par exemple, pour l’année 2020, la métrique modifiée prendrait cette forme :
Passer d’une ancienne dimension de date à urn:custom_v2:date
Pour migrer les ensembles de données Date de votre espace de travail à partir de la dimension de date urn:gooddata:date
ou urn:custom:date
vers la dimension de date urn:custom_v2:date
, utilisez l'API pour migrer des ensembles de données Date vers la dimension de date personnalisée. Vous pouvez migrer tous les ensembles de données Date ou uniquement quelques uns.
Lorsque vous migrez des ensembles de données, n’effectuez aucune autre tâche en même temps (particulièrement un chargement de données), au risque de provoquer des incohérences de données.
Si vous utilisez LCM et migrez des ensembles de données Date dans l’espace de travail principal vers }urn:custom_v2:date
, les espaces de travail clients créés à partir de l’espace de travail principal hériteront cette dimension personnalisée lors de la prochaine synchronisation.
Calendriers pour années comptables commençant par un mois arbitraire pour urn:custom:date
Si vous utilisez la dimension de date urn:custom:date
et avez besoin de la modifier pour un calendrier personnalisé, choisissez un fichier CSV en fonction du premier mois de votre année comptable.