名前

ChangeSynergy::ReportEntry


詳細

ChangeSynergy::ReportEntry クラスは、サーバーに対してレポートをインポートまたはエクスポートする際にクラス・セットの一部として使用されます。 すべての ReportEntry オブジェクトには、1 つの QueryEntry オブジェクトおよび 1 つ以上の SubReportEntry オブジェクトが含まれています。これらのオブジェクト・セットによって、標準 Change レポート構成エントリーが構成されます。このクラスは、「Column」レポートについて以下に示されているように、CCM_REPORT 項目を表します。

 [CCM_REPORT]
 	[NAME]Column[/NAME]
 	[QUERY]すべての CR[/QUERY]
 	[PROBLEM_DEF]column_cr[/PROBLEM_DEF]
 	[EXPORT_FORMAT]HTML[/EXPORT_FORMAT]
 	[INCREMENTAL]true[/INCREMENTAL]
 	[INCREMENT_SIZE]20[/INCREMENT_SIZE]
 	[IMAGE_PATH]columnFormat.png[/IMAGE_PATH]
 	[CUSTOM_DISPLAY_ORDER]0[/CUSTOM_DISPLAY_ORDER]
 	[DESCRIPTION]
問題属性のリストを選択できるようにするカスタム・レポート形式。
問題番号および状況は他のフォームにリンクされます。
 	 [/DESCRIPTION]
 [/CCM_REPORT]

これらのクラス 3 つすべてを手動で作成することも可能ではありますが、単にレポートをエクスポートし、変更してからインポートするか、レポートをファイルにエクスポートし、変更してからインポートするのが最適な方法です。これらの 3 つのクラスの設定はすべて変更できますが、設定の多くは変更しないでください (その変更内容を確実に把握している場合を除く)。これらの項目の変更は、定義済みのシステム・レポートの構成ファイル設定を変更するのとほぼ変わりません。

例:

 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 'Column' from the sysetm configuration

	my $reportEntry = $csapi->exportAReport($aUser, "Column",  $globals->{PROBLEM_TYPE}, $globals->{SYSTEM_CONFIG});
	
	print "\nreportEntry->getName          : " . $reportEntry->getName();
	print "\nreportEntry->getBaseName      : " . $reportEntry->getBaseName();
	print "\nreportEntry->getReportTemplate: " . $reportEntry->getReportTemplate();
	print "\nreportEntry->getExportFormat  : " . $reportEntry->getExportFormat();
	print "\nreportEntry->getMaxQuery      : " . $reportEntry->getMaxQuery();
	print "\nreportEntry->getMaxString     : " . $reportEntry->getMaxString();
	print "\nreportEntry->getDescription   : " . $reportEntry->getDescription();
	print "\nreportEntry->getIncrementSize : " . $reportEntry->getIncrementSize();
	print "\nreportEntry->getIncremental   : " . $reportEntry->getIncremental();
	print "\nreportEntry->getStyle         : " . $reportEntry->getStyle();
	print "\nreportEntry->getCustomDisOrder: " . $reportEntry->getCustomDisplayOrder();
	print "\nreportEntry->getImagePath     : " . $reportEntry->getImagePath();
 };
 if ($@)
{
	print $@;
}

メソッド要約

scalar getBaseName()

当該レポートの基になるレポートの名前を取得します。どのレポートにも基づかない場合は、getName と同じ結果が返されます。
scalar getCustomDisplayOrder()

インターフェースにアドホック・レポート形式が表示される順序 (0 から始まる) を取得します。
scalar getDescription()

レポートの詳細を取得します。
scalar getExportFormat()

レポートのエクスポート形式を取得します。これは、レポート結果のファイル拡張子を定義します。
scalar getIncremental()

当該レポートがページ分割を使用するかどうかを取得します。値は true または false です。
scalar getIncrementSize()

ページ分割レポートにおける 1 ページの項目数を取得します。
scalar getMaxString()

TEXT データ・タイプの属性の場合に取得する最大文字数を取得します。
scalar getMaxQuery()

当該レポートで返すことができる、データベースからの結果の最大数を取得します。
scalar getName()

レポートの名前を取得します。上の構成例では、これは NAME タグのデータです。これは、レポート・インターフェースでユーザーに表示される名前です。
scalar getQueryEntry()

当該レポートがリンクされる CCM_QUERY 構成定義を表す L<QueryEntry> オブジェクトを取得します。
scalar getReportTemplate()

レポート・インターフェースからレポート名がクリックされたときにロードされるテンプレートの名前を取得します。
scalar getStyle()

レポートのスタイル・タイプを取得します。現在、チャート・レポートおよびマトリックス・レポートでのみ使用されます。
array getSubReports()

当該レポートの PROBLEM_DEF、TASK_DEF、および OBJECT_DEF の各項目を定義する L<SubReportEntry> オブジェクトの配列を取得します。
void setBaseName(scalar baseName)

当該レポートの基になるレポートの名前を設定します。レポートをインポートおよびエクスポートする場合は、これを設定する必要はありません。レポートをエクスポートおよびインポートすると、すべての構成エントリーがエクスポートされ、基本レポート・エントリーを検索する必要がないためです。
void setCustomDisplayOrder(scalar baseName)

