名前

ChangeSynergy::CreateReportDefinition


詳細

ChangeSynergy::CreateReportDefinition クラスは、既存レポートに基づいて新しい Change レポートを作成するために csapi createReport API で使用します。

この API の使用例:

my $csapi = new ChangeSynergy::csapi();

	eval
	{
		$csapi->setUpConnection("http", "machine", 8600);
		my $aUser = $csapi->Login("u00001", "u00001", "User", "\\\\machine\\ccmdb\\cm_database");
		
		#Create an instance of the CreateReportDefinition class.

		my $reportDef = new ChangeSynergy::CreateReportDefinition();
	
		#Set the required attributes.
		$reportDef->setName("API Created Report");
		$reportDef->setBaseReport("Column");
		$reportDef->setQueryString("(cvtype='problem') and (crstatus='entered')");
		
		#Set optional attributes

		$reportDef->setDescription("This report was created via the Perl API");
		$reportDef->setIncrementSize(7); #Only see 7 items per page.
		$reportDef->setFolderName("API Folder"); #Place the report into a folder named 'API Folder'
		
		#Change the list of attributes from a column report. Initial attributes are problem_number, crstatus and problem_synopsis.
		#Changing to just be problem_number and enterer.

		my @attributeLists = ();
		push @attributeLists, "problem_number:0:false|enterer:1:false";
		$reportDef->setAttributes(\@attributeLists);
		
		#Sort first by enterer as a string and secondarily sort the problem number.

		my @sortOrderList = ();
		push @sortOrderList, "enterer:string:A|problem_number:intb:A";
		$reportDef->setSortOrder(\@sortOrderList);
		

		#Create an instance of the Globals calls.

		my $globals = new ChangeSynergy::Globals();
		
		#Call the 'createReport' API and add the new report to the Shared CR queries.
		$csapi->createReport($aUser, $reportDef, $globals->{PROBLEM_TYPE}, $globals->{SHARED_PROFILE});
	};
	
	if ($@)
	{
		print $@;
	}

メソッド要約

配列 getAttributes()

属性構成ストリングの配列を取得します。配列の各インデックスはサブレポート用です。ストリング例: 「problem_number:0:false|enterer:1:false」。
スカラー getBaseReport()

基本レポート (新規作成のレポートの基になるレポート) の名前を取得します。
スカラー getDescription()

レポートの詳細を取得します。
スカラー getFolderName()

レポートが作成されるフォルダーの名前を取得します。
スカラー getIncrementSize()

ページ分割レポートに表示される項目数または -1 (レポートがページ分割されない場合) を取得します。
スカラー getName()>

作成するレポートの名前を取得します。
スカラー getPromptingQueryXml()>

プロンプト・クエリーがどのように機能するかを定義した XML データを取得します。
配列 getSortOrder()

ソート順構成ストリングの配列を取得します。配列の各インデックスはサブレポート用です。ストリング例: 「problem_number:intb:A」。
スカラー getQueryString()

レポートのクエリー・ストリングを取得します。
void setAttributes(array @attributes)

レポートの実行時に取得される属性のリストを設定します。配列の各インデックスは属性構成ストリングです (「problem_number:0:false|crstatus:1:false|problem_synopsis:2:false」)。
void setBaseReport(scalar baseReportName)

基本レポート (新規作成のレポートの基になるレポート) の名前を設定します (例えば、「Column」や「Block」)。新規レポートの作成時には基本レポート名が必要です。
void setDescription(scalar description)

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

レポートが作成されるフォルダーの名前を設定します。フォルダー名を指定しなかった場合、レポートはルート・レベルに作成されます。
void setIncrementSize(scalar incrementSize)

レポートで 1 ページ当たりに表示される項目数を設定します。レポートをページ分割レポートにしない場合は、-1 を使用します。
void setName(scalar reportName)

Change サーバーに作成されるレポートの名前を設定します。これは、レポート・インターフェースに表示される名前です。新規レポートの作成時には名前が必要です。
void setPromptingQueryXml(scalar reportName)

レポートのプロンプト・クエリー XML を設定します。これにより、プロンプト・クエリーがどのように機能するかを定義します。
void setSortOrder(array @sortOrder)

レポートの実行時に使用するソート属性のリストを設定します。配列の各インデックスは、ソート順構成ストリングです (「problem_number:intb:A」)。
void setQueryString(scalar queryString)

レポートの実行時に使用するクエリー・ストリングを設定します。例えば、(cvtype='problem') や (crstatus='assigned') です。新規レポートの作成時にはクエリー・ストリングが必要です。


メソッド

new

新規レポートの作成に使用可能な新規作成の ChangeSynergy::CreateReportDefinition クラスを初期化します。

 my $reportDef = new ChangeSynergy::CreateReportDefinition();


getAttributes

属性構成ストリングの配列を取得します。配列の各インデックスはサブレポートを表します。属性構成ストリングの例: 「problem_number:0:false|crstatus:1:false|problem_synopsis:2:false」(これは、CCM_PROBLEM、CCM_TASK、または CCM_OBJECT の各定義における標準構成エントリーのストリングと同じようなストリングです)。

 戻り値: スカラーの配列
属性構成ストリングの配列。


getBaseReport

基本レポートの名前を取得します。基本レポートは、このレポートの基になるレポートです (例えば、「Column」や「Block」)。

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


getDescription

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

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


getFolderName

新規レポートを配置するフォルダーの名前を取得します。空の場合は、フォルダーに配置されません。

 戻り値: スカラー
 レポートが作成されるフォルダーの名前。


getIncrementSize

