ChangeSynergy::QueryEntry
ChangeSynergy::QueryEntry クラスは、サーバーに対してレポートをインポートまたはエクスポートする際にクラス・セットの一部として使用されます。 すべての ReportEntry オブジェクトには、1 つの QueryEntry オブジェクトおよび 1 つ以上の 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() ユーザーにクエリー情報を求めるプロンプトを出すためにロードされるテンプレート・ファイルを取得します。 |
void |
setDescription(scalar description) このクエリーの詳細を設定します。ほとんどの場合、レポート詳細がエンド・ユーザーに表示されるため、この詳細はインターフェースに表示されません。 |
void |
setName() クエリーの名前を設定します。上の構成例では、これは NAME タグ内のデータです。ほとんどの場合、クエリーをレポートに組み込む際に Change サーバーによって固有の名前が付けられるため、クエリーの名前を変更する必要はありません。 |
void |
setPromptingQueryXml(scalar queryName) クエリーのプロンプト・クエリー XML を設定します。これにより、プロンプト・クエリーがどのように機能するかを定義します。 |
void |
setQueryString(scalar queryString) レポートの実行時に使用するクエリー・ストリングを設定します。例えば、(cvtype='problem') や (crstatus='assigned') です。クエリー・ストリングは QueryEntry 内の 1 つのデータであり、たいていの場合、レポートのインポート時にこのデータを変更します。 |
void |
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");