La dimension temps a un intérêt très particulier pour les utilisateurs que ce soit pour les comptabilisations financières, les dates des opérations de vente, etc… . On entend par dimension temps les dates conventionnelles, telles que les années, les trimestres, les mois, les semaines, et jours mais aussi les dates relatives telles que les trimestres précédent, le semestre présent, etc…
Il est donc important de bien comprendre cette notion de temps afin d’avoir des résultats corrects pour ses rapports. Cet article présente les différentes possibilités de mise en place d’une telle dimension dans un Data Module d’IBM Cognos Analytics.
Comment créer une dimension temps dans Cognos Analytics ?
Il existe plusieurs méthodes pour créer une dimension temps dans un module :
- Par création de la dimension temps depuis votre base de données (ou votre fichier plat), puis par import dans votre Data Module Cognos.
- En s’appuyant sur les calendriers disponibles dans Cognos.
- Créer une dimension temps directement dans votre module de données en passant par des calculs est aussi possible, mais ce n’est pas préférable car la dimension temps ne sera utilisée alors que dans ce module et peu profitable.
Méthode 1 : Import de la dimension temps d’une base données
Comment modéliser une bonne dimension temps en base de données ? Je vous renvoie notre article dédié à ce sujet, Datawarehouse : La dimension temps.
Une fois la dimension temps créée, vous pouvez l’importer dans votre module de données et l’utiliser.
Pour importer votre dimension temps dans votre module, ouvrez le module de données :
Puis ajoutez la nouvelle source :
- Sélectionnez votre table de dimension temps
- Puis OK
Méthode 2 : Créer une dimension temps à partir des calendriers disponibles dans Cognos
Pour pouvoir utiliser les dimensions temps disponibles dans Cognos Analytics, vous devez créer un data module qui associe vos données à un calendrier, ce module pourra alors être utilisé comme source pour les dimensions temps et dates relatives dans vos rapports et vos dashboards.
Depuis la version 11.1, des calendriers sont fournis par IBM et intégrés dans les modules de données Cognos. C’est une fonctionnalité très utile qui va vous permettre non seulement d’analyser vos indicateurs sur une période précise ; mais aussi de les comparer sur différentes périodes : par exemple comparer le mois de mars de cette année au mois de mars de l’année dernière…
Cette comparaison peut se traduire de deux manières dans Cognos, soit par l’utilisation de filtre dans le rapport (sélection des 3 derniers mois), soit par la personnalisation des indicateurs dans le data module (chiffre d’affaires des 3 derniers mois).
Mais vous pouvez avoir besoin de faire des comparaisons qui vont au-delà des dates relatives intégrées dans Cognos. Il faudra personnaliser ce calendrier fournir par IBM et ainsi élargir les fonctionnalités de base des dates relatives.
Les fonctionnalités de base des calendriers IBM
Pour activer les fonctionnalités de dates, il suffit de relier votre module de données à un des calendriers (calendrier fiscal, calendrier grégorien) fournis par IBM. Vous pourrez ensuite créer des mesures et des filtres avec ces dates.
Comment relier votre module à un calendrier ?
Pour l’exemple, appuyons nous sur le module de données de ventes et marketing de café disponible dans les exemples fournis en standard par IBM Cognos Analytics.
Sur le portail, allez dans :
- Contenu de l’équipe
- Exemples
- Par secteur
- Détail
- Données
- Ventes et marketing de café
Faites en une copie dans votre dossier personnel « Mon contenu », puis ouvrez le module de données :
- Cliquer sur le +
- Ajouter de nouvelles sources de données
- Aller dans Contenu de l’équipe > Calendars > Calendriers 11.1.7
- Calendrier de vente au détail
- Puis faites OK
Vous venez d’ajouter un calendrier à votre module:
Pour que celui-ci soit relié à votre module, il faut que les dates du calendrier et de votre module soient au format date.
Si ce n’est pas le cas, pour les convertir au format date :
- Sélectionner le champ date
- Clic droit
- convertir en date
- puis faites OK
Spécifier la référence de consultation
Cette étape est indispensable, que votre calendrier provienne de votre base de données ou des données IBM. Il vous faut obligatoirement spécifier la référence de consultation.
Ainsi, sur la donnée à relier avec le calendrier :
- Sélectionner le champ
- Clic droit
- Propriétés
- Puis choisissez dans la liste déroulant le calendrier que vous venez d’ajouter à votre module
- Enregistrez
Vous pouvez maintenant analyser les indicateurs de cette année, ce trimestre, les 12 derniers mois, etc…
Personnaliser le calendrier IBM
Que se passe-t-il si vous voulez comparer le chiffre d’affaire de cette année à celui d’il y a 2 ou 3 ans ? Nous nous retrouvons dans un cas au-delà de ce que met à disposition IBM. Il nous faut personnaliser le calendrier et l’ajuster à nos besoins.
Pour personnaliser un calendrier, effectuez les actions suivantes pour télécharger et modifier le calendrier standard fourni par Cognos :
- Sur le portail, allez dans Contenu de l’équipe > Calendriers > Outils > Rapport générateur de calendrier grégorien et fiscal :
- Ouvrir et exécuter le rapport au format Microsoft Excel :
- Une fois téléchargé et ouvert dans Microsoft Excel :
- Nous allons ajouter une nouvelle colonne P2Y_TheDate contenant la date du jour à année -2
- Remplir cette nouvelle colonne avec la formule :
=DATE(ANNEE(A2)-2;MOIS(A2);JOUR(A2))
- Faire de même avec la colonne P3Y_TheDate et P4Y_TheDate, contenant respectivement la date du jour à année – 3 et année – 4
- Après avoir modifié et enregistré le fichier, chargez-le dans Cognos :
- Cognos fournit déjà un module de données calendrier grégorien disponible dans Contenu de l’équipe > Calendars. Vous pouvez en faire une copie dans votre dossier Mon contenu afin d’y ajouter votre calendrier personnalisé.
- Reliez le module de données au fichier csv personnalisé
Vous verrez apparaitre les nouveaux champs dans votre module de données
- Créez un nouveau filtre P2Y, P3Y
Jusque-là, vous avez ajouté des nouveaux champs au calendrier IBM ; mais aucun filtre n’est lié à ces champs. Pour pouvoir filtrer les données sur P2Y, il faut créer un filtre qui exploitera les données du champ P2Y et nous permettra d’analyser les données de l’année N-2. Il est plus simple de partir des calculs des filtres existants et modifier selon le calcul que vous souhaitez.
Par exemple, si vous souhaitez créer un filtre Prior 2 Years, partez du filtre Prior Year dont l’expression sera plus proche de ce que vous désirez.
Pour éditer le filtre Prior Year qui existe déjà dans le calendrier IBM :
- Faites clic droit sur le filtre (Dans le module calendrier grégorien)
- Puis éditer le filtre
- Créer un nouveau filtre
- Copiez l’expression du filtre Prior Year et collez dans l’expression de votre nouveau filtre
- Puis modifiez l’expression
- OK
Le filtre a été créé. Vous pouvez à présent enregistrer le module et l’utiliser dans d’autres modules.
Comment personnaliser les dates de référence ?
Jusque là, nous avons analysé l’indicateur pendant l’année, le trimestre… par rapport à la date d’aujourd’hui. Que se passe-t-il si vous voulez analyser le chiffre d’affaire des 12 mois précédents le 15 mars 2024 ? Impossible car vous êtes hors du champ de ce qui est disponible. Il faut personnaliser pour changer la date de référence.
Création du paramètre global (_as_of_date)
Allez dans :
- Menu
- Gérer
- Personnalisation
- Paramètres
- Cliquez sur Importer
- Contenu de l’équipe
- Calendars > Outils
- Sélectionnez « Sélecteur de date de paramètre global »
- Puis faites OK
- Sélectionner _as_of_date
- Ouvrez le menu contextuel
- Propriétés
- Cochez « Appliquer à tous les rôles »
- Le changement ne sera prise en compte qu’après déconnexion/reconnexion de l’utilisateur
NB: Il peut arriver que le paramètre ait déjà été créé par l’administrateur. Dans ce cas, vous pourrez passer directement à l’étape de la personnalisation
Personnaliser le paramètre global (_as_of_date)
La modification du paramètre globale _as_of_date impacte tous les modules sur le portail Cognos, la modification du paramètre doit être faite avec circonspection.
- Dans la barre d’outils de la page d’accueil, cliquez sur « Mes paramètres »
- Sélectionnez une nouvelle date en utilisant le sélecteur de calendrier
- Cliquez sur « Appliquer »
Prenons un exemple simple pour montrer l’incidence de ce paramètre global. Appuyons nous toujours sur le module de ventes et marketing de café.
- Allez dans « Mon contenu »
- Sélectionnez le module
- Clic droit
- Créer un rapport
- Glissez-déposez « Sales » puis « Current Month »
Si vous personnalisez _as_of_date au 15/04/2021, le rapport ne ramène aucun résultat parce que l’on a filtré sur Current Month (c’est-à-dire sur le mois d’avril 2021) . Or, nous n’avons aucune donnée pour avril 2021.
Par contre, si vous spécifiez _as_of_date au 30 mai 2022, vous avez un résultat, ce qui est normal car nous avons des données en mai 2022.