PowerFX V1.0 運用説明書 - Microsoft(R) Windows(R) -
目次 索引 前ページ次ページ

第5章 COBOLシステムサブルーチン> 5.3 PFXSBICV(標準コード変換サブルーチン)

5.3.2 呼出し形式

CALL "PFXSBICVIT" USING 一意名-1.
CALL "PFXSBICVOP" USING 一意名-1 一意名-2 一意名-3 一意名-4.
CALL "PFXSBICV" USING 一意名-1 一意名-2 一意名-5 一意名-6 一意名-7 一意名-8.
CALL "PFXSBICVCL" USING 一意名-1 一意名-2.
CALL "PFXSBICVED" USING 一意名-1.

一意名-1から一意名-8のパラメーターは連絡領域として、作業場所節で以下に示すような定義をしてください。

01  ICV-PARA. ------------------------------------ 1)
     02  RTNCD        PIC S9(9)  COMP. ----------- 1-1)☆
     02  RTNCD-DTL    PIC S9(9)  COMP. ----------- 1-2)☆
     02  WKAREA       PIC X(56). ----------------- 1-3)
01  ICV-WORK          PIC S9(9)  COMP. ----------- 2)
01  ICV-TOCODE        PIC X(i). ------------------ 3)  ※
01  ICV-FROMCODE      PIC X(j). ------------------ 4)  ※
01  ICV-INDATA        PIC X(m). ------------------ 5)  ※
01  ICV-INSIZE        PIC S9(9)  COMP. ----------- 6)  ※☆
01  ICV-OUTDATA       PIC X(n). ------------------ 7)  ☆
01  ICV-OUTSIZE       PIC S9(9)  COMP. ----------- 8)  ※☆

※:設定項目 ☆:通知項目

パラメーターの説明

1)一意名-1:変換処理管理領域
PFXSBICVIT、PFXSBICVOP、PFXSBICV、PFXSBICVCLおよびPFXSBICVEDのいずれの場合にも指定します。
PFXSBICV(標準コード変換サブルーチン)で使用する作業領域として以下の1-1)〜1-3)に示すデータ項目から成る集団項目名を指定します。
本パラメーターは、PFXSBICVOPの呼出しからPFXSBICVCLの呼出しを完了するまで内容を変更しないでください。
また、複数の文字コード系の組合せのコード変換を同時に行う場合には、それぞれに変換処理管理領域が必要です。

 

1-1)復帰コード
復帰コードが通知されます。
内容については、"5.3.3 復帰コード"を参照してください。

 

1-2)詳細復帰コード
詳細復帰コードが通知されます。
内容については、"5.3.3 復帰コード"の詳細復帰コードを参照してください。

 

1-3)作業領域
標準コード変換サブルーチン群で使用される作業領域です。

 

2)一意名-2:コード変換作業領域
PFXSBICVOP、PFXSBICVおよびPFXSBICVCLの場合のみ指定します。
コード変換時に使用する4バイトのコード変換作業領域を指定します。

 

3)一意名-3:変換先コード系のキーワード
変換先の文字コード系のキーワードを指定します。
コード系と指定するキーワード値については、"表5.1 コード系名とキーワード値"を参照してください。
文字コード系のキーワード値(可変)の格納形式は次のとおりです。

[図5.2 文字コード系のキーワード値(可変)の格納形式]

先頭から文字のキーワード値を指定し、その直後にバイナリ値のX"00"を設定します(X"00"は文字コード系のキーワード値の終端を表します)。
一意名-3に指定するデータ項目の定義例

01 ICV-TOCODE.
02 TO-NAME PIC X(4) VALUE "SJIS".
02 TNAME-TERM PIC X(1) VALUE X"00".

 

4)一意名-4:変換元コード系のキーワード
変換元の文字コード系のキーワードを指定します。
指定の形式は、3)一意名-3(変換先の文字コード系のキーワード)と同じです。
コード系名と指定するキーワード値については、"表5.1 コード系名とキーワード値"を参照してください。

[表5.1 コード系名とキーワード値]

変換元コード

変換先コード

コード系名

キーワード値

コード系名

キーワード値

EUC(U90,S90)

U90(注1)

シフトJIS(MS,R90,DOS)
シフトJIS(DOS)
シフトJIS(MS)
JIS + 7単位半角カナ
JIS + 8単位半角カナ
JIS + ESCで切換え
JEF + EBCDIC(カナ)
JEF + EBCDIC(ASCII)
Unicode
Unicode
Unicode

sjis
sjisdos
sjisms
jiskana7
jiskana8
jiskana
Jefkana(注5)
JefAscii(注5)
UCS2(注10)
UCS2LE(注10)
UTF8(注10)

EUC(S90)

S90

シフトJIS(MS,R90,DOS)
シフトJIS(DOS)
シフトJIS(MS)
JIS + 7単位半角カナ
JIS + 8単位半角カナ
JIS + ESCで切換え
JEF + EBCDIC(カナ)
JEF + EBCDIC(ASCII)
Unicode
Unicode
Unicode

sjis
sjisdos
sjisms
jiskana7
jiskana8
jiskana
Jefkana(注5)
JefAscii(注5)
UCS2(注10)
UCS2LE(注10)
UTF8(注10)

シフトJIS
(MS,R90,DOS)

sjis(注1)

EUC(U90,S90)
EUC(S90)
JIS + 7単位半角カナ
JIS + 8単位半角カナ
JIS + ESCで切換え
JEF + EBCDIC(カナ)
JEF + EBCDIC(ASCII)
Unicode(注6)
Unicode
Unicode
EUC_JP(注9)

U90
S90
jiskana7
jiskana8
jiskana
Jefkana(注5)
JefAscii(注5)
UCS2(注10)
UCS2LE(注10)
UTF8(注10)
EUC_JP

シフトJIS(DOS)

sjisdos

EUC(U90,S90)
EUC(S90)
JIS + 7単位半角カナ
JIS + 8単位半角カナ
JIS + ESCで切換え
JEF + EBCDIC(カナ)
JEF + EBCDIC(ASCII)

U90
S90
jiskana7
jiskana8
jiskana
Jefkana(注5)
JefAscii(注5)

シフトJIS(MS)

sjisms

EUC(U90,S90)
EUC(S90)
JIS + 7単位半角カナ
JIS + 8単位半角カナ
JIS + ESCで切換え
JEF + EBCDIC(カナ)
JEF + EBCDIC(ASCII)
Unicode
Unicode
Unicode
EUC_JP

U90
S90
jiskana7
jiskana8
jiskana
Jefkana(注5)
JefAscii(注5)
UCS2(注10)
UCS2LE(注10)
UTF8(注10)
EUC_JP

JIS +7単位半角カナ
(注2)

jiskana7

EUC(U90,S90)
EUC(S90)
シフトJIS(MS,R90,DOS)
シフトJIS(DOS)
シフトJIS(MS)
JEF + EBCDIC(カナ)
JEF + EBCDIC(ASCII)

U90
S90
sjis
sjisdos
sjisms
Jefkana(注5)
JefAscii(注5)

JIS +8単位半角カナ
(注3)

jiskana8

EUC(U90,S90)
EUC(S90)
シフトJIS(MS,R90,DOS)
シフトJIS(DOS)
シフトJIS(MS)
JEF + EBCDIC(カナ)
JEF + EBCDIC(ASCII)

U90
S90
sjis
sjisdos
sjisms
Jefkana(注5)
JefAscii(注5)

JIS +ESCで切換え
(注4)

jiskana

EUC(U90,S90)
EUC(S90)
シフトJIS(MS,R90,DOS)
シフトJIS(DOS)
シフトJIS(MS)
JEF + EBCDIC(カナ)
JEF + EBCDIC(ASCII)

U90
S90
sjis
sjisdos
sjisms
Jefkana(注5)
JefAscii(注5)

JEF +
EBCDIC(カナ)

Jefkana(注5)

EUC(U90,S90)
EUC(S90)
シフトJIS(MS,R90,DOS)
シフトJIS(DOS)
シフトJIS(MS)
JIS + 7単位半角カナ
JIS + 8単位半角カナ
JIS + ESCで切換え
Unicode
Unicode
Unicode

U90
S90
sjis
sjisdos
sjisms
jiskana7
jiskana8
jiskana
UCS2(注7)(注10)
UCS2LE(注7)(注10)
UTF8(注7)(注10)

JEF +
EBCDIC(ASCII)

JefAscii(注5)

EUC(U90,S90)
EUC(S90)
シフトJIS(MS,R90,DOS)
シフトJIS(DOS)
シフトJIS(MS)
JIS + 7単位半角カナ
JIS + 8単位半角カナ
JIS + ESCで切換え
Unicode
Unicode
Unicode

U90
S90
sjis
sjisdos
sjisms
jiskana7
jiskana8
jiskana
UCS2(注7)(注10)
UCS2LE(注7)(注10)
UTF8(注7)(注10)

Unicode(UCS2)

UCS2(注10)

