En la lista de correo de ESRI-L esta mañana había una pregunta sobre cómo ver o exportar todos los dominios de valores codificados para una geodatabase. El objetivo es presentar el contenido de los dominios en forma de tabla, para que sean fáciles de leer.
La herramienta DomainToTable hace esto fácilmente para un solo dominio, pero cuando hay muchos dominios rápidamente se vuelve pesado. El mejor consejo que pude dar fue la función de procesamiento por lotes , pero incluso eso requiere conocer o buscar los nombres de los dominios individualmente.
Seguramente hay una mejor manera?
esri-geodatabase
domains
wilkie mate
fuente
fuente
GDB_Domains
mesa? Abrí un gdb personal con dominios en Access y no está allí. EncontréGDB_Items
unDefinition
campo que parece contener los dominios, pero están enterrados en XML.Respuestas:
Aquí hay algo que armé que funciona en los gdb simples que tengo a mano. No sé cómo podría o no manejar subtipos con múltiples dominios (vea el comentario de Brent).
Uso:
Exporta las tablas al mismo gdb del que obtiene los dominios. Fallará si las tablas ya existen.
Versión actualizada en github en https://github.com/envygeo/arcplus/blob/master/ArcToolbox/Scripts/export_gdb_domains.py . Opcionalmente escribe en XLS y sobrescribe las tablas existentes.
Recursos:
Historia
Inicialmente intenté usar un directorio de salida y archivos .csv para los resultados, pero seguí obteniendo "ERROR 000142: El nombre del campo en la tabla dBASE no puede tener más de 10 caracteres" . Parece que siempre interpreta la ruta como parte del nombre de la tabla (
table =
línea cf ) {encogimiento de hombros}.[Más tarde]: @ dgj32784 encontró la causa,
'description'
a los 11 caracteres es demasiado largo.fuente
csv
módulo Python .Aquí hay un código que exporta todos los dominios a archivos de Excel. Además, obtiene el error al intentar exportar a DBF porque la palabra "descripción" tiene 11 caracteres de longitud.
EDITAR: formato de impresión fijo (línea 20)
fuente