BatchRequest Classe
Builder para construir e executar um pedido Dataverse OData $batch .
Obtém via new (client.batch.new()). Adicionar operações através de records, tables, query, e dataframe, opcionalmente agrupar escritas num changeset, e depois chamar execute.
As operações são executadas sequencialmente na ordem adicionada. O resultado BatchResult contém um BatchItemResponse por cada pedido HTTP despachado (algumas operações expandem-se para múltiplos pedidos).
Note
Máximo de 1000 operações HTTP por lote.
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()
Construtor
BatchRequest(client: DataverseClient)
Parâmetros
| Name | Description |
|---|---|
|
client
Necessário
|
|
Métodos
| changeset |
Crie um novo ChangeSet anexo a este lote. O conjunto de mudanças é adicionado imediatamente ao lote. As operações adicionadas ao retorno ChangeSet via Example:
|
| execute |
Submeta o lote ao Dataverse e devolva todas as respostas. |
changeset
Crie um novo ChangeSet anexo a este lote.
O conjunto de mudanças é adicionado imediatamente ao lote. As operações adicionadas ao retorno ChangeSet via cs.records.* executam atómicamente.
Example:
with batch.changeset() as cs:
cs.records.create("account", {"name": "ACME"})
cs.records.create("contact", {"firstname": "Bob"})
changeset() -> ChangeSet
Devoluções
| Tipo | Description |
|---|---|
|
Uma nova ChangeSet operação pronta a receber. |
execute
Submeta o lote ao Dataverse e devolva todas as respostas.
execute(*, continue_on_error: bool = False) -> BatchResult
Parâmetros
| Name | Description |
|---|---|
|
continue_on_error
Necessário
|
Quando False (por defeito), o Dataverse para na primeira falha e devolve o erro dessa operação como resposta 4xx.
Quando True, |
Parâmetros Só de Palavra-Chave
| Name | Description |
|---|---|
|
continue_on_error
|
Default value: False
|
Devoluções
| Tipo | Description |
|---|---|
|
BatchResult com uma entrada por operação HTTP por ordem de submissão. |
Exceções
| Tipo | Description |
|---|---|
|
Se o lote ultrapassar 1000 operações ou se for especificado um tipo de coluna não suportado. |
|
|
Se os metadados falharem a pré-resolução (tabela ou coluna não encontradas) para |
|
|
Em falhas ao nível HTTP (autenticação, erro do servidor, etc.) que impedem a execução do lote. |