Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
FUJITSUSIMPLIA/TF-MDPORT
オンラインマニュアル( (ソフトウェア開発保守支援システム/開発資産流用支援ツール)
Windows版 SIMPLIA/TF-MDPORT V70L20 オンラインマニュアル
第4版
はじめに
SIMPLIA/TF-MDPORTは、ソフトウェア開発保守支援システムの一つとして位置づけられ、汎用機・オフコン・UNIX機・PCとの間で、データやソースの流通を支援するツールです。
ヘルプを読むために
- HTML3.2以降をサポートするWWWブラウザをお使いください。- 本オンラインマニュアルでは「NetCOBOL」または「COBOL97」を総称して「COBOL97」と表記しています。「NetCOBOL」、または「COBOL97」とMDPORTの関係については「ソフトウェア説明書」を参照してください。
登録商標について
本オンラインマニュアルで使われている登録商標及び商標は、以下のとおりです。 - Microsoft,Windows,MS-DOS,MSは、米国Microsoft Corporationの米国およびその他の国における登録商標です。
- UNIXは、X/Openカンパニーリミテッドが独占的にライセンスしている米国ならびに他の国における登録商標です。
- ORACLEは、米国Oracle Corporationの登録商標です。 - INFORMIXは、米国Informix Software,Inc.の登録商標です。 - Excelは、米国Microsoft Corporationの製品です。
略記について
本オンラインマニュアルでは、各製品を次のように略記しています。 「Microsoft(R) Windows(R) 2000 Professional operating system」 → 「Windows 2000」または、「Windows 2000
Professional」
「Microsoft(R) Windows(R) 2000 Server operating system」 → 「Windows 2000」または、「Windows 2000
Server」
「Microsoft(R) Windows(R) 2000 Advanced Server operating system」 → 「Windows 2000」または、「Windows 2000
Server」
「Microsoft(R) Windows(R) XP Professional operating system」 → 「Windows XP」または、「Windows XP
Professional」
「Microsoft(R) Windows(R) XP Professional x64 Edition」 → 「Windows XP Pro (x64)」
「Microsoft(R) Windows(R) XP Home Edition operating system」 → 「Windows XP」または、「Windows XP Home
Edition」
「Microsoft(R) Windows Server(R) 2003, Standard Edition」 → 「Windows Server 2003」または、「Windows Server
2003 SE」
「Microsoft(R) Windows Server(R) 2003, Enterprise Edition」 → 「Windows Server 2003」または、「Windows Server
2003 EE」
「Microsoft(R) Windows Server(R) 2003, Standard x64 Edition」 → 「Windows Server 2003 (x64)」または、「Windows
Server 2003 SE (x64)」
「Microsoft(R) Windows Server(R) 2003, Enterprise x64 Edition」 → 「Windows Server 2003 (x64)」または、「Windows
Server 2003 EE (x64)」
「Microsoft(R) Windows Server(R) 2003 R2, Standard x64 Edition」 → 「Windows Server 2003 (x64)」または、「Windows
Server 2003 SE (x64)」
「Microsoft(R) Windows Server(R) 2003 R2, Enterprise x64 Edition」 → 「Windows Server 2003 (x64)」または、「Windows
Server 2003 EE (x64)」
「Microsoft(R) Windows Server(R) 2003, Enterprise Edition for Itanium-based Systems」 → 「Windows Server 2003 (Itanium)」または、
「Windows Server 2003 EE (Itanium)」
「Microsoft(R) Windows Server(R) 2003, Datacenter Edition for Itanium-based Systems」 → 「Windows Server 2003 (Itanium)」または、
「Windows Server 2003 DTE (Itanium)」
「Microsoft(R) Windows Vista(R) Home Basic」 → 「Windows Vista」または、「Windows Vista Home Basic」
「Microsoft(R) Windows Vista(R) Home Premium」 → 「Windows Vista」または、「Windows Vista Home
Premium」
「Microsoft(R) Windows Vista(R) Business」 → 「Windows Vista」または、「Windows Vista Business」
「Microsoft(R) Windows Vista(R) Enterprise」 → 「Windows Vista」または、「Windows Vista Enterprise」
「Microsoft(R) Windows Vista(R) Ultimate」 → 「Windows Vista」または、「Windows Vista Ultimate」
「Microsoft(R) Windows Server(R) 2008 Standard」または、 「Microsoft(R) Windows Server(R) 2008 Standard without Hyper-V(TM)」または、 「Microsoft(R) Windows Server(R) 2008 Enterprise」または、 「Microsoft(R) Windows Server(R) 2008 Enterprise without Hyper-V(TM)」
→ 「Windows Server 2008」
「Microsoft(R) Windows Server(R) 2008 for Itanium-Based Systems」 → 「Windows Server 2008 Itanium」
「Microsoft(R) Internet Explorer」 → 「Internet Explorer」
Copyright 1994-2008 FUJITSU LIMITED
機能概要
機能 概要
コード変換
シフトJIS、EUC、JEF、JIS、Unicode(UCS2,UTF8)間の相互変換をサポートしています。また、他社コード変換機能により富士通以外の他社コードからシフトJISへの変換も可能です。 サポート他社コード:IBM漢字コード、日立KEISコード、日本電気JIPS(E/J)コード、日本電気AVX日本語コード
データ構造変換
一般のコード変換ユーティリティではテキストファイルの変換しか行われないため、COBOL特有の内部10進(パック)やバイナリデータの変換ができません。MDPORTはレイアウト定義機能によりデータファイルのフォーマット情報を与え、項目属性を意識した変換を行うことにより、バイナリ形式・COBOL形式(Windows上のCOBOLファイル)・CSV形式・XML形式ファイルの間で相互にファイル形式変換が可能です。また、C言語連携機能によりC言語のインクルードファイル中の構造体のint型のサイズやアライメントを意識した変換も行うことができます。
バッチ実行 (TFMDP32コマンド)
変換指示ファイルで指定された内容に従い、変換処理をコマンドにて実行することができます。
プレビュー 事前に変換結果を画面で表示し確認することができます。
SIMPLIA/TF-LINDA との連携
Windows上のSIMPLIAシリーズ製品である“SIMPLIA/TF-LINDA”よりMDPORTを連携起動することができます。この機能により、SIMPLIA/TF-LINDAで表示している各種データファイルを、MDPORTによりCSV形式や他編成へのファイル形式変換、およびコード変換を行えます。
マスク機能
実運用データをテストで用いる際、個人情報(氏名・住所・電話・誕生日)が含まれているため、個人情報流出の危険性があります。 本機能はMDPORTにて変換を行う前のデータを対象とし、レイアウト定義機能にて入力データを元に類似データの作成を行う機能です。 マスク機能を使うことにより個人情報を秘匿して開示できます。よって、個人情報漏洩の安全性向上につながります。
可変長COBOLファイル入出力 可変長のCOBOLファイルの入出力ができます。 (但し、COBOLランタイムシステムが必要になります。)
マルチレイアウト機能 マルチフォーマットのファイルを取り扱う事が出来るようになります。
適用
以下のようなケースでの適用が挙げられます。- ダウンサイジング等におけるデータ移行としての手段- 分散開発におけるテストデータの流用- 異なるプラットフォーム上のファイル内容の確認手段- データファイルの加工- CSV形式を介しての各種RDBや表計算ソフトとのデータ流通- 16bitアプリケーションと32bitアプリケーションのデータ流通- アライメントの異なるアプリケーション間のデータ流通- XML形式を介してのデータ流通
- 開発時、システム担当者が運用データ(実データ)をマスク処理にかけ、テスト担当者(委託先)にテストデータとして渡す場合 ※1
- - 開発時、システム担当者が運用データ(実データ)をマスク処理にかけ、データ特性を損なわずにテストデータとして使用する場合 ※2
- - 運用時、システム管理者が、データに含まれる特定情報(個人情報等)のみを、秘匿して開示(保管)させたい場合 ※1
※1 ※1 適用時することにより個人情報漏洩の危険性を低下できる
※ ※2 適用時することによりデータの整合性を保持できる
MDPORT変換指示 [ファイル]メニュー
ファイル(F) 表示(V) ツール(T) オプション(O) ヘルプ(H)
項目 説明
変換指示の新規設定 MDPORT変換指示を初期状態にし、新規に変換指示を行います。変換指示ファイルを開く 既存の変換指示ファイルを開いて再使用することができます。なお、エク
スプローラ等からのドラッグ&ドロップ操作でも変換指示ファイルを開くことができます。以前に作成された変換指示ファイルを開く時、保存時に設定していたレイアウト定義ファイル等が存在しないと、正しく開くことができないので注意してください。
変換指示ファイルの上書き保存 現在指定されている内容を変換指示ファイルとして、上書きで保存します。
変換指示ファイルに名前を付けて保存 現在指定されている内容を変換指示ファイルとして、ファイル名を付けて保存します。
SIMPLIA/TF-MDPORTの終了 SIMPLIA/TF-MDPORTを終了します。
MDPORT変換指示 [表示]メニュー
ファイル(F) 表示(V) ツール(T) オプション(O) ヘルプ(H)
項目 説明
ツールバー ツールバーの表示/非表示を切り替えます。ステータスバー ステータスバーの表示/非表示を切り替えます。
MDPORT変換指示 [ツール]メニュー
ファイル(F) 表示(V) ツール(T) オプション(O) ヘルプ(H)
項目 説明
レイアウト定義 レイアウト定義プログラムを起動します。 →レイアウト定義機能
MDPORT変換指示 [オプション]メニュー
ファイル(F) 表示(V) ツール(T) オプション(O) ヘルプ(H)
項目 説明
環境設定 MDPORTを動作させるにあたっての環境設定を行います。
MDPORT変換指示 [ヘルプ]メニュー
ファイル(F) 表示(V) ツール(T) オプション(O) ヘルプ(H)
項目 説明
トピックの検索 オンラインマニュアルを表示します。バージョン情報 バージョン情報を表示します。
レイアウト定義機能 [ファイル]メニュー
ファイル(F) 編集(E) 設定(S) 表示(V) オプション(O) ヘルプ(H)
項目 説明
既存COBOL資産からの新規作成既存COBOL資産(COPYライブラリ)より、項目定義を自動生成します。
→ 「COPYライブラリからの取り込み」
既存C言語資産からの新規作成既存C言語資産(インクルードファイル)より、項目定義を自動生成します。
→ 「インクルードファイルからの取り込み」
新規作成 レイアウト定義ファイルを新規に作成します。開く 既存のレイアウト定義ファイルを開きます。上書き保存 編集中のレイアウト定義ファイルを上書きで保存しま
す。なお、定義内容に誤りがあると、そのまま保存するかどうかの問い合わせが発生します。
名前を付けて保存 編集中のレイアウト定義ファイルに名前を付けて保存します。なお、定義内容に誤りがあると、そのまま保存するかどうかの問い合わせが発生します。
旧バージョンで出力マルチレイアウト対応(V70)以前のバージョンでレイアウト定義ファイルをを出力します。現在出荷されているSIMPLIA/TF-LINDA(V60L20)でレイアウト定義ファイルの読み込みを行う場合は、当機能でレイアウト定義ファイルを出力して下さい。
COBOL登録集作成編集中のレイアウト定義の情報で、COBOL登録集を作成します。COBOL登録集出力指定で作成する対象(入力側・出力側)を選択します。
→「COBOL登録集作成事例」
DTD作成 編集中のレイアウト定義がXML形式の場合、DTDを作成します。
→「DTD作成事例」
DDL文作成 編集中のレイアウト定義の情報で、DDL文を作成します。DDL文作成で作成する対象(入力/出力側・対応RDBMS)を選択します。
→「DDL文作成事例」 →「DDL文生成における制限・注意事項」
既存レイアウト定義の取込既に作成しているレイアウト定義からレイアウト情報を取り込んで、選択中のレイアウトに上書きします。 取り込むレイアウト情報は、編集中のレイアウトと同じ変換形式である必要があります。 異なる変換形式を読み込んだ場合は、警告ダイアログが表示されます。 マルチレイアウト定義ファイルの取り込みは出来ません。
既存COBOL資産から取込既に作成している既存COBOL資産を取り込んで、選択中のレイアウトに上書きします。 取り込まれたCOBOL資産は、現在編集中のレイアウトの変換形式へ自動的に変換されます。
終了 レイアウト定義機能を終了します。
画面説明 - レイアウト定義 - [COBOL登録集出力指定]ダイアログボックス
COBOL登録集を入力、出力情報のどちらの属性で作成するかを指定します。デフォルトは出力情報の属性で作成になります。
項目 説明
入力情報の属性 レイアウト定義の入力情報の属性でCOBOL登録集を作成します。
出力情報の属性 レイアウト定義の出力情報の属性でCOBOL登録集を作成します。
レイアウト定義機能 COBOL登録集作成事例
レイアウト定義では、編集中のレイアウト定義の記述をCOBOL登録集として出力できます。
レイアウト定義の入力情報・出力情報のどちらの情報の属性で作成するかを、COBOL登録集出力指定で指定します。
雛型のCOBOL登録集の出力について
出力対象のデータ形式がCSV形式、またはXML形式の場合、出力されるCOBOL登録集は属性が文字列の場合、"PIC X(1)"、数値の場合、"PIC 9(1)"の形式で出力されます。 また、数値文字列の場合は"PIC X(1)"の形式で出力されます。
【例】
レイアウト定義
階層 反復数 項目名 属性 符号 領域長 全桁 小数
0 ITEM1 X 10
0 GROUP1
1 ITEM2 X 3
1 ITEM3 X 1
0 10 GROUP2
1 ITEM4 X 5
1 ITEM5 X 5
1 5 GROUP2-1
2 ITEM6 Z 2
1 ITEM7 X 2
0 ITEM8 X 20
0 5 GROUP-3
1 ITEM9 X 8
0 ITEM10 X 1
出力されるCOBOL登録集
01 ABC-REC. 03 ITEM1 PIC X(10). 03 GROUP1. 05 ITEM2 PIC X(3). 05 ITEM3 PIC X(1). 03 GROUP2 OCCURS 10. 05 ITEM4 PIC X(5). 05 ITEM5 PIC X(5). 05 GROUP2-1 OCCURS 5. 07 ITEM6 PIC 9(2). 05 ITEM7 PIC X(2). 03 ITEM8 PIC X(20). 03 GROUP-3 OCCURS 5. 05 ITEM9 PIC X(8). 03 ITEM10 PIC X(1).
レイアウト定義機能 DTD作成事例
レイアウト定義では、編集中のレイアウト定義のXML形式の記述をDTDとして出力できます。レイアウト定義上では、厳密にXMLの定義を表現できませんので、生成されるDTDも厳密なものではありません。ここで定義したレイアウト定義から生成したXML文書の構造と違う場合もありえます。XML文書構造の参考程度にすることを薦めます。
【例】
レイアウト定義
階層 反復数 項目名 属性 タグ属性
0 ITEM1 X
0 GROUP1
1 GROUP2 N
2 ITEM2 X
2 ITEM3 X
0 GROUP3
1 ITEM4 X
1 ITEM5 X
1 GROUP4
2 ITEM6 Z
2 ITEM7 X
0 ITEM8 X
0 GROUP5
1 ITEM9 X A
1 ITEM10 X N
0 5 GROUP6
1 ITEM11 X
1 ITEM12 X N
出力されるDTD
<!ELEMENT ABC-REC (ITEM1,GROUP1,GROUP3,ITEM8,GROUP5,GROUP6)> <!ELEMENT ITEM1 (#PCDATA)> <!ELEMENT GROUP1 (GROUP2)> <!-- ELEMENT GROUP2 (ITEM2,ITEM3) --> <!ELEMENT ITEM2 (#PCDATA)> <!ELEMENT ITEM3 (#PCDATA)> <!ELEMENT GROUP3 (ITEM4,ITEM5,GROUP4)> <!ELEMENT ITEM4 (#PCDATA)> <!ELEMENT ITEM5 (#PCDATA)> <!ELEMENT GROUP4 (ITEM6,ITEM7)> <!ELEMENT ITEM6 (#PCDATA)> <!ELEMENT ITEM7 (#PCDATA)> <!ELEMENT ITEM8 (#PCDATA)> <!ELEMENT GROUP5 (#PCDATA)> <!ATTLIST GROUP5 ITEM9 CDATA #IMPLIED> <!ELEMENT GROUP6 (ITEM11+)> <!ELEMENT ITEM11 (#PCDATA)>
レイアウト定義機能 DDL文作成事例
レイアウト定義では、編集中のレイアウト定義の情報に基づいて、RDBMSであるSymfoWARE、Oracle、SQLServerに対応したデータベース作成文の雛形を出力する事が出来ます。
.→DDL文作成における注意事項
【例1】
レイアウト定義(データ形式)
レコード名:GROUP1 階層 項目名 属性 符号 領域長 小数桁
0 ITEM01 X 20
0 ITEM02 N 20
0 ITEM03 Z S 10 2
出力されるDDL文(例 Symfoware)
CREATE TABLE "GROUP1"( "ITEM01" VARCHAR(20), "ITEM02" NCHAR(10), "ITEM03" NUMERIC(10,2) );
【例2】
レイアウト定義(CSV/XML形式)
レコード名:GROUP2 階層 項目名 属性 符号 領域長 小数桁
0 ITEM01 V
0 ITEM02 M
0 ITEM03 --
出力されるDDL文(例 Symfoware)
CREATE TABLE "GROUP2"( "ITEM01" NUMERIC(1), "ITEM02" VARCHAR(1) );
レイアウト定義ファイルの生成
「レイアウト定義ファイルの生成」では、入力および出力のデータ形式の選択をしますが、「データファイル形式」のみ指定可能です。
生成するレイアウト定義ファイル名には、デフォルトで「既存のCOBOL資産の指定」で選択したファイル名.layが設定されています。 レイアウト定義ファイル名は必要に応じて変更可能です。
→データファイル形式
データ形式を変更する場合の注意データ形式を変更する場合は、再度、新規作成にてCOPYライブラリやインクルードファイルから取り込みをお薦めします。既に作成済のレイアウト定義ファイルに対して「データファイル形式」に変更すると、定義済の情報が失われてしまいます。また、CSV形式から「データファイル形式」に変更した場合は、全ての項目について相対位置や領域長を定義しなければなりません。
画面説明 - レイアウト定義 - [DDL文作成]ダイアログボックス
入力/出力情報のどちらの属性、及びどのRDBMSに対応するDDL文を作成するかを指定します。デフォルトは出力情報の属性で作成になります。
項目 説明
情報設定 DDL文を作成するレイアウト定義の情報の属性を指定します。
入力情報の属性 レイアウト定義の入力情報の属性でDDL文を作成します。
出力情報の属性 レイアウト定義の出力情報の属性でDDL文を作成します。
RDBMS設定 どのRDBMSに対応したDDL文を出力するかを指定します。
SymfoWARE SymfoWARE用のDDL文を作成します。
Oracle Oracle用のDDL文を作成します。
SQLServer SQLServer用のDDL文を作成します。
レイアウト定義機能 [編集]メニュー
ファイル(F) 編集(E) 設定(S) 表示(V) オプション(O) ヘルプ(H)
項目 説明
行の切り取り 選択されている行を切り取ってコピーバッファ上に入れます。行のコピー 選択されている行をコピーバッファ上に入れます。行の貼り付け コピーバッファ上の内容を、フォーカスされている行の前に挿入します。行の挿入 フォーカスされている行の前に、新たに定義行を挿入します。行の削除 選択されている行を削除します。最終行の追加 最終行へ、新たに定義行を追加します。新規レイアウトの挿入 現在表示中のレイアウトの手前に、レイアウトを新規に追加します。新規レイアウトの追加 現在表示中のレイアウトの後に、レイアウトを新規に追加します。レイアウトの編集 レイアウト定義テンプレートダイアログを表示します。レイアウトの削除 現在表示中のレイアウトを削除します。
レイアウト定義機能 [設定]メニュー
ファイル(F) 編集(E) 設定(S) 表示(V) オプション(O) ヘルプ(H)
項目 説明
項目定義テンプレート フォーカスされている行に対して項目定義の設定を行います。基本情報 レコード名や入出力側の各種情報を設定します。データ形式 入力および出力のデータ形式を設定・変更します。一括設定 項目情報を一括して設定することができます。
COBOL解析オプション COBOL資産を解析するための各種情報を設定します。C言語資産解析オプション C言語資産を解析するための各種情報を設定します。
レイアウト定義機能 [表示]メニュー
ファイル(F) 編集(E) 設定(S) 表示(V) オプション(O) ヘルプ(H)
項目 説明
ツールバー ツールバーの表示/非表示を行います。ステータスバー ステータスバーの表示/非表示を行います。ウィンドウサイズのリセット ウィンドウサイズや項目定義表のセル幅等を初期状態にします。拡張表示 項目拡張情報を表示するかをチェックします。 →項目情報
レイアウト定義機能 [オプション]メニュー
ファイル(F) 編集(E) 設定(S) 表示(V) オプション(O) ヘルプ(H)
項目 説明
環境設定 レイアウト定義機能が動作するにあたっての環境設定を行います。
画面説明 - レイアウト定義 - [環境設定]プロパティシート
レイアウト定義画面上でのダブルクリック時の編集方法の指定ができます。デフォルトは、項目定義テンプレートによる編集です。
項目 説明
項目定義テンプレートによる編集 ダブルクリックした行が編集対象となり項目定義テンプレートダイアログが開きます。
直接入力 ダブルクリックしたセルの入力がレイアウト定義画面上で可能になります。
レイアウト定義機能 [ヘルプ]メニュー
ファイル(F) 編集(E) 設定(S) 表示(V) オプション(O) ヘルプ(H)
項目 説明
トピックの検索 オンラインマニュアルを表示します。バージョン情報 バージョン情報を表示します。
プレビュー機能 [終了]メニュー
終了(X) オプション(O) ヘルプ(H)
プレビュー機能を終了します。
プレビュー機能 [オプション]メニュー
終了(X) オプション(O) ヘルプ(H)
項目 説明
16進表示 データ内容に対し16進コードでの表示を行います。罫線表示 指定したカラムの単位で縦の罫線を表示し、データの各相対位置を見や
すくします。1/5/10カラム毎、または罫線なしに設定できます。
フォントサイズ 表示フォントの指定を行います。小/標準/大より選択できます。
変換エラー表示 プレビュー表示されている変換の範囲(出力レコードの先頭100件)で発生した変換エラーを、変換エラー表示機能にて表示します。
→変換エラー表示機能
プレビュー機能 [ヘルプ]メニュー
終了(X) オプション(O) ヘルプ(H)
プレビュー機能のヘルプを表示します。
使用方法 サンプルデータでの動作確認手順
製品に付随するサンプルの使用手順について説明します。インストール後の動作確認等に使用してください。なおサンプルデータには、変換エラー表示機能を使用するために、項目属性に合わないデータ値が意図的に含まれています。
1. TF-MDPORTの起動
. スタートメニュー(またはプログラムマネージャ)の“TF-MDPORT”のアイコンより起動します。
2. 変換指示ウィザードの起動
. ファイルメニュー「変換指示の新規設定」またはツールバー「新規設定」より、変換指示ウィザードを起動します。
3. 変換指示ウィザード(1/5)
. ファイル変換モードとカレントフォルダを指定します。
ファイル変換モードは「データファイル変換」を選択し、カレントフォルダにはサンプルデータ(DATA1.DAT)が格納されているフォルダを指定してください。
4. 変換指示ウィザード(2/5)
. レイアウト定義ファイルを指定します。ここでは新規にレイアウト定義ファイルを作成するものとし、「レイアウト定義の起動」よりレイアウト定義プログラムを起動します。
5. レイアウト定義機能(既存COBOL資産の解析)
. ファイルメニュー「既存COBOL資産からの新規作成」またはツールバー「既存資産(COPYライブラリ、他)からの新規作成」より、「既存COBOL資産の指定」ダイアログを開きサンプルのCOPYライブラリ(DATA1.COB)を選択します。
6. レイアウト定義機能(データ形式の指定)
. 既存COBOL資産の解析が完了すると、「データ形式指定」ダイアログが表示されます。
ここで入力と出力のデータ形式を指定します。
入力データ形式は「データファイル形式」、出力データ形式は「CSV形式」を選択してください。
7. レイアウト定義機能(レイアウト定義の確認・保存・終了)
. 解析された結果が一覧表示されます。
ファイルメニューまたはツールバー「名前を付けて保存」より、任意の名前(拡張子は“.LAY”)で保存してください。
サンプルのレイアウト定義ファイル(DATA1.LAY)は、同様に解析し保存したものです。
保存後、レイアウト定義機能を終了し、TF-MDPORTの変換指示ウィザード(2/5)に戻ります。
8. 変換指示ウィザード(2/5 レイアウト定義ファイル作成後)
. レイアウト定義ファイル名に、レイアウト定義機能で保存したファイル名を指定してください。
9. 変換指示ウィザード(3/5)
. 入力情報を指定します。
コード体系は「シフトJIS」、ファイル名はサンプルデータ(DATA1.DAT)、ファイル形式は「一般ファイル」を指定し、レコード属性として「固定長」、レコード長“500”を指定してください。
10. 変換指示ウィザード(4/5)
. 出力情報を指定します。
コード体系は「シフトJIS」、ファイル名は任意のファイル名(デフォルトで“DATA1.CSV”になります)を指定し、レコード属性として「可変長」、レコードの区切り「改行コード(CR+LF)」を指定してください。
加えて出力するCSV形式の設定を行うため「CSV形式の詳細」より「CSV情報の指定」ダイアログを開きます。
11. CSV情報の指定
. CSV情報の詳細設定を行います。
参考設定より「Oracle」を選択してください。Oracleの一般的なローダ形式の設定になります。
ダイアログを閉じ、変換指示ウィザード(5/5)へ進みます。
12. 変換指示ウィザード(5/5)
. 変換に関するその他の情報を指定します。
必要であれば変更可能ですが、サンプルの場合はデフォルトのままで良いでしょう。
「完了」で変換指示ウィザードを終了します。
13. プレビュー
. 「プレビュー」ボタンよりプレビュー画面を表示します。
CSV形式になっていることを確認します。なお、サンプルデータには変換不能文字が含まれているため一部“■”で表示されます。
「終了」でプレビュー画面を閉じます。
14. 変換実行
. 「変換実行」ボタンにより、実際の変換処理が開始されます。
変換処理が終了すると、ダイアログが開き入出力レコード件数とエラー発生件数が表示されます。
サンプルデータの場合は、以下のようになります。
入力レコード件数: 14 出力レコード件数: 14 エラー発生件数: 2
15. 変換エラー表示
. 「変換エラー表示」ボタンより、変換エラーファイルの内容を表示します。
サンプルデータでは以下のエラーが発生したことがわかります。
3レコード目の23バイト目、項目名「製品名」、項目属性「日本語項目(N)」でコード変換エラー(入力コードは0x0000)
4レコード目の46バイト目、項目名「売上数量」、項目属性「外部10進(Z)」で数値部エラー
16. 変換指示ファイルの保存
. ファイルメニュー「変換指示ファイルに名前を付けて保存」またはツールバー「名前をつけて保存」により、変換指示ファイル(拡張子は“.MDP”)を保存します。
17. TF-MDPORTの終了
. ファイルメニュー「SIMPLIA/TF-MDPORTの終了」によりTF-MDPORTを終了します。
使用方法 使用手順
MDPORTを使用してファイル変換を行うには、以下の手順にて操作します。
1 変換対象となる入力ファイルの準備
2 ファイル変換モードの決定
3 レイアウト定義(データファイル変換の場合)
4 変換指示の指定
5 プレビュー機能による変換結果の事前確認
6 MDPORTの実行
7 エラー内容の確認
8 出力ファイルの後処理
MDPORTでは一切の通信機能を持っていないため、汎用機やUNIX機上のファイルを入力とする場合、利用者がファイル転送等を利用してWindows上に持ち込む必要があります。
ファイル転送を行う場合の注意として、一切のコード変換を行わないバイナリモード(透過モード)で転送してください。
使用手順
MDPORTを使用してファイル変換を行うには、以下の手順にて操作します。
1 変換対象となる入力ファイルの準備
2 ファイル変換モードの決定
3 レイアウト定義(データファイル変換の場合)
4 変換指示の指定
5 プレビュー機能による変換結果の事前確認
6 MDPORTの実行
7 エラー内容の確認
8 出力ファイルの後処理
変換するファイルの種類によって、以下の変換モードのいづれかを決定する必要があります。変換モードによって以降の手順が異なります。
- データファイル変換 - テキスト変換
使用手順
MDPORTを使用してファイル変換を行うには、以下の手順にて操作します。
1 変換対象となる入力ファイルの準備
2 ファイル変換モードの決定
3 レイアウト定義(データファイル変換の場合)
4 変換指示の指定
5 プレビュー機能による変換結果の事前確認
6 MDPORTの実行
7 エラー内容の確認
8 出力ファイルの後処理
レイアウト定義機能を使用してデータファイルのフォーマットを定義します。レイアウト定義機能では、既存のCOPYライブラリやインクルードファイルを元にレイアウト定義ファイルを作成できるため、変換元または変換先データファイルのCOPYライブラリやインクルードファイルを用意しておくと効率的かつ正確です。 また、変換対象データの一部に秘匿したい取扱要注意情報が含まれるときは、ここでその指定をしてください。
使用手順
MDPORTを使用してファイル変換を行うには、以下の手順にて操作します。
1 変換対象となる入力ファイルの準備
2 ファイル変換モードの決定
3 レイアウト定義(データファイル変換の場合)
4 変換指示の指定
5 プレビュー機能による変換結果の事前確認
6 MDPORTの実行
7 エラー内容の確認
8 出力ファイルの後処理
MDPORTを起動させて、入力・出力ファイル等の変換指示を行います。指定された内容は変換指示ファイルとして保存することができ、再実行も可能です。
使用手順
MDPORTを使用してファイル変換を行うには、以下の手順にて操作します。
1 変換対象となる入力ファイルの準備
2 ファイル変換モードの決定
3 レイアウト定義(データファイル変換の場合)
4 変換指示の指定
5 プレビュー機能による変換結果の事前確認
6 MDPORTの実行
7 エラー内容の確認
8 出力ファイルの後処理
必要に応じて、プレビュー機能を利用することにより、全てのレコードを変換する前に、結果を画面上で確認することができます。
使用手順
MDPORTを使用してファイル変換を行うには、以下の手順にて操作します。
1 変換対象となる入力ファイルの準備
2 ファイル変換モードの決定
3 レイアウト定義(データファイル変換の場合)
4 変換指示の指定
5 プレビュー機能による変換結果の事前確認
6 MDPORTの実行
7 エラー内容の確認
8 出力ファイルの後処理
変換処理を実行します。
使用手順
MDPORTを使用してファイル変換を行うには、以下の手順にて操作します。
1 変換対象となる入力ファイルの準備
2 ファイル変換モードの決定
3 レイアウト定義(データファイル変換の場合)
4 変換指示の指定
5 プレビュー機能による変換結果の事前確認
6 MDPORTの実行
7 エラー内容の確認
8 出力ファイルの後処理
変換エラーが発生している場合、変換エラーファイルを表示し、エラーの内容を確認することができます。
使用手順
MDPORTを使用してファイル変換を行うには、以下の手順にて操作します。
1 変換対象となる入力ファイルの準備
2 ファイル変換モードの決定
3 レイアウト定義(データファイル変換の場合)
4 変換指示の指定
5 プレビュー機能による変換結果の事前確認
6 MDPORTの実行
7 エラー内容の確認
8 出力ファイルの後処理
入力同様、MDPORTでは一切の通信機能を持っていないため、出力ファイルが汎用機やUNIX機向けのファイルの場合、利用者がファイル転送等を利用してWindows上から移出する必要があります。
ファイル転送を行う場合の注意として、一切のコード変換を行わないバイナリモード(透過モード)で転送してください。
使用方法 MDPORT変換指示
MDPORTを実行するにあたっての必要な情報を設定します。指定された情報は変換指示ファイルとして保存し再度使用することができます。
変換指示の設定は、MDPORT変換指示ウィザードによって行います。参照したいページをクリックしてください。
→変換指示 ファイル
- 基本情報(ページ1)- レイアウト定義情報(ページ2)- 入出力ファイル情報(ページ3/4)- 変換仕様・エラー(ページ5)
使用方法 変換処理の実行
変換処理の実行中は進行状況インジケータが表示され、入力ファイルの処理状況、変換エラー発生状況が表示されます。
[中断]ボタンにより変換処理を中断することができます。その場合の出力ファイルの内容は保証されません。
変換処理が終了すると、入出力レコード件数、変換エラー発生件数等が表示されます。
使用方法 レコード抽出処理の実行
変換処理中に以下のメッセージが表示された場合は、データ条件設定の条件値を確認してください。詳細はレコード抽出仕様を参照してください。 また、制限・注意事項については、レコード抽出機能における制限・注意事項を参照してください。
「抽出条件のコード変換に失敗しました。 n番目の抽出条件がコード変換できませんでした。 この条件では、正常な抽出ができない可能性があります。」
n : データ条件の通し番号
ここでは、レコード抽出処理を実施した場合の変換処理について説明します。
MDPORT変換指示ウィザード 2/5で、データ条件設定を行った場合、レコード抽出処理を行います。レコード抽出処理後は、通常の変換処理と同様の処理を行います。
レコード抽出の変換処理が終了すると、入出力レコード件数、変換エラー発生件数等が表示されます。
入力レコード件数 入力ファイルのレコード数出力レコード件数 データ条件と一致したレコード数エラー発生件数 レコード抽出を実施したレコード内の変換エラー発生件数
使用方法 利用者定義変換テーブル
利用者定義変換テーブルにより、利用者定義文字(外字)や拡張文字の変換仕様を任意に指定することができます。
利用者定義文字(外字)や拡張漢字・非漢字を任意の文字コードに変換するには、以下の方法があります。
- CharsetMGRの文字コード変換表に対応させるコードを定義する。(推奨)
変換指示ウィザードにて[CharsetMGRを使用する]をチェックします。他社コード変換機能を利用する場合は指定できません。
- MDPORTの利用者定義変換テーブルを使用する。
利用者定義変換テーブルの書式
利用者定義変換テーブルはテキストファイルとしてメモ帳等を使用して作成します。
利用者定義変換テーブルは、コード系定義文とそれに従属する1つ以上のコード対応定義データで構成されています。それぞれは、行の1カラム目の内容(“#”または空白)で識別されます。1カラム目が“*”の場合は注釈行とみなされます。
[コード系定義文] # コード系名1 コード系名2
- 1カラム目には“#”を指定します。
- コード系名は4文字以内の文字列で、以下のように指定します。
文字コード体系 コード系名シフトJISコード SJISEUCコード EUCJEFコード JEF(カナ)、JEFA(英小文字)JISコード JISUnicode UCS2その他 コードID
- コード系名1とコード系名2に同じコードを指定することもできます。その場合、以降のコード対応定義データは、変換元:変換先の順序で記述します。
[コード対応定義データ] 文字コード1:文字コード2
. →変換指示ウィザード →他社コード変換機能
- 1カラム目には空白を指定し、文字コード1と文字コード2の間にコロン(“:”)を指定します。途中に空白があってはいけません。
- 文字コードは16進で2桁または4桁で指定します。EUCコードの場合、G3文字は“8F”を付けて6桁で指定し、G2(カナ)文字は“8E”を付けずに2桁で指定します。Unicodeの場合、UCS2ビッグエンディアンで4桁で指定します。
- 文字コードに“NO”を指定すると、対応するコードがないとみなされます。
- 同一の変換元コードに対して変換規則が複数存在する場合は、最後に記述されている指定が有効となります。
利用者定義変換テーブル定義例
* JEF-シフトJIS間での変換 # JEF SJIS 47C9:92CB 00:5F 5B:NO * シフトJIS-EUC間での変換 # SJIS EUC EB40:F7A1 EB41:8FA1A1
【雛型利用者定義テーブル】
MDPORTの[sample]ディレクトリ配下に以下のファイルが格納されています。
ファイル名:JEF_SJIS.cnv JEF→SJIS変換で、字体重視変換+縮退変換が行なえます。 詳細はファイル内のコメント文を参照してください。
【参考情報 -利用者定義文字の領域】
文字コード(コード範囲)
文字数上位バイト 下位バイト
JEF 80~A0 A1~FE 3102EUC(U90) DD~FD A1~FE 3102EUC(S90) F5~FE A1~FE 940R90(sjisdos) F0~F9 40~FC 1880シフトJIS(sjisms) F0~F9 40~FC 1880Unicode E0~F8 00~FF 6400
EUC(U90)の利用者定義領域はG3領域です。したがって上位バイトに0x8Fが付きます。 Unicode-JEFフォントを利用する場合、0xF001~0xFFFFはJEF拡張文字の領域に割り当てています。
使用方法 プレビュー機能
プレビュー機能により、ファイル変換結果を事前に画面上で確認することができます。文字で構成されていないファイルは、一般のテキストエディタ(メモ帳等)で参照することはできませんが、プレビュー機能を利用するとレコードや文字以外のコードを意識して表示されます。
プレビューでは、先頭レコード100件分の変換結果ファイルを表示します。通常の表示では、ファイルの内容をそのままシフトJISコードで表示します。よって、出力側コード体系がシフトJISコード以外では、表示内容はあまり意味を持ちません。シフトJIS以外の出力では16進表示を使用して内容を確認して下さい。
使用方法 変換エラーの表示
変換中に発生したエラーは、変換エラーファイルへ出力されます。変換エラー表示機能は、出力された変換エラーファイルを環境設定で指定された外部ビューアプログラム(デフォルトはメモ帳)により表示する機能です。
→変換エラーファイル →環境設定
【コード変換エラー】 コード変換エラーとなった文字コードの一覧です。Unicodeの場合は種別(UCS2/UTF8)やエンディアンにかかわらず、UCS2ビッグエンディアンで表示されます。 書式 文字コード16進2桁または4桁(出現数)
【エラー発生項目】 変換エラーの発生した項目の一覧です。(データファイル変換の場合のみ) 書式 レイアウト定義の項目No:項目名:項目属性(エラー発生
数)
【エラー詳細】 変換エラーの詳細内容を発生順に列挙します。変換指示ウィザードで指定する変換エラー出力可能件数の範囲までが出力対象です。Unicodeの場合は、種別(UCS2/UTF8)やエンディアンについて入力コードのまま表示されます。 入力データ形式がCSV、XML形式の場合は、レコード上の相対位置は、常に0となります。 書式 入力レコード番号-レコード上の相対位置 エラー内容
レイアウト定義の項目No:項目名:項目属性
変換エラーファイル出力例 (SAMPLE.ERR)
下記は、サンプル資産を実行した場合に、発生するエラーについて説明しています。
入力ファイル : DATA1.DAT レイアウト定義ファイル : DATA1.LAY( SJIS[DATA形式]からSJIS[CSV]形式へ変換 )
*** SIMPLIA/TF-MDPORT 変換エラーファイル *** カレントフォルダ: C:¥SIMPLIA¥TF-MDPORT Pro¥Sample 入力ファイル名: data1.dat レイアウト定義ファイル名: data1.lay 変換エラー発生数: 2 【コード変換エラー】()内は出現数 (*)は100以上 0000( 1) 【エラー発生項目】項目No:項目名:属性(エラー発生数 *は100以上) 3:製品名:N( 1) 5:売上数量:Z( 1) 【エラー詳細】レコード番号-位置 エラー内容 項目No:項目名:属性 3-23 コード変換エラー(0x0000) 3:製品名:N 4-46 数値部エラー 5:売上数量:Z
.
使用方法 変換エラーの表示 代表的なエラーの紹介
ここでは、代表的な変換エラーの発生要因について説明します。 .【領域溢れエラー】 ~領域長変動の要因
データファイル変換で英数字、日本語、混在、可変長文字列、可変長日本語項目のコード変換を行うと、1項目の入力データ長と出力データ長が異なる場合があります。 領域長変動要因 対処方法1 シフトJIS/JEF/他社コードの半角カナをEUCコードへ変換
→EUCコードでは、半角カナ(見た目上は1バイト)は2バイトのコードで表現されます。(他は1バイトのコードで表現)
レイアウト定義にて、出力側の各項目の領域長を拡大してください。
2 シフトJIS/EUC/JEF/他社コードの1バイトコード(ASCII,/EBCDIC)をUnicode(UCS2形式)へ変換 →UCS2形式では、全ての文字が2バイトのコードで表現されます。
3 各種コード体系の2バイト文字をUnicode[UTF8形式]へ変換 →UTF8形式では、日本語文字や特殊記号文字が2~3バイトのコードで表現されます。
4 シフトJIS/EUCコードの混在項目をJIS/JEF/他社コードへ変換 →JIS/JEF/他社コードには、日本語制御切替コードが存在します。(JEFコードの0x28,0x29等)
5 JEFコードの拡張漢字/拡張非漢字(2バイトコード)をEUCコード(U90形式)へ変換 →EUCコード(U90)では、拡張文字コード領域としてコードセット3(3バイトコード)で表現されます。
6 CSV/XML形式のデータをデータ形式へ変換 →CSV/XML形式では、各項目の入力項目の長さは可変です。従って、変換後のデータ長と出力領域長が一致しない場合があります。変換後のデータ長が出力領域長に満たない場合は、空白文字を埋め込み(項目属性により、1バイトまたは2バイトの空白を埋め込みます)、超える場合は、文字単位に切り捨てエラーを出力します。
【コード変換エラー】 ~コード変換エラー/正しく変換されない
コード変換エラー要因 対処方法1 JEFの㈱や㈲をSJISに変換するとコード変換エラーが発生す
る。 →MDPORTは83JISに準拠し、第1/第2水準漢字、非漢字(JEFでは基本非漢字)を規則的に変換するため、JEFの拡張領域の漢字をMDPORTの標準変換では正しく変換することができません。
1.2)JEF拡張漢字/拡張非漢字の変換を行うためには、 MDPORTのCharsetMGR変換機能を利用するか、利用者定義ファイルでの定義の2通りの方法があります。 -㈱や㈲のようにWindows(R)固有に存在し、かつ、JEF拡張領域に存在する文字については、CharsetMGRの字体重視変換を行うことで変換が可能です。(jefaugkana→sjisms) -利用者定義ファイルで対応表を作成することでも変換が可能です。 ※Sampleフォルダ内のJEF_SJIS.cnvファイル内に対応表を作成していますので、必要に応じて利用可能です。 ※他社コードについては独自に作成する必要があります。 ※JEF固有の拡張漢字や外字を変換する場合は、シフトJISのユーザ定義領域にコードを割りあてて対応関係を作成する必要があります。
2 JEF固有の拡張漢字や外字をSJISに変換するとコード変換エラーが発生する。 →変換エラーの理由は1と同じです。他社コードからの変換においても同様に変換エラーとなります。
3)CharsetMGR変換機能を利用することで、83JIS改定文字を考慮した変換を行うことが可能です。JEF_SJIS.cnv内のファイルにも対応表は準備されてますので、必要に応じて利用してください。
3 JEFの基本漢字内の一部の文字をSJISに変換すると正しく変換されない。 →MDPORTの標準変換機能はJIS83準拠による変換であるため、JEFコードは’78JIS準拠のため、一部の文字(’83JISでの改定文字)について同一の文字へ変換されません。
4 LOW-VALUE(0x00)やHIGH-VALUE(0xFF)を変換すると変換エラーが発生する。 →MDPORTはLOW-VALUEやHIGH-VALUE、JEFのデバイス制御コードについては文字と認識しないため、変換エラーとなり代替文字に置き換わります。
利用者定義ファイルで対応表を作成してください。 例) ------------ # jef sjis 00:00 FF:FF 0000:0000 ------------
【数値部エラー】 ~数値部エラーの要因 数値部エラー要因- 外部10進/内部10進内のデータに数値以外のデータが存在する。
属性 符号 COPY句 内部表現(16進) 値 エラー外部10進 なし 9(4) 31323334 1234 なし
外部10進 あり S9(4) 31323344 +1234 なし
外部10進 なし 9(4) 3132333A 0 あり内部10進 なし 9(4) COMP3 01234F 1234 なし
内部10進 あり S9(4) COMP3 01234D -1234 なし
内部10進 なし 9(4) COMP3 012B4F 0 あり
- CSV/XML形式のデータ(数値)内に数値以外の文字や記号が存在する 属性 符号 COPY句 値 エラー
外部10進 なし 9(4) ABCD あり外部10進 あり S9(4) $1234 あり
【符号部エラー】 ~符号部エラーの要因 データファイル変換で、外部10進、内部10進項目の変換を行う際に、符号部のチェックを厳密に行います。符号部チェックを行う場合は、レイアウト定義の項目定義で、「入力チェックを行う」を設定する必要があります。
属性 符号 COPY句 内部表現 値 エラー外部10進 なし 9(4) 31323334 1234 3以外はエラー外部10進 あり S9(4) 31323354 -1234
4,5以外はエラー外部10進 あり S9(4) 31323344 +1234内部10進 なし 9(4) COMP3 01234F 1234 F以外はエラー内部10進 あり S9(4) COMP3 01234C +1234
C,D以外はエラー内部10進 あり S9(4) COMP3 01234D -1234
注)外部10進の例はASCIIコード系の例です。以下にEBCDIC系コードの演算符号を記載します。 F : ゾーンビットC : 正の演算符号D : 負の演算符号
【マスタデータのコード変換エラー】 ~マスタデータのコード変換エラーの要因 コード変換エラー要因 対処方法1 マスタデータのコード変換中にエラーが発生する
→表示されているマスタデータファイルにコード変換できないデータが入っているため、マスク機能の準備処理でエラーとなります。
表示されているマスタデータファイルの該当する項目のデータを、正常にコード変換できるデータに変更する必要があります。
【MDPORT変換時のエラー】 ~継続不可能なエラー要因 コード変換エラー要因 対処方法1 継続不可能なエラーが発生し、変換処理が中断する
→マスタデータファイルを利用してマスクするデータ(値)を指定した場合、マスク指定した項目名に対応したマスタデータファイルが見つからなかった場合エラーとなります。 →マスタデータファイルを利用してマスクするデータ(値)を指定した場合、読み込みマスタデータファイルの1行目に、マスク指定した項目名が見つからなかった場合、エラーとなります。
MDPORTのインストールフォルダに、マスク指定した項目名に対応したマスタデータ(項目名+.csv)が存在すること、また読み込んだマスタデータにマスク指定した項目名が存在すること確認をする必要があります。
使用方法 レコード抽出機能
レコード抽出機能では、入力ファイルのデータ項目のデータ条件に一致するレコードのみを出力します。
データ条件設定画面は、以下の手順により起動します。
1. MDPORT変換指示ウィザードの2/5より、レイアウト定義ファイル名を指定してください。→制限・ 注意事項
2. MDPORT変換指示ウィザードの2/5より、【データ条件設定】ボタンをクリックしてください。
レイアウト定義機能
レイアウト定義機能では、データファイル変換にて使用するレイアウト定義ファイルを作成・編集します。
レイアウト定義機能は、以下の方法により起動することができます。
- スタートメニューからの起動
- MDPORT変換指示からの起動
- エクスプローラ等から "F5AVPLAY.EXE" を起動
レイアウト定義機能 COPYライブラリからの取り込み
レイアウト定義ファイルは、既存COBOL資産(COPYライブラリ)から取り込みを行って作成することができます。
取り込みを行うと各項目定義が自動生成されて展開されます。必要に応じて、展開された項目定義を編集してください。
. →レイアウト定義ファイル →COPYライブラリ →レイアウト定義機能に て取り込める既存資産
レイアウト定義機能 インクルードファイルからの取り込み
レイアウト定義ファイルは、既存C言語資産(インクルードファイル)から取り込みを行って作成することができます。
取り込みを行うと各項目定義が自動生成されて展開されます。その際に、C言語資産解析オプションで設定された情報が反映されます。必要に応じて、展開された項目定義を編集してください。
. →レイアウト定義ファイル →インクルードファイル →レイアウト定義機能に て取り込める既存資産
レイアウト定義機能 データ形式の指定
レイアウト定義ファイルを作成する際に、入力および出力のデータ形式を指定します。データ形式には以下の3つの形式があります。
- データファイル形式- CSV形式
- XML形式 データ形式を変更する場合の注意
既に作成済のレイアウト定義ファイルに対してデータ形式を変更すると、定義済の情報が失われてしまいます。また、CSV形式、XML形式からデータファイル形式に変更した場合は、全ての項目について相対位置や領域長を定義しなければなりません。データ形式を変更する場合は、再度、新規作成にてCOPYライブラリやインクルードファイルから取り込みを行うことを薦めます。
レイアウト定義機能 項目情報の編集方法
項目情報を編集するには、以下の2つの方法があります。また、環境設定によってダブルクリックによる編集方法(項目定義テンプレート、直接編集)を変更することができます。
項目定義テンプレートによる編集 (推奨)
項目単位での編集が行えます。項目定義テンプレートは、[設定]メニュー、F8キーまたは表のダブルクリックにより起動されます。
- 項目情報の拡張情報を設定する場合
項目情報の拡張情報の設定は、[拡張設定]ダイアログボックスで行います。[拡張設定]ダイアログボックスは、項目定義テンプレート上の[拡張設定]ボタンを押下することにより表示されます。
レイアウト定義画面による直接編集
変更を行いたいセルにフォーカスをあててEnterキーを押下すると、直接編集ができます。環境設定で直接入力を選択すると、ダブルクリックによる直接編集ができます。編集用のエディットコントロールでEnterキーを押すと表に反映され、Escキーを押すと反映されずに復帰します。
直接編集により入力された内容は、レイアウト定義ファイルの保存時にチェックされます。無効な設定がされている場合は、無視されて初期化されます。
- 項目情報の拡張情報を設定する場合
編集方法は上記と同様ですが、レイアウト定義機能起動後の初期状態では項目情報の拡張情報は表示されていません。項目情報の拡張情報を表示するには、[拡張表示]メニューをチェックします。
→項目情報 →環境設定 →項目定義テンプレート →拡張情報 →[拡張設定] ダイアログボックス →[拡張表示]メニュー
レイアウト定義機能 反復項目の定義
レイアウト定義では、COBOLデータ記述の「OCCURS句」等に相当する反復項目(配列)に対応しています。
反復数の指定は反復定義行で行われ、通常の項目定義行と異なります。また、反復対象となる項目は、反復定義行より深い階層で示されます。反復定義行は階層と反復数のみで構成され、次の行は必ず階層が1つ深くなければなりません。反復階層は7階層までです。
【例】(COBOL解析オプションの集団項目の扱い無効の時の表示例)
COBOLでのデータ記述
01 ABC-REC. 03 ITEM1 PIC X(10). 03 GROUP1. 05 ITEM2 PIC X(3). 05 ITEM3 PIC X(1). 03 GROUP2 OCCURS 10. 05 ITEM4 PIC X(5). 05 ITEM5 PIC X(5). 05 GROUP2-1 OCCURS 5. 07 ITEM6 PIC 9(2). 05 ITEM7 PIC X(2). 03 ITEM8 PIC X(20). 03 ITEM9 OCCURS 5 PIC X(8). 03 ITEM10 PIC X.
レイアウト定義
階層 反復数 項目名
0 ITEM1
0 ITEM2
0 ITEM3
0 10
1 ITEM4
1 ITEM5
1 5
2 ITEM6
1 ITEM7
0 ITEM8
0 5
1 ITEM9
0 ITEM10
レイアウト定義機能 集団項目の定義
レイアウト定義では、COBOLデータ記述の「集団項目」の記述に対応しています。
集団項目の指定は反復項目の定義の反復数の指定がない記述と同じ形式になります。また、集団項目に従属する項目は、集団項目定義行より深い階層で示されます。集団項目定義行は階層と項目名のみで構成され、次の行は必ず階層が1つ深くなければなりません。指定できる最大階層は7階層までです。
既存COBOL資産からの新規作成でレイアウト定義画面に集団項目を表示させるには、COBOL解析オプションで集団項目の扱いを有効にする必要があります。また、この集団項目の扱いの指定に関係なく、レイアウト定義では集団項目の追加、削除等の編集は可能です。
【例】
COBOLでのデータ記述
01 ABC-REC. 03 ITEM1 PIC X(10). 03 GROUP1. 05 ITEM2 PIC X(3). 05 ITEM3 PIC X(1). 03 GROUP2. 05 ITEM4 PIC X(5). 05 ITEM5 PIC X(5). 05 GROUP2-1. 07 ITEM6 PIC 9(2). 05 ITEM7 PIC X(2).
レイアウト定義
階層 反復数 項目名
0 ITEM1
0 GROUP1
1 ITEM2
1 ITEM3
0 GROUP2
1 ITEM4
1 ITEM5
1 GROUP2-1
2 ITEM6
1 ITEM7
マルチレイアウト定義機能
データファイル変換において、1ファイル上のレコードフォーマットが、レコードによって変わる(複数のレコードフォーマットが存在する)ものを、本書ではマルチフォーマットと呼びます。ここでは、マルチレイアウト定義機能を使用したマルチフォーマットの対応方法について説明します。 マルチレイアウト定義機能では、定義したレコードレイアウトが、どのような条件のレコードについて適用するかを指示します。なお、この機能を応用することにより、入力ファイルに対するレコード抽出も行うことができます。
マルチフォーマットデータの変換について
【マルチフォーマットデータの変換イメージ】
マルチレイアウト定義ファイルの作成手順
マルチレイアウト定義ファイルの作成手順について説明します。 1. TF-MDPORT レイアウト定義の起動
. スタートメニュー(またはプログラムマネージャ)の“TF-MDPORT レイアウト定義”のアイコンより起動します。
2. レイアウトを新規に作成する
. レイアウト定義ファイルは、既存COBOL資産(COPYライブラリ)や既存レイアウト定義の取り込みを行って作成することができます。 取り込みを行うと各項目定義が自動生成されて展開されます。
3. マルチレイアウトの編集をする
. レイアウト定義テンプレートで比較条件等を設定します。
4. レイアウトを追加する
. 「新規レイアウトの追加」ボタンを押下し、既存レイアウトの次に追加します。
5. レイアウトを挿入する
. 「新規レイアウトの挿入」ボタンを押すと、表示されているレイアウトの前に挿入します。
6. レイアウトを削除する
. 表示されているレイアウトを削除するときは、「レイアウト削除」ボタンを押下します。
7. レイアウトを保存する
. ファイルメニューの「名前を付けて保存」を選択し、作成したマルチレイアウト定義ファイルを保存します。
画面リファレンス
マルチレイアウト定義画面の操作手順について説明します。 1. レイアウト定義画面
. スタートメニュー(またはプログラムマネージャ)の“TF-MDPORT レイアウト定義”のアイコンより起動します。
2. マルチレイアウト定義指定ダイアログバー
. ①レイアウト名のリスト 選択されるレイアウト名が一覧表示されます。 一覧表示されたレイアウト名を選択する事で該当のレイアウトが画面に表示されます。 ②編集するレイアウトの制御文 選択されたレイアウト名の制御文が表示されます。 ・フォーマット op 位置,情報長:pos,len 比較データ:min~max op …演算子。EQ/NOT/OTHER/NONEのいずれかが表示される。 pos…比較するデータの開始位置が表示されます。 len…比較するデータの長さが表示されます。 min…比較するデータの最小値が表示されます。 max…比較するデータの最大値が表示されます。
3. レイアウト定義テンプレートダイアログ
. ①レイアウト名 レイアウト名を指定します。 レイアウト名は90バイトまで指定可能です。 既存のレイアウト名(基本情報ダイアログのレイアウト名)とは異なります。 ②条件式 比較条件式を指定します。 必ず指定する必要があります。 条件は、EQ(等しい)、NOT(等しくない)、OTHER(それ以外)、NONE(無し)です。 ③フィールド位置 比較するレコードのバイト位置を1を先頭とした値で指定します。 必ず指定する必要があります。 最大指定値は32767です。 ④フィールド長 比較する長さ(バイト数)を指定します。 必ず指定する必要があります。 最小値は1、最大値は「32767 - フィールド位置」です。 ⑤最小値 比較する値の最小値を指定します。 文字列を指定する場合は、"(ダブルクォーテーション)で括って指定します。それ以外の場合は、16進数で設定します。 フィールド長よりも短い場合は、余った領域にNULLがあるものとして比較します。 フィールド長よりも長い場合は、フィールド長の長さまでを利用して比較します。 最大値を空欄の状態で最小値のみを指定すると、最小値の定置比較となります。 ⑥最大値 比較する値の最大値を指定します。
文字列を指定する場合は、"(ダブルクォーテーション)で括って指定します。それ以外の場合は、16進数で設定します。 フィールド長よりも短い場合は、余った領域にNULLがあるものとして比較します。 フィールド長よりも長い場合は、フィールド長の長さまでで比較します。 最小値を空欄の状態で最大値のみを指定すると、最大値の定置比較となります。 ⑦前レイアウト 設定内容を保存して、一つ前のレイアウトの情報を表示します。 既に先頭レイアウトの場合は、警告のダイアログを表示します。 ⑧次レイアウト 設定内容を保存して、次のレイアウトの情報を表示します。 最終レイアウトの場合は、レイアウトを新規作成して表示します。 ⑨OK 各項目のチェックを行い、設定内容を保存して、ウィンドウを閉じます。 実際のレイアウトレコード長とフィールド位置・フィールド長のチェックは、ファイル保存時に行います。 ⑩キャンセル 現在編集中の設定内容を破棄して、ウィンドウを閉じます。 ⑪ヘルプ ヘルプを表示します。
バッチモードでの変換 バッチモードについて
MDPORTでは、変換処理をバッチモードで実行することができます。
バッチモードとは、一切のユーザ介入なしで変換処理を実行することを示します。また、指定によりウィンドウを表示せずにバックグラウンド上で処理を実行させることもできます。実行結果については、コマンドの復帰値およびログファイル・イベントログの内容により確認できます。
なお、バッチモードでの変換には、事前に変換指示ファイルを作成しておく必要があります。
→変換指示ファイル- 起動方法- ログ出力の内容 変換中に発生したエラーは、変換エラーファイルへ出力されます。
※バッチモードでMDPORTを複数起動した場合の動作は保証していません。
→変換エラーファイル →環境設定
バッチモードでの変換 起動方法
バッチモードでの変換実行は、以下のコマンドにて行います。オプションの指定に誤りがあった場合は、メッセージボックスにてエラーが表示されます。
コマンドライン形式([]は省略可)
Tfmdp32.exe /x¦b 変換指示ファイル名(*.mdp) [/c カレントフォルダ名] [/i 入力ファイル名] [/o 出力ファイル名] [/e 変換エラー出力ファイル] [/f] [/v]
パラメータ説明
x 変換指示ファイル名を指定。(実行時に進捗状況インジケータを表示します。) 進行状況インジケータの[中断]ボタンによる、終了中断が可能です。
b 変換指示ファイル名を指定。(ウィンドウを一切表示しません。)
c カレントフォルダ名を指定。
i 入力ファイル名を指定。
o 出力ファイル名を指定。
e 変換エラー出力ファイル名を指定。
f 強制上書きモード。
v ログファイルに出力する内容をイベントログに出力する場合に指定。 注意
- x または b は、どちらか一方を必ず指定しなければなりません。
- x と b は、同時に指定することはできません。
- c,i,o,e が指定された場合、変換指示ファイル中の対応するファイル名に指定されたファイル名が無効になります。
- c,i,o,e オペランドは、それぞれ省略可能で、省略した場合は変換指示ファイルの内容が使用されます。
- i,o オペランドは、ワイルドカードの指定が可能です。ただし、出力ファイル形式がXML形式以外で、o オペランドでワイルドカードを指定した場合には変換結果は保証されません。
(注:空白を含むファイル名を指定する場合は、ファイル名をダブルクォーテーションで囲んで指定してください)
- i オペランドにワイルドカードが指定された場合、o オペランドの指定文字列を拡張子と見なし、入力ファイル名の拡張子と置き換えたファイル名を、出力ファイルとします。
- i,o オペランド以外にはワイルドカードは使えません。
- o オペランドで指定したファイルが既に存在している場合、処理を中断します。
- f オペランドが指定されている場合は出力ファイルが既に存在しても、強制的に上書きします。
→ f オペランドが指定されていない場合は、強制終了されます。 復帰値
実行コマンドは以下のいずれかの復帰値で終了します。(プロセスの強制終了や異常終了時の復帰値は保証できません)
復帰値説明
0 正常終了(変換エラーなし)
1 正常終了(変換エラーあり)
2 ログファイルアクセスエラーによる異常終了
3 異常終了(ログファイルへエラー内容出力)
バッチモードでの変換 ログ出力
ログファイル出力. ログファイルはバッチモードで実行した場合に作成されるテキストファイルです。ログファイルの格納先およびファイル
名は環境設定により指定します。
ログファイルへの出力は、既存のログファイルがあれば追加書きとなり、存在しなければ自動作成されます。
バッチモードでは、正常終了した場合でも常にログファイルへの出力が行われます。
. →環境設定
ログファイル出力例 (Mdport.log)
2003/07/28 17:39:51[data1.mdp] 変換処理を開始します。 2003/07/28 17:39:52[data1.mdp] 変換処理が正常に終了しました。入力レコード件数:14 出力レコード件数:14 エラー発生件数:2 2003/07/29 22:06:30[xdata1.mdp] 変換処理を開始します。 2003/07/29 22:06:30[xdata1.mdp] ファイルがみつかりません。File:’Data2.dat’ Call:CreateFile,Error:2
イベントログ出力. イベントログはバッチモードでオペランドに[/v]、コマンド実行時にオペランドに[-ev]を指定して実行した場合、イベントログに実行
時の日付、時間、コマンドのオペランドが出力されます。
オペランドに誤りがあった場合、イベントログは出力されません。
オペランドにカンマ","がある場合は、空白に置き換えられます。
イベントログ出力例
2003/07/31 18:10:23[] /b data1.mdp /i input.dat /o output.dat /f /v
SIMPLIA/TF-LINDAとの連携
MDPORTはSIMPLIA/TF-LINDAより起動し、LINDAで使用しているファイルをMDPORTを経由して、CSVやXML形式にエクスポートしたり、CSVやXMLファイルをLINDA側に取り込む(インポートする)ことができます。詳細は、SIMPLIA/TF-LINDAのオンラインマニュアルを参照してください。
LINDA側の操作の基本的な流れ
1 データファイルを開き、[MDPORT連携]メニューを選択します。 .2 入力側や出力側のデータ形式等を設定し、MDPORTを起動させます。→ MDPORTで必要となる変換指示ファイル、レイアウト定義ファイル、入力
ファイルが、LINDAの作業フォルダに一時ファイルとして作成されます。→変換指示ファイル →レイアウト定義ファイル
MDPORT側の操作(エクスポート時)
1 MDPORT変換指示ウィザードの4ページ目が表示されるので、出力側のファイル名やコード体系等を設定し、以降の変換指示を完了させます。
. →MDPORT変換指示 ウィザード
2 [変換実行]ボタンにより変換処理が行われます。3 システムメニューの[閉じる](またはALT+F4キー)によりMDPORTを終了させると、
LINDAで作成された一時ファイルは削除されます。
※インポート時はMDPORTの操作はありません。
画面説明 - MDPORT変換指示 - ツールバー
ボタン 対応するメニュー
[ファイル(F)]-[変換指示の新規設定(N)]
[ファイル(F)]-[変換指示ファイルを開く(O)]
[ファイル(F)]-[変換指示ファイルの上書き保存(S)]
[ファイル(F)]-[変換指示ファイルに名前を付けて保存(A)]
[ツール(T)]-[レイアウト定義(L)]
[オプション(O)]-[環境設定(E)]
[ヘルプ(H)]-[トピックの検索(H)]
画面説明 - MDPORT変換指示 - コマンドボタン
ボタン名 説明
[設定] 変換指示ウィザードが起動され、変換情報の設定・変更を行います。
→変換指示
[プレビュー] 変換結果を事前に画面上で確認することができます。 出力ファイルが一般ファイルの時に活用してください。
→プレビュー
[変換実行] 変換処理を開始します。[変換エラー表示] 変換処理にて発生したエラー内容を表示します。変換
エラーファイルが存在する場合に、表示できます。→変換エラー表示
画面説明 - MDPORT変換指示 - 環境設定
基本情報
項目 説明
作業用フォルダ 作業用フォルダを指定します。
省略した場合、システムの作業用フォルダ(環境変数TEMPまたはWindowsディレクトリ)が使用されます。
バッチ実行時のログファイル バッチモードで実行した時に出力されるログファイルをフルパス名で指定します。
省略した場合、作業用フォルダに“Mdport.log”のファイル名で作成されます。
変換エラーを表示するビューアプログラム
変換エラーを表示する外部ビューアプログラムをフルパス名で指定します。ワードパッドや各種テキストエディタ等を指定できます。
省略した場合、メモ帳が起動されます。
COBOL
項目 説明
1GB以上のCOBOLファイルを扱う
1GBを超えるサイズのCOBOLファイル(順・行順ファイル)を扱う場合に指定します。
BYTE単位の領域長を扱う
2進項目においてBYTE単位の領域長を扱う場合に指定します。
一般ファイルをCOBOLの仕様で扱う
コード体系がUnicode かつ ファイル形式を一般ファイルと指定した場合、COBOLの仕様で扱うかどうかを指定します。 - チェックした場合 :COBOLの仕様で扱います。
- チェックを外した場合 :コード体系に依存した形で扱います。
COBOLの仕様では、一部の属性について以下の様なコード体系で表されています。
英数字項目(X-英数字) 混在項目(M-混在)
UTF8
日本語項目(日本語(2バイト系)キャラクタのみの格納形式) UCS2※チェックボックスがオンの場合、V60L10以前のバージョンとの互換性のあるデータを出力します。 (初期値はオンの状態です。)
MDPORT変換指示ウィザード 1/5 (基本情報)
項目 説明
ファイル変換モード ファイル変換にあたり、データファイル変換かテキスト変換かを選択します。
→データファイル変換 →テキスト変換
カレントフォルダの設定 カレントフォルダを設定すると、それを基準として以降の各ファイル名を相対パスで設定することができます。変換指示ファイルを再使用する時に格納フォルダが変更されている場合に、このカレントフォルダを変更するだけで各ファイル名の再設定を行わなくて済みます。
MDPORT変換指示ウィザード 2/5 (レイアウト定義情報)
項目 説明
レイアウト定義ファイル名 データファイル変換にて使用するレイアウト定義ファイルのファイル名を指定します。
レイアウト定義の起動 レイアウト定義プログラムを起動します。
データ条件設定 データ条件設定画面を起動します。
レイアウト定義の生成 既存COBOL資産もしくは既存C言語資産を指定することにより、レイアウト定義ファイルを生成します。
レイアウト定義ファイルを作成するには、以下の5通りの方法があります。
- レイアウト定義プログラムを起動し、既存COBOL資産より新規作成を行う。
- レイアウト定義プログラムを起動し、既存C言語資産より新規作成を行う。
- 変換指示ウィザードの[レイアウト定義の生成]ボタンにより、既存COBOL資産もしくは既存C言語資産より生成する。
- レイアウト定義プログラムを起動し、全ての項目定義を手入力する。
- mdportlcコマンドを利用して、既存COBOL資産より新規作成を行なう。(mdportlcはMDPORT Pro固有機能です。)
【注意】
このページはテキストモード変換の場合には表示されません。
画面説明 - データ条件設定
入力ファイルから抽出するレコードのデータ条件を指定するための画面です。指定したデータ条件に一致するレコードのみ出力します。 レコード抽出の仕様については、抽出仕様のレコード抽出を参照してください。 制限・注意事項については、レコード抽出機能における制限・注意事項を参照してください。
項目 説明
追加 条件内容グループ内で項目名・演算子[16進指定]・条件値(2件目以降は、連結条件の選択必要)をそれぞれ設定し、追加ボタンを選択します。条件確定一覧に抽出条件が追加されます。 エラー発生時には、メッセージの内容に従い条件内容を修正してください。
更新 条件確定一覧で変更したい条件を選択後、条件内容グループ内で項目名・演算子[16進指定]・条件値(2件目以降は、連結条件の選択必要)をそれぞれ設定し、更新ボタンを選択します。条件確定一覧の抽出条件が更新されます。 エラー発生時には、メッセージの内容に従い条件内容を修正してください。
削除 条件確定一覧で削除したい条件を選択後、削除ボタンを選択します。条件確定一覧から抽出条件が削除されます。
条件確定一覧 設定したデータ条件が表示されます。ここで表示されている条件でレコード抽出を行います。 No. データ条件の通し番号を表示します。
設定したデータ条件のNo.1からNo.10の順に判定を行います。連結条件 データ条件の連結子「AND」、または、「OR」を表示します。
(No2以降)項目名 データ条件の項目名を表示します。演算子 データ条件の演算子を表示します。条件値 データ条件の条件値を表示します。16進指定 16進指定を設定している場合は、「○」、設定していない場合は
「×」を表示します。
連結条件 データ条件を2つ以上指定する場合、前の条件との連結子を「AND」、「OR」から選択します。初期値は設定されていません。
項目名 MDPORT変換指示ウィザードの2/5で指定したレイアウト定義ファイル内の項目名を設定します。集団項目名や反復項目名は指定できません。
演算子 入力ファイルのデータ内容と条件値を比較するための演算子を指定します。データ属性により、指定可能な演算子が異なります。
文字型属性 「=(完全一致)」、「≒(前方一致)」、「≠(不一致)」
数値型属性 「=」、「≠」、「>」、「≧」、「<」、「≦」
16進指定 条件値を16進で指定する場合、チェックボックスをオンにします。文字型属性の場合のみ有効です。
条件値 入力ファイルのデータ内容を抽出するための条件値を指定します。
条件値には最大150バイトまでの条件値の指定が可能です。 数値型属性の場合、最大18桁(「+」、「-」、「.(小数点)」は含みません)の数値指定が可能です。 条件値が未入力の場合、NULLデータと判断します。文字列項目(M)属性の場合のみ条件値の未入力指定が可能です。 ※CSV、XML形式の文字列項目のNULLデータ抽出に利用可能です。
16進指定時の条件値設定方法 使用できる文字は、半角英数字の0~9、A~F、a~fおよび ;(セミコロン)です。 セミコロンを使用する場合は、バイトごとに使用してください。なお、ビット間にセミコロンを指定した場合は、下位ビットの0(16進)が省略されたものとみなします。
条件に合わないレコード を出力する
データ条件から漏れたレコードを出力する場合に、チェックボックスをオンにします。
抽出漏れファイル名 抽出漏れレコードを出力するファイル名を指定します。 レコード抽出条件に一致しなかった入力レコードが存在する場合、当ファイルに出力します。抽出漏れファイルには、MDPORT変換前のデータが出力されるため、再レコード抽出処理を行う入力ファイルとして利用可能です。
MDPORT変換指示ウィザード 3・4/5 (入出力ファイル情報)
項目 説明
コード体系 ファイルのコード体系を選択します。「その他」を選択した場合は、コードIDの入力が必要です。 →文字コード の変換仕様
コードID 他社コード変換機能を使用する場合に指定します。 →他社コード 変換機能
ファイル名 入力または出力ファイル名をフルパスで指定します。カレントフォルダを設定している場合は相対パスでの指定も有効です。
ファイル形式 (データファイル変換の場合) 一般ファイルまたはCOBOLファイルかを指定します。Windows上のCOBOLファイル以外は一般ファイルを指定してください。
→一般ファイル →COBOLファイル
キー情報指定 (COBOL索引ファイル出力の場合) 索引キーに関する情報を設定します。
→キー情報指定
CSV形式の詳細 (CSV形式ファイルの場合) CSV形式に関する情報を指定します。
→CSV形式の詳細
XML形式の詳細 (XML形式ファイルの場合) XML形式に関する情報を指定します。
→XML形式の詳細
Unicodeの詳細 (コード体系がUnicodeの場合) Unicodeに関する情報を指定します。
項目 設定値
○:指定可 ×:指定不可 -:未表示
入力 出力
テ キ ス ト
一 般
※1
一 般
※2
順 編 成
行 順
※3相 対
索 引
C S V
X M L
※5
テ キ ス ト
一 般
※1
一 般
※2
順 編 成
行 順
※4相 対
索 引
C S V
X M L
※6
種別UCS2
○ × ○ × × × × ○×
○ × ○ × ○ × × ○×
UTF8 ○ ○
エンディアンBig
○ ○ ○ ○ × ○ ○ ○ × ○ ○ ○ ○ × ○ ○ ○ ×Little
シグネチャを省略する - - - - - - - - - ○ × × × × × × ○ ○
※1 COBOL仕様として取り扱う仕様です(*)
※2 選択したコード体系に依存する仕様です(*)
※3 入力が行順ファイルの時は、Signatureに従います。
※4 出力が行順ファイルの時は、エンディアンは指定できず、リトルエンディアンのみになります。 (COBOLの仕様)
※5 入力がXMLの時は、エンコーディング形式が優先されます。(XMLの仕様)
※6 出力がXMLの時は、UTF8形式のみの出力になります。
(*)詳細は、環境設定の「一般ファイルをCOBOLの仕様で扱う」を参照。
→エンディアン →Signature
シグネチャを省略する Signatureの出力を省略するかを指定します。 チェックしない場合、Unicodeの詳細で指定した形式のSignatureをファイルの先頭に付加します。 (入力ファイルまたはコード体系がUnicode以外の場合は、選択できません。)
→Signature
レコード属性の指定 レコード属性の指定レコードに関する情報を指定します。一般的には以下のように指定します。
種類 属性 レコードの区切り
データファイル形式 固定長 なし (レイアウト定義と同じレコード長)
Windows(DOS)CSV形式 可変長 改行コード(CR+LF)
Windows(DOS)テキスト 可変長 改行コード(CR+LF)
UNIXテキスト(CSV含む) 可変長 改行コード(LF)
汎用機ソース 固定長 なし (レコード長: 80が多い)
XML形式 可変長 改行コード(CR+LF)
ワイルドカードによる指定 入力ファイルにワイルドカードを指定した場合は、出力ファイル名の項目に入力された文字列を拡張子と見なし、入力ファイル名の拡張子と置き換えたファイル名を出力ファイル名とします。(XML形式の場合、一部を除く) 【例】
入力ファイル名項目 : *.dat 出力ファイル名項目 : .out ↓ 検索されたファイル名 : aaa.dat、bbb.dat … 出力ファイル名 : aaa.out、bbb.out …
エラーファイルについて
- 入力ファイルにワイルドカードを指定した場合は、デフォルトのエラーファイル名として "Mdport.err" が設定されます。
- エラーファイルには検索されたすべての入力ファイルのエラーが追加モードで出力されます。
※ エラーファイルが既に存在する場合は、既存のファイルは削除され新たにファイルが作成されます。
- レイアウト定義ファイルは、同じものが利用されます。
- 出力ファイルが既に存在している場合、上書きして良いかどうかを確認するメッセージボックスが表示されます。
※ バッチモードでは、出力ファイルが既に存在している場合、処理は終了されます。※ /fオプションが指定された場合は、強制的に上書きします。
XML形式のワイルドカード指定について
入力側がXML形式の場合 →XML形式変換における制限・注意事項
入力ファイル名項目 : *.xml 出力ファイル名項目 : aaa.dat ↓ 検索されたファイル名 : aaa.xml、bbb.xml … 出力ファイル名 : aaa.dat
出力側がXML形式の場合
入力ファイル名項目 : aaa.dat 出力ファイル名項目 : *.xml ↓ 入力ファイル名 : aaa.dat 出力ファイル名 : aaa00000.xml、aaa00001.xml、aaa00002.xml …
MDPORT変換指示ウィザード [索引キー情報設定]ダイアログボックス
COBOL索引ファイルへ出力する場合に、索引キーに関する情報を設定します。
項目 説明
主キー / 副キー1~4 主キーの位置と長さをセミコロン(;)で区切って指定します。キーが連続した領域でない場合、同様に並べて指定します。主キーは省略できません。
位置 1から始まるレコード上の相対バイト位置。長さ バイト長。キー重複 各キーについて重複ありの場合、チェックします。
【例】
主キーが1~5バイト重複なし。副キー1が1から7バイト重複あり。副キー2が5~7,11~15バイト重複ありのファイルの場合。 キー項目 キー設定内容 重複
主キー: 1;5 なし副キー1: 1;7 あり副キー2: 5;3;11;5 あり
MDPORT変換指示ウィザード [CSV詳細設定]ダイアログボックス
CSV形式に関する情報を指定します。
項目 説明
参考設定 各RDBでサポートされる、デフォルトの形式を選択できます。
項目 SymfoWARE Oracle INFORMIX SQL Server Excel
引用符文字 " " なし なし "
区切り文字 , , , , ,
引用符文字は2つ Yes Yes No No Yes
ヌル文字列も括る No Yes No No No
項目名ヘッダ出力 No No No No Yes
引用符文字 レイアウト定義で引用に“Y”が指定されている場合の、引用符文字を指定します。 引用符文字として指定可能な文字は「CSV形式で扱える引用符・区切り文字」を参照して下さい。
区切り文字 項目間を区切るための文字を指定します(通常、CSV形式はカンマ)。 区切り文字として指定可能な文字は「CSV形式で扱える引用符・区切り文字」を参照して下さい。
タブ 項目間を区切るための文字として、タブコード(0x09)を指定する場合は、当チェックボックスをチェックしてください。 区切り文字として指定可能な文字は「CSV形式で扱える引用符・区切り文字」を参照して下さい。
引用符データは2つ並べて表現データ中に引用符が存在する場合の扱いを指定します。1つの引用符データは2つの引用符で表現し、文字列項目をくくっている引用符との識別を行う場合にチェックします。レイアウト定義で引用に“Y”が指定されている場合のみ有効です。
ヌル文字列も引用符で括って出力(出力側の場合にのみ有効)ヌルの項目文字列を表現する場合、2つの引用符で表す場合にチェックします。チェックしない場合、ヌルの項目文字列には引用符は付加されません。
項目名ヘッダを先頭レコードに出力(出力側の場合にのみ有効)CSV出力レコードの1件目に、項目名の見出しレコードを出力する場合にチェックします。出力されたCSV形式ファイルを表計算ソフトで使用する場合に便利です。
MDPORT変換指示ウィザード [XML詳細設定]ダイアログボックス
XML形式に関する情報を指定します。
項目 説明
MDPORT標準テンプレートファイルを付加するコード体系に応じて、MDPORT標準のDTDテンプレートを出力ファイルの先頭に付加する場合にチェックします。MDPORT標準のテンプレートファイルとして、出力コード毎に以下の4つを用意しています。
コード テンプレートファイル名
シフトJIS SJIS.xml
EUC EUC.xml
JIS JIS.xml
Unicode(UTF-8) UTF8.xml
テンプレートファイル名独自のテンプレートファイル名をフルパスで指定します。カレントフォルダを設定している場合は相対パスでの指定も有効です。
参照テンプレートファイルをファイル一覧から選択するダイアログを開きます。
※ テンプレートを付加しない場合は、「MDPORT標準のテンプレートファイルを付加する」がチェックを外し、テンプレートファイル名を空欄にして下さい。
MDPORT変換指示ウィザード 5/5 (変換仕様・エラー情報)
コード変換仕様の設定項目 説明
CharsetMGRを使用する CharsetMGRを使用してコード変換する場合にチェックします。CharsetMGRが正常にインストールされていない場合や、同一コードでの変換、CharsetMGRで対応していないコード変換パスではチェックできません。CharsetMGRに関する動作環境は、[詳細]ボタンで設定します。
→CharsetMGR →[CharsetMGR 環境設定]
CharsetMGRの外字連携機能を利用することにより、利用者定義文字や拡張文字を任意の外字区画等に割り当てたコード変換を行うことができます。入力定義や出力定義の内容を変更すると、チェックは解除されるので注意してください。※ Unicodeのコード変換で、この項目がチェックされていない場合は
Win32APIを使用したコード変換が行われます。 (シフトJIS ←→ Unicode 間の変換時のみ。)
同一コードの場合、 変換しない 入力コードと出力コードに同一のコードを指定した場合にのみ、
変換処理を行わないようにします。 異なるコードの場合に指定する事は出来ません。
→[同一コード無変換出力 注意事項・制限]
利用者定義変換テーブル コード変換の際に参照される利用者定義変換テーブルのファイル名を入力します。利用者定義変換テーブルの形式については、「利用者定義変換テーブル」を参照してください。
→利用者定義変換テーブル
CharsetMGR機能を利用したコード変換を実施する場合は、当機能を使用せずCharsetMGRの外字連携機能を使用することを推奨します。
変換エラーに関する情報の設定項目 説明
変換エラーファイル名 変換エラーファイルのファイル名をフルパス名で指定します。カレントフォルダを設定している場合は相対パスでの指定も有効です。
→変換エラーファイル
デフォルトでは入力ファイル名の拡張子を「.err」にしたファイル名となります。
変換エラー出力可能件数 変換エラーファイルへ詳細情報を出力する最大件数を指定します。指定できる値は1から9999で、デフォルトは100件です。
エラー出力可能件数を 超えても続行
チェックボックスがオフの場合、変換処理中に変換エラー出力可能件数を超えると、処理を中断するかどうかの問い合わせが発生します。オンの場合は、「継続方法」の指定に従って処理を続行します。 (バッチモードで起動した場合は、問い合わせは発生せず処理を中断します。)
→バッチモード
続行方法 エラーの出力件数が超えた後でそのまま処理を変換続行する場合の、変換エラーの出力方法を選択します。
エラー出力可能件数を 超えても続行 継続方法 処理方法
オン
エラー情報を出力しながら続行
エラー情報を出力しながら、変換処理を続行します。
エラー情報を出力せずに続行
エラー情報を出力せずに、変換処理を続行します。
オフ -変換処理を終了します。
1カラム系代替コード 1カラム系文字コード(ANK文字)の変換にエラーが発生した場合に、出力データとして何の文字へ置き換えるかを16進コードで、Unicode以外は2桁、Unicodeの時は4桁で指定します。指定は出力側コード体系でのコードを入力します。Unicodeの時はUCS2ビッグエンディアンで指定します。省略されている場合は、出力側コード体系の“_”(アンダースコア)とします。
2カラム系代替コード 2カラム系文字コード(日本語文字)の変換にエラーが発生した場合に、出力データとして何の文字へ置き換えるかを16進コード4桁で指定します。指定は出力側コード体系でのコードを入力します。Unicodeの時はUCS2ビッグエンディアンで指定します。省略されている場合は、出力側コード体系の“■”(黒い四角文字)とします。
MDPORT変換指示ウィザード [CharsetMGR環境設定]ダイアログボックス
CharsetMGRを使用した変換を行う場合、MDPORTのコード変換規則はCharsetMGR(iconv)に従います。このダイアログボックスでは、入出力で定義したコード体系がiconv変換(iconv_open関数)のどのキーワードに該当させるかを指定します。
各キーワードの意味やコード変換の詳細は、CharsetMGRに添付されている「ICONV.TXT」ファイルやヘルプファイルを参照してください
. →CharsetMGR
画面説明 - レイアウト定義 - ツールバー
ボタン 対応するメニュー
[ファイル(F)]-[既存COBOL資産からの新規作成(C)]
[ファイル(F)]-[既存C言語資産からの新規作成(H)]
[ファイル(F)]-[新規作成(N)]
[ファイル(F)]-[開く(O)]
[ファイル(F)]-[上書き保存(S)]
[ファイル(F)]-[名前を付けて保存(A)]
[編集(E)]-[行の切り取り(T)]
[編集(E)]-[行のコピー(C)]
[編集(E)]-[行の貼り付け(P)]
[編集(E)]-[行の挿入(I)]
[編集(E)]-[行の削除(D)]
[編集(E)]-[最終行の追加(A)]
[編集(E)]-[新規レイアウトの挿入(S)]
[編集(E)]-[新規レイアウトの追加(N)]
[編集(E)]-[レイアウトの編集(E)]
[編集(E)]-[レイアウトの削除(L)]
[オプション(O)]-[環境設定(E)]
[ヘルプ(H)]-[トピックの検索(H)]
画面説明 - レイアウト定義 - 項目情報の説明
レイアウト定義上の項目情報には以下のものがあります。(*)の付いているものは拡張情報です。拡張情報を表示するには[拡張表示]メニューをチェックしてください。
→[拡張設定]ダイアログボックス →[拡張表示]メニュー
種類 意味
階層 項目の階層を示します。0~7階層までのいずれかを定義します。COBOLデータ記述のレベル番号とは意味が異なるので注意して下さい。 [直接入力編集] 階層:0~7
反復 反復数を示します。指定がある場合、その行は反復指定行として他の項目定義行とは意味が異なります。反復については、「反復項目の定義」を参照してください。 [直接入力編集] 反復数:2~32767
→反復項目の定義
項目名 任意の名称で、全半角混在で60バイトまで定義可能です。省略や他項目との同一名称の指定も可能ですが、項目名はXMLのタグ名やレコード抽出機能の項目条件指定のキーワード項目となるので注意してください。 項目データを秘匿することが可能です。詳細は『取扱要注意情報の変換』を参照してください。
→取扱要注意情報の変換
属性 データ格納形式を意味する項目属性の種類を選択します。属性は文字属性と数値属性に分類され、文字属性と数値属性との変換はできません。
→項目属性の種類
符号 (数値属性の場合)符号ありの場合は符号チェックボックスをオンにします。外部10進の場合は項目属性の選択が必要です。
[直接入力編集]符号あり:"S" 但し、外部10進の場合は属性により指定値が異なります。詳細は「外部10進の符号形式」を参照してください。
→外部10進の符号形式
相対位置 (データファイル形式の場合)レコード上における項目の開始位置を、1から始まる相対バイト位置で指定します。[設定]メニューの一括設定画面で相対位置を自動的に振ることも可能です。
領域長 項目領域長をバイト単位で指定します。日本語項目属性の場合は常に偶数となります。CSV形式、XML形式は省略可能です。
全桁 (データファイル形式での数値属性の場合)数値における全体桁数を指定します。全体桁数とは整数部桁数と小数部桁数を足した桁数を指します。
小数 (データファイル形式での数値属性の場合)数値における小数部桁数を示します。
引用符(*) (CSV形式の場合)文字項目を引用符でくくる場合、「CSV形式の文字項目を引用符で括る」チェックボックスをオンにします。“Y”を指定します。デフォルトでは、文字属性は引用符でくくり、数値属性はくくりません。MDPORT変換指示ウィザードの[CSV形式の詳細]ダイアログで引用符を指定した場合に有効です。 [直接入力編集] 引用符で括る:"Y"
入力チェック(*) 入力データに対し、数値項目(外部10進、内部10進の符号部)の厳密チェック処理を行う場合、「入力チェックを行なう」チェックボックスをオンにします。本指定は、変換エラーの出力レベルを制御するものであり、変換仕様が変わることはありません。 [直接入力編集] 入力チェックを行なう:"Y"
無変換(*) 入力データに対し、一切の変換処理を行なわずに出力する場合(無変換出力)、「無変換で出力する」チェックボックスをオンにします。 可変長項目は無変換をサポートしていません。 [直接入力編集] 無変換で出力する:"Y"
固定出力(*) 出力側項目が可変長の項目(出力がCSV形式の場合も含む)に対して、常に指定された領域長(固定長)で出力する場合、「固定長で出力する」チェックボックスをオンにして、「領域長」を指定します。出力領域長が省略されている場合は、領域長0として扱われるため、注意してください。出力が数値文字列属性("V")の場合、全体桁数及び小数部桁数の指定が有効となります。全ての項目に対し本指定を行うと、出力ファイルは固定レコード長となります。
[直接入力編集]固定出力を行なう:"Y" 領域長の指定:出力側領域長にバイト単位で指定
ゼロ抑制(*) (固定出力指定の数値文字列属性に対して有効)固定出力指定の数値文字列属性(“V”)に対して、ゼロ抑制を行なう場合、「ゼロ抑制を行なう」チェックボックスをオンにします。 チェックボックス オフ:先行ゼロおよび小数部下位ゼロは抑制されません。 チェックボックス オン:ゼロは抑制され空白で出力します。小数点付きのデータを抑制する場合は、直接入力にて、領域長、全桁および少数桁を指定してください。 [直接入力編集] ゼロ抑制を行なう:"Y"
ヌル扱い(*) MDPORTは、ヌルコード(0x00)は文字以外の項目と見なして変換エラー扱いとします。入力データが全てヌルコード(0x00)に対して、変換エラーとしない場合、「全てヌルでもエラーとしない」チェックボックスをオンにします。 データファイル中の英数字項目属性で入力データが全てヌルの場合 チェックボックス オフ:ヌルコードは変換エラー扱いとなり代替文字に変換されます。 チェックボックス オン:変換エラーとはならず、出力側項目属性の初期値で出力されます。 [直接入力編集] ヌル扱いで変換エラーとしない:"I"
拡張 マスクオプション機能を設定する場合、「マスクする」のチェックボックスをオンにします。チェックボックスにチェックがある場合、列項目「拡張」に「M」が反映されています。
[直接入力編集] 拡張設定:"M" マスク機能を実行する対象となります。
タグ属性(*) (XML形式の場合)XML形式に対して、項目名の出力方法を「開始/終了タグ」、「属性」として扱う、「EMPTY」(EMPTYタグとして扱う)、または、「なし」(タグ/属性として出力させない)のいずれかから指定します。デフォルトでは、「開始/終了タグ」としています。
[直接入力編集]開始/終了タグ:指定なし 属性:"A" EMPTY:"E" なし:"N"
画面説明 - レイアウト定義 - 外部10進での符号の種類
外部10進項目属性には、以下の符号の種類があります。
記号欄は直接編集入力時の設定値をあらわしています。
記号 種類 意味
S あり TRAILING属性。末尾バイトの上位4ビット上に表現されます。 記号の"T"が指定された場合と同じです。
L LEADING LEADING属性。先頭バイトの上位4ビット上に表現されます。
T TRAILING TRAILING属性。末尾バイトの上位4ビット上に表現されます。 記号の"S"が指定された場合と同じです。
LS LEADING SEPARATE LEADING SEPARATE属性。先頭の1バイトで表現されます。
TS TRAILING SEPARATE TRAILING SEPARATE属性。末尾の1バイトで表現されます。
画面説明 - レイアウト定義 - 項目属性の種類
項目属性は文字属性と数値属性に分類されます。CSV形式およびXML形式の場合に指定できるものは、“M”と“V”のみです。意味の欄に、(*)の付いているものは、エンディアン指定により内部形式が異なります。 →エンディアン記号欄は直接編集入力時の設定値をあらわしています。分類 記号 属性 意味
文字 X 英数字 1バイト系キャラクタの格納形式N 日本語 日本語(2バイト系)キャラクタのみの格納形式M 混在 1/2バイト系キャラクタ混在の格納形式C char型 ヌルで終了する文字列R 可変長文字列 先頭2バイトに有効データ長(領域長)を持つ文字列 (*)
サポートコード体系はSJIS、EUC、Unicodeです。Y 可変長日本語 先頭2バイトに有効データ長(文字数)を持つ日本語属性の文
字列 (*) サポートコード体系はSJIS、EUC、Unicodeです。 ※UTF8コードの場合は、領域長をもちます。
数値 Z 外部10進数 COBOL独自のゾーン形式P 内部10進数 COBOL独自のパック形式B 2進数 COBOL独自のバイナリ形式5 COMP-5属性 COBOL独自のバイナリ形式 (*)S short型 16ビットで表現されるバイナリ形式 (*)L long型 32ビットで表現されるバイナリ形式 (*)V 数値文字列 数値をキャラクタ表現した形式(符号や小数点も文字で表現さ
れる)その他 - 項目なし 項目の追加・削除に使用
画面説明 - レイアウト定義 - [項目定義テンプレート]ダイアログボックス
項目定義テンプレートを使用すると、項目単位に情報を設定することができます。
それぞれの項目の意味は、「項目情報」を参照してください。
項目の拡張情報の設定は、[拡張設定]ダイアログボックスで行います。[拡張設定]ダイアログボックスは、項目定義テンプレート上の[拡張設定]ボタンを押下することにより表示されます。
編集対象行の移動機能
「先頭」「前行」「次行」「最終」の行移動ボタンにより、編集対象のレイアウト定義行を変更することが可能です。また最終行で「次行」ボタン押下により行追加も可能です。
集団項目の指定方法
入力情報と出力情報の「属性」コンボボックスの一番下の空白行を選択し、相対位置、領域長、全体桁数、小数部桁数を0クリアしてOKボタンを押下する必要があります。集団項目を作成する場合、既存の項目を修正するのではなく、行挿入、行追加で新規に作成することを薦めます。
相対位置の自動変更機能
データ形式の場合に項目定義テンプレートにより領域長を変更すると、以降の行について相対位置を自動変更するかを選択します。自動変更した場合、領域長の変更分が以降の項目定義行の相対位置に加算または減算されます。
なお、階層や反復数の変更、また、階層が1以上の項目の領域長の変更については、自動変更機能は使用できません。
「キャンセル」ボタンで編集を無効にできる範囲
「キャンセル」ボタンにおいて、編集を無効できるのは、現在編集対象の行情報のみです。行移動ボタンにより別の行の項目を変更している場合、その変更を無効にすることはできません。
. →項目情報 →拡張情報 →[拡張設定]ダイ アログボックス
画面説明 - レイアウト定義 - [レイアウト定義テンプレート]ダイアログボックス
レイアウト定義テンプレートを使用して、マルチレイアウトの条件式を設定することができます。
それぞれの項目の意味は、「レイアウト定義情報」を参照してください。
編集対象レイアウトの移動機能
「前レイアウト」「次レイアウト」の移動ボタンにより、編集対象のレイアウトを変更することが可能です。また最終レイアウトで「次レイアウト」ボタン押下によりレイアウト追加も可能です。
「キャンセル」ボタンで編集を無効にできる範囲
「キャンセル」ボタンにおいて、編集を無効できるのは、現在編集対象のレイアウト情報のみです。レイアウト移動ボタンにより別のレイアウトの項目を変更している場合、その変更を無効にすることはできません。
. →レイアウト定義情報
画面説明 - レイアウト定義 - レイアウト定義情報の説明
マルチレイアウト定義上のレイアウト定義情報には以下のものがあります。 .種類 意味
レイアウト レイアウトの名称を指定します。 レイアウトの名称は90バイトまで指定可能です。
条件式 比較条件式を指定します。 条件は必ず指定する必要があります。 EQ 等しいNOT 等しくないOTHER それ以外NONE 無し
フィールド位置 比較するレコードのバイト位置を1を先頭とした値で指定します。 必ず指定する必要があります。 最大指定値は32767です。
フィールド長 比較する長さ(バイト数)を指定します。 必ず指定する必要があります。 最小値は1、最大値は「32767 - フィールド位置」です。
最小値 比較する値の最小値を指定します。 文字列を指定する場合は、"(ダブルクォーテーション)で括って指定します。 それ以外の場合は、16進数で設定します。 フィールド長よりも短い場合は、余った領域にNULLがあるものとして比較します。 フィールド長よりも長い場合は、フィールド長の長さまでを利用して比較します。
最大値 比較する値の最大値を指定します。 文字列を指定する場合は、"(ダブルクォーテーション)で括って指定します。 それ以外の場合は、16進数で設定します。 フィールド長よりも短い場合は、余った領域にNULLがあるものとして比較します。 フィールド長よりも長い場合は、フィールド長の長さまでで比較します。
画面説明 - レイアウト定義 - [拡張設定]ダイアログボックス
項目情報の拡張情報を設定します。[項目定義テンプレート]ダイアログボックスにて、[拡張設定]ボタンを押下することにより表示されます。
それぞれの項目の意味は、「項目情報」を参照してください。
→[項目定義テンプレート] ダイアログボックス →項目情報
画面説明 - レイアウト定義 - [基本情報]ダイアログボックス
現在編集中のレイアウト定義ファイルにおける、基本情報の設定を行います。 項目 説明
レイアウト名 レイアウト名を指定します。XML形式のルートタグ名になります。レコード名 レコード名を指定します。COBOL登録集作成の01レベルのレコード
名、XML形式のレコード名、DTD作成の場合のルートタグの名前になります。
以下の項目は、設定対象を入力側および出力側それぞれで選択します。 項目 説明
各項目にヌル表示域を設定 (データファイル形式の場合)チェックした場合、各項目の先頭に2バイトのヌル表示域があることを示します。ヌル表示域がある場合、実際の領域長は項目情報の領域長より2バイト必要になります。
→ヌル表示域 →項目情報
本指定を変更した場合、一般的には各項目の相対位置も変更する必要があります。一括設定を使用すれば効率的に相対位置を振りなおすことができます。
→一括設定
英数字項目のカナはJIS8で表現 (データファイル形式の場合)EUCコードの場合にのみ有効な指定で、英数字項目上の半角カナをコードセット2の2バイト/文字で扱うか、JIS8コードとして1バイト/文字として扱うかを指定します。なお、EUCコード等の文字コード体系の指定は、MDPORT変換指示にて行います。
→MDPORT変換指示
バイナリをビッグエンディアンで扱うデータ上のバイナリ数値のエンディアンWORD_ENDIANを指定します。本指定は以下のデータ部分に対して反映されます。
→エンディアン
- COMP-5,short型,long型の項目属性の内部表現
- 可変長項目属性(項目属性が“R”,“Y”)の先頭2バイトに付加される有効データ長の領域
SPARCのUNIXマシンや汎用機のデータを扱う場合は本指定をチェックし、WindowsやDOSのデータを扱う場合はチェックしないでください。
入力データ中のヌルを文字列終了とみなす (入力がデータファイル形式の場合)入力側の項目属性が文字列属性(項目属性が“X”,“N”,“M”,“R”)の場合に、入力データ中のヌル文字を文字列の終了として扱う場合にチェックします。チェックしないと、ヌルは文字として正しくないため変換エラーとなりますが、チェックするとヌルまでが有効データとし変換エラーとはなりません。項目属性が“C”の場合は、本指定をせずともヌルを文字列終了とします。
画面説明 - レイアウト定義 - [データ形式]ダイアログボックス
レイアウト定義ファイルを作成する際に、入力および出力のデータ形式を指定します。データ形式には以下の3つの形式があります。
- データファイル形式
- CSV形式
- XML形式 データ形式を変更する場合の注意
既に作成済のレイアウト定義ファイルに対してデータ形式を変更すると、定義済の情報が失われてしまいます。また、CSV形式やXML形式からデータファイル形式に変更した場合は、全ての項目について相対位置や領域長を定義しなければなりません。データ形式を変更する場合は、再度、新規作成にてCOPYライブラリやインクルードファイルから取り込みを行うことを薦めます。
画面説明 - レイアウト定義 - [一括設定]ダイアログボックス
全ての項目情報を一括して設定することができます。
項目 説明
設定メニュー 設定する内容を一覧より選択します。それぞれの機能については、メニュー選択後に説明欄を参照してください。
設定の対象 設定の対象として、入力側および出力側それぞれ指定します。設定メニューの内容、および入力/出力側のデータ形式によって、指定できないものがあります。
説明 設定メニューの各機能が表示されます。
画面説明 - レイアウト定義 - [COBOL解析オプション]プロパティーシート
COBOL資産を解析するための各種情報の設定を行います。
※ (*)がある項目は、初回起動時のデフォルト設定です。
項目 説明
ファイル種別 フォーマットのファイル種別を指定します。
項目 説明
COBOL登録集(*) COBOL85/97によるレコード記述のファイル
YPSインクルード仕様書 YPS/COBOLによるレコード記述のファイル
※ YPS/COBOLがインストールされている必要があります。
ファイル定義体 FILEによるレコード記述のファイル
解析方法 解析方法を指定します。
項目 説明
COBOL解析ライブラリ(*) COBOL解析ライブラリを使用して解析を行います。
COBOL97コンパイラ COBOL97コンパイラを使用して解析を行います。
※ COBOL97がインストールされている必要があります。
解析オプション その他の解析時情報を指定します。
項目 説明
正書法の種類 固定長 COBOL登録集の正書法の形式を、指定します。
YPSインクルード仕様書の場合、YPSインクルード仕様書からCOBOL登録集を生成し、COBOL登録集として解析します。その際、正書法は「可変長」として扱います。よってYPS/COBOLコンパイラの「環境設定(COBOL仕様)」の「レコード長」では、251を設定する必要があります。
ファイル定義体の場合、この設定は関係ありません。解析するCOBOL資産の正書法の種類を指定します。
※ ファイル種別が、"COBOL登録集"以外の場合は、"可変長"固定になります。
可変長(*)
自由
2進項目の扱い WORD(*) COBOL翻訳オプションである「BINARY」に関する設定を行います。
※ COBOL97がインストールされている必要があります。
BYTE
COPY文への付加文字列を指定する
COBOL登録集が仮原文(括弧など)を含む場合、REPLACING句の指定を行わないと正しく解析することができません。正しく解析するために、ここでCOPY文への付加文字列を指定します。指定する文字列は、COBOL文法に従って記述する必要があります。なおJOINING/DISJOINING句の指定も可能です。 YPSインクルード仕様書、およびファイル定義体の場合、この設定は関係ありません。COPY文に任意の文字列を付加する場合に指定します。 指定例) REPLACING ==()== BY ==AA==
※ ファイル種別に、"COBOL登録集"が指定された時のみ選択可能です。
集団項目の扱い 有効(*) 解析結果として集団項目をレイアウト定義に表示する場合に指定します。集団項目、反復定義の項目名を表示します。
解析結果として集団項目をレイアウト定義に表示しません。V50L20以前のバージョンのレイアウト定義と同じ表示にしたいときに指定します。
無効
画面説明 - レイアウト定義 - [C言語資産解析オプション]プロパティシート
C言語資産を解析するための各種情報の設定を行います。
項目 説明
入力 入力データ側の設定を行います。出力 出力データ側の設定を行います。int型のサイズ int型メンバのサイズを指定します。
longをチェックした場合、intはlongと同じサイズ(4バイト)と見なされます。shortをチェックした場合、intはshortと同じサイズ(2バイト)と見なされます。
構造体のアライメント 構造体を利用するアプリケーションをコンパイルした際に指定した、アライメントサイズを選択します。
→アライメントサイズ
変換仕様 文字コードの変換
コード変換と形式変換パス
MDPORTでは以下のコード体系の変換パスに対応しています。その他については他社コードの変換を参照してください。 各ファイル形式によってサポートするコード体系は異なるので注意してください。
入力/出力 シフトJIS EUC JEF JEF英小 JIS Unicode その他
シフトJIS ○ ◎ ◎ ◎ ▲ ◎ △
EUC ◎ ○ ◎ ◎ ▲ ▲ ×
JEF ◎ ◎ ○ × ▲ ◎ ×
JEF英小 ◎ ◎ × ○ ▲ ▲ ×
JIS ▲ ▲ ▲ ▲ × × ×
Unicode ◎ ▲ ◎ ▲ × × ×
その他 △ × × × × × × ○ : 変換可能◎ : CharsetMGRによる変換も可能▲ : CharsetMGRが必要△ : 他社コード変換機能× : 未サポート
MDPORTでは以下のファイル形式の変換パスに対応しています。
入力/出力 一般ファイル COBOLファイル CSVファイル XMLファイル テキストファイル
一般ファイル ○ ○ ○ ○ ×
COBOLファイル ○ ○ ○ ○ ×
CSVファイル ○ ○ × ○ ×
XMLファイル ○ ○ ○ ○ ×
テキストファイル × × × × ○
○ : 変換可能× : 未サポート
MDPORTでは各ファイル形式に対して以下のコード体系をサポートしています。
形式/コード シフトJIS EUC JIS JEF JEF英小 UCS2 UTF8 その他
一般ファイル ○ ○ ○ ○ ○ ○ ○ ○
COBOLファイル ○ ○ ○ ○ × ▲ ▲ ×
CSVファイル ○ ○ △ × × ○ ○ ×
XMLファイル ○ ○ ○ × × × ○ ×
テキストファイル ○ ○ ○ ○ ○ ○ ○ ○
○ : 変換可能△ : 出力のみサポート▲ : X項目(UTF8形式)、N項目(UCS2形式)で格納× : 未サポート
1バイト系コード変換
MDPORTで対応している1バイト系コードとして、ASCIIコード系(シフトJIS、EUC等)とEBCDICコード系(JEF)があります。EBCDIC(ASCII)には対応していません。
MDPORTでは同一コード系であっても、文字以外のコードはエラーとなります。ただし、ASCIIコード系どうしでのタブ文字(0x09)や、日本語シフト制御コード(SI/SO)はエラーとしません。
EBCDICコード系とASCIIコード系の文字変換において、特に一般のコード変換仕様と異なる点を以下に示します。
EBCDIC-ASCIIコード変換による代替文字
EBCDIC |(4F) £(4A) !(5A) ¬(5F)
ASCII ](5D) [(5B) !(21) ^(5E)
※一般のコード変換ではASCIIの"["と"!"が入れ替わっています。
英文字/カナの変換
EBCDIC(カナ)→ASCII 英大→英大、カナ→カナ
ASCII→EBCDIC(カナ) 英大→英大、英小→英大、カナ→カナ
EBCDIC(英小文字)→ASCII 英大→英大、英小→英小
ASCII→EBCDIC(英小文字) 英大→英大、英小→英小、カナ→変換エラー
2バイト系コード変換
MDPORTでの2バイト系コードの変換は、以下のいづれかの方法で行われます。
標準変換
MDPORT内部で算術式によりコード変換を行います。算術式では各コード体系がJISコード準拠とみなして1~94区のコード配置を変えるだけで、95区以降のコード変換はエラーとなり拡張文字や利用者定義文字は変換できません。また、JEFコードは’78JIS準拠のため、一部の文字(’83JISでの改定文字)について同一の文字へ変換されません。正しい文字の変換を行うなら、JEFコードを扱う場合はCharsetMGR変換を行うようにしてください。
MDPORTインストールフォルダの「sample」フォルダ配下の「JEF_SJIS.cnv」(利用者定義テーブル)を活用することによって、JEF(78JIS準拠)からシフトJISコードへ正しく変換することが可能です。
Unicodeの変換において、シフトJIS←→Unicode間の変換のみCharsetMGRを使用せずに変換が可能です。 この場合、Win32 APIを使用した変換が行われます。
CharsetMGR変換
CharsetMGRを使用してiconv変換を行います。この変換では、厳密な文字の対応付けを実現し、CharsetMGRによる外字連携を行うことができます。CharsetMGRを使用するには、変換指示ウィザードにて指定し、CharsetMGR環境設定にてiconvキーワードを指定します。
なお、1バイト系コードの変換ではCharsetMGRは使用されません。
. →CharsetMGR →変換指示ウィザード →CharsetMGR環境設定
日本語コードの検出について
シフトJISコード - 文字コードの先頭バイトにより1バイト系または2バイト系コードかの判断をし、日本語コードであることを検出します。0x81~0x9F,0xE0~0xFCで始まるコードを日本語コードとします。
EUCコード - 文字コードの先頭バイトにより1バイト系または2バイト系コードかの判断をし、日本語コードであることを検出します。0xA1以上で始まるコードを日本語コードとします。また、EUCコードの場合、0x8Fで始まるコードはコードセット3の日本語コードとみなします。
JEFコード - テキストモード変換およびデータファイル変換の混在項目(M項目)では、日本語コードへの切替制御コード(シフトコード0x28,0x38)が出現した場合に日本語コードであることを検出します(シフトコード0x29で1バイトコードに切り替わります)。データファイル変換の日本語項目では、無条件に日本語コードとして扱われます。
変換仕様 他社コードの変換
他社コードテーブル変換
他社コード変換機能を使用する場合は、外付けのコードテーブルを参照し、以下の富士通以外の他社漢字コードとシフトJISコード間のコード変換を行います。インストール時に他社コードテーブルを選択していない場合は利用できません。 変換方法は、SIMPLIA/TF-MDPORTの変換指示ウィザードの入出力ファイル情報(3・4/5)にて、以下の指定を行います。 コード名 コード体系 コードIDIBM漢字コード その他 IBM日立KEISコード その他 KEIS
日本電気JIPS(E/J)コード その他JIPEJIPJ
日本電気AVX日本語コード その他 AVX
なお、対する相手側のコード体系はシフトJISでなければなりません。
IBM漢字コード
- IBM日本語コードは、83JIS対応版を対象としています。変換対象文字はJIS規格の範囲です。
日立KEISコード
- 日立KEISコードでは、83JISに準拠した規則的な変換を行います。83JISコード体系の範囲外については変換できません。
日本電気JIPS(E/J)コード
- JIPS(E),JIPS(J)コードでは、83JISに準拠した規則的な変換を行います。83JISコード体系の範囲外については変換できません。
日本電気AVX日本語コード
- 日本電気AVX日本語コードでは、83JISに準拠した規則的な変換を行います。83JISコード体系の範囲外については変換できません。
. →他社コード変換機能
変換仕様 文字列の変換
英数字、日本語、混在の各項目属性は、文字列として変換を行います。また、テキストモード変換も文字列(混在属性扱い)変換です。
英数字/英数字日本語混在項目
- レイアウト定義にて属性を“X”で定義した英数字項目では、内容が全て1バイト系文字(半角カナ含む)としてみなし、1バイト系のコード変換を行います。 EBCDIC系またはシフトJISからEUCコードへ変換する場合、1バイト系JISカナが存在すると、1文字あたりのバイト長が異なるため、変換後データ長が変動し出力領域を溢れる場合があります。溢れを防ぐ方法としては、レイアウト定義の出力側の領域長を増やす方法があります。出力がCSVやXMLの場合は、上記の限りではありません。 JISコードの場合、半角カタカナが存在すると切り替え制御コードがあるため、変換後データ長が変動し出力領域が溢れる場合があります。溢れを防ぐ方法としては、同様にレイアウト定義の出力側の領域長を増やしてください。 UCS2コードの場合、1バイト系のコードは全て2バイト文字に変換されるため、変換後データ長が変動し出力領域が溢れる場合があります。溢れを防ぐ方法としては、同様にレイアウト定義の出力側の領域長を増やしてください。
- レイアウト定義にて属性を"M"で定義した英数字日本語混在項目では、不定に英数字/日本語文字が混在しているとみなし、各コードの変換を行います。 JISコードとJEFおよび他社コードは、日本語制御コードが存在しないと、日本語文字の開始/終了を認識できません。
日本語項目 - レイアウト定義にて属性を"N"で定義した日本語項目では、内容が全て日本語文字としてみなし、2バイト系変換が行われます。 JISとJEFおよび他社コードでは、本領域中に日本語切替制御コードが存在してはいけません。EUCコードのコードセット3の文字は、cobolEUC(2バイト/文字)で表現されます。 UCS2文字は2バイト文字、UTF8の文字は1~3バイト文字で表現されます。
後続ブランクカット処理
MDPORTでの文字列変換では、出力側領域長に対する桁溢れを識別する機能があり、末尾の空白文字が溢れても桁溢れの対象としません。そのため、変換前に入力文字列から末尾の空白文字をカットします。
(1) 入力文字列の末尾から属性に応じた空白文字をカットします。
(2) カットした後の文字列を対象に変換処理を行います。
(3) 変換結果の文字列の長さが出力領域長を越えた場合は桁溢れエラーとし、溢れ部分をカットします。領域長に満たない場合は、出力属性に応じた空白文字を埋めます。
(4) レイアウト定義においてX項目の情報長に奇数を指定した場合、UCS2BigまたはUCS2Littleに変換すると1バイト分満たない、または溢れます。 その1バイト分の領域には、それぞれ半角空白の1バイト目(Big:00 20、Little:20 00)を埋めます。
(5) レイアウト定義においてN項目の情報長には偶数のみ指定可能なので、UTF8に変換して変換後の情報長が奇数になる場合、1バイト分満たない、または溢れます。 その1バイト分の領域には、全角空白の1バイト目(E3 80 80)を埋めます。 また、指定した情報長によっては2バイト満たない、または溢れます。その場合は、全角空白の先頭2バイト(E3 80 80)を埋めます。
※ テキストモード変換や出力がCSV形式の場合は出力領域長を持たないため、(3)の処理は行われません。ただし、最大レコード長を越えた場合は溢れエラーとなります。
cobolEUCコードの対応
UXP/DS COBOLでは、EUCコードのG3文字(コードセット3)を2バイトの16ビットで扱う機能(cobolEUCコード)があります。MDPORTではcobolEUCコード変換に対応しており、日本語属性項目のみG3文字は2バイトのcobolEUCコードで扱います。
英数字、日本語、混在の各項目属性は、文字列として変換を行います。また、テキストモード変換も文字列(混在属性扱い)変換です。
JISコード変換におけるシフトコードの扱い
- 入力ファイルに指定可能なシフトコードは、78/83/90JISです。
- 出力ファイルには83JIS準拠で出力します。
NULL(0x00)の扱い
MDPORTでは X'00' は文字列として扱わないため変換エラーとなります。すべての変換パスにおいてエラーとなり、代替文字に書き換わります。
[補足] 代替方法として、利用者定義テーブルを用いて、一部回避することが可能です。
------------ # jef sjis 00:00 0000:0000 ------------
シフトコードの出力仕様
JEFや一部の他社コードを扱う場合、テキストモード変換およびデータファイル変換の混在項目の出力時にシフトコードを出力します。MDPORTは通常、1バイト系コードから2バイト系コードの切替、2バイト系コードから1バイト系コードの切替時にシフトコードを出力します。以下、特殊なケースに関するシフトコードの出力仕様をまとめています。
- 2バイトコードから開始するデータを変換する場合、テキストモード変換およびデータファイル変換の混在項目の出力時には、1バイト系コードから2バイト系コードの切替シフトコードを出力します。
- 2バイトコードで終了するデータを変換する場合、テキストモード変換およびデータファイル変換の混在項目の出力時には、2バイト系コードから1バイト系コードの切替シフトコードを出力します。ただし、シフトコード分のみ領域長が溢れるケースでは、MDPORTはシフトコードを出力しません。また、2バイト系シフトコード出力時に1バイト分領域が溢れる場合は、半角空白を出力します。
変換仕様 数値の変換
数値属性では以下のように符号を意識して変換します。
CSV形式及びXML形式出力での符号の付加
CSV形式及びXML形式へ出力する場合、符号ありの項目では先頭に“+”または“-”が付加されます。
CSV形式及びXML形式入力での符号の識別
CSV形式及びXML形式から入力する場合は、先頭または末尾に“+”または“-”があると符号と認識します。符号文字が無い場合は正数値とみなします。
数値エラー時の出力結果
数値部が有効な値でなかった場合、数値エラーが発生します。外部10進および数値文字列(CSV形式及びXML形式)の項目属性の場合は、エラーの発生した桁の下位4ビットで数値を認識します。例として、文字“A”(0x41)は“1”と認識し、文字“J”(0x4A)は9以上のため“0”と認識します。それ以外の属性では数値エラーが発生した場合、項目全体を0として処置します。なお、ケースによっては必ずしもこのように処置されるわけではありません。
EBCDICコード系とASCIIコード系との数値項目では、外部10進(USAGE DISPLAY指定)の数値データ属性において、符号部の内部表現が異なります。下表に外部10進におけるEBCDIC/ASCIIコード系の相違を示します。 内部10進では、F:絶対値、C:正、D:負の演算符号をあらわし、EBCDIC/ASCII共通です。
外部10進におけるEBCDIC/ASCIIコード系の相違
外部10進での相違点内部表現(16進)
EBCDICコード ASCIIコードゾーンビット (4ビッ
ト) F 3
正の符号ビット (4ビット) C 4
負の符号ビット (4ビット) D 5
[補足] 入力の数値項目(外部10進、内部10進)の属性が符号付きの場合において、外部10進のゾーンビットや内部10進の絶対値符号や正/負以外のビットを検出した場合、MDPORTは正の符号と判断します。
例: EBCDIC(DATA) → ASCII(DATA) 符号付外部10進[ S9(4) ]の変換
入力データ: 0xF0F0F0F0 → 出力データ: 0x30303040
桁溢れが発生した場合
データファイル形式への変換で、出力側桁数に有効値が入りきらない場合は、溢れエラーを出力し右詰め(小数
点合わせ)で出力されます。
[制限事項] 2進数、COMP-5属性数値において、18桁を超えるデータが入力の場合は、溢れエラーを出力せず右詰で出力されます。
変換仕様 マスク機能
実運用データを元にマスタデータファイルから、マスク機能を使用しデータを変換します。
取扱要注意情報の変換について
実運用データをマスタデータファイルに定義した内容で、マスクオプションにかけることにより、レイアウト定義ファイルで指定した項目が置き換えられます。 置き換えることによりマスク出力ファイルには実運用データと違う情報が出力され個人情報を特定することが不可能になります。
マスタデータファイル作成手順
手順 注意点
1、 各変換テーブル項目名の入力
-テキストエディタの場合、カンマ区切りでデータを入力します。2、 データ件数入力
3、 データ件数分情報を入力
4、 作成したデータを保存します -保存時の拡張子は"csv"です。 作成したマスタデータファイルはインストールフォルダに保存されます。
備考
-マスタデータファイルは秘匿対象項目数と同じ数だけ作成します。
-テキストエディタの場合、文字コードは「Shift-JIS」とします。 (「Shift-JIS」ではない場合、マスタデータを入力データの文字コードに内部で交換します)
-マスタデータファイルの命令規則は「(レイアウト定義画面に表示される)項目名」で、拡張子は"csv"です。
-2つ秘匿対象項目がある場合は関連を考慮してマスタデータファイルを作成します。 住所の場合、県名とその県内にある市区町村名と対応させて作成します。 (例) 東京都 , 大田区 東京都 , 渋谷区 神奈川県 , 川崎市 神奈川県 , 平塚市
データの一部だけ変換する場合
マスク変換を行う場合、拡張設定の"マスクする"のチェックをはずすと、拡張項目から"M"表示が消えるため、マスク変換は行われません。
抽出仕様 レコード抽出
ここでは、レコード抽出処理に関する仕様について説明します。
- 条件値の文字コード変換(文字型属性データの場合) - 条件値の数値変換(数値型属性データの場合) - [補足]複数のデータ条件を設定している場合の判定規則
なお、抽出仕様に関する制限・注意事項については、レコード抽出機能における制限・注意事項を参照してください。
条件値の文字コード変換(文字型属性データの場合)
文字型属性のデータを条件にレコード抽出処理を行う場合、「データ条件設定」ダイアログで設定した条件値を入力ファイルのコード体系へコード変換を行うことによって、入力ファイルのデータと条件値の比較を行います。条件値のコード変換は以下の規則で行われます。入力ファイルのコード体系がシフトJIS、または16進指定の場合、コード変換は行いません。 ※シフトJISから入力ファイルのコード体系へのコード変換を実施します。
入力ファイルのコード体系 CharsetMGR指定なし CharsetMGR指定あり(*)
シフトJISコード変換未実施(条件値の指定データを利用します)
EUC MDPORT標準変換[シフトJIS → EUC]
CharsetMGR変換[sjisms → EUC]
JEF MDPORT標準変換[シフトJIS → JEF]
CharsetMGR変換[sjisms → JEF]
JIS --- CharsetMGR変換[sjisms → JIS]
Unicode(UCS2/UTF8)
MDPORT標準変換[シフトJIS → Unicode]
CharsetMGR変換[sjisms → Unicode]
他社コード MDPORT標準変換[シフトJIS → 他社コード] ---
(*) CharsetMGR指定の詳細は「CharsetMGR環境の設定」ダイアログの変換元コードに従います。
文字コード変換後は、演算子指定に従い抽出判定処理を行います。抽出判定の仕様について説明します。
条件値の文字コード変換(文字型属性データの場合)
□英数字/日本語/混在/文字列(CSV,XML)項目完全一致[不一致] 条件値と入力ファイルデータの領域長と値が一致した場合に完全一致とみなします。前方一致 条件値の領域長分の値が入力ファイルデータと一致した場合に前方一致とみなします。
□CHAR型項目完全一致[不一致] 条件値と入力ファイルデータ(文字列の終了を表すNULLは含まない)の領域長と値が一
致した場合に完全一致とみなします。前方一致 条件値の領域長分の値が入力ファイルデータと一致した場合に前方一致とみなします。
□可変長文字列項目完全一致[不一致] 条件値と入力ファイルデータ(RDW内の有効領域長分)の領域長と値が一致した場合に
完全一致とみなします。前方一致 条件値の領域長分の値が入力ファイルデータと一致した場合に前方一致とみなします。
□可変長日本語項目完全一致[不一致] 条件値と入力ファイルデータ(RDW内の文字数分)の領域長と値が一致した場合に完全
一致とみなします。 ※UTF8形式のデータの場合、RDWは領域長分として扱います。
前方一致 条件値の領域長分の値が入力ファイルデータと一致した場合に前方一致とみなします。
条件値の数値変換(数値型属性データの場合)
数値型属性のデータを条件にレコード抽出処理を行う場合、入力ファイル内の数値データを「データ条件設定」ダイアログで設定した条件値と比較できる形式(数値データ)に変換してから、入力ファイルのデータと条件値の比較を行います。数値データへの変換は以下の規則で行われます。 数値変換後は、演算子指定に従った抽出判定処理を行い、レコード抽出を行います。
符号なし属性 常に正の値として扱います。
符号あり属性 負の符号を検出した場合、負の値として扱います。それ以外は、正の値として扱います。
抽出対象外
外部10進/内部10進 ・数値部に数値以外のデータが格納されている場合 CSV/XML形式 ・正負の符号/小数点/数字以外のデータが格納されている場合 ・有効桁数が18桁を超えるデータが格納されている場合 ・先頭以外に正負の符号の存在、小数点が複数検出された場合
条件値の数値変換(数値型属性データの場合)
[補足]複数のデータ条件を設定している場合の判定規則
2つ以上の判定条件を設定している場合の判定規則を例で説明します。 【データ条件の設定例】
No 連結条件 項目名 演算子 条件値 16進指定
1 -- 製品名 =(完全一致) バーコードリーダ ×
2 OR 製品名 ≒(前方一致) 高速 ×
3 OR 単価 > 10000 ×
4 AND 単価 ≦ 90000 ×
5 OR 顧客名 ≒(前方一致) 8FAC97D1 ○
6 OR 顧客名 ≒(前方一致) 8E52;89BA ○
データ条件の判定順番1. No.1のデータ条件の判定を行う。2. No.2のデータ条件の判定を行う。3. No.1とNo.2のデータ条件の判定結果をORする。4. No.3のデータ条件の判定を行う。5. 3.の判定結果とNo.3のデータ条件の判定結果をORする。6. No.4のデータ条件の判定を行う。7. 5.の判定結果とNo.4のデータ条件の判定結果をANDする。8. No.5のデータ条件の判定を行う。9. 7.の判定結果とNo.5のデータ条件の判定結果をORする。
10. No.6のデータ条件の判定を行う。11. 9.の判定結果とNo.6のデータ条件の判定結果をORする。
これが、最終的なレコード抽出のデータ条件となります。上記順序を式で表現すると以下のようになります。(((((製品名=バーコードリーダ) OR (製品名≒高速)) OR (単価>10000)) AND (単価≦90000)) OR (顧客名≒8FAC97D1)) OR (顧客名≒8E52;89BA)
[補足]複数のデータ条件を設定している場合の判定規則
MDPORTで扱えるファイル・データ形式
MDPORTで変換できるファイルやデータ形式には、以下のような制限があります。
定量制限
内容 制限値 備考
最大レコード長 32767バイト
最小レコード長 1バイト
データファイル変換における最大項目数 3000
データファイル変換における最大レイアウト数 100
文字データ項目の最大領域長 32767バイト
数値項目の最大桁数 18桁 小数部桁数含む
反復階層 7 繰り返しの入れ子
COPYライブラリおよびインクルードファイルの解析での最大項目数 3000 集団項目含む
項目名の最大長 60バイト 日本語では30文字
変換エラー最大出力可能件数 9999件出力件数の指定上限は9999件ですが、 無制限出力の指定を行うと、メモリを許す限り出力可能
XMLファイル最大出力可能件数 100000件 ファイルシステムにより異なる [ COBOLファイルの最大入出力ファイルサイズについて ] COBOLファイルを扱う場合、扱えるCOBOLファイルの入出力ファイルサイズは使用するCOBOLやCOBOLランタイムシステムに依存します。ファイルサイズの関係はソフトウェア説明書を参照してください。 扱えない形式
- 可変長レコード属性の汎用機やオフコン上のファイル(一般ファイル)
- 入力がXML形式で構成されるマルチフォーマットのファイル
変換指示ファイルにおける制限・注意事項
MDPORTでは変換指示ウィザードで指定した内容を、変換指示ファイルとして保存することができますが、以下の制限があります。
- 変換指示ファイルは、レイアウト定義ファイルや入出力ファイルをフルパス名で情報管理しているため可搬性がありません。例えば、変換指示を保存した時のレイアウト定義ファイルが存在しない、または移動されていると、変換指示ファイルを開いた時にエラーが発生します。
COBOLファイルにおける注意事項
MDPORTでCOBOLファイルの入出力を行うにあたって、以下の注意事項があります。
- COBOLファイルにおける排他制御は行われません。変換中は他のアプリケーションから対象のファイルを更新しないようにしてください。
- 重複キーなしと指定した索引ファイルへ出力する場合、重複したキー値のレコードが存在するとアクセスエラーとなり変換処理は中断されます。事前にキーの重複が無いことを確認してください。
- COBOLファイルから入力を行う場合、変換指示の設定と実際のファイルとで、編成・レコード属性・レコード長が異なると正常に処理されません。ただし、索引ファイルからの入力の場合は、ファイルよりレコード情報を取得するため、変換指示で設定した情報が誤っていても無視されて正常に処理されます。
レイアウト定義機能にて取り込める既存資産
レイアウト定義機能では、COBOLのCOPYライブラリやC言語のインクルードファイルを解析しレイアウト定義ファイルを生成する機能があります。ただし、解析には以下のような制限があります。
COPYライブラリ
- COBOLの文法上、正しく記述されていないと解析処理は保証されません。
- 扱える項目数は、集団項目を含めて3000迄です。これを越える場合は、項目を結合する等してCOPYライブラリを加工してください。
- 01レベルが複数ある場合は、最初に出現する01レベルのレコードしか解析されません。
- 以下の記述がある場合は、正しく解析できません。COPYライブラリを加工してください。
- レベル番号が01~49以外の項目。
- SYNCHRONIZED(SYNC)句。
- OCCURS DEPENDING ON句。
- REDEFINES句の記述は無視され、再定義の項目は解析対象となりません。なお、再定義される項目は解析対象となります。
- MDPORTでは以下の項目属性変換に対応していないため、解析時に英数字項目属性として扱います。
ポインタ項目、ブール項目、指標データ項目、浮動小数項目
- 数字編集項目・英数字編集項目は英数字項目属性として解析されます。
- 以下の記述は無視されて解析されます。
KEY IS句、INDEXED BY句、JUSTIFIED句、BLANK句、VALUE句、CHARACTER TYPE句、PRINTING POSITION句、BASED ON句
- COBOL解析ライブラリを使用する場合、COPY文でREPLACING指定で解決するような記述がある場合は解析できません。
YPSインクルード仕様書
- YPS/COBOL文法上、正しく記述されていなければなりません。
- 解析する前にYPS/COBOLコンパイラの「環境設定(COBOL仕様)」の「レコード長」で、251を設定しておく必要があります。
ファイルの定義体
- FILEで正しく作成されたファイル定義体でなければなりません。 インクルードファイル
- C言語の文法上、正しく記述されていないと解析処理は保証されません。
- レイアウト定義ファイルの生成対象は、インクルードファイル中の最初の構造体の定義のみです。
- 解析はインクルードファイル全体に対して行われますので、全体の記述が解析可能な内容である必要があります。
- 解析可能な字句は以下の通りです。
struct, signed, unsigned, char, int, short, long, float, double, *(ポインタ), [](配列), {}(構造体定義), /* */(コメント), //(コメント), <構造体名>, <メンバ名>
- 以下の記述があると解析できません。上記の字句を使った記述にインクルードファイルを変更してください。
- #includeや#defineといったマクロ記述。
- typedefによる型宣言。
- 構造体定義中の、別の構造体の定義や構造体型のメンバ(ポインタも含む)。
- 構造体の定義以外の構文(コメントは可)。
- char a[N] のようなchar型の1次元配列は、領域長Nbyteの1つの項目として解釈されます。char b[M][N] と記述された場合は、領域長Nbyteの項目のM回繰り返しと解釈されます。
- 配列やポインタは7次元までです。それ以上は切り捨てます。
- double型やfloat型は同じ長さのchar型配列に置き換わります。
- アライメントにより項目間に隙間が発生した場合、その部分には@DUMMYという項目が追加されます。
- ポインタの項目の場合、項目名の先頭に*が付加されます。
- 解析時にエラーが発生した場合、解析エラーファイルにエラー情報が出力されます。 レイアウト定義直接入力- 空白付きや後続空白が存在する項目名を入力した場合の動作は保証していません。
プレビュー機能における制限・注意事項
プレビュー機能は、各種変換指定の整合性の概略を確認するための機能です。表示内容にあたっては以下の制限事項があるため、厳密な文字変換の整合性や正確なデータ内容の確認には適していません。
- 出力ファイルの形式が一般ファイルの場合に活用してください。CSV出力では引用符や区切り文字のコードも表示されるため、プレビュー機能には適していません。XML出力では、改行コードが存在しないためプレビュー表示結果はあまり意味をもちません。 CSVやXMLの結果は、変換結果を各種アプリケーションを利用して確認することを薦めます。
- 表示されるのは先頭レコードから100件分までです。
- プレビュー機能では、出力ファイルの内容をそのままシフトJISコードとして表示するため、出力側コード体系がシフトJISコードでないと文字を確認できません。ただし、16進表示での確認としては利用できます。
- プレビュー上のフォントは「MS ゴシック」を使用しています。
- 出力内容に未定義の利用者定義文字コードが存在すると、実際のデータが2バイトであるのに対し、表示上は1バイトの“・”が表示されて以降の文字が詰められてしまいます。よって、表示データ相対位置と上段カラムおよび16進表示との間でズレが生じますので注意してください。
- 改行コード等のキャラクタ以外のコードは、“・”で表示されます。
変換エラー表示機能における制限・注意事項
変換エラー表示機能における制限を以下に示します。
- 変換エラー表示を行う際、変換エラーの格納先に変換エラーファイルが存在しないと表示できません。
- 外部ビューアプログラムを任意に設定した場合、コマンドラインに変換エラーファイル名を設定して起動されます。このインタフェース以外のプログラムだと正常に実行されません。
CSV形式で扱える引用符・区切り文字
CSV形式で扱える引用符・区切り文字を、以下のASCIIコード表に示します。
ASCIIコード表
\ 0 1 2 3 4 5 6 7
0 SP 0 @ P ` p
1 ! 1 A Q a q
2 " 2 B R b r
3 # 3 C S c s
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C , < L ¥ l ¦
D - = M ] m }
E . > N ^ n ̃
F / ? O _ o
■:使用可■:使用不可注1) 引用符文字と区切り文字を同一コードで指定した場合、変換結果は保証されません。注2) 引用符文字を使用しない文字項目及び数値項目に、区切り文字と同一の文字が存在する場合、変換結果は保
証されません。注3) 0x09の指定方法に関しては、「MDPORT変換指示ウィザード[CSV詳細設定ダイアログボックス]」 を
参照してください。注4) コード体系でunicodeコード(UCS2)を指定した場合は、上記ASCIIコードをunicodeコード(UCS2)に変換され
た文字になります。 例)カンマ( , :0x2E)の場合、UCS2は(Big:00 2E、Little:2E 00)となる
XML形式変換における制限・注意事項
XML形式変換における制限・注意事項を以下に示します。
- XML形式から他形式への変換は評価用機能です。XMLファイルのサイズが大きい場合(複数レコード/ファイルの構成)、読み込み時にエラーが発生したり、処理性能が劣化します。
- XML形式から他形式への変換において、扱えるコードはShiftJIS範囲内に限られます。ShiftJIS範囲外のコードを変換する場合、代替文字「・(Midddle Dot)」に変換されます。変換エラーは出力されません。
- 基本的に、Valid XML(正当:DTDを必要とする)ファイルを対象としています。
- Well-formedness XML(適正:DTDを必要としない)ファイルでも構造が明確であるものは変換可能です。
- Fujitsu XML Libraryで読み込むことの出来ないXMLファイルは扱えません。
- レイアウト定義でValid XMLファイルの構造を表現できないXMLファイルの読み込みは出来ません。
DDL文生成における制限・注意事項
DDL文生成における制限・注意事項。- COBOL言語の集団項目 テーブル定義では階層構造には対応していない為、階
層が【0】以外の項目はテーブル定義に含みません。- 文字型におけるCSV形式
XML形式時の桁指定について 文字型では、桁数を指定する必要がありますが、形式がCSV形式、XML形式の場合、桁数を指定する事が出来ません。 この場合、1桁をデフォルトとしてDDL文を出力します。
- 日本語項目について 日本語項目(N)、可変長日本語項目(Y)の場合、出力されるDDL文の桁数は『文字数』であるため、領域長の半分の値となります。
属性とRDBMSのデータ型の変換表
レイアウト情報の属性.
RDBMSのデータ型. 備考
データ型 略語 SymfoWARE Oracle SQLServer
英数字 X
.
VARCHAR VARCHAR2 varchar
.
1バイト系キャラクタの格納形式
日本語 N NCHAR NCHAR nchar 日本語(2バイト系)キャラクタのみの格納形式
混在 M VARCHAR VARCHAR2 varchar 1/2バイト系キャラクタ混在の格納形式
char型 C CHAR CHAR char ヌル(NULL)で終了する文字列
可変長文字列 R VARCHAR VARCHAR2 varchar 先頭2バイトに有効データ長を持つ文字列(※)
可変長日本語 Y NCHAR VARYING NVARCHAR2 nvarchar 先頭2バイトに有効データ長を持つ日本語属性の文字列(※)
外部10進数 Z NUMERIC NUMBER numeric COBOL独自のゾーン形式
内部10進数 P NUMERIC NUMBER numeric COBOL独自のパック形式
2進数 B NUMERIC NUMBER numeric COBOL独自のバイナリ形式
COMP-5属性 5 NUMERIC NUMBER numeric COBOL独自のバイナリ形式(※)
short型 S INTEGER INTEGER int16ビットで表現されるバイナリ形式(※) -32,768~32,767
long型 L INTEGER INTEGER int32ビットで表現されるバイナリ形式(※) -2^31~2^31-1
数値文字列 V NUMERIC NUMBER numeric数値をキャラクタ表現した形式(符号や小数点も文字で表現される)
※:エンディアン指定により内部形式が異なります。Windows上では、リトルエンディアン形式です。
レコード抽出機能における制限・注意事項
レコード抽出機能における制限・注意事項を以下に示します。
「データ条件設定」ダイアログの起動
「データ条件設定」ダイアログで条件を設定した後に、レイアウト定義ファイルを変更した場合は、データ条件の確認を必ず行ってください。一旦、データ条件を削除してから再設定することを推奨します。
以下の機能を利用している場合、レコード抽出は行えません。ダイアログ起動時にエラーメッセージを表示します。バッチ機能やコマンド機能を利用してレイアウト定義ファイルを指定した場合は、データ条件とレイアウト定義のチェックは行われないため、正常なレコード抽出が行われない可能性があります。 ※コマンド機能はMDPORT Pro固有機能です。
- 入力ファイルのデータにヌル表示域を含んでいる場合 「レイアウト定義機能」→「基本情報」ダイアログ→「各項目のヌル表示域を設定」チェックボックス(入力側)を指定している場合
- 入力ファイルのバイナリデータをビッグエンディアンで扱う場合 「レイアウト定義機能」→「基本情報」ダイアログ→「バイナリをビッグエンディアンで扱う」チェックボックス(入力側)を指定している場合
「データ条件設定」ダイアログ
- 同一項目名が複数存在する項目に対して条件値を指定した場合、レコード抽出では最初に検索された項目名を対象に処理を行います。レコード抽出を行う場合は、レイアウト定義の項目名を一意にしてください。
- レイアウト定義内の項目名に空白やカンマを指定している場合、レコード抽出を行うことはできません。
- 条件値で入力可能な領域は150バイトのため、150バイトを越えるデータ項目に対する完全一致は行えません。前方一致で代用してください。
- Windowsのカット&ペースト機能等を利用して条件値に文字以外のコードを設定した場合、レコード抽出の動作は保証しません。制御文字を検出したい場合は16進指定を利用してください。
- 反復項目に対して条件値を指定した場合、レコード抽出では1回目の反復項目を対象に処理を行います。反復項目に対するレコード抽出を行う場合は、レイアウト定義で反復項目分展開して定義する等の対処を行ってください。
- 数値型項目の16進指定は行えません。
変換結果ファイルと抽出漏れファイル
- 複数ファイルへ出力する(1レコード/1ファイル)場合、抽出対象外のレコード(ファイル)は出力されません。その他の出力形式では、抽出対象レコードが1件もない場合、空の変換結果ファイル(0バイト)が作成されます。ただし、CSVの項目ヘッダ出力指定やXMLのルートタグやテンプレートを指定している場合は、それらの情報が出力されます。
- 対象となる入力ファイル形式が索引ファイル、XMLファイルの場合、抽出漏れファイルを指定していてもファイルは作成されません。
- 対象となる入力ファイルが複数の場合、抽出漏れファイル出力は未サポートです。最後に処理された入力ファイルに対する抽出漏れレコードのみ出力します。
条件値の文字コード変換(文字型属性データ)
入力ファイルの文字型属性項目の文字の扱いや構成によって、文字型データのレコード抽出処理を行うこと(データ条件と入力ファイルのデータを一致させることができない)ができません。以下のような文字を含んでいる場合は、16進指定を利用したレコード抽出を行ってください。
- コード体系がJISで、JIS78、83、90の混在データを含んでいる場合、レコード抽出は行えません。条件値の文字列はJIS83形式に変換します。
- コード体系がEUCでJIS8形式の半角カナを含んでいる場合、レコード抽出は行えません。条件値の半角カナはコードセット2の2バイト/文字に変換します。
- コード体系がEUC(U90)で日本語項目(COBOL-EUC)を含んでいる場合、レコード抽出は行えません。条件値の日本語項目はコードセット3の3バイト/文字に変換します。
- 入力ファイルのデータ項目内に制御コードが存在する場合、レコード抽出は行えません。(CHAR型項目の終了を表すNULLやシフトコードへは対応しています。)
条件値の数値変換(数値型属性データの場合)
- ファイル形式がCSV/XMLの場合、NULLデータは0と判断します。
- 外部10進/内部10進項目の数値データの符号部は、負の符号部のみ厳密に判断します。それ以外は正の符号と判断します。(符号なしデータは、常に正と判断します。)
- 条件値の数値変換では桁数の厳密なチェックを行わないため、入力ファイル内の数値データが異常であっても、正常データと判断して数値変換を実施します。その結果、期待する抽出を得られない可能性があります。
- [例] PIC 9(6) COMP3. 入力データ(16進形式) : 1234567C の場合、抽出では+1234567(7桁)の数値と解釈します。
マスク機能における制限・注意事項
マスク機能の制限・注意事項を以下に示します。 - マスク機能とユーザ拡張ルーチンを同時に呼び出すことは出来ません。
- マスク対象の項目属性とマスタデータファイルに定義されているマスク値の属性の整合性はチェックはしません。
これにより、マスク機能によって日本語項目属性の項目が半角英数字に置き換えられる場合があります。 (これは、テストデータとしてイレギュラーなデータを生成するような使用方法を想定しています。)
項目属性に対して明らかに不正指定が使用された場合 →レイアウト保存時にチェックしダイヤログにてエラーを通知し、マスク変更を行いません。
- マスタデータファイルはSJISコードで記述し、Excelで編集可能な範囲の文字を記述できるものとします。
- データ整合性は、ファイル内でのみ有効です。 そのため、複数ファイルに同一項目名のデータが存在しても同一の値でマスクされるとは限りません。
- どちらのケースも入力データと出力データは同一ではない(重複していない)データとして扱われます。
入力データ(マスク前) 出力データ(マスク後)
小山_田 小山
小_山 小山
←入力データと出力データは異なった文字列のため問題なし。
←空白をつめた場合、入力データと出力データは同一内容になってしまう。(制限)
※"_"は空白(プランク)を表しています。
- マスタデータに、入力データに存在するデータが含まれていた場合、重複しないデータ選択のためリトライするが、マスタデータの内容によっては、入力データと同一のデータが出力されることがあります。(その場合、警告メッセージを表示します。) ※マスタデータには、入力データを含まないデータで作成する必要があります。
マルチレイアウト機能における制限・注意事項
マルチレイアウト機能の制限・注意事項を以下に示します。 - 入力がXML形式のレイアウトを扱う事は出来ません。
- 可変長マルチフォーマット(全レイアウトのレコード長が異なる)のファイルの場合、ファイル属性は可変長しか選択できません。
- 入力が一般ファイル形式の場合、データの途中で改行(0x0d0a/0x0a)が存在すると、そこをレコードの区切りと見なされ、意図した変換が出来ません。
- マルチフォーマットのCOBOLファイルを取り扱う為には、COBOLランタイムシステムが可変長の入出力に対応している必要があります。
- 条件の最小値・最大値の文字列指定(ダブルクォーテーションで括る指定)で比較される文字コードは、SJIS固定となります。
- 新規レイアウトの挿入及び新規レイアウトの追加で、既存レイアウトの取込を行う場合、入出力のデータ形式を、既存のレイアウト定義に合わせる必要があります。 また、既存COBOL資産の取込を行う場合も、入出力のデータ形式は既存のレイアウト定義に合わせる必要があります。
同一コード無変換出力機能における制限・注意事項
同一コード無変換出力機能の制限・注意事項を以下に示します。 - 入力領域長>出力領域長の場合、入力データは出力領域長のサイズに切り捨てられます。その際、溢れエラー
は出力されません。
- 入力領域長<出力領域長の場合、余った領域にはNULLが挿入されます。
- 可変長文字項目について - 入力の場合、有効データ長は入力領域長となります。 - 出力の時、有効データ長は、 ・入力形式がDATA形式の時は、入力領域長 ・入力形式がCSV形式の時は、NULLの位置までのデータ長 (但し、入力領域長>(出力領域長-2)の場合、入力データは(出力領域長-2)の サイズに切り捨てられます。その際、溢れエラーは出力されません。 入力領域長<(出力領域長-2)の場合、余った領域にはNULLが挿入されます。) がそれぞれ指定されます。
- 数値項目に関しては、通常通りの変換を行います。
- XML形式の入出力については、未サポート。
CharsetMGRの文字コード変換表のカスタマイズ機能を使用した場合の制限事項
CharsetMGRの文字コード変換表のカスタマイズ機能を利用し、利用者固有の文字コードの対応関係を定義(以下、「カスタマイズ定義」と表記します)した環境において、MDPORTでCharsetMGRを利用した変換(SJISと他社コードの変換および変換元または変換先がUnicodeの変換)を行う場合、以下の制限があります。 文字コード対応関係を定義する場合はMDPORTの利用者定義変換テーブルを使用することをお薦めします。 - CharsetMGRは変換依頼した文字が未定義文字の場合、全角アンダースコアを返しますが、MDPORTでは変換
先コードの全角アンダースコアを変換エラーと判断します。このためカスタマイズ定義で変換先に全角アンダースコアを定義した場合、変換元に定義したコードに対して、変換エラーを出力します。また変換元がUnicodeの場合に、変換元に全角アンダースコアを定義した場合、その定義は変換結果に反映されません。
UCS2とSJISMSの変換の例で説明します。 カスタマイズ定義: DEFCDPR SJISMS UCS2 A :FF3F ※ AはSJISMSの任意の1文字を示します "FF3F"はUCS2の全角アンダースコア"_"です
sjisms→Unicodeの変換を行うと、sjisms(A)は変換エラーとなります。 Unicode→sjismsの変換の場合、カスタマイズ定義は反映されません。Unicode"FF3F"はsjisms"8151"(全角アンダースコア)に変換されます。
上記カスタマイズ定義でのMDPORT変換 SJISMS Unicode A → 変換エラーになる Unicode SJISMS "FF3F" → "8151"(全角アンダースコアは全角アンダースコアになる)
- ChasetMGRを利用した変換で変換元がUnicodeの場合にカスタマイズ定義を行うと、その定義が反映される場合とされない場合が起こります。また変換先に定義したコードに対応するUnicodeの文字が変換エラーとなります。
UCS2とSJISMSの変換の例で説明します。 カスタマイズ定義: DEFCDPR UCS2 SJISMS A’:A ※ A、A’は指定のコードの任意の1文字を示します。また ChasetMGRのUCS2とSJISMSの文字コード変換表にA→A、A’→A’の対応関係があるとします。
既にA→Aの対応関係がある文字に対してA’→A のように N:1 となるようなカスタマイズ定義を行いUnicode→sjismsの変換をするとUnicode(A’)は定義が反映されsjisms(A)に変換される場合と定義が反映されずsjisms(A’)に変換される場合があります。また、Unicode(A)は変換エラーとなります。
上記カスタマイズ定義でのMDPORT変換 Unicode SJISMS A’ → Aになる場合とA’になる場合がある A → 変換エラーになる
用語集
*項目名
ポインタ型の項目の場合、項目名の先頭に'*'が付加されます。 レイアウト定義が生成される際、無変換が指定されます。 また、データ形式がデータファイル形式からCSV形式に変更された際にはこの項目の属性は"なし(-)"に変更されます。
@DUMMY
アライメントWORD_ALIGNMENTによる項目間の隙間に対応させた項目です。 レイアウト定義が生成される際、無変換が指定されます。 また、データ形式がデータファイル形式からCSV形式に変更された際にはこの項目の属性は"なし(-)"に変更されます。
CharsetMGR
富士通標準コード変換を提供しているWindows上のソフトウェアです。 CharsetMGRのバージョンレベルはV2.1以降(32ビット)でなければなりません。 なお、Unicodeを使用する場合はV2.1L30以降が必要です。
COBOLファイル
Windows上のCOBOLアプリケーションプログラムでアクセスするファイルの形式。ファイル編成として、レコード順ファイル、行順ファイル、相対ファイル、索引ファイルがあります。 なお、汎用機上のCOBOLプログラムで作成されたファイルは、MDPORTでは一般ファイルとして扱います。
COPYライブラリ
COBOL言語で記述された、レコード記述項のCOPY原始文ソースを指しています。 CSV形式
項目間をカンマ(デリミタ文字)で区切った形式のテキストファイルを指します。MDPORTでは区切り文字がカンマ以外でもCSV形式と呼びます。一般的に可変長レコードです。これに対し、レコード上の相対バイト位置で項目を区切るデータファイルを、データファイル形式と呼びます。 CSV形式であれば、表計算ソフトや各種RDBローダファイル、awk等のユーティリティへと応用することができます。
DTD文
XML文書の要素やデータ構造を定義したもの。DTD( Document Type Definition:文書型定義 ) DDL
RDBMS(リレーショナルデータベース)のテーブルを制御する言語。DDL (Data Definition Languege) Oracle
Oracle社が開発したリレーショナルデータベース管理システム(RDBMS)。
PowerGEM Plus
クライアント/サーバ環境で資産管理およびツール間との連携を行う、Windows上のソフトウェアです。 RDBMS
リレーショナルデータベースを管理するソフトウェア。1件のデータを複数の項目の集合体として表現し、データの集合をテーブルと呼ばれる表で表し、ID番号や名前などキーとなる情報を元にデータの結合・抽出・削除を行う事が出来る。 Relational DataBase Management Systemの略。
signature
Unicodeファイルが、UCS2(リトルエンディアン)・UCS2(ビッグエンディアン)・UTF8のどれなのかを識別するためのコードです。ファイルの先頭に付加されます。
SQLServer
マイクロソフト社が開発したリレーショナルデータベース管理システム(RDBMS)。
SymfoWARE
富士通が開発したリレーショナルデータベース管理システム(RDBMS)。
XML形式
MDPORTでXMLデータを作成する場合に指定する形式です。レイアウト定義の項目名をタグ、属性としてXMLデータを作成できます。
一般ファイル
Windows上のCOBOLファイル以外を、MDPORTでは一般ファイルと呼びます。一般ファイルとしては以下のものが挙げられます。 - 汎用機やUNIX機上から移入されたバイナリファイル
- 汎用機やUNIX機上へ移出するバイナリファイル
- Windows(DOS)やUNIXで扱うテキストファイル
エンディアン
バイナリ数値の内部形式には以下の2種類があり、マシンやOS、プログラム言語によって形式が異なります。 ビッグエンディアン 低アドレスのバイト位置が上位桁を表す形式です。SPARC等のUNIXマシンではビッ
グエンディアンです。
リトルエンディアン 低アドレスのバイト位置が下位桁を表す形式です。Windows上のプログラムはリトルエンディアンです。
他社コード変換機能
提供されているコード変換テーブルを使用すると、富士通以外の他社コード体系も扱うことができます。詳細は「変換仕様:他社コードの変換」を参照して下さい。
項目拡張情報
レイアウト定義の[拡張表示]メニューにより表示される項目情報を示します。 詳細は「レイアウト定義機能:項目情報」を参照して下さい。
マスクデータ
個人情報が含まれているデータを、別の情報に置き換えたデータ。 データファイル形式
レコード上の相対バイト位置で項目を区切るデータファイルの形式を指します。COBOLプログラムで作成されたファイルはこの形式です。これに対し、不定位置で項目間をカンマ(デリミタ文字)で区切った形式をCSV形式と呼びます。
データファイル変換
複数の項目で構成されたレイアウトを意識した変換モード。一般的にアプリケーションでの処理対象となるデータファイルを変換する場合に指定します。CSV形式ファイルを対象とする場合もデータファイル変換モードを使用します。
テキスト変換
ソース等のテキストファイルを変換するモード。 ヌル表示域
各項目の先頭に付加される2バイトの領域です。この領域の内容が0xFFFF(16進)の場合、その項目はヌルであることを示し、0x0000(16進)の場合はヌルでないことを示します。
変換エラーファイル
変換エラーが発生した場合にエラー情報が格納されるファイルで、拡張子は「.err」です。テキストファイルの形式で、メモ帳等で内容を参照できます。
変換指示ファイル
MDPORT変換指示により指定された情報を格納するファイルで、拡張子は「.mdp」です。保存した変換指示ファイルを開くことにより、同じ指定を復元させることができます。
マスタデータファイル
項目名をカンマ区切りで並べたデータファイルのこと。ファイル名は「項目名.csv」。
マスク出力ファイル
マスク処理が施された個人情報が含まれていないデータのこと。 利用者定義変換テーブル
利用者定義文字(外字)や拡張漢字/非漢字を任意の文字へ変換するための、コードの対応づけを行うテーブルファイルです。
レイアウト定義ファイル
レイアウト定義機能により作成されるファイルで、拡張子は「.lay」です。データファイル変換では必須となります。
C言語連携機能
C言語連携機能を使用すると、インクルードファイル中の構造体のレイアウトも取り込むことができます。 インクルードファイル
C言語で記述された、構造体定義のヘッダファイルを指しています。 アライメントサイズ
データ領域を割り当てる際、そのコンピュータやアプリケーションが最適に動けるよう、ある値の整数倍のアドレスに変数や構造体メンバが割り当てられます。そのときのある値というのがアライメントサイズで、アプリケーションのコンパイル時に指定します。通常1byte、2byte、4byte、8byte、16byteのうちのいずれかです。デフォルトは8byteです。
アライメント
プログラムをコンパイルする際、コンパイラはそのコンピュータやアプリケーションが最適に動けるような位置に構造体のメンバを配置します。そのときは次のような規則が成り立ちます。 次に配置するメンバのデータ型のサイズと指定されたアライメントサイズのうち、小さい方の値の整数倍の位置に配置する。 また、構造体のサイズ(sizeof()関数で求められる)を決定する際にも、次のような規則が成り立ちます。 構造体のメンバのうち最も大きいデータ型のサイズと、指定されたアライメントサイズのうち、小さい方の値の整数倍の値が構造体のサイズとなる。 MDPORTではアライメントにより項目(メンバ)間に隙間が発生する場合、@DUMMYという項目を追加して対応しています。
解析エラーファイル
既存C言語資産の解析エラーが発生した場合にエラー情報が格納されるファイルで、インクルードファイル名の末尾に「.txt」が付加されたファイル名で作られます。テキストファイルの形式で、メモ帳等で内容を参照できます。