Wagby の和暦処理では標準で「明治」「大正」「昭和」「平成」の 4 つの元号情報が設定されています。開発者はこれに加え、新たな年号を追加することができます。また、1年を"元年"と表示する設定を用意しています。

出力制御 > フォーマット

  1. wagbydesigner/bin/webpage/WEB-INF/src フォルダにある TranslateJpEra.properties.UTF8 ファイルをテキストエディタで開きます。
  2. 前の元号を、番号を追加してコピーします。平成の場合は erainfo.3 に記載しているため、元号を増やす場合、この行をコピーして erainfo.4 とします。
    erainfo.3.startdate=1989-1-8
    erainfo.3.enddate=9999-12-31
    erainfo.3.fullname=平成
    erainfo.3.shortname=平
    erainfo.3.shortchar1=H
    erainfo.3.shortchar2=H
    erainfo.3.shortchar3=H
    erainfo.3.shortchar4=h
    
    以前の元号の enddate を、その元号が終了した日にします。
    新たな元号の startdate も同じ値とし、enddateは9999-12-31とします。
    新たな元号の fullname,shortname,shortcharXX に対応する値を入力します。
  3. wagbydesigner/bin/webpage/WEB-INF/src/TranslateJpEra.bat ファイルを実行します。 (Windows 以外の OS では拡張子 ".sh" を使います。)
  4. 同フォルダに TranslateJpEra.properties ファイルが再作成されます。(拡張子に .UTF8 が含まれないファイルです。)
  5. 変更後、最初にフルビルドを行います。このタイミングで新しい TranslateJpEra.properties が使われます。(次回以降は差分ビルドとします。)

トラブルシューティング

うまくいかない場合、次の点をご確認ください。

  • wagbydesigner/bin/webpage/WEB-INF/src/TranslateJpEra.properties は上記 3. のバッチファイルを実行した日付に変わっているか。
  • フルビルド後、wagbyapp/webapps/$(プロジェクト識別子)/WEB-INF/classes/TranslateJpEra.properties は上と同じファイルとなっているか。

入力制御 > 日付・時刻 > オプション表示(日付)

wagbydesigner/bin/webpage/system フォルダの common.js ファイルを編集します。
変数wareki_date_a,wareki_regexp_a,wareki_fullname_a,wareki_shortchar_aに新たな元号の値を追加してください。

var wareki_date_a = new Array(
      new Date(1868,  9-1,  8), new Date(1912,  7-1, 30),
      new Date(1926, 12-1, 25), new Date(1989,  1-1,  8));
var wareki_regexp_a = new Array(
      new RegExp("明[治]?", "g"),
      new RegExp("大[正]?", "g"),
      new RegExp("昭[和]?", "g"),
      new RegExp("平[成]?", "g"));
var wareki_fullname_a = new Array("明治", "大正", "昭和", "平成");
var wareki_shortcharpattern_a = new Array("Mm", "Tt", "Ss", "Hh");
この二つのファイル (TranslateJpEra.properties, common.js) を変更後、フルビルドを行ってください。

Wagbyのバージョンアップによる対応

上のファイルの修正は、元号が変わったあとに出荷される(バージョンアップされた)Wagbyに含まれるようになります。バージョンアップ版をご利用いただける場合は、上記修正作業は不要です。

出力制御 > フォーマット

TranslateJpEra.properties.UTF8 に置き換え文字列ルールを記述しています。標準は次のとおりです。

replacePattern.0=平成1年;平成元年
replacePattern.1=昭和1年;昭和元年
replacePattern.2=大正1年;大正元年
replacePattern.3=明治1年;明治元年

セミコロンを区切り文字とし、左の文字列を右の文字列に置換します。

カスタマイズ

(例1) 元年表記を行わない場合は、上記4行を削除してください。

(例2) 次の行を加えると、"平1年" が "平元年" と表示されるようになります。

replacePatetrn.4=平1年;平元年

TranslateJpEra.properties.UTF8 ファイルを修正したときは「元号を追加する」の手順に従って反映させてください。

入力制御 > 日付・時刻 > オプション表示(日付)

wagbydesigner/bin/webpage/system フォルダの common.js ファイルで制御してます。具体的には replaceFirstYearOfImperialEra 関数で行っています。

グローバル変数 isReplaceFirstYearOfImperialEra の値を false にすると、元年表示を行わないようになります。