バージョン 4.2.5
 —  パラメータリファレンス  —

SOSI - ダブルバイト文字セットのシフトアウト/シフトインコード

この Natural プロファイルパラメータは、ダブルバイト文字セット(DBCS)を使用するアジア諸国に関連するパラメータです。

SOSI は、プロファイルパラメータ SI および SO の代わりとなります。これら 2 つのパラメータは Natural の次回バージョンでは使用できなくなります。

プロファイルパラメータ CP がマルチバイトコードページ(MBCS)に設定されている場合、論理シフトイン/シフトアウト文字はコードページで提供され、SOSI は無視されます。

可能な設定 サブパラメータ 下記の「位置指定サブパラメータ」を参照してください。
デフォルト設定 なし  
ダイナミックな指定  
セッション内の指定 不可  

以下では次のトピックについて説明します。


SOSI パラメータの構文

SOSI パラメータの構文は次のとおりです。

SOSI=(logical-shift-out,[physical-shift-out],logical-shift-in, [physical-shift-in],[SO/SI-display-length])

シフトアウトコードは、文字表現のコードが標準(シングルバイト)モードからダブルバイトモードにシフトするポイントを示すために使用されます。

シフトインコードは、文字表現のコードがダブルバイトモードから標準(シングルバイト)モードに戻るポイントを示すために使用されます。

Top of page

位置指定サブパラメータ

位置指定サブパラメータについて次に説明します。

logical-shift-out

論理シフトアウト文字は 1 文字にする必要があります。 論理シフトアウト文字の 16 進表現を指定します。

通常、IBM ハードウェアには値 0E が使用され、Fujitsu ハードウェアには値 28 が使用されます。

physical-shift-out

物理シフトアウト文字の値は、使用される画面ハードウェアに応じて選択する必要があります。

物理シフトアウト文字の長さは 1 または 2 バイトにすることができます。 物理シフトアウト文字の 16 進表現を指定します。

デフォルト値は論理シフトアウト文字です。

logical-shift-in

論理シフトイン文字は 1 文字にする必要があります。 論理シフトイン文字の 16 進表現を指定します。

通常、IBM ハードウェアには値 0F が使用され、Fujitsu ハードウェアには値 29 が使用されます。

physical-shift-in

物理シフトイン文字の値は、使用される画面ハードウェアに応じて選択する必要があります。

物理シフトイン文字の長さは 1 または 2 バイトにすることができます。 物理シフトイン文字の 16 進表現を指定します。

デフォルト値は論理シフトイン文字です。

SO/SI-display-length

画面上で物理シフトアウト/シフトイン文字で占有されるバイト数です。

設定可能値は 0 および 1 です。 デフォルト値は 1 です。

IBM ハードウェアには、値 1 を使用する必要があります。 Fujitsu ハードウェアには、値 0 を使用する必要があります。

Top of page

論理シフトアウト/シフトイン文字の変換

データが画面に転送される前に、論理シフトアウト/シフトイン文字は対応する物理シフトアウト/シフトイン文字に変換されます。

画面上で入力されたデータが Natural アプリケーションに転送される前に、物理シフトアウト/シフトイン文字は対応する論理シフトアウト/シフトイン文字に変換されます。

Top of page

変換テーブルの自動適合

コードページサポートが無効な場合(つまり、プロファイルパラメータ CPCP=OFF に設定されている場合)、論理シフトアウト/シフトイン文字のエントリは、次のマクロおよびプロファイルパラメータによって提供される変換テーブルで更新されます。

テーブル マクロ プロファイルパラメータ
標準(プライマリ)出力変換テーブル NTTAB TAB
代替(セカンダリ)出力変換テーブル NTTAB1 TAB1
セッションパラメータ PMC に設定されている場合に使用されるセカンダリ入力変換テーブル NTTAB2 TAB2
SYS* 出力変換テーブル NTTABL TABL

論理シフトアウト/シフトイン文字の変換後の文字について、Natural 起動時にそれぞれの変換テーブルにまだデフォルト値(? = X’6F’)が含まれている場合(つまり、上記のいずれかのマクロまたはプロファイルパラメータによって変更されていない場合)、論理シフトアウト/シフトイン文字が入力おおび出力用に変換されなくならないように更新されます。

変換テーブルの詳細については、『オペレーション』ドキュメントの「変換テーブル」を参照してください。

Top of page

SOSI プロファイルパラメータと旧 SO および SI プロファイルパラメータの互換性

サブパラメータの論理シフトアウトはプロファイルパラメータ SO に対応し、サブパラメータの論理シフトインはプロファイルパラメータ SI に対応します。

旧プロファイルパラメータ SO および SI も引き続き有効ですが、プロファイルパラメータ SOSI とは相互排他的に使用する必要があります。 プロファイルパラメータ SO および SI の代わりに SOSI プロファイルパラメータを使用することをお勧めします。

SO=xx,SI=yy と指定することは、SOSI=(xx,xx,yy,yy,1) と指定することと同等です。

Top of page

SOSI パラメータの例

IBM ハードウェアには、SOSI=(0E,0E,0F,0F,1) を使用する必要があります。これは SOSI=(0E,,0F,,1) と同等です。

Fujitsu ハードウェアには、SOSI=(28,28,29,29,0) を使用する必要があります。これは SOSI=(28,,29,,0) と同等です。

IBM ハードウェア用に(パラメータ設定 SOSI=(0E,0E,0F,0F,1) を適用して)作成されたアプリケーションを、変更することなく Fujitsu ハードウェア上で実行するには、SOSI=(0E,4028,0F,2940,1) を使用します。

Top of page