Tabellensicht erstellen (Data Management)

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})
ParameterErklärungDatentyp
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

MakeTableView Beispiel 1 (Python-Fenster)

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")
Beispiel 2 für "MakeTableView" (eigenständiges Skript)

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")

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen