ページの先頭行へ戻る
NetCOBOL V11.1 メッセージ集
FUJITSU Software

2.5.315 JMN3531I-W

実行時のコード系がUnicodeの場合,日本語項目を含む集団項目@1@の日本語部分は日本語として大小比較されません.

埋め込みの説明

@1@ : 一意名(集団項目)

例題

[C3531.cob]
000001 PROGRAM-ID. C3531.
000002 ENVIRONMENT DIVISION.
000003 INPUT-OUTPUT SECTION.
000004 FILE-CONTROL.
000005     SELECT SMFILE ASSIGN SM1F.
000006     SELECT USFILE ASSIGN SEQ1F.
000007     SELECT GVFILE ASSIGN SEQ2F.
000008 DATA DIVISION.
000009 FILE SECTION.
000010   SD SMFILE.
000011   01 R1.
000012     02 KEY-1 PIC X(4).
000013     02 KEY-2.
000014       03 KEY-1-1 PIC X(2).
000015       03 KEY-1-2 PIC N(1).
000016     02 R1-1  PIC X(72).
000017   FD USFILE.
000018   01 USR01 PIC X(80).
000019   FD GVFILE.
000020   01 GIV01 PIC X(80).
000021 WORKING-STORAGE SECTION.
000022 PROCEDURE DIVISION.
000023     SORT   SMFILE   ON ASCENDING KEY KEY-2
000024            USING    USFILE
000025            GIVING   GVFILE
000026 END PROGRAM C3531.

C3531.cob 23: JMN3531I-W 実行時のコード系がUnicodeの場合,日本語項目を含む集団項目'KEY-2'の日本語部分は日本語として大小比較されません.

詳細な説明

日本語項目は,UTF-16のリトルエンディアン形式でデータを保持しています.日本語項目同士の大小比較では,リトルエンディアンをビッグエンディアンに変換してから比較が行われます.しかし集団項目の場合には,その内部に日本語項目が存在していても,リトルエンディアン形式のまま比較されてしまうことになります.