Pages: 1
- Sujet précédent - vérification entités shapes:tous les fichiers indispensable presents - Sujet suivant
#1 Mon 18 March 2013 16:13
- MagBar
- Participant assidu
- Date d'inscription: 27 Jun 2012
- Messages: 203
vérification entités shapes:tous les fichiers indispensable presents
Bonjour,
j'ai un dossier comprenant des sous dossiers, comprenant eux même des sous dossier etc... comprenant des fichiers shape composés des 3 fichiers obligatoires : shx, dbf et shp ainsi que d'un fichier facultatif .prj
Je souhaiterai vérifier en début de traitement que chaque sous dossiers qui comprends les shapes comprends bien les 3 fichiers obligatoires et si possible le fichiers prj et ressortir le nom ou chemin des fichiers qui aurait un manque.
Le Log le fait, mais j'aimerai sortir celà sur une liste type excel, car j'en ai pas mal et la log le dissémine un peu partout.
Sauriez vous comment faire ?
Hors ligne
#2 Thu 21 March 2013 07:43
- MagBar
- Participant assidu
- Date d'inscription: 27 Jun 2012
- Messages: 203
Re: vérification entités shapes:tous les fichiers indispensable presents
quelqu'un aurait une idée ?
Hors ligne
#3 Thu 21 March 2013 08:44
Re: vérification entités shapes:tous les fichiers indispensable presents
En TCL, il ya sûrement moyen de scanner un dossier pour y lister les différents fichiers. A partir de là, il faut mettre en place un mécanisme qui test si pour chaque Shape, il y a bien tous les fichiers nécessaires.
Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com
Hors ligne
#4 Thu 21 March 2013 11:29
Re: vérification entités shapes:tous les fichiers indispensable presents
Sinon via un batch avec une commande comme
Code:
dir "C:\mon_dossier" /b /s > "c:\list\fichier.txt"
Qu'on pourra utiliser avec un SystemCaller
Dernière modification par heretik25 (Thu 21 March 2013 11:37)
Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com
Hors ligne
#5 Thu 21 March 2013 13:57
- MagBar
- Participant assidu
- Date d'inscription: 27 Jun 2012
- Messages: 203
Re: vérification entités shapes:tous les fichiers indispensable presents
argh, je ne sais même pas ce qu'est un TCL et je n'y connais rien en batch... (j'ai bien acheté un livre sur le PYTHON mais je ne l'ai pas encore lu.. :s)
décidemment, n'existe t-il pas une manière de faire celà par un enchaînement de transformer ?
sinon, pour le batch, est ce facile si je l'effectue bêtement en collant l'enoncé dans un transformer python caller et en modifiant le chemin ?
(il faudrait que je sache ce que signifie le /b et /s et dir.. lol)
Hors ligne
#6 Thu 21 March 2013 14:05
- Pascal GRAPHLAND
- Juste Inscrit !
- Date d'inscription: 23 Jun 2009
- Messages: 7
Re: vérification entités shapes:tous les fichiers indispensable presents
Bonjour
Vous pouvez dans un premier temps, utiliser en entrée le reader « Directory and File Pathnames » et en sortie le writer XLS. Ceci vous permettra de générer la liste des fichiers situés dans vos répertoires.
2 options possibles :
Option1 : vous faites votre recherche dans le fichier EXCEL généré.
Option2 :
1-vous faites un filtrage des fichiers dans FME en fonction des extensions de fichiers. (Attention à bien prendre en compte les répertoires, car les 3 fichiers doivent être situés dans le même répertoire.)
2-Créez une liste en effectuant un regroupement par nom de fichier et par répertoire.
3-analysez le nombre d’éléments de la liste qui doit être égal à 3
Pascal ROCHE
Hors ligne
#7 Thu 21 March 2013 16:35
- MagBar
- Participant assidu
- Date d'inscription: 27 Jun 2012
- Messages: 203
Re: vérification entités shapes:tous les fichiers indispensable presents
oki,
après plusieurs tests :
etape 1 :
lire les fichiers avec le format "Directory and File Pathnames" au lieu du format "shp"
etape 2 :
utiliser le transformer AttributeAccumulator avec
- regroupement par les attribut "path_rootname" et "path_directory_windows"
- list des autres attributs
etape 3 :
utiliser le transformer "ListHistogrammer" sur la liste source "liste{}.path_extension"
-> ceci pour dédoublonner les éventuelles fichier en double et ressortir le décompte
etape 4 :
utiliser "ListConcatenator" pour indiquer dans un attribut unique toutes les valeurs du "path_extension" pour les fichiers portant le même nom dans le même répertoire.
etape 5 :
utiliser "Tester" pour ressortir les couples FICHERS/REPERTOIRE ne disposant pas d'extension .dbf, .shx et .shp
etape 4bis :
utiliser "ListConcatenator" pour ressortir dans un même attribut toutes les valeurs de l'histogramme "count" de "path_extension"
etape 5bis :
utiliser "Tester" pour ressortir les couples FICHERS/REPERTOIRE disposant de plusieurs fois le même fichier
pour cette étape j'ai galérée, j'ai donc filtrés toutes les valeurs de la concatenation du resultat count de l'histogramme qui étaient différent de 1,1,1 ou 1,1,1,1 (si fichier prj)
-> toutefois j'ignore si cette étape est vraiment nécessaire car il ne devrait pas y avoir dans un même répertoire 2 fichiers portant le même nom et la même extension, n'est ce pas ???
Du coup ça réponds à mon besoin. mais par contre ça m'embête un peu car ça risque d'alourdir encore mon process par une nouvelle lecture (et la ça fait déjà 4 jours qu'il tourne...)-j'ai essayer avec le dataset de la lecture format shp mais celui la ne ressort pas les fichier annexe .shx et .dbf
Hors ligne
#8 Thu 21 March 2013 17:07
Re: vérification entités shapes:tous les fichiers indispensable presents
4 jours :-) balaise la bête ! ca fait quoi exactement ?
Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com
Hors ligne
#9 Thu 21 March 2013 18:28
Re: vérification entités shapes:tous les fichiers indispensable presents
Je pense que vous pouvez faire plus simple en utilisant 3 readers "Directory and File Pathnames", un pour les *shp, un pour les .dbf et l'autre pour les *.shx.
Utilisez 2 featureMerger entre .shp et .dbf et entre .shp et .shx
Les .shp orphelins (sans .dbf ou .shx) vont ressortir par le port INCOMPLETE.
Critère de jointure : path_windows
Hors ligne
#10 Fri 22 March 2013 07:24
- MagBar
- Participant assidu
- Date d'inscription: 27 Jun 2012
- Messages: 203
Re: vérification entités shapes:tous les fichiers indispensable presents
et ce n'est pas encore fini ....
en fait ça fait énormément de chose, contrôles de cohérences, de formats, etc..
mais ce qui fait ramer le tout c'est la fusion de polygone. En effet les documents sources sont excessivement lourd, ils domprennent des données cartographiques sur la France entière et sont organisé par une arborescences très complexes :
4 dossiers, comprenant 1 dossier par région qui comprends lui même 1 dossier par département qui comprennent eux même 1 dossier par commune qui comprends lui même les fichiers shapes....
JE crois que c'est surtout celà et le nombre énorme de vertex qui allourdissent la charge car je fusionne tout afin d'obtenir un unique polygone que je redécoupe par la suite (car si je découpe avant, il me créer des trous lorsque les polygones se superpose !s)
Pour la proposition de Monsieur Gayte, ok je tente le système qui semble en effet plus simple mais rajoute beaucoup plus de transformer -> est ce que feature Merger ne va pas alourdir la tache et le fait d'avoir 3 readers ?
Hors ligne
#11 Fri 22 March 2013 10:00
- Pascal GRAPHLAND
- Juste Inscrit !
- Date d'inscription: 23 Jun 2009
- Messages: 7
Re: vérification entités shapes:tous les fichiers indispensable presents
La solution d'Olivier est en effet plus simple.
Vous faites référence à des fichiers lourds, de nombreux vertex,de polygones superposés...J'avais compris que vous vouliez uniquement contrôler la présence des 3 fichiers (SHP,DBF,SHP) ce qui n'implique pas la lecture des objets.
l'utilisation du reader "Directory and File Pathname" permet par exemple d'établir une liste des fichiers contenu dans un ou plusieurs répertoires. le fait que ces fichiers contiennent 1 ou 10000 objets n'a aucune incidence sur le temps de traitement.
Je pense qu'il doit s'agit d'un autre besoin?
Pascal ROCHE
Hors ligne
#12 Fri 22 March 2013 10:05
- MagBar
- Participant assidu
- Date d'inscription: 27 Jun 2012
- Messages: 203
Re: vérification entités shapes:tous les fichiers indispensable presents
en fait je cherche a faire tout dans un seul projet afin de n'avoir a lancer qu'un seul projet à chaque fois.
Donc oui le besoin de ce post est effectivement de vérifier le contenu des données lues.
Mais je répondais juste à la question de heretik25
4 jours :-) balaise la bête ! ca fait quoi exactement ?
En testant les 2 version je retrouve des resultats différents entre l'utilisation du feature et l'utilisation des filtres et aggregat. LEs features semble passer à côté de certains fichiers :s
Hors ligne
Pages: 1
- Sujet précédent - vérification entités shapes:tous les fichiers indispensable presents - Sujet suivant