【Pega】テーブルの内容をCSV出力するボタン
やりたいこと
画面に表示しているテーブルの内容を、CSV形式で出力するボタンを実装する。
実装方法
Activityの作成
Dev Studio右上の検索窓から、pxConvertResultsToCSVを検索して開く。このActivityは標準で提供されている、PageList のPropertyをCSV形式のファイルに変換するActivityである。
このActivityをこのまま使うことも可能だが、文字コードの違いによりExcelで開くと日本語が文字化けされて表示されるので、下記のようにカスタマイズする。
① pxConvertResultsToCSVをSave asで別名で保存
② Identifierは適当に名前をつけ、Apply Toにボタンを作成するSectionの属するクラスを指定し、Create and openする
③ ステップ5のJavaコード内22行目を以下のように変更
// PRWriter out = new PRWriter(stream, null, false); ←ここを変更 PRWriter out = new PRWriter(stream, "MS932", false);
④ ActivityをSave
ボタンの作成
① 画面にボタンを配置
② ボタンアクションにOpen URL in Windowを設定
主に設定するのは以下。
Use Page : チェックをつける
Activity : 先ほど作成したActivityを設定
CSVProperties : CSVで各カラムに出力するPropertyをダブルクォーテーションで囲み、カンマ区切りで指定。カンマ前後にスペースは含めない。
CSVPropertyTypes : 出力時のカラムフォーマットをダブルクォーテーションで囲み、カンマ区切りで指定。String, Decimal, Double, Date, DateTimeを指定可。カンマ前後にスペースは含めない。
PageListProperty : Page ListのPropertyをダブルクォーテーションで囲んで指定。
FileName : 出力時のCSVファイル名を指定。空白の場合は”ResultsToCSV”になる。
AppendTimeStampToFileName : Trueを指定すると出力時のファイル名にTimeStampが付与される。
CSVPropHeaders : 出力時のヘッダーを、カンマ区切りで指定。カンマ前後にスペースは含めない。
③ SubmitしてSave
実装結果
ボタンを押すと、、、
CSVをダウンロードできる。
環境
Pega Platform 8.3.0 Personal Editionで実行。
おわり~