In building our Enterprise GIS Database, we need to support users with different needs. Some of our users just need to see the data on a map while others may want to download a copy of the data so they can use it within their own desktop system.
After doing some exploring, one of the options that looks like it will feel the bulk of our internal needs is to create a Map Service/Geodata Service pair–by creating a Map Service, we can make an easy-to-use visual representation of our data. Combining that with a paired Geodata Service–a Geodata Service with the same name as the Map Service–we can accommodate those users who want to extract the data to their hard drive.
A user who has added paired Map & Geodata Services to an ArcMap dataframe can use the Distributed Geodatabase Toolbar to extract data to a local geodatabase. The Extract Data button is on the far right of the Distributed Geodatabase Toolbar.
Unfortunately, my first attempts at testing this did not work. It would look like it was processing, I would end up with a .mdb or .gdb file on my hard drive but I could not open it. I would get a “Failed to connect to database. This release of the GeoDatabase is eitehr invalid or out of date. [Unknown GeoDatabase release.] The Microsoft Jet database engine cannot find the input table or query ‘GDB_ReleaseInfo’. Make sure it exists and that its name is spelled correctly.” error.
When exporting to an .mdb file, I could open it in Access and see the data.
Luckily the error is fairly helpful–I was getting an ArcGIS 10 Geodatabase even though I am running ArcGIS 9.3.1 on my desktop. I was able to open the exported geodatabases using a copy of ArcGIS 10 on another machine. The reason for the inconsistency is pretty interesting. Our office is, and for the foreseeable future, running in a mixed-version environment. We have a mixture of 9.3.1 and 10 desktops, a 9.3.1 ArcSDE server and a 10 ArcGIS Server. The Extract Tool is a server-side function apparently that creates a version 10 Geodatabase.
The way to get around this is to extract the data to XML and then import the XML workspace into a geodatabase. Not sure if that will work for all schemas but it was successful for me.