导出项目树
导出为 ComponentTree 类型的文件包含完整或部分导出的 项目树。在导出的文件中,还可以获取组件的 ID 和状态。
输出可以是 XML 或 JSON 文件。
Info
如果导出完整的 项目树,并在导出过程中考虑所有版本信息(WithVersions=Y)或选择 JSON 作为导出格式,在某些情况下可能会产生大量数据。在这种情况下,建议只导出 项目树 的特定路径,而不导出版本信息,或选择导出为 XML 文件。
除了参数文件部分所述的键值外,参数文件还可以包含以下专门用于此导出的键值。
Common 节
在 [Common] 部分,可以配置以下键:
键 | 描述 | 值 |
---|---|---|
Dir | 要导出的项目树部分的相对路径。如果为 ComponentID 指定了值,则此密钥将被忽略。 | - 如果该键为空(默认值),整个 项目树 将被导出。(执行用户无法访问的目录和组件除外)。 |
如果键不为空,则条目前必须有一个反斜杠 ("\")。 | ||
也可以输入一个组件的路径(带名称)。 | ||
WithVersions | 决定是否输出版本控制信息。 | - Y:信息已输出。 - N:不输出信息(默认值)。 |
OnlyLatestVersion | 决定是只输出最新版本的信息,还是输出所有版本的信息。前提条件是 WithVersions 参数的值为 Y。可以使用以下值 | - Y:只输出最后一个版本的信息 。- N:输出所有信息(默认值) |
WithMasterData | 确定是否要输出主数据信息。 | - Y:输出信息(默认值) 。- N:不输出信息。 |
EnableNodeTree | 决定是否将项目目录层次结构创建为 XML 节点。 | - Y:XML 节点已创建。- N:未创建 XML 节点(默认值) |
调用示例
参数文件 exportComponentTree.ini
[Common]
ReportType=ComponentTree
ExportFile=D:\Test\myComponentTree.xml
WithVersions=N
WithMasterData=Y
EnableNodeTree=N
[User]
Account={User}
Password={Password}
结果文件中出现的 XML 属性概览
元素根
<root>
元素是 项目树 的起点。
元素节点
<note>
元素代表 项目树 中的一个目录。只有当 EnableNodeTree 键在参数文件中被赋值为 Y 时,才会输出该元素。
属性 | 描述 |
---|---|
Name="..." | 目录名称 |
元素组件
<组件>
元素包含有关组件的信息。
属性 | 描述 |
---|---|
Name="..." | 组件的名称 |
Path="..." | 组件工作目录的相对路径 |
Id="..." | 唯一组件 ID(GUID 格式) |
TypeId="..." | 组件的组件类型 ID(GUID 格式) |
State="n" | 组件的状态信息。 如果将数值视为 32 位二进制数,则可读出以下信息: 0x00000010:对其他用户锁定 0x00000020:标记为 进行中 |
MultiEdit="..." | 指定组件是否具有多用户编辑属性。下列值可能为 Y 和 N。 |
元素数据
<data>
元素包含组件主数据的列表。只有当 WithMasterData 键在参数文件中被赋值为 Y 时,才会输出该元素。
属性 | 描述 |
---|---|
D1="..." D2="..." ... D10="..." | 组件主数据 |
元素版本
<Versions>
元素包含关于组件版本的信息。只有当 EnableNodeTree 键在参数文件中被赋值为 Y 时,才会输出该元素。
元素版本
<Versions>
元素包含以下属性:
属性 | 描述 |
---|---|
Id="..." | 数据记录的版本 ID |
Number="n" | 数据记录的版本号 |
TimeStampUTC="..." | 版本控制时间(UTC) |
TimeStampLocal="..." | 版本控制时间(当地时间) |
UserDefined="..." | 用户定义的版本标识符 |
UserId="..." | 创建版本控制的用户的唯一 ID(GUID 格式) |
UserName="..." | 创建版本的用户 |
ComputerName="..." | 创建版本的计算机 |
Comments="..." | 注释 |
ChangeReason="..." | 变更原因 |
SubDirArchive="..." | 服务器存档中存储相应版本组件(如 Archive.zip 文件)的文件夹名称 |
StateArchive="n" | 关于该版本的额外信息。 如果该值被视为 32 位二进制数,可以读取以下信息: 0x00000002:存档已检出。 0x00000020:存档已检入。 0x00000040:存档已(由指定用户)删除。 |
未压缩尺寸 | 组件的大小 |
尺寸压缩 | 组件的包装尺寸 |
元素标签
<Tag>
元素包含分配给每个版本的标签信息。只有当至少分配了一个标签时,该元素才会被输出。
元素标签
<Tag>
元素包含标签内容的信息。
属性 | 描述 |
---|---|
Name="..." | 标签名称 |
元素 LockState
<LockState>
元素包含组件的锁定状态信息。只有存在锁定状态时,才会输出该元素。
属性 | 描述 |
---|---|
State="n" | 指定组件的锁定状态。可能的值如下:1: 锁定 2: 进行中 |
UserId="..." | 分配锁定状态的用户 ID(GUID 格式 |
UserName="..." | 指定了块状态的用户 |
EmailAddress="..." | 分配锁定状态的用户的电子邮件地址。 如果未指定电子邮件地址,则添加空字符串。 |
TimeStampLocal="..." | 分配锁定状态的时间(当地时间) |
TimeStampUTC="..." | 分配锁定状态的时间(UTC) |
天数="n" | 指定组件被阻止的时间(天数)。 |
ComputerName="..." | 分配锁定状态的计算机 |
Comments="..." | 锁定时输入的注释 |