Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
G 2006-2007
Johann Sorel
Session 2006-2007
-1-
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Index
Base tourisme ................................................................................................4
Analyse de l'existant............................................................................................ 5
Histoire.............................................................................................................................................. 5
Objectifs de la base de données....................................................................................................... 5
Structure............................................................................................................................................ 6
Modèle Physique de Données........................................................................................................... 7
Bilan de la base existante.................................................................................................................. 8
• Structure :................................................................................................................................. 8
• Données : ................................................................................................................................ 8
Attentes du stage :............................................................................................................................. 8
Réalisation.......................................................................................................... 9
Choix du modèle conceptuel des données........................................................................................ 9
• L'historisation ......................................................................................................................... 10
Pictogrammes :................................................................................................................................ 11
Logiciel de récupération................................................................................................................... 12
Formulaires et états......................................................................................................................... 13
• Formulaires............................................................................................................................ 13
• Etats....................................................................................................................................... 15
Bilan ..................................................................................................................16
• Le choix Access...................................................................................................................... 16
• L'aspect SIG........................................................................................................................... 17
• Les évolutions limités............................................................................................................. 17
• Sécurité.................................................................................................................................. 17
-2-
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
• Model Builder......................................................................................................................... 28
Réalisation........................................................................................................ 28
Prise en main de la structure interne d'ArcGIS................................................................................ 28
Le module........................................................................................................................................ 30
L'interface........................................................................................................................................ 30
• Panneau de configuration :..................................................................................................... 30
• Panneau d'édition :................................................................................................................. 30
• Panneau de génération des cartes :....................................................................................... 30
Le stockage des informations.......................................................................................................... 31
Bilan.................................................................................................................. 31
Comparateur ................................................................................................33
Objectif............................................................................................................................................ 34
Description....................................................................................................................................... 34
• Paramètrage et analyse......................................................................................................... 34
• Rapport d'analyse................................................................................................................... 35
• Les anomalies........................................................................................................................ 36
-3-
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
BASE TOURISME
-4-
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
ANALYSE DE L'EXISTANT
Histoire
Cette base existe depuis plusieurs années, et hérite des particularités de son passé.
On retrouve des champs semblable à des identifiants qui servaient pour une borne de
consultation grand public désormais obsolète.
La base a servi de support pour l'édition de nombre document destiné au public,
avec le temps se sont ajoutés des champs pour le besoin des édtions, champs désormais
non utilisés a cause de l'évolution des guides touristiques.
Actuellement la base de données dont fournir les informations pour deux guides et
doit prévoir celle d'un troisième qui serat mit en place dans l'avenir :
● Le guide HORIZON qui contient des rubriques sur la restauration, les activités de
loisirs, les musées, les visites.
● Le guide PIED-A-TERRE qui contient toutes les informations sur les possibilités
d'hébergement et de location sur le territoire du parc.
-5-
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
● Elle doit aussi fournir les données attibutaires pour le logiciel Kléma, il s'agit d'un
logiciel permettant de tracer d'itinaires. Il n'est pas nécessaire de fournir toutes les
données mais un export vers ce logiciel est à réaliser.
Structure
Les données sur le tourisme sont contenus dans 12 tables avec chacune un thème
précis :
promenade en bateau
artisanat d'art
restauration
hébergement
...etc...
-6-
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Avec cette structure on se retrouve avec un grand nombre de champ commun entre les
tables, comme toutes les informations sur le représentant, l'adresse ou les sigles. Certaines
tables montent alors jusqu'à 73 champs.
-7-
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Structure :
Données :
Attentes du stage :
● Garder un aspect simple, avec minimum de code et de table pour assurer que la
personne en charge soit en mesurer d'assurer la poursuite de l'administration de la
base de données.
● Edition de la « mailing list » , il s'agit d'un état dont chaque feuille récapitule les
informations sur leur établissement.
● Dans une optique de communication, il sera prevu un export des e-mails des
contacts.
-8-
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
RÉALISATION
Après un mois, selon les différents besoins, les contraintes de réalisations et les
modifications de dernières minutes, voici le modèle retenu :
-9-
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
L'idéale aurait été une structure avec un héritage, seulement cela c'est révélé
impossible compte tenu de la complexité que cela aurait engendré, ce qui aurait empêché
une maintenance correcte dans l'avenir. On a donc choisi de faire une table « data »
contenant les données communes à tous les thèmes.
L'historisation
L'historisation se fait à deux niveaux, seulement sur les éléments les plus pertinents à
conserver.
- 10 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Pictogrammes :
Il a fallu faire une mise a jour des pictogrammes existants qui serviront pour les
formulaires. Le travail a été fait sous Adobe-Illustrator.
Au total il est présent 60 pictogrammes qu'il a fallu redimensionner, voir redessiner.
- 11 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Logiciel de récupération
L'un des points les plus difficile de cette restructuration fut la récupération de toutes
les données. En effet les deux structures sont très différentes, avec quelques milliers
d'enregistrements et des décompositions à faire, il est dès lors exclu de les traiter en requete
sql succéssives.
Dans cet objectif j'ai développé un outil se connectant au deux versions de la base
de données. Le logiciel récupére dans la première base les tables, les décompose en suivant
la nouvelle structure de la base de données et finalement injecte les données dans la
nouvelle base.
Le logiciel doit respecter les contraintes de la nouvelle base ce qui oblige celui ci à
opérer dans un ordre précis au moment de l'insertion. Le logiciel est réalisé en java et
nécessite l'utilisation du pilote ODBC « Microsoft jet 4 ».
Ce logiciel m'a demandé près de 3jours pour être réalisé. C'est un gain considérable
de temps car il m'aurait certainement fallu plus d'une semaine en le faisant à la main en
SQL. Il m'aurait fallu reprendre les enregistrement à la limite du cas par cas, répartir les
informations sur les différentes tables en respectant les liaisons et en corrigant les erreurs
de typage.
- 12 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Au final le logiciel avoisine les 1500 lignes de code. S'il est trois fois plus
volumineux qu'il ne devrait, cela est du aux long algorithmes de nettoyages et de traitement
des cas particuliers. Lors de son éxécution le transfert de la base d'origine à la nouvelle
base à prit 1 minute 27 secondes et durant ce court lapse de temps 6081 requêtes ont été
effectué.
Formulaires et états
Formulaires
- 13 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
2) les formulaires d'éditions des petits enregistrements, comme les classements, les
catégories, les personnes ...etc...
- 14 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Etats
Contrairement à ce que je pensais, les états que j'ai du générer sont entièrement
codé, je n'ai pas utilisé l'éditeur visuel pour les réaliser. La raison est simple, les états sont
imprimés et cela sur du papier. Seulement nous sommes dans un parc naturel régional qui
mets en avant la préservation de l'éco-système. A des fins d'économie de papier on m'a
demandé de compacter les états. En effet si on les réalise avec l'éditeur on place les champs
les uns à la suite des autres et on utilise de l'espace même si le champ à afficher est vide.
Et comme sur une fiche il peut y avoir d'une dizaine jusqu'à 120champs à afficher, on pert
les trois quarts d'une page pour quelques lignes. Cela sur 400 enregistrements, on obtient
beaucoup de pertes.
Pour y remédier je pars d'un état basé sur la requete qui m'interesse, je ne place
aucun composant sur l'état. Et tout va être traité dans la procédure « Détail_Format » de
l'état. Pour faire simple, je parcours les champs et je regarde s'ils sont remplis, nulles ou
vides. Si un champ est rempli, je crée un composant que j'ajoute a l'état, je le place avec ses
coordonnées X Y sur la feuille et je dimensionne la fiche au minimum. Avec se principe
j'obtient des fiches de 3 lignes ou d'une page selon la quantité d'informations.
La théorie n'est hélas pas l'équivalant de la pratique avec access, j'ai du avoir recour
à plusieurs bidouilles et astuces pour arriver à mes fins, mais le résulat est là.
- 15 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Cet état est particulier, car il sert comme une première mise en forme des données
pour les livrets touristiques. En pratique cet état est enregistré au format rtf (Rich Text
Format) puis est retravaillé dans Word avant d'être morceau par morceau copier dans le
logiciel de mise en forme InDesign. Mon travail a été d'améliorer la mise en forme pour
réduire voir supprimer le passage sous Word.
BILAN
La base de données est fonctionnelles et une phase de mise en charge a été réalisée.
Bien que la base de données soit fonctionnelle, plusieurs points risques de poser des
problèmes dans les années à venir.
Le choix Access
Le système de gestion de base de données est Access 2000. Lors d'un passage sous Access
- 16 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
2003 ou plus récent, il est possible que certain formulaire ou état doté de code est besoin
d'être corrigé pour pouvoir fonctionner.
L'aspect SIG
Il s'agit d'une base Access normal et non d'une géodatabase, pour pouvoir accéder à un
aspect SIG on a recours à des fichiers shapes et une liaison grace à des identifiants. Il faut
veiller a garder la liaison entre les données et les géométries ce qui est une tache
supplémentaire.
On arrive aux limites des fonctions d'access, formulaires, états, liens externes.
L'intégration à des sites internets est plus compliqué qu'avec des bases mysql ou
postgresql. Un respect assez restreints des normes SQL n'est pas pour simplifier son
utilisation en dehors des applications VBA.
Sécurité
Sécurité et Access ne sont pas amis, les sécurités que l'on peut donner à une base access se
limite à l'ordinateur qui les a données. Les possibilités de création de comptes utilisateurs
et de limitation des actions sont minimales.
Mais le choix d'access est déterminé par l'environnement, le parc ne dispose pas d'une
personne formée pour l'administration réseau ni pour l'informatique en générale, et encore
moins d'une personne pour s'en occuper à plein temps comme il devrait. M. Laurent
Alborino assure toutefois cette charge en supplément de son poste SIG.
Le choix d'access même s'il n'est pas le plus conseillé reste la solution la plus
abordable et la plus sur en l'absence de personne en charge du domaine informatique.
- 17 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
GOOGLE MAPS
- 18 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Objectifs
Ce module est un plus en terme de simplicité, en effet même si celui ci est moins précis
que la géolocalisation faites sous arcgis, il permet de ne pas avoir a passer par arcgis et
donc de faire une économie de formation et de licence.
Page html
- 19 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Bilan
- 20 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
KLÉMA PARC
- 21 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
UN MODULE DE GESTION
Kléma Parc est un outil de gestion de circuit qui s'appuit à la fois sur une base
Access et sur une Géodatabase ESRI. Il permet de gérer les circuits ainsi que leurs
élèments (pancartes, travaux, mobiliers). A cela s'ajoute la gestion des lieux remarquables
(richesses naturelles, patrimoines historiques) , les établissements de sports et loisirs ainsi
que les restaurants et hébergements. Mais celui-ci est trop incomplet pour la gestion du
tourisme, c'est pourquoi la base tourisme existe en complément.
Cet outil a été développé en collaboration avec M. Laurent Alborino pour le Parc Naturel
Régional des Marais du Cotentin et du Bessin. Le parc dispose donc d'une version
différente de celle commercialisée.
Kléma Parc est divisé en deux partie. L'une se présente comme un logiciel de gestion
classique en VBA Access. L'autre est un plug-in VB pour ArcGIS 8.3 .Je n'en dirais pas
plus sur le logiciel, sa structure ou encore ses particularitées de programmation compte
tenu que je suis tenu au secret.
Un commentaire tout de même : une franche déception et une remise en cause de ce qu'est
un logiciel commercial.
L'outil Kléma dispose d'un module d'import basé sur des fichiers textes. J'ai donc mit en
place un formulaire permettant de structurer les données de telle sorte qu'elles puissent être
importées dans Kléma.
Toutefois la base de données Kléma est bien moins complète que la base tourisme en terme
d'attributs, il serat donc nécessaire pour les cartes les plus spécifiques de faire un liaison
entre les données Kléma et les données de la base tourisme. Une fois l'export fait on
obtient une série de fichier textes près à être importé dans Kléma.
- 22 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Import Kléma
Avant de pouvoir importer les données il faut que les géométries existent. Il a donc fallut
prendre plusieurs jours pour géolocaliser le millier d'enregistrements de la base tourisme.
Géolocalisation
- 23 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Le module d'import de Kléma est rudimentaire, il nous faut placer les fichiers dans un
dossier spécifique avec un nom spécifique. L'import se fait par comparaison, Kléma prend
l'identifiant dans le fichier d'import et cherche dans la base si celui ci existe. S'il existe il
insère les données du fichier dans l'élément de la base correspondant, s'il n'existe pas il
ignore la ligne du fchier. Il est a noté que tout est géré au format texte dans Kléma, aussi
bien les identifiants que les booléens.
- 24 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Export Shape
Une fois l'import fait il ne reste plus qu'a exporter au format shape les différentes couches
nécessaire pour les cartes de tourisme. Nous ne travaillons volontairement avec les
données de la géodatabase Kléma afin d'éviter les erreurs de manipulation qui pourraient
corrompre la liaison des données entre la partie Access et Géodatabase de Kléma.
- 25 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
GÉNÉRATION DE CARTE
- 26 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
ATTENTES ET SOLUTIONS
Existant
Des templates arcgis de mise en forme des documents cartographique sont disponibles.
Attentes
Mettre au point un outil de génération de carte automatisé. L'outil est destiné à des
personnes ne disposant pas de formations SIG, c'est pourquoi l'outil devra limiter à
l'utilisateur toutes manipulations de mise en forme, jointure et requêtage.
Choix de la solution
Il a fallu dans un premier temps trouver la liste des différents développement possible
avec les outils ArcGIS.
ArcGIS Engine
Ce développement permet les languages C++, VB, VB.net, JAVA, C# mais demande une
licence particulière supplémentaire.
Le parc ne dispose pas de la licence pour ArcGISEngine, cette solution n'est donc pas
enviseagable.
Ce développement permet les languages C++, VB, VB.net, JAVA, C#. Le parc travail avec
une licence ArcGIS 9.2, et le java n'est présent que depuis cette version.
Bien que cette solution m'aurais énormément plu. Le manque de documentation,
d'exemples, l'incapacité d'aide du support technique d'esri dans le domaine du
développement ainsi que le temps disponible font que je ne retiendrais pas cette solution.
- 27 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
ArcGIS VBA
Bien plus abordable cette solution est la plus rapide de mise en oeuvre, mais requiert
d'ouvrir un template pour accéder aux fonctionnalitées.
VBA s'avert la seule solution accessible compte tenu du temps alloué a cette tache.
ArcExplorer
Logiciel gratuit pour la mise en forme des projets ArcGIS, ArcExplorer aurait permit
d'avoir un outil libre pour la génération des cartes. Seul point noir, le logiciel est gratuit
mais non libre, le code source n'est donc pas disponible.
ArcExplorer ne permet pas l'ajout de module et le code source n'étant pas disponible le
développement sur cette application est donc impossible.
MapObject
MapObject est la librairie utilisée par ArcExplorer pour l'affichage et le traitement des
données.
Celle ci pourrait permettre d'atteindre les objectifs demandées à l'exeption des
contraintes de temps.
Model Builder
Rapide de mise en place, cette solution viable ne permettra pas d'atteindre les objectifs
complétements. Mais a defaut permettra de faire des croisements et d'obtenir des cartes
plus poussées.
La simplicité d'utilisation n'est pas évidente et le résultat ne sera pas une carte prete
pour l'impression, ce qui limite son utilisation et remets en cause l'objectif.
RÉALISATION
- 28 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Exemple de diagramme :
Comme on le voit c'est assez complexe au premier abord, celui ci correspond à une des
trois pages de la structure d'un projet une fois en mémoire.
Exemple de documentation :
- 29 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Pour la réalisation de cette outil je n'ai fait qu'effleurer la surface de cette structure. Je me
suis surtout intéréssé à :
- la récupération et utilisation des interfaces de paramètrages d'ArcGIS Desktop
- l'outil de sérialization (sauvegarde sur disque) des objets d'ArcGIS
- la structuration des données d'une couche shape
Le module
Tout le travail en VBA est stocké dans un fichier template. Hormis la partie code le seul
changement visible sous arcGIS est l'ajout d'une nouvelle barre.
L'interface
Panneau de configuration :
[IMAGE A METTRE]
Sur ce panneau on peut préciser le dossier dans lequels seront stocké les fichiers shapes et
les fichiers templates.
Panneau d'édition :
[IMAGE A METTRE]
[IMAGE A METTRE]
- 30 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Afin de stocker les différentes mises en forme, j'ai utilisé un fichier au format XML.
On y retrouve de manière structuré, les différentes cartes et les différentes couches
utilisées.
1. <GENERATEUR Source="D:\STAGE_PNR\couverture">
2. <theme Nom="carte des communes">
3. <couche Nom="Limite PNR" NomShape="pnrmcb_limite" ScaleTo="-1">
4. <data>
5. [SERIALIZATION ARCGIS]
6. </data>
7. </couche>
8. <couche Nom="Communes" NomShape="pnrmcb_communes" ScaleTo="0">
9. <data>
10. [SERIALIZATION ARCGIS]
11. </data>
12. </couche>
13. <couche Nom="Limites départements" NomShape="bn_Lim_departements" ScaleTo="0">
14. <data>
15. [SERIALIZATION ARCGIS]
16. </data>
17. </couche>
18. </theme>
19.</GENERATEUR>
Les informations concernants les couches, comme la symbologie, les jointures, les filtres
...etc.. ne sont pas stockées en XML mais sérializer (comme sur disque de l'objet en
mémoire) entre les balises <data></data> .
Il aurait été possible de transformer une partie de cette sérialization en format XML, mais
cela aurait empêché la sauvegarde des jointures et des relations aussi qu'une grande
quantité d'autres informations. Dans le cadre de la réalisation des cartes de tourisme, les
jointures sont nécessaires, c'est pourquoi j'ai exclus la sauvegarde complète en XML au
profis d'une sauvegarde partielle.
BILAN
- 31 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
L'outil réalisé réponds aux demandes initiales. L'interface est conviviale est facile de
manipulation. Le point noir à noter est l'absence de compatibilité du fichier XML entre les
différentes versions d'ArcGIS. On note aussi qu'il ne prend en compte que les fichiers
shapes.
- 32 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
COMPARATEUR
- 33 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Objectif
Comme il est vue précédemment chaque point est rentré un à un dans Kléma, et
chaque nouvelle enregistrement dans la base tourisme doit être géolocalisé avec Kléma. En
conséquence il arrive que des enregistrements soient manquant dans l'un ou l'autre ou que
des catégories aient changé au fil du temps.
Cet outil est réalisé pour comparer les données de la base tourisme et les fichiers shapes en
sortie du logiciel Kléma, et ainsi aider à préserver la concordance des données.
Description
L'outil est réaliser en Java avec la librairie SIG GeoTools. Le temps de réalisation fut de 3
semaines. Il se divise en trois onglets :
Paramètrage et analyse
Sur ce premier onglet nous allons paramètrer les données et les critères pour l'analyse. Sur
la gauche on précise la base de données Access à utiliser, une fois sélectionnée une liste
affiche toute les tables présentent dans la base, Il faut alors sélectionner celle qui nous
intéresse et précisé dans la colonne « Critère1 » l'attribut qui servira de comparaison, si
besoin un second critère peut être sélectionné (en cochant « Critère supplémentaire » situé
en bas à gauche de la fenêtre).
- 34 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
De la même manière sur la droite on va récupérer le dossier contenant les fichiers shapes et
préciser le(s) attribut(s) pour la comparaison.
Le second critère peut correspondre (selon que la soit coché « Second critère arbitraire »)
soit à un attribut de la table soit à une valeur donnée qui serat utilisée pour tout les
éléments de la table.
Un bouton « Démarrer Analyse » lance l'analyse et l'on peut suivre l'évolution dans la barre
de progression.
Rapport d'analyse
Cet onglet présente l'analyse générale, avec le nombre d'élément des deux sources, le
nombres d'éléments trouvés et manquants suivit de deux listes contenant les identifiants
manquants dans l'une et l'autre.
- 35 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
Les anomalies
Le dernier onglet est plus détaillé et bien plus précis que les précédents. Un arbre sur la
gauche permet de naviguer parmis les anomalies. Lorsqu'une anomalie est sélectionnée la
partie droite de l'interface est mise à jour avec le détail de l'anomalie.
Dans le cas ci-dessus on constate que le critère1 qui devrait être un identifiant unique est
utilisé deux fois dans le fichier shape « hébergement.shp ».
- 36 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
BILAN DE STAGE
- 37 -
Johann Sorel Rapport de Stage LUP S.I.G 2006-2007
- 38 -