Zusammenfassung
Erstellt eine Tabellensicht aus einer Eingabetabelle oder -Feature-Class. Die vom Werkzeug erstellte Tabellensicht ist temporär und nur für die Dauer der Sitzung vorhanden, es sei denn, das Dokument wird gespeichert.
Verwendung
Dieses Werkzeug wird häufig zur Erstellung einer Tabellensicht aus einer ausgewählten Gruppe von Attributen oder Feldern verwendet.
Wird ein SQL-Ausdruck verwendet, aber nichts zurückgegeben, bleibt die Ausgabe leer.
Im Steuerelement Feld-Info definierte Feldnamen werden in nachfolgenden Werkzeugen berücksichtigt. Wenn dieses Werkzeug jedoch das letzte Werkzeug in einem Modell ist, werden die Feldnamen aus den Quelldaten auf der Festplatte abgerufen. Um die Feldnamen beizubehalten, muss der neue Layer mit den Werkzeugen Zeilen kopieren oder Features kopieren in einen neuen Datensatz geschrieben werden.
Die Feldnamen werden durch die Angabe eines Eingabe-Workspace überprüft. Wenn also die Eingabe eine Geodatabase-Feature-Class und der Ausgabe-Workspace ein Ordner ist, können die Feldnamen verkürzt sein, da Shapefile-Attribute nur Namen mit maximal zehn Zeichen aufweisen können.
Über die Eigenschaft für die Sichtbarkeit des Steuerelements Feld-Info kann für einen Teil der Felder festgelegt werden, dass sie im neuen Layer nicht verfügbar sind. Die zweite Spalte im Steuerelement bietet ein Kontrollkästchen für die Angabe, ob ein Feld im neuen Layer ein- oder ausgeblendet wird. Diese Option ist standardmäßig aktiviert. Deaktivieren Sie das Kontrollkästchen, um das Feld auszublenden. Sie können die ausgeblendeten Felder nicht in einem Workflow verwenden, wenn der neu erstellte Layer die Eingabe für einen nachfolgenden Prozess oder ein Werkzeug ist. Wenn die Ausgabe auf die Festplatte gespeichert wird, werden in den neuen Daten nur die als sichtbar angegebenen Felder angezeigt.
Die im Steuerelement Feld-Info enthaltene Option für die Teilungsmethode steht für dieses Werkzeug nicht zur Verfügung.
Syntax
arcpy.management.MakeTableView(in_table, out_view, {where_clause}, {workspace}, {field_info})
Parameter | Erklärung | Datentyp |
in_table | Die Eingabetabelle oder -Feature-Class. | Table View;Raster Layer |
out_view | Der Name der zu erstellenden Tabellensicht. | Table View ;Raster Layer |
where_clause (optional) | Ein SQL-Ausdruck, mit dem eine Feature-Teilmenge ausgewählt wird. Weitere Informationen zur SQL-Syntax finden Sie im Hilfethema SQL-Referenz für in ArcGIS verwendete Abfrageausdrücke. | SQL Expression |
workspace (optional) | Der zum Überprüfen der Feldnamen verwendete Eingabe-Workspace. Wenn die Eingabe eine Geodatabase-Tabelle und der Ausgabe-Workspace eine dBASE-Tabelle ist, können die Feldnamen verkürzt sein, da dBASE-Felder nur Namen mit maximal zehn Zeichen aufweisen können. | Workspace |
field_info (optional) | Gibt an, welche Felder der Eingabetabelle in der Ausgabe-Tabellensicht sichtbar gemacht werden sollen. | Field Info |
Codebeispiel
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion "MakeTableView" im unmittelbaren Modus verwenden.
import arcpy
arcpy.MakeTableView_management("C:/data/input/crimefrequency.dbf", "crimefreq_tview")
Mit dem folgenden eigenständigen Skript wird veranschaulicht, wie mit der Funktion "MakeTableView" mit einem Feld-Info-Objekt Felder in der Ausgabe gefiltert werden können.
# Name: MakeTableView_Example2.py
# Description: Uses a FieldInfo object to select a subset of fields and renaming one field's name.
# Import system modules
import arcpy
# Set data path
intable = "C:/data/tables.gdb/crimefreq"
# Get the fields from the input
fields= arcpy.ListFields(intable)
# Create a fieldinfo object
fieldinfo = arcpy.FieldInfo()
# Iterate through the fields and set them to fieldinfo
for field in fields:
if field.name == "FREQUENCY":
fieldinfo.addField(field.name, "NEWFREQ", "VISIBLE", "")
elif field.name == "CRIME_CAT":
fieldinfo.addField(field.name, field.name, "HIDDEN", "")
elif field.name == "BEAT":
fieldinfo.addField(field.name, field.name, "VISIBLE", "")
# The created crime_view layer will have fields as set in fieldinfo object
arcpy.MakeTableView_management(intable, "crime_view", "", "", fieldinfo)
# To persist the layer on disk make a copy of the view
arcpy.CopyRows_management("crime_view", "C:/temp/newfreq.dbf")
Umgebungen
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja