Batch XML Documents
See also:
Working with Batch Administration
Has the format shown below.
<UFSBatchRequest>
<Batch
command="xxxx" name="Jons batch" id="nnnnn"
debug="yes">
<Forms>
...... see below
</Forms>
</Batch>
</UFSBatchRequest>
The command attribute is optional and can have
values:
create |
Save the batch in the database but don't run it. (This is
the default if no command is supplied). |
runSync |
run a batch synchronously |
runAsync |
run a batch asynchronously |
createAndRunSync |
creates a batch then runs it synchronously |
createAndRunAsync |
creates a batch then runs it asynchronously |
If command is 'create', then the <Forms> tag is
required. This command will create a new batch in the database, but will not
execute it. A short batch response is returned.
If command is runSync or runAsync, the id
attribute is required. These commands can be used to execute a batch that
already exists in the database. A short XML response is returned immediately
for runAsync, and a long XML response is returned for runSync when
execution of the batch has completed.
If command is createAndRunSync or createAndRunAsync,
the <Forms> tag is required. These commands create a new batch in the
database and execute it immediately. A short XML response is returned
immediately for createAndRunASync, and a long XML response is returned
for createAndRunSync when execution of the batch has completed.
The name attribute is optional when supplying a new
batch. If ommitted, a default of Batch_Dyyyymmdd_Thhmmss is
provided.
The debug attribute is optional and can be
specified with any command and will cause the system to write diagnostic info
to the system log.
The Forms tag contains any number of forms, each
one of which can contain any number of fields and their values, as shown in the
following example. The id attribute for each Form must specify
the name of a valid Ebase form. The id attribute for each Field
must specify the name of a valid field within the specific form. The language
attribute for each Form is optional and specifies the language in which
that form will be executed, and this affects how the format of input data is
interpreted for field types that are language dependent e.g. dates and numeric
fields. See The Ebase Batch System for more
information on internationalisation considerations.
<Forms>
<Form id="MORTGAGE_APPLICATION"
language="EN">
<Fields>
<Field id="MORTG_TYPE">
<Value>DISC</Value>
</Field>
<Field
id="DISCOUNT_LENGTH">
<Value>6M</Value>
</Field>
........more fields
</Fields>
</Form>
<Form id="FORM_2">
<Fields>
<Field id="FIRST_NAME">
<Value>Fred</Value>
</Field>
<Field id="SECOND_NAME">
<Value>Smith</Value>
</Field>
........more fields
</Fields>
</Form>
.....more forms
<Forms>
This response is returned for commands create,
runAsync and createAndRunAsync.
<UFSBatchResponse>
<Batch name="xxxxxx"
id="nnn" status="OK"/>
</UFSBatchResponse>
The status attribute can have values 'OK' and
'Error'.
This response is returned for commands runSync and createAndRunSync.
This is returned when execution of the batch has completed.
<UFSBatchResponse>
<Batch id="nnn"
status="OK"/>
<Forms>
.. then form
responses as per UFSFormResponse
</Forms>
</Batch>
</UFSBatchResponse>
Within the Forms tag, each form will have its own response.
The forms are presented in the same order as the forms in the input XML
document. There are six possible responses as shown in the following examples:
1. processed successfully....
<Forms>
<Form id="JOB_APPLICATION"
status="OK">
<Pages>
<Page id="PAGE_1"
status="OK"></Page>
<Page id="PAGE_2"
status="OK"></Page>
<Page id="PAGE_3"
status="OK"></Page>
</Pages>
<Final
Messages>
<Message>Application 2000307
created successfully</Message>
</Final Messages>
</Form>
</Forms>
2. processed unsuccessfully - form
error. An error occurred when no current page exists i.e. in a before or after
event or loading the form.
<Forms>
<Form id="xxxxx"
status="System error">
<Error>error message
text</Error>
</Form>
</Forms>
3. processed unsuccessfully - error
setting a field value
<Forms>
<Form id="xxxxx"
status="Error">
<Fields>
<Field id="xxxxx"
status="Error">
<Value>field value</Value>
<Error>error message
text</Error>
</Field>
</Fields>
</Form>
</Forms>
4. processed unsuccessfully - page
error i.e. an error message issued by a page event or an error somewhere on the
page.
<Forms>
<Form id="JOB_APPLICATION"
status="ERROR">
<Pages>
<Page id="PAGE_1"
status="OK"></Page>
<Page id="PAGE_2"
status="ERROR"></Page>
<Error>Mandatory field POSTCODE
not supplied</Error>
</Page>
<Page id="PAGE_3"
status="NOT_PROCESSED"></Page>
</Pages>
</Form>
</Forms>
5. processed unsuccessfully - an
error message issued by a field event
<Forms>
<Form id="JOB_APPLICATION"
status="ERROR">
<Pages>
<Page id="PAGE_1"
status="OK"></Page>
<Page id="PAGE_2"
status="ERROR"></Page>
<Fields>
<Field id="POSTCODE">
<Value></Value>
<Error>Mandatory field
POSTCODE not supplied</Error>
</Field>
</Fields>
</Page>
<Page id="PAGE_3"
status="NOT_PROCESSED"></Page>
</Pages>
</Form>
</Forms>
6. invalid request. This should not
occur
<Forms>
<Error>XML request document is not
valid</Error>
</Forms>
This response is returned if the input XML document cannot
be parsed or if the request cannot be executed for any reason.
<UFSBatchResponse>
<Error>message</Error>
</UFSBatchResponse>