GTM-MML4VXJ
Skip to main content

NetCOBOL 技術情報:ノウハウ情報

FORM

Windows x86, .NET

Q

ADJUSTを使用する場合としない場合のコード変換の詳細を教えてください。

A

FORMのコード変換について理解する必要があります。

以下に、FORMのコード変換の詳細について説明します。

コード変換が発生する場合とは
FORMでは、WindowsやUNIXなどのオープンプラットフォームの他にも、GSシリーズ、ASPシリーズ、SX/Gシリーズなどで使用する画面・帳票定義体およびオーバーレイ定義体を作成できます。他システムで運用する場合には、運用システムのコード系を考慮した上での定義体の作成が必要となります。
画面・帳票定義体の場合、運用するシステムに応じて、画面・帳票定義体の格納時のコード系を、画面・帳票定義体のプロパティの「コード情報(EBCDIC系、JIS8+シフトJIS、EUC)」から指定します。オーバーレイ定義体の場合は、内部コードがJEFで格納されます。
一方、FORMで編集中は、作成する定義体のコード情報に関わらず、文字をJIS8+シフトJISのコード系で処理が行われます。
したがって、作成時と格納時のコード系が異なる場合には必ずコード変換が発生します。
FORMのコード変換指定
FORMでは、FORMを使用時にコード変換が発生した場合、どのコード変換を行うかを指定できます。
初期値/動作環境情報管理(FORMENV.EXE)から、「コード変換」を選択し、ADJUSTを「使用する」、「使用しない」のいずれかを指定します(FORMを起動時に有効になります)。
  • ADJUSTを使用する :富士通標準のコード変換を行います。
  • ADJUSTを使用しない :FORM独自のコード変換を行います。
FORMの独自変換とは
FORMの独自変換についての詳細は、FORM説明書 「付録B FORMのコード系」を参照してください。
FORMの独自変換では、JEF拡張漢字/非漢字や利用者定義文字を扱うことはできません。
それらの文字が設定されている場合には、変換ができない文字として扱われ、代替文字に置き換えられます。代替文字は、日本語文字の場合は全角で「?」です。
ADJUSTを使用したコード変換とは
富士通標準のコード変換についての詳細は、「FUJITSU 文字資源流通手引書」を参照してください。
JEF拡張漢字/非漢字や利用者定義文字を含む定義体を扱う場合には、ADJUSTまたはSystemwalker CharsetMGRが必要です。
FORMでADJUSTまたはSystemwalker CharsetMGRを使用すると、ユーザー自身が設定したADJUSTまたはSystemwalker CharsetMGRの変換の対応付けに従い、シフトJIS外字領域(1880文字)の範囲でJEF外字を使用した定義体を作成できます。

  • JEFのまる1、No.、Tel.などの文字をマイクロソフト標準キャラクタセットと対応づけたい場合
  • 利用者定義文字を外字域に対応づけたい場合
シフトJISについて
Windows上では、JIS文字セットが基本となり、富士通やマイクロソフトが独自のコード系を定義しています(FORM説明書「付録B FORMのコード系」を参照)。それが富士通コード系やマイクロソフト標準キャラクタセットです。
JIS文字セットの中には、未定義部分(9区~、87区~)があり、その部分に各々が文字を割り当てています。
たとえば、よく使用されるまる1、No.、Tel.の文字に着目した場合、富士通コード系では、87区~にこれらの文字が定義されています。
一方、マイクロソフト標準キャラクタセットでは、「13区~NEC拡張非漢字」、「115区~IBM拡張文字(まる1、No.、Tel.は除く)」にこれらの文字が定義されています。
したがって、Windows上でFORMを使用する場合には、使用するコード系によって、使用するフォント、日本語入力システムを設定しておく必要があります。

注意
文中の「GS」は一般に「グローバルサーバGSシリーズ/PRIMEFORCE/Mシリーズ」を示しますが、各ソフトウェア製品で定義されている用語/キーワードの場合はこの限りではありません。