Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 言語解説書


日付フィールドの使用に関する制約事項

以下のセクションでは、日付フィールドを以下の関連で使用する場合の制約事項について説明します。

日付フィールドを他の関連で使用する場合の制約事項については、以下を参照してください。

DATE FORMAT 節と他の節との結合

DATE FORMAT 節と結合可能な USAGE 節の句は以下の句のみです。

  • BINARY
  • COMPUTATIONAL1
  • COMPUTATIONAL-3
  • COMPUTATIONAL-4
  • DISPLAY
  • PACKED-DECIMAL

1TRUNC(BIN) コンパイラー・オプションが有効である場合、USAGE COMPUTATIONAL は DATE FORMAT 節と結合できません。

PICTURE 文字ストリングでは、DATE FORMAT 節と同じ文字数または桁数を指定しなければなりません。英数字の日付フィールドの場合、許可される PICTURE 文字ストリング記号は、A、9、および X だけです (少なくとも 1 つの X がなければなりません)。数字日付フィールドの場合、可能な PICTURE 文字ストリング記号は 9 と S だけです。

以下の節は、DATE FORMAT で定義されたデータ項目には使用できません。

  • BLANK WHEN ZERO
  • JUSTIFIED
  • SIGN 節の SEPARATE CHARACTER 句

EXTERNAL 節は、ウィンドウ表示日付フィールドまたはウィンドウ表示日付フィールド従属項目を含むグループ項目には使用できません。

次の節を DATE FORMAT と結合するときには、いくつかの制約事項が適用されます。

日付フィールドであるグループ項目

グループ項目が DATE FORMAT 節を使用して定義されている場合は、次の制約事項が適用されます。

  • グループ内の基本項目は、すべて USAGE DISPLAY でなければなりません。
  • グループ項目の長さは、DATE FORMAT 節の日付パターン と同じ文字数でなければなりません。
  • グループが USAGE DISPLAY を使用する日付フィールドだけから構成され、グループ項目と単一従属項目に DATE FORMAT 節が指定されている場合、両方の DATE FORMAT 節は同一でなければなりません。
  • グループを細分化する従属項目がグループ項目に含まれている場合には、 以下の制約事項が適用されます。
    • 指定された (FILLER ではない) 従属項目が、グループ項目日付フィールドの年部分から構成され、かつ DATE FORMAT 節がある場合、DATE FORMAT 節は、YY または YYYY (グループ項目と同じ文字数の年) でなければなりません。
    • グループ項目が YYXXXX、YYYYXXXX、XXXXYY、または XXXXYYYY の DATE FORMAT 節の指定されているグレゴリオ暦で、 名前付き従属日付データ項目がグレゴリオ暦の年および月の部分を構成する場合、その DATE FORMAT 節はそれぞれ YYXX、YYYYXX、XXYY、 または XXYYYY でなければなりません (または、YYYYXXXX のグループ日付フォーマットの場合、YYXX の従属日付データは以下の説明のようになります)。
    • ウィンドウ表示日付フィールドが従属項目がグループ項目の後 2 文字で開始する場合、 日付が年が最後にくるフォーマットでなく従属項目の日付フォーマットに X がないか、グループ項目と同じ数の X が Y の後に続くか、 またはグループ日付フォーマット YYYYXXXX の下の YYXX である場合に、それは拡張日付フィールド・グループに従属します。
    • 上記の制限事項で説明したように、DATE FORMAT 節を指定できる従属項目は、 グループ項目の年の部分を定義する項目、拡張日付フィールド・グループ項目のウィンドウ表示部分、 またはグレゴリオ日付グループ項目の年と月の部分だけです。

    例えば、以下は有効なグループ項目を定義しています。

    01  YYMMDD     DATE FORMAT YYXXXX.
        02  YYMM   DATE FORMAT YYXX.
            03  YY DATE FORMAT YY PICTURE 99.
            03                    PICTURE 99.
        02  DD                    PICTURE 99.

日付フィールドを非日付データとして扱う言語エレメント

日付フィールドが以下の言語エレメントで使用されると、それらは非日付データとして扱われます。すなわち、DATE FORMAT は無視され、日付データ項目の内容は自動拡張を受けずに使用されます。

  • 環境部 FILE-CONTROL 段落:
    • SELECT ... ASSIGN USING データ名
    • SELECT ... PASSWORD IS データ名
    • SELECT ... FILE STATUS IS データ名
  • データ部項目:
    • LABEL RECORD IS データ名
    • LABEL RECORDS ARE データ名
    • LINAGE IS データ名 FOOTING データ名 TOP データ名 BOTTOM データ名
  • クラス条件
  • 符号条件
  • DISPLAY ステートメント

ウィンドウ表示日付フィールドを引数として受け入れない言語エレメント

ウィンドウ表示日付フィールドは、以下のものとして使用することはできません。

  • 環境部 FILE-CONTROL 段落の以下のフォーマットにおけるデータ名:
    • SELECT ... RECORD KEY IS
    • SELECT ... ALTERNATE RECORD KEY IS
    • SELECT ... RELATIVE KEY IS
  • データ部のファイル記述 (FD) またはソート記述 (SD) 項目の RECORD IS VARYING DEPENDING ON 節におけるデータ名
  • データ部データ定義項目の OCCURS DEPENDING ON 節のオブジェクト
  • データ部データ定義項目の OCCURS 節の ASCENDING KEY または DESCENDING KEY 句のキー
  • 以下のステートメントにおけるデータ名または ID:
    • CANCEL
    • GO TO ... DEPENDING ON
    • INSPECT
    • SET
    • SORT
    • STRING
    • UNSTRING
  • CALL ステートメントで、プログラム名を含む ID として
  • INVOKE ステートメントで、メソッドが呼び出されるオブジェクトを指定する ID、またはメソッド名を含む ID として
  • PERFORM ステートメントの TIMES および VARYING 句の ID として (ウィンドウ表示日付フィールド PERFORM 条件の中では指定可能)
  • 逐次 (フォーマット 1) SEARCH ステートメントの VARYING 句の ID、 または 2 進 (フォーマット 2) SEARCH ステートメントの ID として (ウィンドウ表示日付フィールド SEARCH 条件の中では指定可能)
  • WRITE ステートメントの ADVANCING 句における ID
  • 組み込み関数 (UNDATE 組み込み関数を除く) への引数

ウィンドウ表示日付フィールドを、MERGE および SORT ステートメントで、いくつかの制限付きで昇順キーまたは降順キーとして使用することができます。詳細については、MERGE ステートメントおよび SORT ステートメントを参照してください。

日付フィールドを引数として受け入れない言語エレメント

ウィンドウ表示日付フィールドまたは拡張日付フィールドのいずれも使用することができません。

  • DIVIDE ステートメント (GIVING または REMAINDER 節の ID として使用する場合を除く)
  • MULTIPLY ステートメント (GIVING 節の ID として使用する場合を除く)

(日付フィールドは、除算または乗算のオペランドとして使用することはできません。)


ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)