Eliminar adjuntos (Administración de datos)

Resumen

Elimina los adjuntos de la clase de entidad de geodatabase o de los registros de tabla. Debido a que los adjuntos en realidad no se almacenan en el datase de entrada, no se harán cambios a esa tabla o clase de entidad, sino más bien en la tabla de geodatabase relacionada que almacena los adjuntos y mantiene el vínculo con el dataset de entrada. Se usa una tabla de coincidencia para identificar a qué registros de entrada (o grupos de registros de atributos) se les eliminarán los adjuntos.

Ilustración

Remove Attachments illustration

Uso

Sintaxis

RemoveAttachments_management (in_dataset, in_join_field, in_match_table, in_match_join_field, {in_match_name_field})
ParámetroExplicaciónTipo de datos
in_dataset

Clase de entidad o tabla de geodatabase de la cual eliminar adjuntos. Los adjuntos no se eliminan directamente de esta tabla, sino más bien de la tabla de adjuntos relacionada que almacena los adjuntos. El Dataset de entrada debe estar en una geodatabase versión 10 o más reciente, y la tabla debe tener habilitados adjuntos.

Table View
in_join_field

El campo del Dataset de entrada que tiene valores que coinciden con los valores en el Campo de unión de coincidencias. A los registros que tienen valores de campos de unión que coinciden entre el Dataset de entrada y la Tabla de coincidencias se les eliminarán los adjuntos. Este campo puede ser un campo de ID de objeto o cualquier otro atributo de identificación.

Field
in_match_table

Tabla que identifica a qué registros de entrada se les eliminarán los adjuntos.

Table View
in_match_join_field

Al campo de la tabla de coincidencias que indica a qué registros en el Dataset de entrada se le eliminarán adjuntos específicos. Este campo puede tener valores que coinciden con las ID de los objetos del Dataset de entrada u otro atributo que los identifique.

Field
in_match_name_field
(Opcional)

Campo de la tabla de coincidencias que tiene los nombres de los adjuntos a eliminar de los registros del Dataset de entrada. Si no se especifica un campo de nombre, se eliminarán todos los adjuntos de cada registro especificado en el Campo de unión de coincidencias. Si se especifica un campo de nombre, pero un registro tiene un valor nulo o vacío en el campo de nombre, se eliminarán todos los adjuntos de ese registro. Los valores de este campo deben ser nombres cortos del adjunto a eliminar, no las rutas completas de estos archivos que se usan para crear los adjuntos originales.

Field

Ejemplo de código

Ejemplo de RemoveAttachments (ventana de Python)

El siguiente fragmento de códigos ilustra la forma en que se debe usar la herramienta RemoveAttachments en la ventana de Python.

import arcpy arcpy.RemoveAttachments_management(r"C:\Data\City.gdb\Parcels", "ParcelID", r"C:\Data\matchtable.csv", "ParcelID","Picture")
Ejemplo de RemoveAttachments (secuencia de comandos Python independiente)

La siguiente secuencia de comandos ilustra la forma en que se debe usar la herramienta RemoveAttachments en una secuencia de comandos independiente.

## Some of the attachments we added to a feature class are unnecessary, let's remove them.  import csv, arcpy, os, sys  input = r"C:\Data\City.gdb\Parcels" inputField = "ParcelID" matchTable = r"C:\Data\matchtable.csv" matchField = "ParcelID" nameField = "Picture"   # create a new Match Table csv file that will tell the RemoveAttachments tool which attachments to delete writer = csv.writer(open(matchTable, "wb"), delimiter=",")  # write a header row (the table will have two columns: ParcelID and Picture) writer.writerow([matchField, nameField])  # create a list of the attachments to delete # removes attachments pic1a.jpg and pic1b.jpg from feature 1, pic3.jpg from feature 3, and pic4.jpg from feature 4. deleteList = [[1, "pic1a.jpg"], [1, "pic1b.jpg"], [3, "pic3.jpg"], [4, "pic4.jpg"]]  # iterate through the delete list and write it to the Match Table csv for row in deleteList:     writer.writerow(row)  del writer  # use the match table with the Remove Attachments tool arcpy.RemoveAttachments_management(input, inputField, matchTable, matchField, nameField)

Entornos

Temas relacionados

9/11/2013