高度なカスタマイズ > ビジネスロジックのカスタマイズ > Windchill での Jasper レポートのカスタマイズ > Jasper レポートの保存済みレポートとスケジュール設定のサポート
Jasper レポートの保存済みレポートとスケジュール設定のサポート
レポートテンプレートに類似する Jasper レポートの「保存済みレポート」を作成できます。これらの「保存済みレポート」を使用してデータモニターを作成することによってレポートの実行をスケジュールできます。既成では、実行のスケジュールを設定できるレポートはありません。Jasper レポートをカスタマイズして、実行のスケジュールを設定できます。
保存済みレポートは、以下のいずれかの方法を使用して作成できます。
スケジュール設定のみを必要とする Jasper レポート: 右クリックメニュー操作で「View Report」を使用して保存済みレポートを作成できます。基準を選択すると、保存済みレポートが生成され、「Reports」ページにリストされます。これらのレポートには、基準を送る入力 JSP はありません。
入力 JSP からの基準を必要とする Jasper レポート: 類似する更新基準 JSP をオーサリングして、パラメータ付きの保存済みレポートを作成しなければなりません。
上記のいずれかのオプションを使用して保存済みレポートを作成した後に、データモニターベースのスケジュール設定を作成する方法は、レポートのスケジュールと設定と同じです。詳細については、「新規データモニターの作成」を参照してください。
基準ベースのレポートのカスタマイズ
PTC は、任意の入力 JSP で統合できる「保存済みレポートを作成」という再利用可能なコンポーネントを提供しています。
必要条件
カスタム criteriaPage JSP のパスを含めるために、レポートローダーに csvCriteriaPage という名前の追加フィールドがなければなりません。この JSP として、HTML、JS、Core-UI、または Ext JS ベースの JSP を使用できます。レポートローダーファイルは、これらのレポートに対してオーサリングされる入力 JSP と似ています。
1. 再利用可能なコンポーネントを使用するには、以下のタグをインポートし、ボタンを表示する入力 JSP に追加します。
<%@taglib uri="http://www.ptc.com/windchill/taglib/saveCriteria" prefix="r"%>
<r:saveCriteria savedReportName="SampleReportCriteria" prefix="r"%></r:saveCriteria>
タグが入力 JSP に正常に追加されると、「Save」ボタンが表示されます。
2. 「Save」をクリックすると、メインフォーム (名前と値) のペアからのすべての入力値が保存済みレポートの基準と見なされ、保存済みレポートが作成されます。reportViewPort タグが使用されている場合、タグ内のすべての入力フィールドが基準と見なされます。入力 JSP に reportViewPort タグが含まれていない場合、HTML フォーム名はメインフォームと同じでなければなりません。
3. reportViewPort タグなしで入力 JSP をオーサリングする必要がある場合、すべての入力をメインフォームに追加します。
4. 基準を再定義または表示するには、新規 JSP をオーサリングし、その JSP をローダー (criteriaPage) に含めます。
5. SaveReportOid に基づいて基準をフェッチするために、API が用意されています。レポート保存 OID はリクエストパラメータにあります。
リクエストパラメータの例: String criteriaObjectOid=request.getParameter("saveReportOROid"); HashMap inputParams=SaveReportHelper.getReportCriteria(criteriaObjectOid);
6. 次のテーブルは Prog-Example を示しています。テーブル内では "prog_examples" です。
レポート名
JRXML の場所
ローダーの場所
入力 JSP の場所
必要な ReportTemplate QML の場所
CriteriaPage の場所
ReportTemplateReportTask
<$WT_HOME> /prog_examples/JasperIntegration /JasperReports/Sample /ReportTemplateReportTask.jrxml
<$WT_HOME> /prog_examples/JasperIntegration /loadFiles/reports/jasper /loadReportTemplateReportTask.xml
<$WT_HOME> /prog_examples/JasperIntegration /netmarkets/jsp/report/jasper /ReportTemplateReportTask.jsp
<$WT_HOME>/prog_examples/JasperIntegration/loadFiles /reports/jasper/ ReportTemplateReportTask.qml
<$WT_HOME>/prog_examples/JasperIntegration /netmarkets/jsp/report/jasper/criteriaReportTemplateReportTask.jsp
7. 基準をフェッチした後、入力 JSP をサニタイズ、エンコード、および表示します。
Report Object Model が更新され、新しいコラム criteriaPage が追加されます。
8. 保存済みレポートをクリックすると、レポートオブジェクトに対してレポート基準が定義されている場合は定義済みの criteriaPage が表示され、定義されていない場合は入力ページが表示されます。
9. criteriaPage で基準を更新するには、以下のタグを使用します。
<%@taglib uri="http://www.ptc.com/windchill/taglib/modifyCriteria" prefix="m"%>
<m:modifyCriteria savedReportName="SampleReportCriteria_SR" divId="saveReportButtonDiv" ></m:modifyCriteria>
10. UI をさらに修正する場合は、ビジネス要件に基づいてカスタマイズを実行しなければなりません。
これは役に立ちましたか?