日付・時刻型で「日付」「時刻」「日付と時刻」の3種類から「日付」を選択すると、年月日を扱う項目が用意されます。 年は1753年〜9999年の範囲で指定できます。
日付型項目は、内部では java.sql.Date クラスとして管理されます。
入力された値は「フィルタ」によって補正されます。 詳細は"入力フィルタの仕様"をお読みください。
日付型項目は図3のような入力欄が用意されます。
数字とハイフン(「-」)以外の入力は図4のようなエラーになります。正常に入力した場合は図5のようになります。
入力欄をクリックすると図6のようにカレンダが表示されます。
モデル項目詳細定義ダイアログの「入力制御」タブから、日付入力方式を「カレンダの利用」とします。 (日付型の標準は、「カレンダの利用」となっています。)
標準では、プルダウンで表示されるカレンダーの幅がそのまま入力フィールドの幅となります。この幅を調整することができます。 詳細は"入力制御 > 入力フィールド長 > 日付型(カレンダ利用)の場合"をお読みください。
カレンダではなくリストボックス形式で日付を入力することもできます。 図8は、年のみを入力するリストボックスです。(月日は自動的に1月1日として扱います。)
図9は年と月をリストボックス形式で入力する例です。(日は自動的に1日として扱います。)
図10は年月日をリストボックス形式で入力する例です。
リストボックス利用時は、(選択肢として表示される)開始年と終了年を指定できます。 図11は、開始年を1950年とし、終了年を現在の年とした例です。
図12のように年の開始が1950年からとなります。
指定書式は次のとおりコンマで区切ります。
開始年,終了年
開始年と終了年に「now」という表記を用いることもできます。この now は、現在の年という意味です。 例を示します。
1950,2020
1950,now
now-10,2020
now-50,now+10
検索画面の項目でも、同じ設定を行うことができます。
日付オートフォーマット機能とは、さまざまな入力パターンからyyyy-MM-dd形式に自動変換する機能です。
"5 20" と入力し、カーソルを離すと自動的に変換されます。
定義箇所はありません。カレンダ入力の場合、日付オートフォーマットは自動的に有効になります。(無効にすることはできません。)
"11 7" と入力し、カーソルを離すと自動的に変換されます。
モデル項目詳細ダイアログで日付入力方式の選択肢を空(直接入力)にし、日付をテキストボックスによる直接入力とします。 その上で「日付オートフォーマット機能を有効にする」のチェックを設定します。
変換パターン例を以下に示します。
入力値 | 変換後 |
---|---|
11 7 | 2014-11-07 |
H26 11 7 | 2014-11-07 |
2014/11/7 または 2014/11/07 | 2014-11-07 |
2014 11 07 | 2014-11-07 |
20141107 | 2014-11-07 |
s 47 5 15 | 1972-05-15 |
日付・時刻のフォーマットは「出力制御」タブで指定します。
出力制御という枠組みになっていますが、入力時も適用されます。
フォーマットは「MM月」「dd日」と「M月」「d日」が用意されています。MMやdd書式では、1月は"01月"と、必ず2桁で表記されます。
Wagbyが標準で用意したフォーマットではなく、開発者が直接、フォーマットを記述することもできます。
入力欄の横に、別の日付フォーマットで表示させることができます。 図21は「(平成○年○月○日○曜日)」というフォーマットを指定した例です。
図20のように、入力欄の横に日付が表示されます。このオプション表示は登録、更新画面で有効です。
用意されているフォーマットは次のとおりです。
出力制御にもオプションを指定することができます。(図23,図24)
「入力制御 > 日付・時刻 > オプション表示(日付)」および「出力制御 > フォーマット」で和暦フォーマットを指定した場合、平成1年を平成元年と表示します。