ページ分割レポートに表示される項目数を取得します。戻り値が -1 の場合、レポートがページ分割レポートではないことを意味します。

 戻り値: スカラー
 1 ページに表示される結果数または -1 (ページ分割レポートではない場合)。


getName

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

 戻り値: スカラー
 Change サーバーでレポートに付けられる名前。


getPromptingQueryXml

プロンプト・クエリー XML データを取得します。

 戻り値: スカラー
 XML フォーマットのプロンプト・クエリー・データ。


getSortOrder

ソート順構成ストリングの配列を取得します。配列の各インデックスはサブレポートを表します。ソート順構成ストリングの例: 「problem_number:intb:A」(これは、 CCM_PROBLEM、CCM_TASK、または CCM_OBJECT の各定義における標準構成エントリーのストリングと同じようなストリングです)。

 戻り値: スカラーの配列
ソート順構成ストリングの配列。


getQueryString

レポートのクエリー・ストリングを取得します。

 戻り値: スカラー
 	クエリー・ストリング。


setAttributes

レポートの実行時に取得する、各サブレポートの属性のリストを設定します。配列の各インデックスは、各サブレポートの属性構成ストリングを表します。設定する必要があるストリングは、「属性名:順序:スパン」です。 例えば、「problem_number:0:false|crstatus:1:false|problem_synopsis:2:false」のようになります。

渡されるパラメーターは、配列の参照 (¥@array) にする必要があります。

この設定を使用するのは、アドホック・レポート・タイプの場合のみにしてください。システムまたはレポート・ビルダー・レポートの場合はフォーマットがハードコードされ、動的に変更できないため、使用できません。

 パラメーター:
配列参照属性: 属性構成ストリングの配列への参照。
 例:
	

	my $reportDef = new ChangeSynergy::CreateReportDefinition();
	

	my @attributeLists = ();
	push @attributeLists, "problem_number:0:false|enterer:1:false";
	$reportDef->setAttributes(\@attributeLists);


setBaseReport

基本レポート (新規作成したこのレポートの基になるレポート) の名前を設定します。基本レポートは、Change サーバー上に既に存在している必要があります。考えられる基本レポートの例として、「Column」や「Block」があります。

csapi->createReport 関数が機能するには、このパラメーターを設定する必要があります。

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

	my $reportDef = new ChangeSynergy::CreateReportDefinition();
	$reportDef->setBaseReport("Column");


setDescription

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

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

	my $reportDef = new ChangeSynergy::CreateReportDefinition();
	$reportDef->setDescription("All entered CRs");


setFolderName

レポートが作成されるフォルダーの名前を設定します。フォルダーが存在しない場合は、フォルダーの作成が試行されます。フォルダー名が指定されなかった場合、レポートはルート・フォルダーに作成されます。

 パラメーター:
スカラー: レポートを配置するフォルダーの名前、またはフォルダーなしの場合は空。
 例:
	

	my $reportDef = new ChangeSynergy::CreateReportDefinition();
	$reportDef->setFolderName("API Folder");


setIncrementSize

レポート結果で 1 ページ当たりに表示される項目数を設定します。このレポートでページ分割を使用しないことを示す場合は、-1 を指定します。

 パラメーター:
スカラー: 1 ページ当たりに表示される項目数または -1 (ページ分割なしの場合)。
 例:
	
	my $reportDef = new ChangeSynergy::CreateReportDefinition();
	$reportDef->setIncrementSize(20);


setName

レポートの名前を設定します。エンド・ユーザーは、Change レポート・インターフェースでこの名前を見て対話します。レポート名が既に存在する場合は、名前は「レポート名 (x)」(x は最初の空き番号) になります。これは、Web インターフェースで使用されるのと同じ命名方式です。

csapi->createReport 関数が機能するには、このパラメーターを設定する必要があります。

 パラメーター:
スカラー: このレポートの作成時に付ける名前。
 例:
	

	my $reportDef = new ChangeSynergy::CreateReportDefinition();
	$reportDef->setName("API report");


setPromptingQueryXml

レポートのプロンプト・クエリー XML データを設定します。プロンプト・レポートの作成は、インターフェースを使用するか、既存レポートをエクスポートおよびインポートして行うのが最適です。この設定は、XML フォーマットの知識がある場合にのみ指定してください。

 パラメーター:
スカラー: プロンプト・クエリーを定義する XML データ。
 例:
	
	my $reportDef = new ChangeSynergy::CreateReportDefinition();
	$reportDef->setPromptingQueryXml(XML DATA);


setSortOrder

レポートの実行時にレポートのソートに使用する、各サブレポートのソート属性のリストを設定します。配列の各インデックスは、各サブレポートのソート順構成ストリングを表します。設定する必要があるストリングは、「属性名:ソート・タイプ:A または D」です (A は昇順、D は降順を表します)。ストリング例: 「problem_number:intb:A」。

渡されるパラメーターは、配列の参照 (¥@array) にする必要があります。

 パラメーター:
配列参照属性: ソート順構成ストリングの配列への参照。
 例:
	

	my $reportDef = new ChangeSynergy::CreateReportDefinition();
	

	my @sortOrderList = ();
	push @sortOrderList, "enterer:string:A|problem_number:intb:A";
	$reportDef->setSortOrder(\@sortOrderList);


setQueryString

レポートの実行時に使用するクエリー・ストリングを設定します。

csapi->createReport 関数が機能するには、このパラメーターを設定する必要があります。

 パラメーター:
	スカラー: クエリー・ストリング。
 例:
	

	my $reportDef = new ChangeSynergy::CreateReportDefinition();
	$reportDef->setQueryString("(cvtype='problem') and (crstatus='entered')");