まさお と申します。 宜しくお願い致します。
WinXP SP3, VB6 SP6 です。
年月日を年号(平成)形式で取得するには Format(Date, "ggge年m月d日")で取得できます。
さて、年号が将来変わったとします。
当然ながらなんらかのドライバなり何かを更新する必要があると思うのですが、何を更新すれば良いのでしょうか?
それはMSからダウンロードする必要があると思いますが、もしMSが新規年号に対応するようにドライバ(or それに類するもの)を更新してくれない場合もあると思います。
※なにしろVB6ですから…。
その場合自分で更新(変更,改造)することは可能でしょうか?
このような心配をするぐらいなら今の内に Format(Date, "yyyy年m月d日") に変更しておくべきかもしれませんが、いくつのプログラムで年号表記を使用しているか覚えていない、というのが実情です。
以上、宜しくお願い致します。
基本的には、Windows Update/Microsoft Update ならびに
毎月第二週の月例パッチ等で配布される予定だそうです。
ちなみに Win7 や Win8 であれば、レジストリーの
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Calendars\Japanese\Eras
を使って定義することも可能であり、OS のロケール「日本語(日本)」な
地域設定に依存するものの一部については、これで対応できます。
http://msdn.microsoft.com/en-us/library/windows/desktop/ee923790.aspx
ただし VB6 や VBA7 では、このレジストリ設定の恩恵を受けられません。
.NET においても、対象となるのは .NET 4 以降であり、3.5 以下では無視されます。
> ドライバ(or それに類するもの)
開発面でいえば、OS 以外の対応にも気を配る必要がありそうです。
たとえば Oracle では、NLS_CALENDAR='Japanese Imperial'において
書式指定子 EE 等で和暦を表現できますが、これはどうなるのか、とか。
あるいは、
明治 大正
昭和 平成
と並んでいて、そこに○をつけてもらうタイプの帳票を作成しているなら
帳票デザインの見直しも必要になってくるでしょう。
魔界の仮面弁士 さん、ありがとうございました。
> 基本的には、Windows Update/Microsoft Update ならびに
> 毎月第二週の月例パッチ等で配布される予定だそうです。
>
とのことで、とりあえずは安心しました。
将来年号が変わりクライアントから「新規年号表記になっていない」と
クレームされた場合の対処方法が判りました。
> 帳票デザインの見直しも必要になってくるでしょう。
>
VB6, VBA以外にシステム開発に使用している言語はなく、上記は問題
発覚後でも自分で対処可能です。
しかしVB6のドライバ類はは手も足もでないので…。
今から作るものは全て Format(Date, "yyyy年m月d日") を採用する
つもりです。
しかし天皇陛下の健康問題が話題となるまでこれに気が付かない自分の
浅はかさに改めて感心?します。
解決しました。 ありがとうございました。
暫くしたら≪解決≫済みにします。
遅くなりましたが≪解決≫にします。
魔界の仮面弁士 さん、ありがとうございました。