日付データを和暦で表示する方法
対象製品
Elixir Report 8.7J
詳細
プロパティ設定等により和暦で表示させる機能は用意されていませんが、Javaのバージョン6以降では和暦に対応していますので、レポートテンプレート内にJavaScriptを記述することで日付の和暦表示が可能です。
次のコードは、データソースの"BIRTHDAY"フィールド(Date型)の値を和暦フォーマットでラベルに表示するサンプルです。
■サンプルコード
// ラベルの[On Render Begin]に記述します
importClass(Packages.java.util.Locale);
importClass(Packages.java.text.SimpleDateFormat);
// 和暦用のロケールを指定します
locale = new Locale("ja", "JP", "JP");
jpFormat = new SimpleDateFormat("GGGGyyyy年M月d日", locale);
// BIRTHDAYフィールドの値を和暦にフォーマットします
dateStr = jpFormat.format(BIRTHDAY);
// フォーマットした日付文字列をこのラベルにセットします
this.setText(dateStr);
■サンプルデータ
1989/1/7,さとし
1989/1/8,晴子
2016/4/1,美咲
1876/5/5,ふみ
1919/10/28,実
製品サンプル(repository:/samples/basic/script3/script3.rml)では、JavaScriptで簡単な計算を行って和暦を表示する上記以外の方法を紹介しています。
次のコードは、データソースの"BIRTHDAY"フィールド(Date型)の値を和暦フォーマットでラベルに表示するサンプルです。
■サンプルコード
// ラベルの[On Render Begin]に記述します
importClass(Packages.java.util.Locale);
importClass(Packages.java.text.SimpleDateFormat);
// 和暦用のロケールを指定します
locale = new Locale("ja", "JP", "JP");
jpFormat = new SimpleDateFormat("GGGGyyyy年M月d日", locale);
// BIRTHDAYフィールドの値を和暦にフォーマットします
dateStr = jpFormat.format(BIRTHDAY);
// フォーマットした日付文字列をこのラベルにセットします
this.setText(dateStr);
■サンプルデータ
1989/1/7,さとし
1989/1/8,晴子
2016/4/1,美咲
1876/5/5,ふみ
1919/10/28,実
製品サンプル(repository:/samples/basic/script3/script3.rml)では、JavaScriptで簡単な計算を行って和暦を表示する上記以外の方法を紹介しています。