SQL Server Reporting Services : Comment utiliser les paramètres locaux de l’utilisateur pour l’affichage des dates
Lorsqu’on développe un rapport avec SQL Server Reporting Services, il arrive très souvent la problématique de l’affichage de la date.
En effet, suivant le pays ou la langue des utilisateurs, on peut vouloir afficher en Français, en Anglais ou autre, cela suivant le paramètre du poste de l’utilisateur affichant le rapport.
Cela se fait via un paramètre disponible dans l’objet Report “Language”:
Cette variable peut recevoir une valeur fixe, comme c’est le cas ci-dessus (pour forcer l’affichage en Français), ou une valeur calculée. En choisissant “<Expression…>” dans la liste déroulante :
On peut spécifier dans la fenêtre de formule la valeur “=User!Language”
Cette solution permet alors d’afficher une date dynamique comme dans l’exemple ci-dessous :
- UCase(Format(Fields!Date.Value, "dddd dd MMMM"))
Sur un poste de travail paramétré :
En Français | En Anglais | En Arabe |
![]() | ![]() | ![]() |
Il faut en revanche préter attention sur le cas des rapports générés par le serveur (cas des envois de rapport par Email), car dans ce cas, la langue dynamique utilisée sera celle du serveur.
Dans ce contexte, il est préférable de le fixer à une valeur fixe de la liste déroulante.
Romelard Fabrice [MVP]
Commentaires
Enregistrer un commentaire