Batch Functionality

The Batch functionality on server side is the ability to group the commands under a common batchId. The group of commands can be either committed as a whole or rolled back as a whole.

Batch Functionality

The feature works as follows on the SOAP interface:

  • Call the StartBatch() to get a new batch with a batchId.
  • Modify (update, delete, or create) entities, sending the batch id for each request. This will attach the entities to the batch.
  • Either call completeBatch() with a commit or rollback parameter.
    • Commit will remove the batchId marker on entities.
    • Rollback will remove the batchId marker on entities and rollback changes on the entities (delete ones created during the batch, recreate ones deleted during the batch, or just get data back to the values they had initially).
    • Both will delete the batch.
Note: An entity that is attached to a batch cannot be modified outside of it. Trying to update, or delete an entity outside of the batch will result in an error.