operations Paket

Namespace operasi untuk SDK Dataverse.

Modul ini berisi kelas namespace operasi yang mengatur operasi SDK ke dalam grup logis: rekaman, kueri, dan tabel.

Modul

batch

Namespace operasi batch untuk Dataverse SDK.

dataframe

Namespace operasi CRUD DataFrame untuk SDK Dataverse.

files

Namespace operasi file untuk SDK Dataverse.

query

Namespace operasi kueri untuk SDK Dataverse.

records

Rekam namespace operasi CRUD untuk SDK Dataverse.

tables

Namespace operasi metadata tabel untuk SDK Dataverse.

Kelas

BatchDataFrameOperations

Pembungkus berorientasi DataFrame untuk operasi rekaman batch.

Menyediakan create, update, dan delete yang menerima pandas.DataFrame / pandas.Series input dan mengonversinya ke dict standar sebelum mengantre pada batch. Ini memungkinkan pemanggil ilmu data memberi umpan DataFrames langsung ke dalam batch tanpa konversi manual.

Diakses melalui batch.dataframe.

Example:


   import pandas as pd

   batch = client.batch.new()
   df = pd.DataFrame([
       {"name": "Contoso", "telephone1": "555-0100"},
       {"name": "Fabrikam", "telephone1": "555-0200"},
   ])
   batch.dataframe.create("account", df)
   result = batch.execute()
BatchOperations

Namespace untuk operasi batch (client.batch).

Diakses melalui client.batch. Gunakan new untuk membuat penyusun BatchRequest .

Example:


   batch = client.batch.new()
   batch.records.create("account", {"name": "Fabrikam"})
   result = batch.execute()
BatchQueryOperations

Operasi kueri pada BatchRequest.

client.query Cermin persis: nama metode yang sama, tanda tangan yang sama. Semua metode kembali None; hasil tiba melalui BatchResult.

Jangan membuat instans secara langsung; gunakan batch.query.

BatchRecordOperations

Rekam operasi pada BatchRequest.

client.recordsCermin : nama metode yang sama, tanda tangan yang sama. Semua metode kembali None; hasil tersedia melalui BatchResult setelah execute.

Metode GA: retrieve (rekaman tunggal) dan list (multi-rekaman, satu halaman). get tidak digunakan lagi — gunakan retrieve sebagai gantinya.

Jangan membuat instans secara langsung; gunakan batch.records.

BatchRequest

Penyusun untuk membangun dan menjalankan permintaan Dataverse OData $batch .

Dapatkan melalui new (client.batch.new()). Tambahkan operasi melalui records, , tablesquery, dan dataframe, secara opsional mengelompokkan changesetpenulisan ke dalam , lalu panggil execute.

Operasi dijalankan secara berurutan dalam urutan yang ditambahkan. Hasilnya BatchResult berisi satu BatchItemResponse per permintaan HTTP yang dikirim (beberapa operasi diperluas ke beberapa permintaan).

Note

Maksimum 1000 operasi HTTP per batch.

Example:


   batch = client.batch.new()
   batch.records.create("account", {"name": "Contoso"})
   batch.tables.get("account")
   with batch.changeset() as cs:
       ref = cs.records.create("contact", {"firstname": "Alice"})
       cs.records.update("account", account_id, {
           "primarycontactid@odata.bind": ref
       })
   result = batch.execute()
BatchTableOperations

Operasi metadata tabel pada BatchRequest.

client.tables Cermin persis: nama metode yang sama, tanda tangan yang sama. Semua metode kembali None; hasil tiba melalui BatchResult.

Note

tables.delete, tables.add_columns, dan tables.remove_columns

memerlukan pencarian metadata (GET EntityDefinitions) di

execute waktu untuk mengatasi MetadataId tabel.

Pencarian ini transparan untuk pemanggil.

Note

tables.add_columns dan tables.remove_columns masing-masing menghasilkan satu

item batch per kolom, sehingga mereka berkontribusi pada beberapa entri

responses.

Jangan membuat instans secara langsung; gunakan batch.tables.

ChangeSet

