BatchRequest Kelas

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

Konstruktor

BatchRequest(client: DataverseClient)

Parameter

Nama Deskripsi
client
Diperlukan

Metode

changeset

Buat yang baru ChangeSet dilampirkan ke batch ini.

Set perubahan segera ditambahkan ke batch. Operasi ditambahkan ke yang dikembalikan ChangeSet melalui cs.records.* eksekusi secara atomik.

Example:


   with batch.changeset() as cs:
       cs.records.create("account", {"name": "ACME"})
       cs.records.create("contact", {"firstname": "Bob"})
execute

Kirim batch ke Dataverse dan kembalikan semua respons.

changeset

Buat yang baru ChangeSet dilampirkan ke batch ini.

Set perubahan segera ditambahkan ke batch. Operasi ditambahkan ke yang dikembalikan ChangeSet melalui cs.records.* eksekusi secara atomik.

Example:


   with batch.changeset() as cs:
       cs.records.create("account", {"name": "ACME"})
       cs.records.create("contact", {"firstname": "Bob"})
changeset() -> ChangeSet

Mengembalikan

Jenis Deskripsi

ChangeSet Baru siap untuk menerima operasi.

execute

Kirim batch ke Dataverse dan kembalikan semua respons.

execute(*, continue_on_error: bool = False) -> BatchResult

Parameter

Nama Deskripsi
continue_on_error
Diperlukan

Saat False (default), Dataverse berhenti pada kegagalan pertama dan mengembalikan kesalahan operasi tersebut sebagai respons 4xx. Ketika True, Prefer: odata.continue-on-error dikirim dan semua operasi dicoba.

Parameter Kata Kunci-Saja

Nama Deskripsi
continue_on_error
Nilai default: False

Mengembalikan

Jenis Deskripsi

BatchResult dengan satu entri per operasi HTTP dalam urutan pengiriman.

Pengecualian

Jenis Deskripsi

Jika batch melebihi 1000 operasi atau jenis kolom yang tidak didukung ditentukan.

Jika pra-resolusi metadata gagal (tabel atau kolom tidak ditemukan) untuk tables.deletetables.add_columnstables.remove_columns

Pada kegagalan tingkat HTTP (autentikasi, kesalahan server, dll.) yang mencegah batch dijalankan.