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') です。新規レポートの作成時にはクエリー・ストリングが必要です。 |
新規レポートの作成に使用可能な新規作成の ChangeSynergy::CreateReportDefinition クラスを初期化します。
my $reportDef = new ChangeSynergy::CreateReportDefinition();
属性構成ストリングの配列を取得します。配列の各インデックスはサブレポートを表します。属性構成ストリングの例: 「problem_number:0:false|crstatus:1:false|problem_synopsis:2:false」(これは、CCM_PROBLEM、CCM_TASK、または CCM_OBJECT の各定義における標準構成エントリーのストリングと同じようなストリングです)。
戻り値: スカラーの配列 属性構成ストリングの配列。
基本レポートの名前を取得します。基本レポートは、このレポートの基になるレポートです (例えば、「Column」や「Block」)。
戻り値: スカラー 基本レポートの名前。
レポートの詳細を取得します。詳細は、ユーザーがレポートをクリックしたときに Change レポート・インターフェースに表示されます。
戻り値: スカラー レポートの詳細。
新規レポートを配置するフォルダーの名前を取得します。空の場合は、フォルダーに配置されません。
戻り値: スカラー レポートが作成されるフォルダーの名前。
ページ分割レポートに表示される項目数を取得します。戻り値が -1 の場合、レポートがページ分割レポートではないことを意味します。
戻り値: スカラー 1 ページに表示される結果数または -1 (ページ分割レポートではない場合)。
レポートの名前を取得します。これは、Change レポート・インターフェースでユーザーに表示される名前です。
戻り値: スカラー Change サーバーでレポートに付けられる名前。
プロンプト・クエリー XML データを取得します。
戻り値: スカラー XML フォーマットのプロンプト・クエリー・データ。
ソート順構成ストリングの配列を取得します。配列の各インデックスはサブレポートを表します。ソート順構成ストリングの例: 「problem_number:intb:A」(これは、 CCM_PROBLEM、CCM_TASK、または CCM_OBJECT の各定義における標準構成エントリーのストリングと同じようなストリングです)。
戻り値: スカラーの配列 ソート順構成ストリングの配列。
レポートのクエリー・ストリングを取得します。
戻り値: スカラー クエリー・ストリング。
レポートの実行時に取得する、各サブレポートの属性のリストを設定します。配列の各インデックスは、各サブレポートの属性構成ストリングを表します。設定する必要があるストリングは、「属性名:順序:スパン」です。 例えば、「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);
基本レポート (新規作成したこのレポートの基になるレポート) の名前を設定します。基本レポートは、Change サーバー上に既に存在している必要があります。考えられる基本レポートの例として、「Column」や「Block」があります。
csapi->createReport 関数が機能するには、このパラメーターを設定する必要があります。
パラメーター: スカラー: 基本レポートの名前。
例: my $reportDef = new ChangeSynergy::CreateReportDefinition(); $reportDef->setBaseReport("Column");
レポートの詳細 (Change レポート・インターフェースでエンド・ユーザーに表示されるテキスト) を設定します。
パラメーター: スカラー: レポートの詳細。
例: my $reportDef = new ChangeSynergy::CreateReportDefinition(); $reportDef->setDescription("All entered CRs");
レポートが作成されるフォルダーの名前を設定します。フォルダーが存在しない場合は、フォルダーの作成が試行されます。フォルダー名が指定されなかった場合、レポートはルート・フォルダーに作成されます。
パラメーター: スカラー: レポートを配置するフォルダーの名前、またはフォルダーなしの場合は空。
例: my $reportDef = new ChangeSynergy::CreateReportDefinition(); $reportDef->setFolderName("API Folder");
レポート結果で 1 ページ当たりに表示される項目数を設定します。このレポートでページ分割を使用しないことを示す場合は、-1 を指定します。
パラメーター: スカラー: 1 ページ当たりに表示される項目数または -1 (ページ分割なしの場合)。
例: my $reportDef = new ChangeSynergy::CreateReportDefinition(); $reportDef->setIncrementSize(20);
レポートの名前を設定します。エンド・ユーザーは、Change レポート・インターフェースでこの名前を見て対話します。レポート名が既に存在する場合は、名前は「レポート名 (x)」(x は最初の空き番号) になります。これは、Web インターフェースで使用されるのと同じ命名方式です。
csapi->createReport 関数が機能するには、このパラメーターを設定する必要があります。
パラメーター: スカラー: このレポートの作成時に付ける名前。
例: my $reportDef = new ChangeSynergy::CreateReportDefinition(); $reportDef->setName("API report");
レポートのプロンプト・クエリー XML データを設定します。プロンプト・レポートの作成は、インターフェースを使用するか、既存レポートをエクスポートおよびインポートして行うのが最適です。この設定は、XML フォーマットの知識がある場合にのみ指定してください。
パラメーター: スカラー: プロンプト・クエリーを定義する XML データ。
例: my $reportDef = new ChangeSynergy::CreateReportDefinition(); $reportDef->setPromptingQueryXml(XML DATA);
レポートの実行時にレポートのソートに使用する、各サブレポートのソート属性のリストを設定します。配列の各インデックスは、各サブレポートのソート順構成ストリングを表します。設定する必要があるストリングは、「属性名:ソート・タイプ: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);
レポートの実行時に使用するクエリー・ストリングを設定します。
csapi->createReport 関数が機能するには、このパラメーターを設定する必要があります。
パラメーター: スカラー: クエリー・ストリング。
例: my $reportDef = new ChangeSynergy::CreateReportDefinition(); $reportDef->setQueryString("(cvtype='problem') and (crstatus='entered')");