IBM Extension
IBM Extension
FORMAT 文節
FORMAT 文節は、DATA DIVISION の日付項目または時刻項目のデフォルトの形式を指定するために使用します。また、FORMAT 文節は、組み込み関数のデフォルトの日付形式または時刻形式を指定することもできます。
FORMAT 文節 - 形式 >>-FORMAT--+----+--+-DATE-+--+----+-----------------------------> '-OF-' '-TIME-' '-IS-' >--+-リテラル-8--+----------------------------------+-+------------>< | '-| SIZE 句 1 |----+-----------------+-' | | '-| LOCALE 句 1 |-' | '-SIZE--+----+--整数-4--LOCALE---+-----------------+--' '-IS-' '--IS--簡略名-4---' SIZE 句 1 |--SIZE--+----+--整数-3-------------------------------------------| '-IS-' LOCALE 句 1 |--LOCALE--+--------------+---------------------------------------| '-IS--簡略名-3-'
- リテラル-8
- 日付項目または時刻項目のデフォルトの形式を指定します。
リテラル-8 は、その長さが最小でも 2 文字の非数字リテラルでなければなりません。
リテラル-8 には 1 つまたは複数の変換指定子とゼロまたはそれ以上の分離文字が含まれている必要があります。
リテラル-8 が LOCALE 句に及ぼす影響の詳細は LOCALE 句を参照してください。
リテラル-8 で使用することができる変換指定子のリストは 表 1 に記載されていますので、それを参照してください。
次の規則が適用されます。
- リテラル-8 とともに LOCALE 句を指定しない場合は、変換指定は COBOL ロケールに基づく値に置き換えられる。 COBOL ロケールについて詳しくは、 「IBM Rational® Development Studio for i: ILE COBOL プログラマーの手引き」を参照してください。
- 日付項目に関しては、リテラル-8 には変換結果が年間通算日となる変換指定子が含まれていなければならない。 リテラル-8 に年と月の変換指定は含まれていても、日についての変換指定が含まれていない場合は、当該月の最初の日が想定されます。 IBM® i の日付形式およびそれらと等価のリテラル-8 日付形式のリストは 表 1 に記載されていますので、それを参照してください。
- 日付項目に対して FORMAT 文節を指定しない場合は、ISO 形式がデフォルトの日付項目形式として使用される。
- リテラル-8 を指定しない場合は LOCALE 句を指定しなければならない。
- 時刻項目に関しては、リテラル-8 には時および分の変換指定が含まれていなければならない。 秒 (またはミリ秒) を指定しない場合は値 0 が想定されます。 IBM i の時刻形式およびそれらと等価のリテラル-8 時刻形式のリストは 表 2 に記載されていますので、それを参照してください。
- 時刻項目に対して FORMAT 文節を指定しない場合は、ISO 形式がデフォルトの時刻項目形式として使用される。
表 1 に、 リテラル-8 で使用することができる変換指定 子をリストします。
| 指定子 | 内容 | 長さ | 用途 |
|---|---|---|---|
| @C | 世紀を表す 1 つの整数 [0,9] に置き換えられる (0⁴ は 20 世紀) | 1 バイト | D |
| %d | 月の中の日にちを表す 1 つの整数 [01,31] に置き換えられる | 2 バイト | D |
| %D | %m/%d/%y と同じ | 8 バイト | D |
| %H | 時を表す 1 つの整数 [00,23] に置き換えられる (24 時間時計) | 2 バイト | T |
| %I | 時を表す 1 つの整数 [01,12] に置き換えられる (12 時間時計) | 2 バイト | T |
| %j | 年間通算日 (年初から数えた日にち) を表す 1 つの整数 [001,366] に置き換えられる | 3 バイト | D |
| %m | 月を表す 1 つの整数 [01,12] に置き換えられる | 2 バイト | D |
| %M | 分を表す 1 つの整数 [00,59] に置き換えられる | 2 バイト | T |
| %p | ロケールと等価の a.m. または p.m. のいずれかに置き換えられる | ロケール | T |
| @p | AM および PM については、大文字小文字を任意に混合させることができる | 2 バイト | T |
| %r | a.m. および p.m. での時刻表記に置き換えられる。POSIX ロケールでは %I:%M:%S %p と等価。 | ロケール、最小でも 8 バイト | T |
| %R | 24 時間表記の時刻 [%H:%M] に置き換えられる | 5 バイト | T |
| %S | 秒を表す 1 つの整数 [00,61] に置き換えられる | 2 バイト | T |
| @Sh | 100 分の 1 秒単位の秒を表す 1 つの整 数 [00,99] に置き換えられる | 2 バイト | T |
| @Sm | 100 万分の 1 秒単位の秒を表す 1 つの 整数 [000000,999999] に置き換えられる | 6 バイト | T |
| @So | 1000 分の 1 秒単位の秒を表す 1 つの 整数 [000,999] に置き換えられる | 3 バイト | T |
| @St | 10 分の 1 秒単位の秒を表す 1 つの整 数 [0,9] に置き換えられる | 1 バイト | T |
| %y | 年を表す 1 つの 整数 [00,99] に置き換えられる (世紀を併記せず) | 2 バイト | D |
| %Y | 年を表す 1 つの整数に置き換えられる (世紀を併記) | 通常 4 バイト | D |
| @Y | 年を表す 1 つの整数に置き換えられる (世紀を併記) | 4 バイト | D |
| %% | 1 つの % に置き換えられる | 1 バイト | D、T |
| @@ | 1 つの @ に置き換えられる | 1 バイト | D、T |
| 表 5 の注:
|
|||
関連情報
End of IBM Extension
