Skip to content

Exporting the Project tree

You can export the Project tree either in full or in part. The exported file includes key details such as the component IDs and their statuses, among other information.

In addition to selecting the export format, you can configure other export settings, including:

  • Whether to export the entire Project tree, its specific section, or an individual component.
  • Whether to include version information, and if so, whether to export only the latest version or all versions.
  • Whether to include master data for the components.
  • Whether to represent the project directory structure as an XML node.

If you export the complete Project tree, include all version information (WithVersions=Y), or select JSON as the export format, the resulting data volume may be very large. If this is the case, it is recommended to export only a specific path of the Project tree and no information on the versions or to select export to an XML file.

Settings for the ExportModule

In addition to the keys described in the Parameter file page, the parameter file can also contain the following keys specifically for this export.

Section Common

In the [Common] section, the following keys can be configurated:

Keys Description Values
Dir Relative path of the part of the Project tree that is to be exported. This key is ignored if a value is specified for ComponentID. If this key is empty (default value), the entire Project tree is exported (with the exception of the directories and components to which the executing user has no access.)
- If the key is not empty, the entry must be preceded by a backslash ("\").
- The path of a component (with name) can also be entered.
WithVersions Determines whether information on the versions should be output. - Y: The information is output.
- N: The information is not output (default value).
OnlyLatestVersion Determines whether information should only be output for the latest version or for all versions. The prerequisite is that the WithVersions parameter has the value Y. - Y: Only information on the last version is output.
- N: All information is output (default value)
WithMasterData Determines whether information on the master data should be output. - Y: The information is output (default value).
- N: The information is not output.
EnableNodeTree Determines whether the project directory hierarchy is to be created as an XML node. - Y: The XML nodes are created.
- N: The XML nodes are not created (default value)

Example call

VDogAutoExport.exe "/rd:D:\vdClientArchive" "/CFile:D:\Test\exportComponentTree.ini"

Parameter file exportComponentTree.ini

[Common]
ReportType=ComponentTree
ExportFile=D:\Test\myComponentTree.xml
WithVersions=N
WithMasterData=Y
EnableNodeTree=N

[User]
Account={User}
Password={Password}

Output file

The export can be generated in either XML or JSON format, depending on the selected output option.

The XML output file contains the following elements:

root:

The <root> element is the starting point of the Project tree.

node:

The <note> element represents a directory in the Project tree. This element is only output if the project directory hierarchy was created as an XML node.

Attribute Description
Name="..." Name of the directory

component:

The <component> element contains information about the component.

Attribute Description
Name="..." Name of the component
Path="..." Relative path of the component's working directory
Id="..." Unique component ID (in GUID format)
TypeId="..." Component type ID of the component (in GUID format)
State="n" Status information on the component.
If the value is viewed as a 32-bit binary number, the following information can be read out:
0x00000010: Locked for other users
0x00000020: Marked as in progress
MultiEdit="..." Specifies whether the component has the Multi-User Editing property or not. Possible values are Y and N.

data:

The <data> element contains a list of the component's master data.

This element is only output if master data has been exported.

Attribute Description
D1="..."
D2="..."
...
D10="..."
Master data of the component

Versions:

The <Versions> element contains information on the versions of a component.

This element is only output if information on the versions has been exported.

Version:

The <Versions> element contains the following attributes:

Attribute Description
Id="..." Version ID for the data record
Number="n" Version number for the data record
TimeStampUTC="..." Time of versioning (UTC)
TimeStampLocal="..." Time of versioning (local time)
UserDefined="..." User-defined version identifier
UserId="..." Unique ID of the user (in GUID format) who created the version
UserName="..." User who created the version
ComputerName="..." Computer on which the version was created
Comment="..." Comment
ChangeReason="..." Reason for change
SubDirArchive="..." Name of the folder in which the corresponding version of the component (as the file Archive.zip) is stored in the server archive
StateArchive="n" Additional information about the version.
If the value is viewed as a 32-bit binary number, the following information can be read out:
0x00000002: The archive has been checked out.
0x00000020: The archive has been checked in.
0x00000040: The archive has been deleted (by the specified User).
SizeUncompressed The size of the component
SizeCompressed The packed size of the component

Tags:

The <Tag> element contains information on the tags assigned to each version.

This element is only output if at least one tag is assigned.

Tag:

The <Tag> element contains information on the content of a tag.

Attribute Description
Name="..." Name of the tag

LockState:

The <LockState> element contains information on the lock status of a component.

This element is included in the output only if at least one component has a lock status.

Attribute Description
State="n" Specifies the lock status of the component.
Possible values: 1: Locked, 2: In progress
UserId="..." ID of the user (in GUID format) who has assigned the lock status
UserName="..." User who has assigned the blocking status
EmailAddress="..." Email address of the user who assigned the lock status.
If no email address is specified, an empty string is added.
TimeStampLocal="..." Time at which the lock status was assigned (local time)
TimeStampUTC="..." Time at which the lock status was assigned (UTC)
Days="n" Specifies how long the component has been blocked (in days).
ComputerName="..." Computer from which the lock status was assigned
Comment="..." Comment that was entered when locking

Related topics