名称

ChangeSynergy::apiQueryData


描述

这是报告 apis 中使用的顶层类。同时还是表示子报告的顶层类。“number of objects”值表示其中包含的对象数量。“type of objects”是指定对象类型的整数值。“relational report level”值仅限 XML 语法分析例程使用。不能更改或引用该值。

 对象类型:(如 Globals.pm 的定义)
	PROBLEM_TYPE 17 // 这是一个变更请求
	TASK_TYPE    18 // 这是一个任务
	OBJECT_TYPE  19 // 这是一个对象
 <csapi_cquery_data>
	<csapi_cobject_vector_size>number of objects</csapi_cobject_vector_size>
	<csapi_cobject_vector_type>type of objects</csapi_cobject_vector_type>
	<csapi_cobject_vector_position>relational report level</csapi_cobject_vector_position>
	<csapi_cobject_vector_position>
	or
	<csapi_cobject_vector>
		<csapi_cobject_data_size>number of objects</csapi_cobject_data_size>
		<csapi_cobject_vector_transitions>transition link data</csapi_cobject_vector_transitions>
		<csapi_cobject_vector_assoc>
			<csapi_cquery_data>
			.
			.
			.
			</csapi_cquery_data>
		</csapi_cobject_vector_assoc>
		<csapi_cobject_data>
			<csapi_cobject_data_name>attribute name</csapi_cobject_data_name>
			<csapi_cobject_data_value>attribute value</csapi_cobject_data_value>
			<csapi_cobject_data_type>web type</csapi_cobject_data_type>
			<csapi_cobject_data_readonly>true|false</csapi_cobject_data_readonly>
			<csapi_cobject_data_required>true|false</csapi_cobject_data_required>
			<csapi_cobject_data_inherited>true|false</csapi_cobject_data_inherited>
			<csapi_cobject_data_default>default value for this attribute</csapi_cobject_data_default>
			<csapi_cobject_data_date>formatted date</csapi_cobject_data_date>
		</csapi_cobject_data>
		.
		.
		.
	</csapi_cobject_vector>
	or
	</csapi_cobject_vector_position>
	.
	.
	.
 </csapi_cquery_data>

方法

以下方法可用:

new
 sub new(xmlData)

初始化新创建的 ChangeSynergy::apiQueryData 类,以便使其表示传入的 xml 数据。

 my $queryData = new ChangeSynergy::apiQueryData(xmlData);
 
参数:
	xmlData  - 需要解析成可用格式的 XML 数据。
 抛出:

	die - 如果不能解析 xml 数据
getDataObject

根据对象数组中的位置获取一个数据对象。 返回结果是 apiObjectVector 类的实例。

my $xmlData = $queryData->getXmlData()

 参数:
	iPos - 用于检索数据的索引位置。
 返回:apiObjectVector
基于对象数组中的位置的一个数据对象。
 抛出:

	die - 如果列表为空。

	die - 如果指定的索引位置无效。
getDataSize

该类实例中包含的对象数量。

my $xmlData = $queryData->getDataSize($iPos)

 返回:标量
该类实例中包含的对象数量。

getDataType

该对象集的数据类型。可以为 17、18、19,其中一个对象类型。

my $xmlData = $queryData->getDataType()

 返回:标量
该对象集的数据类型。 
getXmlData

获取用于构造 apiQueryData 类的 XML 数据。

注意:仅适用于调试。

my $xmlData = $queryData->getXmlData()

 返回:标量
用于构造此对象的 XML 数据,非常适用于调试。  
getOfflineDatabases

在中央服务器方式下,如果在报告从 CR 穿过任务时部分开发数据库处于脱机状态,那么这些报告(例如 Data_Report_CR_Task)可以返回部分任务结果。 总的来说,报告将成功,只是包含的任务较少。在这种情况下,可以使用该函数检索处于脱机状态的数据库的列表。

在单机方式下,总是返回空数组。

my @dbs = $queryData->getOfflineDatabases()

 返回:数组
运行查询或报告时处于脱机状态的数据库标签的数组。