Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
marwen_garwachi
Creator II
Creator II

Tri Liste de sélection : Mois-Année

Bonjour,

J'ai un problème avec le Tri d'une liste de sélection basé sur la date de création (sous format YYYY/MM/DD).

En effet, les valeurs sont interprétées comme étant du tex et le tri ne peut être fait que sur texte et pas sur valeur numérique.

Je souhaite afficher les dates sous ce format :

Janvier-2010

Février-2010

Mars-2010

Janvier-2011

février-2011

Mars,2011 etc...

Voici mon script :

LOAD distinct dossier,

     client,

     création,

     Year(création) as année,

     Month(création) as Mois,

     Month(création)&'-'& Year(création) as AM

FROM

Path

(ooxml, embedded labels, table is Sheet1);

D'avance merci pour votre aide.

1 Solution

Accepted Solutions
Brice-SACCUCCI
Employee
Employee

Bonjour,

il faut utiliser la fonction dual() pour créer un champ qui soit du texte mais avec une valeur numérique sous-jacente (servant pour le tri).

Pour info, Month() retourne un dual.

Essayez ceci :

LOAD distinct dossier,

     client,

     création,

     Year(création) as année,

     Month(création) as Mois,

     dual(Month(création)&'-'& Year(création), Year(Création) + 100 * Month(Création) ) as AM

FROM

Path

(ooxml, embedded labels, table is Sheet1);


Autre solution, utilisez MonthName(). Voici ce que dit la documentation : "monthname ( '2001-10-19' ) renvoie 'Oct 2001'"


LOAD distinct dossier,

     client,

     création,

     Year(création) as année,

     Month(création) as Mois,

     MonthName(création) as AM

FROM

Path

(ooxml, embedded labels, table is Sheet1);


Merci,

Brice

View solution in original post

4 Replies
Not applicable


Bonjour,

Je pense qu'il suffit de regarder dans :

Propriétét -> trier : il faut laisser que Numérique

et /ou

Propriétét -> Nombre : tu peux cocher la case : outerpasser les paramétres de document : tu choisi le type date : et tu déclare ton format en mettant : YYYY/MM/DD

J'espère que j'ai pu t'aider .

Brice-SACCUCCI
Employee
Employee

Bonjour,

il faut utiliser la fonction dual() pour créer un champ qui soit du texte mais avec une valeur numérique sous-jacente (servant pour le tri).

Pour info, Month() retourne un dual.

Essayez ceci :

LOAD distinct dossier,

     client,

     création,

     Year(création) as année,

     Month(création) as Mois,

     dual(Month(création)&'-'& Year(création), Year(Création) + 100 * Month(Création) ) as AM

FROM

Path

(ooxml, embedded labels, table is Sheet1);


Autre solution, utilisez MonthName(). Voici ce que dit la documentation : "monthname ( '2001-10-19' ) renvoie 'Oct 2001'"


LOAD distinct dossier,

     client,

     création,

     Year(création) as année,

     Month(création) as Mois,

     MonthName(création) as AM

FROM

Path

(ooxml, embedded labels, table is Sheet1);


Merci,

Brice

marwen_garwachi
Creator II
Creator II
Author

Bien vu Brice SACCUCCI ! le problème était effectivement causé par le format Texte de l'expression (&'-'&) le résultat ne pouvait être filtré en tant que valeur numérique vu que c'était interprété comme du texte.

Un tout grand merci !

Marwen

marwen_garwachi
Creator II
Creator II
Author

Bonjour Amel,

J'avais essayé toutes ces manipulations en vain avant de poser ma question.

Merci quand même pour ta réponse qui, dans un autre contexte, aurait pu être utile

Amicalement,

Mawen