Afgelopen week kreeg ik de vraag om een Shape-file en een Excel-sheet met elkaar te koppelen en als resultaat een nieuwe Shape-file te maken met slechts een deel van de attributen.
In de Shape-file zat de geometrie van wegvakken, met als attributen: weg-nummer, weg-vak-nummer en weg-vak-onderdeel-nummer. In de Excel-sheet zaten diezelfde nummers en nog meer detail informatie van de wegvakken. Deze Excel-sheet was geexporteerd vanuit wegbeheer software.
Als de AutoCAD Map gebruiker dan ook nog een senior ArcGIS gebruiker is, dan heb je als consultant een aardige uitdaging.
In de vorm van een handson workshop de volgende zaken opgepakt:
Voor het linken van de beide bestanden aan elkaar, gebruiken we de FDO-functie: Create a Join.
Hiervoor moeten Shape-file en Excel-sheet beide als FDO-source aan AutoCAD Map gekoppeld zijn en er moeten één of meerdere gemeenschappelijke velden zijn om te kunnen koppelen.
Om een FDO-connectie te kunnen leggen met de Excel-data is het handig om deze even te importeren in een Access-tabel. Vervolgens kan de FDO-connectie naar die Access-tabel gelegd worden dmv. de volgende Connection String:
Driver={Microsoft Access Driver (*.mdb)};DBQ=pathnamefilename.mdb
Door de Excel-data even in een Access-tabel te importeren is het nml. ook mogelijk om de velden die gebruikt worden voor de koppeling van hetzelfde database type te maken ( Text of Numeriek ).
In het hieronder afgebeelde scherm wordt vervolgens de FDO-connectie naar de Shape-file als Primary table geselecteeerd en de FDO ODBC-connectie naar de Acces-tabel als Secondary table.
Voor de Join worden de volgende velden aan elkaar gelinked:
WEG_NR002 -> Weg
WEGV_NR002 -> Vak
WEGVONR002 -> Ond
In het FDO DataGrid is het samengestelde scherm te zien. Maar om hiervan een nieuwe Shape-file te maken met slechts een deel van de attributen is echter in AutoCAD Map niet zo’n eenvoudige opgave.
Wat in ArcGIS een fluitje van een cent is, blijkt in AutoCAD Map toch nog een hele opgave.
Om hiervan een nieuwe Shape-file te maken, met in de DBF-database de inhoud van het orginele bestand aangevuld met de Excel-sheet, wordt eerst een export naar SDF gemaakt. Deze lokale spatial database bevat de samengestelde structuur.
Met behulp van de FDO Schema Editor kan een nieuwe lege Shape-file worden aangemaakt met daarin alleen die attribuut kolommen die nodig zijn.
Met behulp van FDO BulkCopy functionaliteit kan de inhoud van de SDF-file worden overgezet naar de Shape-file. Hierbij kan een keuze worden gemaakt uit de velden die moeten worden overgezet.