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

GEODATA DAYS 2024

#1 Thu 16 June 2011 13:55

Cyril Chat
Participant actif
Lieu: Niort
Date d'inscription: 14 Feb 2010
Messages: 90

Récupération de valeur suivant une date (la plus récente)

Bonjour!

Je viens vers vous, car je cherche à exploiter des dates avec FME, à partir d'un fichier Excel.

Pour faire simple, je souhaite récupérer uniquement la valeur du champ 'MontantRecetteTotal' (en vert sur le fichier joint) suivant la date la plus récente 'DateOpération' (rouge), pour un même Ident 'IdConcession' (bleu).

Connaissez vous un transformer qui permet de classifier des dates, ou effectuer une manipulation de ce style?

Merci pour votre aide.


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#2 Thu 16 June 2011 15:47

Loic_GR
Moderateur
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1022
Site web

Re: Récupération de valeur suivant une date (la plus récente)

J'ai essayé un truc

ci-joint le projet avec un jeu de donnée test.

Dis moi si cela convient

@+

Dernière modification par heretik25 (Thu 16 June 2011 15:48)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

#3 Thu 16 June 2011 16:22

Cyril Chat
Participant actif
Lieu: Niort
Date d'inscription: 14 Feb 2010
Messages: 90

Re: Récupération de valeur suivant une date (la plus récente)

Cela me parait parfait! J'aurais juste à mettre un AttributFilter pour supprimer les champs qui ne m'intéresse pas...

Merci beaucoup pour votre aide!!!! smile

Hors ligne

 

#4 Thu 16 June 2011 16:30

Loic_GR
Moderateur
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1022
Site web

Re: Récupération de valeur suivant une date (la plus récente)

C'est avec plaisir, à charge de revanche !

P.S : Pour bloquer les champs, utilisez attributekeeper, c'est pratique !

@+

Dernière modification par heretik25 (Thu 16 June 2011 16:31)


Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

#5 Thu 16 June 2011 16:31

Cyril Chat
Participant actif
Lieu: Niort
Date d'inscription: 14 Feb 2010
Messages: 90

Re: Récupération de valeur suivant une date (la plus récente)

Après test approfondi, finalement ce n'est pas bon! Il garde à chaque fois le premier enregistrement, par ID, que ça soit le plus récent ou non.

J'ai complété votre base, regardez le résultat que cela rend! Si vous avez une autre idée, je suis preneur!


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#6 Thu 16 June 2011 16:47

Loic_GR
Moderateur
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1022
Site web

Re: Récupération de valeur suivant une date (la plus récente)

Ok, je regarde


Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

#7 Thu 16 June 2011 17:12

Loic_GR
Moderateur
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1022
Site web

Re: Récupération de valeur suivant une date (la plus récente)

Pour moi, le plus simple serait d'envoyer les données dans postgresql


Puis ensuite dans le workbench faire une requête via un classicsqlexecutor du genre select max(date) from matable group by id


Y a t-il une fonction max(@Value) dans fme ?

Dernière modification par heretik25 (Thu 16 June 2011 17:13)


Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

#8 Thu 16 June 2011 18:20

ogayte
Participant assidu
Lieu: Saint-Estève
Date d'inscription: 6 Mar 2006
Messages: 658
Site web

Re: Récupération de valeur suivant une date (la plus récente)

Utilisez statisticCalculator pour avoir la valeur max d'un attribut numérique.
Vous pouvez également utiliser Sorter pour trier les entités sur cet attribut et ainsi pouvoir récupérer la valeur dans le premier objet sortant du Transformer.


Olivier Gayte
http://www.veremes.com
+33 (0)4-68-38-65-27

Hors ligne

 

#9 Fri 17 June 2011 09:34

Pierre
DesCartesPourUnMondeMeilleur
Date d'inscription: 22 Sep 2005
Messages: 1643

Re: Récupération de valeur suivant une date (la plus récente)

Aloha
A priori le statistcic calculator, j'ai testé hier, cela ne fonctionne pas sur des dates : 30/12/1980 sort en _max et 20/01/2011 en _min. Non, il faudrait convertir le champ date en volume de secondes depuis 1900 puis comparer ces volumes entre eux.


art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.

Hors ligne

 

#10 Fri 17 June 2011 09:56

Loic_GR
Moderateur
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1022
Site web

Re: Récupération de valeur suivant une date (la plus récente)

S'il y a moyen de comparer des valeurs entre elle dans FME, ma solution fonctionnerait peut être. Parce que je ne sais pas faire un select max(@value) au sein de FME. Une idée ?


Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

Pied de page des forums

Powered by FluxBB