F*TRAN+ V4.0との相違点
以下にV4.0との相違点の詳細を以下に述べます。ご注意ください。
項目 | V4.0までの仕様 | V5.0からの仕様 | 引継ぎについて | 備考 | 変更された理由 |
---|---|---|---|---|---|
マップ設定
ホスト→Win時のパック・表示、ゾーン・表示変換の仕様変更 |
前ゼロありで変換した場合、ピクチャの指定から計算された出力幅分がゼロで埋まります(符号部を除く)。
出力幅がピクチャの長さより長い場合、その分は空白で埋まります。 |
前ゼロありで変換した場合、出力幅の長さ分がゼロで埋まります。
入力符号ありで元データがプラスの場合、符号部分もゼロで埋まります。 |
注意が必要です。 | 正数を「符号あり・前ゼロあり」で変換した場合の符号部が、V4.0までは空白でしたがV5.0からはゼロになります。
F*TRAN+の出力結果に対して、符号部が空白であると期待した処理をしている場合は変更が必要になる場合があります。 |
【仕様の整理】
V4.0まではパック・表示変換、ゾーン表示変換の場合、前ゼロありの変換結果にWin→ホスト変換時とホスト→Win変換時で相違がありました。V5.0からはホスト→Win変換の仕様をWin→ホスト変換と同様に改めました。 |
ホストCOBOLベンダーの設定場所 | 「変換設定」画面で設定していました。 | 「変換設定→コード変換方式→詳細設定」画面で設定しています。 | インストール時に自動的に引き継がれます。 |
|
【仕様の整理】
ホストCOBOLベンダーは各ホストコードに対し、各々設定できるように変更しました。 |
WindowsCOBOLベンダーの設定場所、及び初期値 |
|
|
自動的には引き継がれません。 |
|
【仕様の整理】
初期値では、WindowsCOBOLベンダーはWindows全体に対して1つ設定するように変更しました。マイクロフォーカスを、デファクトと見ているためです。 |
ホストエンディアンの設定場所 | 「変換設定」画面で設定していました。 | 「変換設定→コード変換方式→詳細設定」画面で設定しています。 | インストール時に自動的に引き継がれます。 |
|
【Unicode対応の影響】
今までのエンディアンの意味を拡張し、UCS-2のエンディアンを表すためにも使用したため。 |
ANKコードの設定方法 |
|
|
自動的には引き継がれません。 | Ankコマンドを使用しているバッチなどは修正が必要です。 | 【仕様の整理】
これまで2ヶ所にあったANKコマンドの設定箇所が2ヶ所から、1ヶ所に集約。ANKコマンドが不要になったので削除。 |
ホスト拡張漢字
漢字対応表に無い漢字の変換種類の減少。 |
「ゲタ変換」、「クエスチョン変換」、「ゼロイー変換」の3種類から選択可能でした。 |
|
「ゼロイー変換」は、
「ゲタ変換」に自動的に変更されます。 |
「ゼロイー変換」は、対応していません。 | 【仕様の整理】
元々使用頻度の低い変換種類でしたが、Unicode対応に伴い仕様の引継ぎが困難であったため。 |
マップ設定
出力幅の省略値 |
入力幅と同じ。 | 入力コードと出力コードから自動的に計算して求めています。 | 注意が必要です。 | コードによっては今までと出力幅の省略値が変わる場合があります。変換して結果が今までと異なる場合はマップ設定の入出力幅の指定などを見直してください。
特にUnicodeを使用する場合は注意が必要です。 |
【Unicode対応の影響】
入力コードと出力コードによっては今までの「入力幅と同じ」では変換した結果が途中で切れてしまう場合があり、それを回避するために自動計算に変更しました。 |
マップ設定
定数挿入時(半角英数カナ記号)の出力幅の省略値。 |
見た目の文字数 | 見た目の文字数×2 | 注意が必要です。 | 出力がUCS-2以外の場合は出力幅を指定する必要があります。 | 【Unicode対応の影響】
内部Unicode対応により、内部的なデータの持ち方がSJISからUnicode(UCS-2)に変更になったため。 |
マップ設定
漢字変換の定数挿入での定数の種類。 |
汎用定数として以下の3種類が指定可能
Space HighValue LowValue |
汎用定数として以下の1種類のみが指定可能
Space |
注意が必要です。 | HighValue,LowValueを挿入する場合はAnk変換かバイナリ変換を使います。 | 【Unicode対応の影響】
内部Unicode対応により、漢字変換でのLowValue(OOOOH)、HighValue(FFFFH)の挿入が不可能になったため。 |
Ank変換
変換仕様の詳細化。 |
1文字=1バイトの変換。 | 1文字≠1バイトの変換。 | 注意が必要です。 | V5.0以降でAnk文字に対して厳密に1バイト単位の変換を行う場合はAlpha変換を使う必要があります。
※変換元データの内容によりAnk変換のままでも問題ない場合もあります。実際に変換して確認する事をお勧めします。 |
【Unicode対応の影響】
V4.0まではAnk文字の1文字は1バイトだったため、結果として1バイト単位の変換になっていましたが、Unicodeに対応したV5.0以降ではAnk文字が必ずしも1バイトではなくなった為、Ank変換を行った場合はデータによりAnk文字の変換結果が異なります。その場合はAlpha変換を使用する必要があります。 |
変換オプション
コード変換表指定オプションの名称変更。 |
/Code | /Host | /Codeでも引き続き指定可能です。 | 下位互換維持の為、旧名称でも引き続き指定可能です。 | 【仕様の整理】
コード変換方式(旧:漢字変換方式)設定コマンドの名称をUnicode対応に伴い「Kanji」から「Code」に変更した事により、同一名称を避ける為にコード変換表指定オプションである「/Code」を「/Host」に名称変更したため。 |