インターフェースにアドホック・レポート形式が表示される順序 (0 から始まる) を設定します。
void setDescription(scalar description)

このレポートの詳細を設定します。これは、エンド・ユーザーがレポートを選択する際にレポート・インターフェースに表示されるテキストです。
void setExportFormat(scalar exportFormat)

レポートのエクスポート形式を設定します。これは、レポート結果のファイル拡張子を定義します。例: 「HTML」や「TXT」。
void setIncremental(scalar incremental)

当該レポートがページ分割を使用するかどうかを設定します。値は true または false です。
void setIncrementSize(scalar incrementSize)

ページ分割レポートにおける 1 ページの項目数を設定します。
void setMaxString(scalar maxString)

TEXT データ・タイプの属性の場合に取得する最大文字数を設定します。
void setMaxQuery(scalar maxQuery)

当該レポートでクエリー機能が返すことができる結果の最大数を設定します。
void setName(scalar reportName)

レポートの名前を設定します。上の構成例では、これは NAME タグのデータです。これは、レポート・インターフェースでユーザーに表示される名前です。
void setQueryEntry(scalar queryEntry)

当該レポートがリンクされる CCM_QUERY 構成定義を表す L<QueryEntry> オブジェクトを設定します。
void setReportTemplate(scalar reportTemplate)

レポート・インターフェースからレポート名がクリックされたときにロードされるテンプレートの名前を設定します。レポート・テンプレートの例: 「TrendWithBreakdown」。
void setStyle(scalar style)

レポートのスタイル・タイプを設定します。現在、チャート・レポートおよびマトリックス・レポートでのみ使用されます。
void setSubReports(array subreports)

当該レポートの PROBLEM_DEF、TASK_DEF、および OBJECT_DEF の各項目を定義する L<SubReportEntry> オブジェクトの配列を設定します。
void toXml(scalar xmlData)

ReportEntry、QueryEntry、およびすべての SubReportEntry を XML ストリングに変換します。このストリングをファイル・システムに保存して再ロードし、ReportEntry オブジェクトを再構成できます。


メソッド


getBaseName

当該レポートの基になるレポートの名前を取得します。どのレポートにも基づかない場合は、getName と同じ結果が返されます。

 戻り値: スカラー
 基本レポートの名前。


getCustomDisplayOrder

インターフェースにアドホック・レポート形式が表示される順序 (0 から始まる) を取得します。

 戻り値: スカラー
 インターフェースにアドホック・レポートが表示される順序 (0 から始まる)。


getDescription

レポートの詳細を取得します。詳細は、ユーザーがレポートをクリックしたときに Change レポート・インターフェースで表示されます。

 戻り値: スカラー
 	レポートの詳細。


getExportFormat

レポートのエクスポート形式を取得します。これは、レポート結果のファイル拡張子を定義します。

 戻り値: スカラー
 エクスポート形式 (ファイル拡張子)。


getIncremental

当該レポートがページ分割を使用するかどうかを取得します。値は true または false です。

 戻り値: スカラー
 レポートがページ分割を使用する場合は true、それ以外の場合は false。


getIncrementSize

ページ分割レポートにおける 1 ページの項目数を取得します。

 戻り値: スカラー
 ページ分割レポートに表示する項目の最大数。


getMaxString

TEXT データ・タイプの属性の場合に取得する最大文字数を取得します。

 戻り値: スカラー
 1 つの属性に対して返す最大文字数。


getMaxQuery

当該レポートで返すことができる、データベースからの結果の最大数を取得します。

 戻り値: スカラー
 	戻される結果の最大数。


getName

レポートの名前を取得します。これは、Change レポート・インターフェースでユーザーに表示される名前です。

 戻り値: スカラー
 	レポートの名前。


getQueryEntry

当該レポートがリンクされる CCM_QUERY 構成定義を表す QueryEntry オブジェクトを取得します。

 戻り値: スカラー
 レポートのクエリー項目。


getReportTemplate

レポート・インターフェースからレポート名がクリックされたときにロードされるテンプレートの名前を取得します。レポート・テンプレートでは通常、ユーザーはレポートを実行する前に、さらに情報を入力するように求められます。レポート・テンプレートの例: 「TrendWithBreakdown」。

 戻り値: スカラー
 	レポート・テンプレートの名前。


getStyle

レポートのスタイル・タイプを取得します。現在、チャート・レポートおよびマトリックス・レポートでのみ使用されます。

 戻り値: スカラー
 	レポートのスタイル。


getSubReports

当該レポートの PROBLEM_DEF、TASK_DEF、および OBJECT_DEF の各項目を定義する SubReportEntry オブジェクトの配列を取得します。

 戻り値: 配列

サブレポート・エントリーの配列。


setBaseName

当該レポートの基になるレポートの名前を設定します。レポートをインポートおよびエクスポートする場合は、これを設定する必要はありません。レポートをエクスポートおよびインポートすると、すべての構成エントリーがエクスポートされ、基本レポート・エントリーを検索する必要がないためです。

 パラメーター:
