BatchRequest Osztály

Dataverse OData-kérés $batch létrehozására és végrehajtására szolgáló Builder.

Szerezze be a (client.batch.new()) segítségével new . Adjon hozzá műveleteket recordsa , tables, queryés dataframe, opcionálisan csoport írási egy changeset, majd hívás execute.

A műveletek végrehajtása sorrendben történik a hozzáadott sorrendben. Az eredményül kapott BatchResult HTTP-kérésenként egy BatchItemResponse van elküldve (egyes műveletek több kérelemre bonthatók ki).

Megjegyzés:

Kötegenként legfeljebb 1000 HTTP-művelet.

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)

Paraméterek

Name Description
client
Kötelező

Metódusok

changeset

Hozzon létre egy újat ChangeSet ehhez a köteghez.

A módosításkészletet a rendszer azonnal hozzáadja a köteghez. A visszaadott ChangeSet műveletek atomi végrehajtás útján cs.records.* hozzáadva.

Example:


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

Küldje el a köteget a Dataverse-nek, és adja vissza az összes választ.

changeset

Hozzon létre egy újat ChangeSet ehhez a köteghez.

A módosításkészletet a rendszer azonnal hozzáadja a köteghez. A visszaadott ChangeSet műveletek atomi végrehajtás útján cs.records.* hozzáadva.

Example:


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

Válaszok

Típus Description

Új ChangeSet készen áll a műveletek fogadására.

execute

Küldje el a köteget a Dataverse-nek, és adja vissza az összes választ.

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

Paraméterek

Name Description
continue_on_error
Kötelező

Ha hamis (alapértelmezett), a Dataverse az első hibánál leáll, és 4xx válaszként adja vissza a művelet hibáját. Ha igaz, Prefer: odata.continue-on-error a rendszer elküldi az összes műveletet.

Csak kulcsszavas paraméterek

Name Description
continue_on_error
Alapértelmezett érték: False

Válaszok

Típus Description

BatchResult http-műveletenként egy bejegyzéssel a beküldési sorrendben.

Kivételek

Típus Description

Ha a köteg meghaladja az 1000 műveletet, vagy nem támogatott oszloptípus van megadva.

Ha a metaadatok előzetes felbontása sikertelen (tábla vagy oszlop nem található) a következőhöz: tables.deletetables.add_columnstables.remove_columns

HTTP-szintű hibák esetén (hitelesítés, kiszolgálóhiba stb.), amelyek megakadályozzák a köteg végrehajtását.