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 Thu 16 November 2023 10:18

Sébastien PIERRE
Participant occasionnel
Date d'inscription: 27 Aug 2011
Messages: 16

MAJ Attribut en "cascade" (Mois M devient Mois M-1)

Bonjour,

je dois mettre a jour mensuellement une classe d'entité SDE en fonction d'un fichier csv que je télécharge sur un site tiers. On me demande depuis récemment de conserver un historique sur 24 mois. Je souhaiterais savoir comment faire pour mettre a jour en "cascade" mes attributs.

Je souhaites faire en sorte que les valeurs d'attributs du mois M-24 se mette a jour avec les valeurs du mois M-23 et que ce dernier se mette à jour avec les valeurs de l'attributs du mois M22 et ainsi de suite jusqu'à mettre a jour la valeur du mois en cours avec les valeurs présentes dans le CSV.

Pensez vous ceci réalisable via FME ? (actuellement je mettais a jour la géometrie et les valeurs d'attributs du mois en cours seulement).

Merci d'avance.
Sébastien

Hors ligne

 

#2 Thu 16 November 2023 18:33

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

Re: MAJ Attribut en "cascade" (Mois M devient Mois M-1)

Bonjour,
Si vous stockez vos différents mois dans des classes d'entités différentes (une par mois) je ne connais pas de moyen de renommer à proprement parler une classe d'entité dans SDE via FME (qui le ferait par du SQL par exemple), la seule solution est de copier la classe d'entité dans une autre portant le nouveau nom mais pour les grosses classes c'est lourd pour... rien.

Si vous stockez toutes vos entités dans la même classe d'entités avec un attribut par exemple AGE_MOIS contenant l'âge en mois de la donnée 0 la plus récente, 23 la plus vieille, vous pouvez utiliser un DatabaseUpdater même sur une base SDE (car on ne touche que les attributs sans modifier la géométrie). Dans ce cas vous passez 23 fois dedans avec WHERE Clause AGE_MOIS=_copynum et une mise à jour AGE_MOIS=_copynum+1. Puis vous importez vos "nouvelles" données avec AGE_MOIS=0.

L'utilisation d'un DatabaseUpdater accélère grandement la mise à jour des champs sans avoir à lire toutes les entités.


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

Hors ligne

 

#3 Mon 27 November 2023 08:14

Sébastien PIERRE
Participant occasionnel
Date d'inscription: 27 Aug 2011
Messages: 16

Re: MAJ Attribut en "cascade" (Mois M devient Mois M-1)

Bonjour,

toutes les données sont dans la même classe d'entité. J'ai testé votre solution et elle fonctionne très bien.

Merci beaucoup pour la réponse apportée smile

Sébastien

Hors ligne

 

Pied de page des forums

Powered by FluxBB