IBM Extension

TEST-DATE-TIME

TEST-DATE-TIME 関数は、日付、時刻、またはタイム・スタンプの項目、英数字項目、数字パックまたは数字ゾーンの項目をとり、 その日付、時刻、またはタイム・スタンプが有効であるかどうかを判別します。 有効な項目の場合は真 (B'1') を、無効な項目の場合は偽 (B'0') を戻します。

関数タイプはブールです。

戻り値の長さは 1 バイトです。
構文図を読む構文図をスキップする
フォーマット

>>-FUNCTION TEST-DATE-TIME-------------------------------------->

>--(--引数-1--+--------------------------+--)--------------------><
            '-引数-2--+----------------+-'      
                    '-引数-3--+------+-'        
                            '-引数-4-'          

引数-1
リテラル-3 は、下記のものになります。
  • 日付、時刻、またはタイム・スタンプの項目
  • 英数字クラスの項目
  • 非数字リテラル
  • 整数値クラスの項目

引数-1 が日付、時刻、またはタイム・スタンプの項目である 場合は、 引数-2 から引数-4 はオプショナルです。 引数-1 が日付、時刻、またはタイム・スタンプの項目ではない 場合は、 引数-2 を指定する必要があります (引数-3 および引数-4 はオプショナルです)。

引数-1 は、それが有効な項目であるかどうかを調べるために、 そのタイプまたは引数-2 から引数-4 に基づいてテストされます。

引数-2
以下のキーワードのいずれか 1 つでなければなりません。
  • DATE
  • TIME
  • TIMESTAMP

変更の始まり 引数-2 が TIMESTAMP の場合、引数-3 は、FORMAT OF 特殊レジスターでのみ指定でき、引数-4 は指定できません。 変更の終わり

引数-3
日付項目または時刻項目の形式を指定します。以下のものでなければなりません。
  • 長さが最小でも 2 文字の非数字リテラル
  • キーワード LOCALE
  • FORMAT OF 特殊レジスター
有効なリテラルのリストが必要な場合は SPECIAL-NAMES FORMAT 文節を参照してください。

引数-3 がキーワード LOCALE である場合は、日付または時刻の形式は LOCALE に基づきます。 引数-4 を指定しないと、現行ロケールが使用されます。 その他の場合は、簡略名または LOCALE OF 特殊レジスターと関連付けられているロケールが使用されます。

変更の始まり 引数-3 を指定しない場合は、テストには SPECIAL-NAMES FORMAT 文節内で定義した形式が使用されます。 TIMESTAMP では、引数-3 が指定されていない場合、デフォルトの形式 @Y-%m-%d-%H%M%S.@Sm が使用されます。 変更の終わり

引数-4
LOCALE と関連付けられている簡略名または LOCALE OF 特殊レジスターでなければなりません。
引数-4 が従わなければならない規則を以下に示します。
  • 引数-4 が指定されており、かつ引数-3 がロケールに基づく形式リテラルである (例えば %p を含んでいる) 場合は、 そのロケールに基づく形式リテラルは引数-4 で指定されているロケールを使用して変換指定子の実際の値を判別する。
  • 引数-3 がロケールに基づく形式リテラルであり (例えば %p を含んでいる)、かつ引数-4 が指定されていない場合は、 そのロケールに基づく形式リテラルは現行ロケールを使用して変換指定子の実際の値を判別する。
  • 引数-3 がロケールに基づく形式リテラルであり (例えば %p を含んでいる)、 かつ LOCALE OF 特殊レジスターが非ロケール項目を参照するために使用されている場合は、 そのロケールに基づく形式リテラルはデフォルトのロケールを使用して変換指定子の実際の値を判別する。
関連情報
End of IBM Extension