Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Waïl_Riachi_Sanofi

Problème de reconnaissance de date

 

Problème de reconnaissance de date

 

J'ai un problème de reconnaissance de date sur QlikSense lorsque je connecte mon application à la base de données GDMS+. Je n'ai pas le petit logo du calendrier sur mon champ original_creation_date contrairement à mes autres champs de dates ce qui signifie que le champ n'est pas reconnu comme une date. Cela me pose donc des problèmes lorsqu'il s'agit de faire des graphiques. J'ai vu avec l'administrateur de la base de données GDMS+ que les champs traduit en 1/1/0001 sont en faites des « null date » dans la base de données.

Wal_Riachi_0-1631004398979.png

 

Cependant, sur certains champs il n'y a pas ce logo ce qui signifie qu'il est dans l'autoCalendar. J'ai observé les données dans les tables Data Manager et j'ai remarqué que leur format n'était pas daté.

Wal_Riachi_1-1631004399006.png

 

Comme on peut le voir sur la capture d'écran ci-dessous, le champ r_creation_date est bien dans autoCalendar car il est reconnu comme une variable Timestamp contrairement à la bonne variable qui n'a pas de format. Le problème c'est qu'il est étrange qu'on trouve des dates "1/1/0001" et tout à "12:00:00 AM" qui n'existe pas dans la base de données GDMS+. Ce qui me porte à croire que Qlik a mal interprété les données.

 

Wal_Riachi_2-1631004399048.png

 

Cependant, lorsque je clique pour changer le format d'interprétation et le mettre dans Timestamp, on me demande un format d'entrée et un format d'affichage, mais je ne sais pas quel est le format d'entrée ? Comment puis-je savoir?

Wal_Riachi_3-1631004399067.png

 

J'ai donc essayé MM/JJ/AAAA mais ça ne marche toujours pas et ça remplace mes données par des tirets...

Wal_Riachi_4-1631004399077.png

 

Wal_Riachi_5-1631004399096.png

 

J'ai trouvé le format d'entrée pour ces dates : M/J/AAAA h : mm : ss [.fff] TT. En changeant le type de champ dans le gestionnaire de données avec le format d'affichage : M / J / AAAA.

Wal_Riachi_6-1631004399155.png

 

J'ai réussi à voir de petites flèches dans mes champs comme s'il s'agissait de dates dans AutoCalendar. Comme vous pouvez le voir dans la capture d'écran, il manque toujours le logo du calendrier comme les variables qui sont en fait dans autoCalendar, donc j'ai pensé que cela n'allait pas fonctionner.

Wal_Riachi_7-1631004399171.png

 

En effet, j'ai essayé de choisir l'un des champs par exemple "Year" de la variable PERIODIC_REVIEW_DATE et de l'afficher dans un tableau.

Wal_Riachi_8-1631004399203.png

 

Cela me renvoie des valeurs vides. Les autres variables qui sont dans autoCalendar avec le logo du calendrier à leur gauche affichent bien leurs valeurs.

Wal_Riachi_9-1631004399301.jpeg

 

Quelle est la cause de ce problème?

Ce qui est étrange, c'est que QlikSense me trouve 137,95k de date au 1/1/0001 alors qu'il n'y en a pas dans la base de données. 

Wal_Riachi_10-1631004399352.png

 

Ce qui me conforte dans l'idée que QlikSense interprète mal ces dates, que dois-je faire ? Comment expliquer que QlikSense interprète correctement 2 variables de date et les place dans autoCalendar et que 4 autres variables de date sont mal interprétées alors qu'elles sont dans le même format ?

Je pense que c’est parce que QlikSense traduit les null date en « 1/1/0001 » comment régler ce problème et afficher les null date en null date ?

Merci d’avance pour votre aide !

Waïl Riachi

1 Reply
DavidDocquoyBaudelet
Contributor III
Contributor III

Bonjour,

J'ai une idée un peu extreme mais bon ...

Faire un subfield(La_Date,' ' ,1) pour obtenir la partie date

faire un subfield(La_Date_modifié,'/') pour obtenir le jour, le mois, l'année

Puis reconstituer une date "propre" avec un makedate 😉

L'idée générale est d'éclater le champs pour réussir à avoir le jour, le mois et l'année, puis de reconstituer l'année.