ChangeSynergy::QueryEntry
ChangeSynergy::QueryEntry 类是从服务器导入或导出报告时所使用的一部分类集合。所有 ReportEntry 对象都包含一个 QueryEntry 对象,以及一个或多个 SubReportEntry对象。这些对象组成一个标准的 Change 报告配置项。该类表示如下所示的“基本摘要”查询的 CCM_QUERY 项。
[CCM_QUERY] [NAME]All CRs[/NAME] [QRY_STRING]cvtype='problem'[/QRY_STRING] [DESCRIPTION]All CRs in the database. (CAUTION: This could be a large list)[/DESCRIPTION] [/CCM_QUERY]
示例:
eval { $csapi->setUpConnection("http", "machine", 8600);
my $aUser = $csapi->Login("u00001", "u00001", "User", "\\\\machine\\ccmdb\\cm_database");
#Construct a new Globals object. my $globals = new ChangeSynergy::Globals(); #Export a CR report named 'My Report' from the shared preferences my $reportEntry = $csapi->exportAReport($aUser, "My Report", $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE}); my $queryEntry = $reportEntry->getQueryEntry();
print "Name: " . $queryEntry->getName() . "\n"; print "Query String: " . $queryEntry->getQueryString() . "\n"; print "Desc: " . $queryEntry->getDescription() . "\n"; print "Prompting: " . $queryEntry->getPromptingQueryXml() . "\n"; print "Template: " . $queryEntry->getTemplate() . "\n"; };
if ($@) { print $@; }
标量 |
getDescription() 获取查询的描述。 |
标量 |
getName() 获取查询的名称,在上面的配置示例中,这是 NAME 标记中的数据。 |
标量 |
getPromptingQueryXml()> 获取定义提示查询工作方式的 XML 数据。 |
标量 |
getQueryString() 获取查询字符串。 |
标量 |
getTemplate() 获取将装入以提示用户输入查询信息的模板文件。 |
空 |
setDescription(scalar description) 设置查询的描述,很可能该描述将不会显示在界面上,因为将向最终用户显示报告描述。 |
空 |
setName() 设置查询的名称,在上面的配置示例中,这是 NAME 标记中的数据。 在多数情况下,不需要修改查询的名称,因为 Change 服务器将负责为嵌入报告的查询命名唯一的名称。 |
空 |
setPromptingQueryXml(scalar queryName) 设置查询的提示查询 XML。它定义提示查询工作方式。 |
空 |
setQueryString(scalar queryString) 设置运行报告时将使用的查询字符串。例如,(cvtype='problem') 和 (crstatus='assigned')。 查询字符串是导入报告时 QueryEntry 中最可能更改的数据块。 |
空 |
setTemplate() 设置将装入以在查询界面中提示用户输入查询信息的模板文件。 |
获取查询的描述。因为报告包含自身的描述,所以最终用户很可能看不到该描述。
返回:标量 查询的描述。
获取查询的名称,因为这些查询包含在报告之中,所以查询的名称将不会显示出来,但名称仍然必须存在。
返回:标量 查询的名称。
获取提示查询 XML 数据。
返回:标量 XML 格式的提示查询数据。
获取查询的查询字符串。
返回:标量 查询字符串。
获取将装入以提示用户输入查询信息的模板文件。仅适用于一般查询,而不适用于包含在报告中的查询。
返回:标量 模板的名称。
设置查询的描述,因为报告包含自身的描述,所以最终用户很可能看不到该描述。
参数: 标量:查询的描述。
示例: my $reportEntry = $csapi->exportAReport($aUser, "My Report", $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE}); my $queryEntry = $reportEntry->getQueryEntry(); $queryEntry->setDescription("All entered CRs");
设置查询的名称,因为这些查询包含在报告之中,所以查询的名称将不会显示出来,但名称仍然必须存在。 Change 服务器将确保名称唯一。
参数: 标量:该查询在创建时应该具有的名称。
示例: my $reportEntry = $csapi->exportAReport($aUser, "My Report", $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE}); my $queryEntry = $reportEntry->getQueryEntry(); $queryEntry->setName("All entered CRs");
设置查询的提示查询 XML 数据。最好通过界面或导出并导入现有报告的方式来创建提示报告。如果了解 XML 格式,则只需要设置该设置。
参数: 标量:定义提示查询的 XML 数据。
示例: my $reportEntry = $csapi->exportAReport($aUser, "My Report", $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE}); my $queryEntry = $reportEntry->getQueryEntry(); $queryEntry->setPromptingQueryXml(XML DATA);
设置运行报告时将使用的查询字符串。
参数: 标量:查询字符串。
示例: my $reportEntry = $csapi->exportAReport($aUser, "My Report", $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE}); my $queryEntry = $reportEntry->getQueryEntry(); $queryEntry->setQueryString("(cvtype='problem') and (crstatus='entered')");
设置将装入的模板名称,以要求用户输入查询。仅适用于标准查询,而不适用于包含在报告中的查询。
参数: 标量:模板名称。
示例: my $reportEntry = $csapi->exportAReport($aUser, "My Report", $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE}); my $queryEntry = $reportEntry->getQueryEntry(); $queryEntry->setTemplate("NotEditableQuery");