Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Wed 21 October 2020 13:51

SK2LL
Participant occasionnel
Date d'inscription: 18 Aug 2016
Messages: 25

FME 2018 - Calcul du jour de la semaine

Bonjour

Je souhaite sauvegarder quotidiennement mes données avec un flux FME. En fonction du jour de la sauvegarde, je souhaite orienter les données dansune couche commençant par :
- LUNDI pour la sauvegarde effectuée tous les Lundi
- MARDI pour la sauvegarde effectuée tous les mardi
- etc etc


Question :  comment calcul ton le jour d'un date ??
Est-ce possible avec un des Transformers


La solution que je ne souhaite pas c'est de faire 7 flux (1 par jour) pour les lancer une fois par semaine.

Nous ne disposons pas non plus de FME Server.

Par avance merci

Hors ligne

 

#2 Wed 21 October 2020 17:47

Benoit D
Participant actif
Date d'inscription: 17 Jul 2018
Messages: 137

Re: FME 2018 - Calcul du jour de la semaine

Bonjour
En effet il semble que cela ne soit pas disponible. Il ne vous reste plus qu’à utiliser du python avec un

Code:

 dt.strftime(« %A »)

Hors ligne

 

#3 Wed 21 October 2020 20:05

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 383

Re: FME 2018 - Calcul du jour de la semaine

Bonjour. Pas la peine de passer par du python pour ça.
Vous pouvez créer un attribut (via AttributeCreator ou AttributeManager) en utilisant les fonctions de date DateTimeNow() et DateTimeFormat() vous pourrez récupérer le jour en toutes lettres ainsi que la date en chiffre si souhaité.
Voir la doc
http://docs.safe.com/fme/2019.0/html/FM … timeformat

Ca donnera quelque chose du genre :
@UpperCase(@DateTimeFormat(@DateTimeNow(),%A))
--> pour récupérer par exemple "MONDAY".
+ un AttributeValueMapper pour basculer en français MONDAY vers LUNDI / TUESDAY vers MARDI...

Dernière modification par p.jeremie (Thu 22 October 2020 11:48)

Hors ligne

 

#4 Thu 22 October 2020 12:52

Benoit D
Participant actif
Date d'inscription: 17 Jul 2018
Messages: 137

Re: FME 2018 - Calcul du jour de la semaine

En effet c’est dans datetimeparse() (Donc en lecture) que le %A n’est pas supporté.
J’aurai du tourner 7 fois mes doigts sur mon clavier avant de répondre smile

Hors ligne

 

#5 Thu 22 October 2020 13:24

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 383

Re: FME 2018 - Calcul du jour de la semaine

Benoit D a écrit:

En effet c’est dans datetimeparse() (Donc en lecture) que le %A n’est pas supporté.


Je me questionne, quel intérêt pourrait avoir le %A dans un DateTimeParse ?
Soit on a déjà le jour numérique et on peut trouver le jour en lettres avec DateTimeFormat.
Soit on n'a pas le jour numérique mais dans ce cas même en ayant le jour en lettre on ne pourra pas déterminer à quel lundi (par exemple) du mois correspond la date.

Hors ligne

 

#6 Thu 22 October 2020 14:43

SK2LL
Participant occasionnel
Date d'inscription: 18 Aug 2016
Messages: 25

Re: FME 2018 - Calcul du jour de la semaine

Bonjour Benoit et Jérémie

Merci à vous pour m'avoir apporté la solution.

Donc avec la synthase suivante, j'obtiens le numéro du jour de la semaine. Et l'AttributeFilter fait le reste...
@DateTimeFormat(@DateTimeNow(),%w)

Quelle équipe !!

Stephane

Hors ligne

 

Pied de page des forums

Powered by FluxBB