次の Perl 例は、Rational ClearQuest ユーザー データベース内のすべての障害レコードをリストして、レコードの 1 つを変更する外部プログラムです。プログラムは次のとおりです。
- SAMPL データベースのすべての障害レコードをリストし、表示フィールドとして、「id」、「Headline」、「State」を選択します。
- 障害レコード SAMPL00000012 の「Description」フィールドを「This defect has been modified」に変更します。
Perl
use CQPerlExt;
#Getting the session
my $session = CQSession::Build();
CQSession::UserLogon ($session, "admin", "", "SAMPL", "Lab3");
my $querydef = $session->BuildQuery ("defect");
$querydef->BuildField ("id");
$querydef->BuildField ("headline");
my $resultset = $session->BuildResultSet ($querydef);
$resultset->Execute();
while (($resultset->MoveNext()) == 1)
{
$id = $resultset->GetColumnValue(1);
$rec = $session->GetEntity("Defect", $id);
$head = $rec->GetFieldValue("Headline")->GetValue();
$state= $rec->GetFieldValue("State")->GetValue();
print "$id, $head, $state. ¥n";
if ($id eq "SAMPL00000012") {
$session->EditEntity($rec, "Modify");
$rec->SetFieldValue("description", "This defect has been modified.");
$rec->Validate();
$rec->Commit();
}
}
CQSession::Unbuild($session);