スカラー: 基本レポートの名前。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	$reportEntry->setBaseName("Column");


setCustomDisplayOrder

インターフェースにアドホック・レポート形式が表示される順序 (0 から始まる) を設定します。この設定が影響するのは、インターフェースから「新規 (new)」リンクがクリックされたときに表示されるレポート形式に対してのみです。

 パラメーター:
スカラー: レポートが表示される順序。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	$reportEntry->setCustomDisplayOrder("12");


setDescription

レポートの詳細 (Change レポート・インターフェースでエンド・ユーザーに表示されるテキスト) を設定します。

 パラメーター:
	スカラー: レポートの詳細。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	$reportEntry->setDescription("HTML");


setExportFormat

レポートのエクスポート形式を設定します。これは、レポート結果のファイル拡張子を定義します。例: 「HTML」や「TXT」。

 パラメーター:
スカラー: エクスポート形式タイプ。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	$reportEntry->setExportFormat("HTML");


setIncremental

当該レポートがページ分割を使用するかどうかを設定します。値は true または false です。

 パラメーター:
スカラー: レポートがページ分割を使用する場合は true、それ以外の場合は false。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	$reportEntry->setIncremental("true");


setIncrementSize

ページ分割レポートにおける 1 ページの項目数を設定します。

 パラメーター:
スカラー: ページ分割レポートで 1 ページに表示する結果の最大数。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	$reportEntry->setIncrementSize("20");


setMaxString

データ・タイプが TEXT の属性が返すことができる最大文字数を設定します。属性の文字数が最大値を超える場合は、最大値を超える文字が切り捨てられます。この設定が省略された場合は、レポートは pt.cfg ファイルに定義された MAX_STRING を使用します。

 パラメーター:
スカラー: TEXT タイプで許可される最大文字数。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	$reportEntry->setMaxString("32000");


setMaxQuery

当該レポートでクエリー機能が返すことができる結果の最大数を設定します。クエリーで最大値を超える結果が検出された場合は、検出された結果数が多過ぎることを示すエラーがユーザーに返されます。この設定が省略された場合は、レポートは pt.cfg ファイルに定義された MAX_QUERY を使用します。

 パラメーター:
スカラー: 許可する結果の最大数。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	$reportEntry->setMaxQuery("2000");


setName

レポートの名前を設定します。これは、Change レポート・インターフェースでユーザーに表示される名前です。 レポート名は固有でなければならず、そうでない場合には csapiimportAReport は失敗します。

 パラメーター:
スカラー: レポートのインポート時にレポートに付けられる名前。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	$reportEntry->setName("Imported Report");


setQueryEntry

当該レポートがリンクされる CCM_QUERY 構成定義を表す QueryEntry オブジェクトを設定します。クエリー項目にはレポートが実行時に使用するクエリー・ストリングが含まれているため、レポートにはクエリー項目を設定する必要があります。

 パラメーター:
スカラー: 当該レポートのクエリー情報が含まれたクエリー項目。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});

	my $queryEntry = new ChangeSynergy::QueryEntry();
	$queryEntry->setName("query");
	$queryEntry->setQueryString("()cvtype='problem')");
	$reportEntry->setQueryEntry($queryEntry);


setReportTemplate

レポート・インターフェースからレポート名がクリックされたときにロードされるテンプレートの名前を取得します。レポート・テンプレートでは通常、ユーザーはレポートを実行する前に、さらに情報を入力するように求められます。レポート・テンプレートの例: 「TrendWithBreakdown」。

 パラメーター:
	スカラー: レポート・テンプレートの名前。
 例:
	
	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	$reportEntry->setReportTemplate("TrendWithBreakdown");


setStyle

レポートのスタイル・タイプを設定します。現在、チャート・レポートおよびマトリックス・レポートでのみ使用されます。有効な値は、VBarChart、HBarChart、LineChart、PieChart、および Matrix です。

 パラメーター:
	スカラー: レポートのスタイル。
 例:
	
	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	$reportEntry->setStyle("VBarChart");


setSubReports

当該レポートの PROBLEM_DEF、TASK_DEF、および OBJECT_DEF の各項目を定義する SubReportEntry オブジェクトの配列を設定します。 すべてのレポートには、少なくとも 1 つのサブレポート・エントリーを設定する必要があります。

 パラメーター:

配列: サブレポート・エントリーのリスト。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});

	my @subReports = ();

	push @subReports, new ChangeSynergy::SubReportEntry(CCM_PROBLEM, CCM_TASK or CCM_OBJECT entry);

	$reportEntry->setSubReports(\@subreports);


toXml

ReportEntry、QueryEntry、およびすべての SubReportEntry を XML ストリングに変換します。このストリングをファイル・システムに保存して再ロードし、ReportEntry オブジェクトを再構成できます。

 戻り値: 配列
オブジェクトを表す XML データ。
 例:
	

	my $reportEntry = $csapi->exportAReport($aUser, "My Report",  $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});

	my $file = $reportEntry->getName() . ".xml";
		
	open(OUTPUT, ">$file");
	print(OUTPUT $reportEntry->toXml());
	close(OUTPUT);