ArcGIS 10 offre la nouvelle possibilité d' ajouter des pièces jointes à des entités individuelles aux classes d' entités stockées dans une géodatabase. Une utilisation de cela serait d'ajouter plusieurs photos à un endroit spécifique, les bornes d'incendie semblent être un exemple populaire (important de savoir si vous êtes un chien sur Internet qui a besoin d'un arrêt au stand je suppose).
Dans la base de données, la structure d'une classe d'entités activée pour les pièces jointes est triple:
- la classe d'entités elle-même,
- un tableau contenant les pièces jointes et les métadonnées associées (nom de fichier, taille, etc.), et
- une classe de relations définissant la relation 1 à plusieurs entre les deux.
Ma question est: comment exporter ces données - classe d'entités , pièces jointes, métadonnées de pièce jointe - pour une consommation en dehors d'Arcgis? *
L'exportation du FC est facile, FeatureClassToFeatureClass fonctionne de la même manière que sur un FC sans attachement activé. Vous exportez la table des pièces jointes? Pas tellement. TableToTable vers output.dbf extrait uniquement les métadonnées du fichier joint, les erreurs output.csv avec un type de champ non pris en charge et la sortie du tableau d' informations échoue avec une erreur de champ générale.
Ce n'est pas si surprenant que ces types de fichiers ne prennent pas en charge un type de données blob binaire. Je m'attendais / espérais trouver un outil qui convertirait les binaires attachés dans leur format natif, par exemple
Et alors? Que dois-je faire pour extraire les données?
* ironiquement mon projet du moment qui a donné naissance à ce Q est d'exporter pour une utilisation au sein d'Arcgis, mais pas d'Arcgis Desktop ...
la source
L'exportation de GDB vers XML (en faisant un clic droit sur GDB> Exporter vers XML) peut parfaitement exporter des fonctionnalités + pièces jointes. De plus, si vous recherchez une approche plus automatisée, ArcGIS 10.1 propose une nouvelle boîte à outils pour l'exportation XML. Vous pouvez importer du XML dans de nouveaux GDB ou accéder directement à toutes ses données en les analysant pour d'autres applications.
la source
Je n'ai pas essayé les méthodes suivantes, alors juste mes pensées à ce sujet:
Si vous êtes à l'aise avec ArcGIS .NET API, vous pouvez utiliser C # pour exporter des objets blob vers des fichiers. Jetez un œil à cet extrait .
Vous pouvez également essayer d'exporter la table des pièces jointes vers Personal GDB, puis d'y exporter des objets blob. De la même manière, vous pouvez exporter vers la table SDE et utiliser votre SGBD (sql?) Pour l'exécuter.
la source
Le script suivant télécharge les pièces jointes de la couche d'entités hébergées sur le disque: Téléchargement des pièces jointes de la couche d'entités via l'API ArcGIS pour Python . Il utilise la dernière API ArcGIS pour Python qui interagit directement avec n'importe quel SIG Web.
la source