The method is used to export a complete application structure all at once, i.e. the application entity together with all of its sub entities and its deployment model.
Siehe auch:
Request
DeepExport
Parameters
username (String): Name of the user (syntax: system name / client number / user name / department)
When only one client is installed, the system name is optional.
password (String): Password of the user specified in username
mainType (String): must be Application
customType (optional, String): Name of the main type of the entities to export
You can only specify custom types based on the main type Application.
Use this option to export a specific custom type only. If you leave the parameter empty, all custom types will be exported.
begin (optional, Integer): Index of the entity to begin the export from
If not set, the export will begin with the first entity (index number of the first entity is 0).
count (optional, Integer): Number of entities to export
If not set, all entities are exported.
startDate (optional, Date): If set, only entities that have been created on that day or after the specified day are considered in the export - otherwise, all entities are considered in the export
endDate (optional, Date): If set, only entities that have been created until the specified date are considered in the export - otherwise, all entities are considered in the export
conditions (optional, List): List of conditions to restrict the export
You can only specify conditions to filter entities of the main type Application. You cannot set conditions for subordinate entities (e.g., workflows).
You can use a string array of conditions to filter the data. The format of a single condition is: [propertyname] [operator] '[value]'.
If multiple conditions are given, all of them are applied (AND).
Note: If there are multiple properties with the same name but different types (e.g. one is a date and time property, the other a longtext property), the operator will behave as if both properties are a string (e.g. greater or lower than will not work as expected for the date and time property).
All parameters (e.g. startDate or endDate) do affect the selection of the main entities only. They are not applied in the export of their sub entities.
Response
The response contains the result object containing the exported zip file in base64 encoded format. See section Result object on WebService.
Result ZIP File
Deep export validates the input parameters and generates a ZIP file in base64 encoded format that contains a set of the common single entity export files in a predefined file and folder structure, shown in the following example:
In addition to this, a meta file is generated for the deep export and attached to the ZIP file in its root folder. This meta file contains information about the content of the export file, about the included files as well as about the system version with which it was created (see Meta file with information about the export).
For each application that gets exported the following folder and file structure is created:
File system folder | Description |
---|---|
\Application + [FirstCharacterOfObjectName + LastCharacterOfObjectName + "_" + ObjectID/DateTime] E.g.: Application dp_18309 |
One folder for each application. This folder contains the export files of the following entities:
|
\Component + [FirstCharacterOfObjectName + LastCharacterOfObjectName + "_" + ObjectID/DateTime] E.g.: Component dp_18309 |
One folder for each component. This folder contains the export files of the following entities:
|
\Workflow + [FirstCharacterOfObjectName + LastCharacterOfObjectName + "_" + ObjectID/DateTime] E.g.: Workflow dp_18309 |
One folder for each worklow. This folder contains the export files of the following entities:
|
Each single entity export uses the name as identifier of the entity itself and all of its references.
The meta file Export.xml is a XML file that contains relevant data about the export files and consists of three sections (XML elements):
System:
Property | Type | Description |
---|---|---|
SystemVersion | String | Version number of theARA with which the export file was generated. E.g: 4.0 |
Files:
Property | Type | Description |
---|---|---|
file | String | Relative path and file name |
ExportContext:
The context information belongs to the main entities (currently applications only) for which the export was done. For each application the XML element ExportContext is written to the file:
Property | Type | Description |
---|---|---|
mainType | String | Maintype of the entity: Application |
name | String | Optional name of the component, must be set for mainType='Component' |
description | String | Description of the entity (optional) |
createdOn | ISO-8601 date/time | Timestamp of the entities creation |
createdBy | String | Standard username of the user who created the entity |
lastModifiedOn | ISO-8601 date/time | Timestamp of the entities last modification (optional) |
lastModifiedBy | String | Standard username of the user who modified the entity the last time (optional) |
Example
Example of a deep export meta file:
<?xml version="1.0" encoding="utf-8"?> <DeepExport> <System> <!-- Application version with which the export was created --> <SystemVersion>3.5.168.20601</SystemVersion> </System> <Files> <!-- List of all files in the order they need to be imported --> <File>\Application App1\Application Export Application.xml</File> <File>\Application App1\Component Database\Component Database.xml</File> <File>\Application App1\Component Database\Component Web App.xml</File> </Files> <ExportContext> <!-- List of all entities the export was performed for. --> <Entities> <Entity> <mainType>Application</mainType> <name>Export Application</name> <description>Some additional description</description> <createdOn>2012-12-06T11:18:50.4790453+01:00</createdOn> <createdBy>2000/API/API</createdBy> <lastModifiedOn>2012-12-06T14:14:05.4790453+01:00</lastModifiedOn> <lastModifiedBy>2000/API/API</lastModifiedBy> </Entity> </Entities> </ExportContext> </DeepExport>