Grup transaksional operasi penulisan catatan tunggal.

Semua operasi berhasil atau digulung balik bersama-sama. Gunakan sebagai manajer konteks atau panggil records untuk menambahkan operasi secara langsung.

Jangan membuat instans secara langsung; gunakan changeset.

Example:


   with batch.changeset() as cs:
       ref = cs.records.create("contact", {"firstname": "Alice"})
       cs.records.update("account", account_id, {
           "primarycontactid@odata.bind": ref
       })
ChangeSetRecordOperations

Catat operasi tulis yang tersedia di dalam ChangeSet.

client.records Cermin tetapi dibatasi untuk formulir rekaman tunggal (tidak ada pembuatan/pembaruan/penghapusan massal). Hanya operasi tulis yang diizinkan — GET tidak diizinkan di dalam set perubahan.

Jangan membuat instans secara langsung; gunakan ChangeSet.records.

DataFrameOperations

Namespace untuk operasi CRUD DataFrame pandas.

Diakses melalui client.dataframe. Menyediakan pembungkus berorientasi DataFrame di sekitar operasi CRUD tingkat rekor.

Example:


   import pandas as pd

   client = DataverseClient(base_url, credential)

   # Query records as a DataFrame
   df = client.dataframe.get("account", select=["name"], top=100)

   # Create records from a DataFrame
   new_df = pd.DataFrame([{"name": "Contoso"}, {"name": "Fabrikam"}])
   new_df["accountid"] = client.dataframe.create("account", new_df)

   # Update records
   new_df["telephone1"] = ["555-0100", "555-0200"]
   client.dataframe.update("account", new_df, id_column="accountid")

   # Delete records
   client.dataframe.delete("account", new_df["accountid"])
FileOperations

Namespace untuk operasi file.

Diakses melalui client.files. Menyediakan operasi unggahan file untuk kolom file Dataverse.

Example:


   client = DataverseClient(base_url, credential)

   client.files.upload(
       "account", account_id, "new_Document", "/path/to/file.pdf"
   )
QueryOperations

Namespace untuk operasi kueri.

Diakses melalui client.query. Menyediakan operasi kueri dan pencarian terhadap tabel Dataverse.

Example:


   from PowerPlatform.Dataverse.models.filters import col

   client = DataverseClient(base_url, credential)

   # Fluent query builder (recommended)
   for record in (client.query.builder("account")
                  .select("name", "revenue")
                  .where(col("statecode") == 0)
                  .order_by("revenue", descending=True)
                  .top(100)
                  .execute()):
       print(record["name"])

   # SQL query
   rows = client.query.sql("SELECT TOP 10 name FROM account ORDER BY name")
   for row in rows:
       print(row["name"])
RecordOperations

Namespace untuk operasi CRUD tingkat rekaman.

Diakses melalui client.records. Menyediakan operasi buat, perbarui, hapus, dan dapatkan pada rekaman Dataverse individual.

Example:


   client = DataverseClient(base_url, credential)

   # Create a single record
   guid = client.records.create("account", {"name": "Contoso Ltd"})

   # Get a record
   record = client.records.get("account", guid, select=["name"])

   # Update a record
   client.records.update("account", guid, {"telephone1": "555-0100"})

   # Delete a record
   client.records.delete("account", guid)
TableOperations

Namespace untuk operasi metadata tingkat tabel.

Diakses melalui client.tables. Menyediakan operasi untuk membuat, menghapus, memeriksa, dan mencantumkan tabel Dataverse, serta menambahkan dan menghapus kolom.

Example:


   client = DataverseClient(base_url, credential)

   # Create a table
   info = client.tables.create(
       "new_Product",
       {"new_Price": "decimal", "new_InStock": "bool"},
       solution="MySolution",
   )

   # List tables
   tables = client.tables.list()

   # Get table info
   info = client.tables.get("new_Product")

   # Add columns
   client.tables.add_columns("new_Product", {"new_Rating": "int"})

   # Remove columns
   client.tables.remove_columns("new_Product", "new_Rating")

   # Delete a table
   client.tables.delete("new_Product")