EUC(U90,S90)
EUC(S90)
シフトJIS(MS,R90)(注6)
シフトJIS(MS)
JEF + EBCDIC(カナ)
JEF + EBCDIC(ASCII)
Unicode
Unicode
EUC_JP

U90
S90
sjis
sjisms
Jefkana(注5)(注7)
JefAscii(注5)(注7)
UCS2LE(注10)
UTF8(注10)
EUC_JP

Unicode(UCS2LE)

UCS2LE(注10)

EUC(U90,S90)
EUC(S90)
シフトJIS(MS,R90)(注6)
シフトJIS(MS)
JEF + EBCDIC(カナ)
JEF + EBCDIC(ASCII)
Unicode
Unicode
EUC_JP

U90
S90
sjis
sjisms
Jefkana(注5)(注7)
JefAscii(注5)(注7)
UCS2(注10)
UTF8(注10)
EUC_JP

Unicode(UTF8)

UTF8(注10)

EUC(U90,S90)
EUC(S90)
シフトJIS(MS,R90)(注6)
シフトJIS(MS)
JEF + EBCDIC(カナ)
JEF + EBCDIC(ASCII)
Unicode
Unicode
EUC_JP

U90
S90
sjis
sjisms
Jefkana(注5)(注7)
JefAscii(注5)(注7)
UCS2(注10)
UCS2LE(注10)
EUC_JP

EUC_JP(注8)

EUC_JP

シフトJIS(MS)(注9)
シフトJIS(MS)
Unicode
Unicode
Unicode

sjis
sjisms
UCS2(注10)
UCS2LE(注10)
UTF8(注10)

注1) シフトJISコード、および、EUCコードの代表コード系名のキーワード値です。
注2) 半角カナへの切換えは、英数字のSO(シフトアウト)で行います。
注3) 1バイトコードを、JIS x0201の8単位コードで表現します。
注4) 半角カナへの切換えは、エスケープシーケンスで行います。
注5) "JEFコード系の変換タイプ"により変換タイプの切換えが可能なキーワード値です。JEFコード系の変換タイプについては、"Interstage Charset Manager"の"使用手引書 標準コード変換機能編"を参照してください。また、キーワード値により変換タイプを直接指定することができます。

[表5.2 JEFコード系変換タイプとキーワード値]

変換タイプ

キーワード値

字形重視変換 Jefaugkana/Jefaugascii
領域重視変換 Jefcorekana/Jefcoreascii
環境変数または変換仕様の変換プログラムに従う Jefkana/Jefascii

 

注6) シフトJISコード系の代表コード系名にシフトJIS(DOS)を指定した場合、Unicodeとの変換はできません。
注7) JEFコード系の変換タイプを領域重視に設定してある場合、Unicodeとの変換はできません。
注8) JIS x0208、JIS x0212、マイクロソフトコード系の他社文字の日本語EUCコードです。
注9) シフトJISコード系の代表コード系名にシフトJIS(DOS、R90)を指定した場合、EUC_JPとの変換はできません。
注10)"Unicodeの変換タイプ"により変換タイプの切換えが可能なキーワード値です。
Unicodeの変換タイプについては、"Interstage Charset Manager"の"使用手引書 標準コード変換機能編"を参照してください。また、キーワード値により変換タイプを直接指定することができます。

[表5.3 Unicodeの変換タイプとキーワード値]

変換タイプ

キーワード値

Unicode2.0変換 UCS2/UCS2LE/UTF8
Unicode(MS)変換 UCS2_MS/UCS2LE_MS/UTF8_MS
環境変数または変換仕様の変換プログラムに従う UCS2/UCS2LE/UTF8

5)一意名-5:変換元データ領域
変換元データを格納します。

 

6)一意名-6:変換元データのサイズ
変換元データのサイズをバイト単位で指定します。
本パラメーターは、変換できなかったバイト数に更新されて復帰します。

 

7)一意名-7:変換後データ領域
変換後のデータが格納される領域を指定します。
変換先コード系によっては変換後データにシフトコードが出力されるので、十分なサイズを確保してください。
変換元文字コードに対応する変換先文字コードが存在しない場合、代替文字(変換先コード系でのアンダースコア"_")に置き換えて処理を継続します。正常終了した場合は、代替文字に置き換えられた文字数が詳細復帰コードに設定されます。代替文字に置き換わることを許さない場合は、正常終了時に利用者プログラムで詳細復帰コードを確認してください。

 

8)一意名-8:変換後データ領域のサイズ
変換後データ領域のサイズをバイト単位で指定します。
本パラメーターは、変換後データを格納した後の7)一意名-7(変換後データ領域)の残りの長さ(バイト数)に更新されて復帰します。

目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005