Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das SDK unterstützt Erstellungs-, Aktualisierungs- und Löschvorgänge (CUD) für benutzerdefinierte Tabellen und Spalten, optionale Lösungszuordnung sowie Abrufen und Listentabellendefinitionen.
Sehen wir uns Beispielcode für die Arbeit mit einer benutzerdefinierten Tabelle an.
# Create a custom table, including the customization prefix value in the schema names for the table and columns.
table_info = client.tables.create("new_Product", {
"new_Code": "string",
"new_Description": "memo",
"new_Price": "decimal",
"new_Active": "bool"
})
# Create with custom primary column name and solution assignment
table_info = client.tables.create(
"new_Product",
columns={
"new_Code": "string",
"new_Price": "decimal"
},
solution="MyPublisher", # Optional: add to specific solution
primary_column="new_ProductName", # Optional: custom primary column (default is "{customization prefix value}_Name")
)
# Get table information
info = client.tables.get("new_Product")
print(f"Logical name: {info['table_logical_name']}")
print(f"Entity set: {info['entity_set_name']}")
# List all tables
tables = client.tables.list()
for table in tables:
print(table)
# Add columns to existing table (columns must include customization prefix value)
client.tables.add_columns("new_Product", {"new_Category": "string"})
# Remove columns
client.tables.remove_columns("new_Product", ["new_Category"])
# List all columns (attributes) for a table to discover schema
columns = client.tables.list_columns("account")
for col in columns:
print(f"{col['name']} ({col.get('AttributeType')})")
# List only specific properties
columns = client.tables.list_columns(
"account",
select=["LogicalName", "SchemaName", "AttributeType"],
filter="AttributeType eq 'String'",
)
# Clean up
client.tables.delete("new_Product")
Important
Alle benutzerdefinierten Spaltennamen müssen den Präfixwert der Anpassung enthalten (z. B. "new_"). Diese Anforderung stellt eine explizite, vorhersagbare Benennung sicher und entspricht den Dataverse-Metadatenanforderungen.
Weitere Informationen zum Arbeiten mit benutzerdefinierten Tabellenmetadaten:
-
creategibt immer eine Liste von GUIDs zurück (Länge=1 für einzelne Eingaben). -
updateunddeletegebenNonesowohl für einzelne als auch für mehrere Schnittstellen zurück. - Die Übergabe einer Liste von Payloads an
createlöst eine Sammelerstellung aus und gibtlist[str]IDs zurück. -
getunterstützt den Abruf einzelner Datensätze mit Datensatz-ID oder das Durchblättern von Ergebnismengen, wobei die Auswahl gegenüber der Einschränkung von Spalten bevorzugt wird. - Bei CRUD-Methoden, die eine Datensatz-ID akzeptieren, übergeben Sie die GUID-Zeichenfolge (36 Zeichen mit Bindestrichen). Klammern um die GUID werden akzeptiert, aber nicht erforderlich.