Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O SDK dá suporte a operações de criação, atualização e exclusão (CUD) para tabelas personalizadas e colunas, associação opcional a soluções, além de recuperar e listar definições de tabelas.
Vamos examinar o código de exemplo para trabalhar com uma tabela personalizada.
# 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")
Importante
Todos os nomes de coluna personalizados devem incluir o valor do prefixo de personalização (por exemplo, "new_"). Esse requisito garante uma nomenclatura explícita e previsível e se alinha aos requisitos de metadados do Dataverse.
Para obter mais informações sobre como trabalhar com metadados de tabela personalizados:
-
createsempre retorna uma lista de GUIDs (length=1 para entrada única). -
updateedeleteretorneNonepara interfaces simples e múltiplas. - Passar uma lista de payloads para
createdispara uma criação em lote e retorna uma lista de IDs. -
getdá suporte à recuperação de um único registro com ID de registro ou paginação por meio de conjuntos de resultados (é preferível selecionar para limitar as colunas). - Para métodos CRUD que recebem um ID de registro, passe a string GUID (com hífens, de 36 caracteres). Parênteses ao redor do GUID são aceitos, mas não são necessários.