En este artículo aprenderás cómo guardar como shapefile los feature classes almacenados en una base de datos, conservando la descripción de los campos que se rigen por un dominio.
La manera normal de exportar una capa a shapefile sería hacer clic derecho sobre la capa (a), ir a la opción Data (b) y presionar el botón "Export Data..." (c); especificar la ruta y el nombre de salida usando al final el sufijo ".shp" (d). Tal como se ilustra a continuación, el resultado exporta por defecto los códigos de dominio en lugar de las descripciones (e) debido a que la capa original es un feature class almacenado en una base de datos:
Esto puede ser problemático cuando se comparte información con un tercero, ya que los códigos no proporcionan información a menos que se interpreten y "en teoría no hay opción para exportar descripciones de dominio”. Sin embargo, hay maneras de sortear este obstáculo y las formas de hacerlo son las siguientes:
Opción 1 (Cómo crear un "Join" o una unión de atributos):
Presiona "Open Attribute Table" (a), botón mostrado al hacer clic derecho sobre la capa, y selecciona todas las filas presionando en el botón "Table Options" (b) la opción "Select all" (c).
Ve a la esquina superior izquierda de la tabla (a), haz clic derecho y presiona "Copy Selected" (b).
Abre un bloc de notas y pega lo copiado en el paso anterior, guarda el bloc de notas como se ilustra en la imagen siguiente.
Agrega un campo llamado LINK (a) y calcula en este campo los OBJECTID (b).
Oculta todos los campos salvo el campo LINK (a), y exporta la capa a shapefile, el cual nos servirá como un archivo intermedio o temporal (b).
Presiona clic derecho sobre este nuevo shapefile (temp.shp), sitúate sobre "Join and Relate" (a) y presiona el botón "Join" (b). En el ítem "Choose the field in this layer that the join will be based on:" indica el campo LINK (c); en el ítem "Choose the table to join to this layer, or load the table from disk:" selecciona el archivo "TABLE.txt" guardado anteriormente, haciendo uso del botón "Browse" (d); y en el ítem "Choose the field in the table to base the join on:" selecciona el campo OBJECTID (e) y presiona OK (f).
Una vez hecho el Join, haz clic derecho sobre la capa "temp" (a), ve a "Data" (b) y presiona "Export Data..." (c) y guárdalo como un shapefile (d). De esta manera, tendrás la capa original con la descripción de los dominios (e).
Puedes seguir este procedimiento o el descrito en la página de ESRI; ambos me parecen poco prácticos. Sin embargo, con la herramienta Feature Class to Feature Class, es posible con un pequeño ajuste. Es la única herramienta de exportación que me ha funcionado con dicho ajuste; sigue los pasos a continuación para hacer esto mucho más fácil.
Opción 2:
Paso 1. Cargar a ArcMap el feature class a exportar.
Paso 2. Presionar el ícono Search (a) en la barra de herramientas Standard. Escribir en la barra de búsqueda (b) Feature Class to Feature Class y haz clic en la herramienta (c).
Paso 3. Arrastra el feature class al ítem Input Features (a). Indica una carpeta de salida en el apartado "Output Location" (b). Asigna un nombre para el shapefile en el ítem Output Feature Class (c). Presiona el botón "Environments..." (d); en el apartado "Field" marca la opción "Transfer field domain descriptions" (e).
Paso 4. Presiona OK en la ventana Environment Settings y en la ventana original de la herramienta también presiona OK para iniciar el proceso.
Al terminar, verás que el shapefile de salida tiene los campos originales con los códigos, pero en la parte posterior están los campos con las descripciones correspondientes; estos campos tienen un prefijo “d_”. De esta forma, has aprendido cómo exportar la descripción de los dominios al formato shapefile.
Espero hayas disfrutado este artículo. Próximamente subiré un video explicativo del procedimiento que podrás consultar en este blog. Guarda mi blog entre tus enlaces favoritos; estaré subiendo muchos más trucos de este estilo. Recuerda que puedes hacerme llegar tus inquietudes en la página de contacto o dejar tu comentario. Estaré atento a responder.











