#1 Thu 14 April 2011 13:48
- kighafarz
- Participant occasionnel
- Lieu: Brest
- Date d'inscription: 29 Apr 2009
- Messages: 22
Nom du shapefile en paramètre d'entrée
Bonjour,
J'ai développé un projet qui exploite un shapefile en entrée.
Celui-ci est nativement un paramètre du projet, mais il semble possible uniquement de modifier la localisation du shapefile qui au final doit avoir le même nom (à savoir celui utilisé lors de la création de mon input).
Est-il donc possible de rendre paramétrable le nom du shapefile passé en entrée ?
Merci d'avance.
Hors ligne
#2 Thu 14 April 2011 14:10
- MaelReboux
- Participant actif
- Lieu: Roazhon / Rennnes
- Date d'inscription: 24 Aug 2010
- Messages: 72
Re: Nom du shapefile en paramètre d'entrée
Bonjour,
Si vous souhaitez exécuter / lancer votre traitement (workbench) depuis un script python ou ms-dos et que vous souhaitez connaître les paramètres publiés disponibles, ouvrez votre workbench dans un éditeur de texte (pas WordPad...).
Vous y trouverez un paragraphe "Ligne de commande pour exécuter ce projet :"
Et là vous avez tout ce qu'il vous faut pour scripter, modifier les jeux de données en entrée / en sortie avec des variables.
Service SIG Rennes Métropole
AITF : Coordinateur GT voies-adresse
Et un peu OSM Bzh
Hors ligne
#3 Thu 14 April 2011 17:36
- Cherubin
- Participant assidu
- Lieu: NGC 1300
- Date d'inscription: 10 Jun 2008
- Messages: 273
Re: Nom du shapefile en paramètre d'entrée
Wow je savais pas sa! C'est cool de pouvoir jouer dans le fichier!!
Voilà la ligne (5e ligne du fichier) en anglais :
Windows command-line to run this workspace:
Hors ligne
#4 Thu 14 April 2011 18:35
- kighafarz
- Participant occasionnel
- Lieu: Brest
- Date d'inscription: 29 Apr 2009
- Messages: 22
Re: Nom du shapefile en paramètre d'entrée
Merci pour votre réponse.
Je connais bien le principe des passages de paramètres.
Mais si je passe un autre nom de ShapeFile que celui ayant permis de créer l'entrée des données, cela ne marche pas.
Le programme s'attend spécifiquement à avoir le même nom de Fichier.
C'est bien à ce niveau que je bute.
Comment faire donc, si du moins c'est possible.
Merci de votre aide.
Hors ligne
#5 Fri 15 April 2011 08:56
- MaelReboux
- Participant actif
- Lieu: Roazhon / Rennnes
- Date d'inscription: 24 Aug 2010
- Messages: 72
Re: Nom du shapefile en paramètre d'entrée
Cela ne marchera pas si la structure de votre shape qui rentre dans le traitement est différente de la structure du shape qui a servi pour faire le workbench. Ce qui est logique.
A moins d'utiliser le "mode" "attributs dynamiques" qui produira en sortie la même structure que votre jeux de données en entrée.
Ci-dessous un exemple complet de boucle ms-dos avec des paramètre dynamique. Dans le cas présent je ne modifie que les répertoires (le chemin) mais c'est pareil avec le ficheir en entrée.
Code:
@echo off cls echo . echo Copie de la GeoDB modele dans le repertoire cible de la tranche echo puis remplissage de la table voie finale echo . echo Ne pas oublier de specifier le nom de la tranche !! :InputTranche echo code de la tranche (ex : tranche_1 ) ? SET /P TRANCHE= :TestInput if "%TRANCHE%"=="" ( echo Vous n'avez rien saisi ! goto InputTranche ) set REP_HOME=V:\C-Gestion\C-SIG\PlanVilleInterco\filaire_adresses rem on decompresse la GeoDB modele vers le repertoire souahite 7z x %REP_HOME%\donnees_support\geodb_modele\geodb_modele.gdb.zip -o%REP_HOME%\tranches\%TRANCHE%\1_GeoDB\ rem on renomme rename %REP_HOME%\tranches\%TRANCHE%\1_GeoDB\geodb_modele.gdb rm_%TRANCHE%.gdb rem on remplit la table des voies depuis la liste des communes precisee dans un fichier texte for /f "tokens=1,2 delims=/ " %%a in (%REP_HOME%\tranches\%TRANCHE%\liste_des_communes.txt) do ( echo. ----- %%a rem %%b = code insee erase %REP_HOME%\tranches\%TRANCHE%\1_GeoDB\logs\%%a\*.* fme.exe 01_creation_geodb.fmw --CodeInsee %%b --SrcBaseRefVoies %REP_HOME%\donnees_support\base_reference_des_voies\ref_voies_adresses.mdb --SrcMappingComplet %REP_HOME%\tranches\%TRANCHE%\0_nettoyage_des_voies\2_mapping_complet.csv --DestLogErreurs %REP_HOME%\tranches\%TRANCHE%\1_GeoDB\logs\%%a\erreurs_table_des_voies.log --DestCSV %REP_HOME%\tranches\%TRANCHE%\1_GeoDB\logs\%%a\ --DestGeoDB %REP_HOME%\tranches\%TRANCHE%\1_GeoDB\rm_%TRANCHE%.gdb rem fme.exe 01_creation_geodb.fmw rem --CodeInsee 35352 rem --SrcBaseRefVoies V:\C-Gestion\C-SIG\PlanVilleInterco\filaire_adresses\donnees_support\base_reference_des_voies\ref_voies_adresses.mdb rem --SrcMappingComplet V:\C-Gestion\C-SIG\PlanVilleInterco\filaire_adresses\tranches\tranche_0\0_nettoyage_des_voies\2_mapping_complet.csv rem --DestLogErreurs V:\C-Gestion\C-SIG\PlanVilleInterco\filaire_adresses\tranches\tranche_0\1_GeoDB\logs\erreurs_table_des_voies.log rem --DestCSV V:\C-Gestion\C-SIG\PlanVilleInterco\filaire_adresses\tranches\tranche_0\1_GeoDB\logs rem --DestGeoDB V:\C-Gestion\C-SIG\PlanVilleInterco\filaire_adresses\tranches\tranche_0\1_GeoDB\rm_tranche_0.gdb rem --CodeInsee %%b rem --SrcBaseRefVoies %REP_HOME%\donnees_support\base_reference_des_voies\ref_voies_adresses.mdb rem --SrcMappingComplet %REP_HOME%\tranches\%TRANCHE%\0_nettoyage_des_voies\2_mapping_complet.csv rem --DestLogErreurs %REP_HOME%\tranches\%TRANCHE%\1_GeoDB\logs\%%a\erreurs_table_des_voies.log rem --DestCSV %REP_HOME%\tranches\%TRANCHE%\1_GeoDB\logs\%%a\ rem --DestGeoDB %REP_HOME%\tranches\%TRANCHE%\1_GeoDB\rm_%TRANCHE%.gdb ) :Fin echo . echo ============================ echo FINI echo ============================ echo . erase 01_creation_geodb.log pause cls
Service SIG Rennes Métropole
AITF : Coordinateur GT voies-adresse
Et un peu OSM Bzh
Hors ligne
#6 Fri 15 April 2011 11:50
- kighafarz
- Participant occasionnel
- Lieu: Brest
- Date d'inscription: 29 Apr 2009
- Messages: 22
Re: Nom du shapefile en paramètre d'entrée
Ma structure de ShapeFile est exactement la même.
Je crois comprendre votre script qui finalement renomme le fichier en amont afin qu'il soit homogène lors de l'appel à FME. Donc pas possible de dire vraiment à FME de prendre un autre nom.
Finalement, je viens d'obtenir la solution avec le support VEREMES.
Dans les propriétés de ma source, il faut sélectionner en bas le choix "Regroupement des types d'entités", puis saisir le caractère * dans le champ "Filtre de regroupement. Ainsi, peu import le nom de mon fichier, à partir du moment où la structure est la même, il est pris en compte.
Voir aussi ici, la cause et la solution de mon problème : http://www.fmepedia.com/index.php/Unexp … ut_Remover
Hors ligne
#7 Fri 22 April 2011 09:45
- MaelReboux
- Participant actif
- Lieu: Roazhon / Rennnes
- Date d'inscription: 24 Aug 2010
- Messages: 72
Re: Nom du shapefile en paramètre d'entrée
Ha oui : effectivement : spécifier que le jeux de données en entrée est "générique" est un préalable.
Je pensais que c'était déjà le cas.
Service SIG Rennes Métropole
AITF : Coordinateur GT voies-adresse
Et un peu OSM Bzh
Hors ligne