SaveQueryDef

説明

ワークスペース内の指定されたロケーションにクエリーを保存します。

現在のセッションにログインしたユーザーには、qdefPath パラメータに指定されたパス名へのアクセス権が必要です。(したがって、管理権限を持つユーザーのみが共用クエリー フォルダにクエリーを保存できます。) qdefPath パラメータに指定するパス名に、存在しないサブフォルダが含まれている場合、Rational ClearQuest はこれらのフォルダを暗黙的に作成します。

SaveQueryDef メソッドの最後のパラメータは、既存の QueryDef オブジェクトを同じ名前およびパスのオブジェクトで上書きするかどうかを指定する Boolean 値です (0 = 上書きしない、1 = 上書きする)。 overwrite パラメータに値 0 または 1 が指定されて、クエリーが既に存在する場合、このメソッドからエラーが戻されます。

構文

VBScript

workspace.SaveQueryDef qdefName, qdefPath, queryDef, overwrite 

Perl

$workspace->SaveQueryDef(qdefName, qdefPath, queryDef, overwrite); 
識別子
説明
workspace
現在のセッションから取得された Workspace オブジェクト。
qdefName
クエリーの名前を含む String。
qdefPath
クエリーを保存するフォルダのパス名を含む String。
queryDef
保存するクエリーを表す QueryDef オブジェクト。
overwrite
名前およびパス情報が同じクエリーをこのクエリーで上書きするかどうかを示す Boolean。
戻り値
なし。

Perl

use CQPerlExt;
my $CQSession = CQSession::Build();
my $RootFolder = "Public Queries";
$CQSession->UserLogon($ologon, $opw, $odb, "");
$workspace = $CQSession->GetWorkSpace();
$QueryDef = $CQSession->BuildQuery("Defect");
@owner = ("jswift");
@state = ("Closed");
@dbfields = ("ID","State","Headline");
foreach $field (@dbfields) {
      $QueryDef->BuildField($field);   
      }
$FilterNode1 = $QueryDef->BuildFilterOperator($CQPerlExt::CQ_BOOL_OP_AND);
$FilterNode1->BuildFilter("Owner", $CQPerlExt::CQ_COMP_OP_EQ, ¥@owner);
$FilterNode1->BuildFilter('State', $CQPerlExt::CQ_COMP_OP_NOT_IN, ¥@state);
$ResultSet = $CQSession->BuildResultSet($QueryDef);
$ResultSet->Execute();
$workspace->SaveQueryDef("delete me", $RootFolder, $QueryDef, 1);
print "'$RootFolder/delete me' copied¥n";
  }
CQSession::Unbuild($CQSession); 

フィードバック