日付フィールド
日付フィールド は、次のいずれかにすることができます。
- データ記述項目が DATE FORMAT 文節を含むデータ項目。
- 次の組み込み関数の 1 つで戻される値。
- DATE-OF-INTEGER
- DATE-TO-YYYYMMDD
- DATEVAL
- DAY-OF-INTEGER
- DAY-TO-YYYYDDD
- YEAR-TO-YYYY
- YEARWINDOW
- ACCEPT ステートメントの概念上のデータ項目である DATE、DATE YYYYMMDD、DAY、または DAY YYYYDDD。
- 特定の算術演算の結果 (詳細については、日付フィールドを使用する算術計算を参照)。
日付フィールド という用語は、拡張日付フィールド およびウィンドウ化日付フィールド の両方を指します。
ウィンドウ化日付フィールド とは、ウィンドウ化西暦年を含む日付フィールドです。
ウィンドウ化西暦年 は、世紀ウィンドウ内の年を表す 2 桁から構成されます。
拡張日付フィールド とは、拡張西暦年を含む日付フィールドです。
拡張西暦年 は 4 桁から構成されます。
拡張日付フィールドの主な用途は、ウィンドウ化日付フィールドと組み合わせて使用し
たときに正しい結果をもたらすことです。例えば、4 桁年号の日付への移行が不完全な場合などです。アプリケーションの中のすべての日付が 4 桁の年号を使用する場合には、2000 年言語拡張を使用する必要はありません。
年末尾型日付フィールド とは、DATE FORMAT 文節において YY または YYYY の前に 1 つ以上の X が
指定されている日付フィールドのことです。
年末尾型日付フィールドがサポートされるのは、
同じデータ (年末尾型) 日付フォーマットの別の日付が関係している場合や、非日付データが関係している場合など、一部の操作においてです。
日付フォーマット とは日付フィールドの日付パターンであり、
次のいずれかの方法で指定されます。
- DATE FORMAT 文節または DATEVAL 組み込み関数 引数-2 によって明示的に
- 日付フィールドを戻すステートメントおよび組み込み関数によって暗黙的に (詳細については、日付フィールドを参照)
互換 という用語の意味は、日付フィールドに適用される場合、それが COBOL のどの部で使用されるかによって異なります。
- データ部
- 2 つの日付フィールドの USAGE が同じであり、
以下の少なくとも 1 つの条件を満たす場合、その 2 つの日付フィールドには互換性がある。
- 日付フォーマットが同じである。
- 両方ともウィンドウ化日付フィールドである (一方がウィンドウ化西暦年であ
る DATE FORMAT YY だけで構成されている)。
- 両方とも拡張日付フィールドである (一方が拡張西暦年である DATE
FORMAT YYYY だけで構成されている)。
- 一方が DATE FORMAT YYXXXX で、他方が YYXX である。
- 一方が DATE FORMAT YYYYXXXX で、他方が YYYYXX である。
ウィンドウ化日付フィールドを拡張日付グループ・データ項目の従属とすることもできる。2 つの日付フィールドに互換性があるのは、従属のほうの日付フィ
ールドに USAGE DISPLAY が指定されており、グループ拡張日付フィールドの開始より 2 バイト後で開始していて、かつ 2 つのフィールドが以下の条件の少なくとも 1 つを満たしている場合です。
- 従属日付フィールドに指定されている DATE FORMAT パターンの中の X の数が、グループ日付フィールドの DATE FORMAT パターンと同じであ
る。
- 従属日付フィールドに DATE FORMAT YY が指定されている。
- グループ日付フィールドに DATE FORMAT YYYYXXXX が指定されてお
り、従属日付フィールドに DATE FORMAT YYXX が指定されている。
- 手続き部
- 2 つの日付フィールドの日付フォーマットが、年部分を除いて同じ場合、それら
には互換性がある。これらは、ウィンドウ化または拡張することが可能。例えば、DATE FORMAT YYXXX のウィンドウ化日付フィールド
は、以下と互換性がある。
- DATE FORMAT YYXXX の別のウィンドウ化日付フィールド
- DATE FORMAT YYYYXXX の拡張日付フィールド
|