uCosminexus Interschema ユーザーズガイド

[目次][用語][索引][前へ][次へ]

5.4.1 ettransコマンド

ettransコマンドは,次のディレクトリ下に格納されています。

Interschemaのインストールディレクトリ/bin

<この項の構成>
(1) 機能
(2) 形式
(3) 引数
(4) 実行例
(5) 注意事項

(1) 機能

指定されたMDLファイル内の定義内容に従って,入力データを出力データへ変換します。

コマンド名とオプションを逐次,入力指定する形式と,指定したオプションを定義したパラメタファイルを指定する形式があります。

パラメタファイルとは,ettransコマンドの実行時に指定できるオプションを記述したテキストファイルです。トランスレータの引数をパラメタファイルに記述しておけば,定常的に指定するオプションを定義しておけるので,コマンド入力の省力化を図ることができます。

(2) 形式

形式1
 
ettrans
     MDLファイル名
     [-F {フォーマット名 入力データファイル | 出力データファイル名}...]
     [-FN フォーマット名...]
     [-E ログファイル名]
     [実行時オプション]
 

形式2
 
ettrans -file  パラメタファイル名
 

形式3
 
ettrans -prop  FDLファイル名 | MDLファイル名
 

(3) 引数

(a) 形式1で指定できる引数

MDLファイル名
変換したいデータの変換情報を定義したMDLファイルを指定します。

-F
MDLファイル内で定義された入力データ,出力データのファイル名を無視して,引数に指定したファイル名を変換するオプションです。
MDLファイルに定義されていないファイルを変換したい場合,このオプションを指定してください。また,MDLファイル内で入力データ,出力データのファイル名の設定を省略した場合にも,このオプションを指定してください。
フォーマット名
変換対象となるデータファイルに対応するフォーマット名を指定します。MDLファイル内で定義されているフォーマット名を指定してください。
入出力データファイル名
指定したフォーマット名に対応する入力データ又は出力データのファイル名を指定します。

-FN
MDLで定義されたフォーマットのうち,指定したフォーマットのデータだけを変換するオプションです。このオプションを指定した場合,指定されなかったフォーマットは,MDL中にないものとして扱われ,対応するデータは変換されません。
フォーマット名
変換対象となるデータファイルに対応するフォーマット名を指定します。フォーマット名は,MDLファイル内で定義されているフォーマット名を指定してください。

-E ログファイル名
Interschemaのエラー情報などを出力するログファイル名を指定します。この指定を省略した場合は,デフォルトのファイル名「errlog.txt」でログファイルを出力します。ログファイルの格納先は,「Interschemaのインストールディレクトリ/log」下です。ただし,システム情報ファイルの[Option]セクションにログの出力を抑止する設定(NE=1)がある場合,ログファイルは出力されません。ログファイルの出力を抑止する場合は,「5.4.3 システム情報ファイル「ettrans.ini」での実行時オプションの定義」を参照してください。

実行時オプション
複数のオプションを指定する場合は,オプション間をスペースで区切ってください。
実行時オプションを次に示します。
-CIIE 出力ファイル名
CII標準形式の入力データを変換する場合,出力データと同時にCII標準のエラー情報メッセージを出力したいときに指定します。
-CIIR 出力ファイル名
CII標準形式の入力データを変換する場合,CII標準の受信確認メッセージを出力したいときに指定します。出力データと同時に出力されます。
-CIIT
CIIフォーマットのデータを出力する場合,省略の対象となるTFD項目の出力を抑止したいときに指定します。
省略の対象となるTFD項目については,「付録G.4(4) TFD項目の省略」を参照してください。省略の対象となるTFD項目は,属性とデータタグ番号の対応を,CIIデータタグファイル「etciitag.ini」で設定しておく必要があります。CIIデータタグファイルの設定については,「5.3(2) CIIデータタグファイル「etciitag.ini」の設定」を参照してください。
CII3フォーマット出力時に指定した場合は,縮小モードで出力できるマルチ明細が,番号なしマルチ明細として出力されます。CII3フォーマットでは,「-CIIT」オプションを指定していなくても,省略できるTFDは常に省略されます。
-CSV
CSVフォーマットのデータを出力する場合,CSVデータ項目をダブルクォーテーション「"」で囲みたいときに指定します。このオプションは,出力するデータがCSVフォーマットの場合だけ有効です。CSVデータ項目と見なされないデータ(バイト列など)は,ダブルクォーテーション「"」で囲まれません。
-DEFMAP
コンポーネントにデフォルト式が設定されていて,コンポーネントのマップ式の評価がエラーになった場合,デフォルト式によって値(デフォルト値)を出力したいときに指定します。デフォルト値が適用される対象項目は次のとおりです。
  • 要素のマップ式の評価がエラーになった場合のその要素
  • 構造のマップ式の評価がエラーになった場合の子コンポーネントすべて
デフォルト値は,該当するコンポーネントの最小出現回数分だけ出力されます。ただし,NULLマップ式を記述した結果,コンポーネントの出現回数が不足する場合はエラーになり,デフォルト値は出力されません。
なお,マップ式の評価結果の代わりにデフォルト式の値が出力されても,ログファイルにメッセージは出力されません。
-DSEPA
セパレータを持つコンポーネントデータ(構造データ)を出力する場合に,不要と見なされるセパレータを出力したくないときに指定します。
不要なセパレータとは,構造コンポーネントの中間区切り文字で,自分自身より後に構造の子コンポーネントデータがないものを指します。
ある構造のセパレータとして,開始文字「SEG」,中間区切り文字(位置は各要素の前)「+」,終了文字「'」が定義されている場合は次のように出力されます。ここで,「e1」及び「e3」は要素データを表します。
-DSEPA指定なし:SEG+e1++e3+++'
-DSEPA指定あり:SEG+e1++e3'
なお,出力対象フォーマットがEDIFACTシンタックスに従う場合,このオプションの指定がなくても不要なセパレータは出力しません。
-DTM
日付,時刻,日付時刻型の各パート値に対して範囲を検証したい場合に指定します。各パート値の範囲は「6.2.4 日付時刻」を参照してください。ただし,ssパート(秒)の小数部については,検証されません。
なお,このオプションで日付,時刻としての正当性は検証されないので注意してください。
-EIAJHASH
出力変換するメッセージデータがEIAJ標準に従うと見なす場合,EIAJ標準の方式でハッシュトータル値を計算したいときに指定します。このオプションは,出力するデータがCII標準又はEIAJ標準に従っている場合だけ有効です。
EIAJ標準に従うと見なす条件は,メッセージグループ・ヘッダ(MGH)のBPID版の値が「1x」(xは任意)となっていることです。EIAJ標準に従ったハッシュトータル値を計算する場合,数値属性と小数部桁数の対応を,EIAJハッシュ用ファイル「ethash.ini」で設定しておく必要があります。EIAJハッシュ用ファイルの設定については,「5.3(3) EIAJハッシュ用ファイル「ethash.ini」の設定」を参照してください。ただし,出力するデータがCII3フォーマットの場合は,EIAJハッシュ用ファイル「ethash.ini」を設定する必要はありません。
-ESEPA
EDIFACTフォーマットのデータを変換する場合,UNAセグメントで定義されたセパレータ,又はデフォルトのセパレータを,一律に判定するオプションです。このオプションは,従来の処理では望む変換結果が得られない場合に指定してください。
なお,このオプションを指定する場合,変換対象となる入力又は出力EDIFACTフォーマットデータ内に,UNAセグメントが複数個あってはいけません。1回の変換では,1交換単位分の変換だけとしてください。
-FDS
ゾーン形式数値のEBCDIK文字コードでの正符号として,0xFを出力したい場合に指定します。
-IERR
変換データ中に不正文字コードがあった場合,エラーとして処理したいときに指定します。
このオプションを指定しない場合は,MDLの指定に従います。
-RELVL
ettransコマンドの戻り値としてエラーレベルを返します。エラーレベルと戻り値の対応を表5-3に示します。なお,ログファイルに出力する戻り値,及び各APIの戻り値は,「5.4.2 ettransコマンドの戻り値」の値を返します。
このオプションは,APIのパラメタとして指定できません。

表5-3 エラーレベルと戻り値の対応

エラーレベル 対応する戻り値 意味
0x00 0x00ZZZZZZ インフォメーション
0x01 0x01ZZZZZZ ワーニング
0x02 0x02ZZZZZZ エラー
0x04 0x04ZZZZZZ システムエラー

(凡例)
ZZZZZZは任意の数字です。
-SERR
変換データ中にサイズエラー(小数部を持つ実数値を整数型要素に代入する場合なども含みます)があった場合,エラーとして処理したいときに指定します。
このオプションを指定しない場合は,MDLの指定に従います。
-SNCODE
Sea-NACCSで規定する文字集合による文字コードチェックを実施します。
このオプションは,Sea-NACCS EDI電文又はSea-NACCS EDIFACT電文の出力変換の場合だけ有効です。
なお,Interschema 03-00までのSea-NACCS電文変換では,常に文字コードチェックを実施しています。旧バージョンと同じ変換をしたい場合は,このオプションを指定してください。
-XDOC 外部サブセットURL
DOCTYPE宣言を出力する場合に指定します。
このオプションを指定した場合,MDLファイルでの指定に関係なく,出力XML文書に指定外部サブセットURLでDOCTYPE宣言を出力します。
-XND
XML出力変換時に,DOMを作成しない場合に指定します。
このオプションを指定した場合,メモリの使用量を抑制できます。なお,エラーが発生した場合のデータの出力状況,及びデータの変換時間は,オプションを指定しないときと異なります。
-XVC
XML文書構造を検証する場合に指定します。
-XWS
入力するXML文書のwhite space削除を抑止したい場合に指定します。
このオプションが指定された場合,入力XMLデータのwhite spaceは削除されないで,データの一部として扱われます。
実行時オプションは,システム情報ファイルを使って暗黙指定できます。詳細については,「5.4.3 システム情報ファイル「ettrans.ini」での実行時オプションの定義」を参照してください。
(b) 形式2で指定できる引数

-file パラメタファイル名
パラメタファイルを指定します。
パラメタファイルには,1行に1オプション,又は1引数を記述します。 したがって,-Fオプションに,フォーマット名と入力データファイルや出力データファイルを2組指定する場合は,記述例に示すとおり5行で表現します。
次にパラメタファイルの記述例を示します。
 
BBB.mdl
-F
INformat
input.data
OUTformat
output.data
-IERR
-SERR
 
記述できる引数は,次のとおりです。先頭行にはMDLファイル名を指定します。引数の詳細については,「5.4.1(3)(a) 形式1で指定できる引数」を参照してください。
  • MDLファイル名
  • -F
  • -FN
  • フォーマット名
  • 入出力データファイル名
  • -E
  • ログファイル名
  • 実行時オプション
(c) 形式3で指定できる引数

-prop FDL | MDLファイル名
FDLファイル又はMDLファイルを指定します。指定したファイルのプロパティが表示されます。表示されるプロパティを次に示します。
  • ユーザバージョン
  • ユーザコメント
  • 作成日時
  • 作成製品バージョン
  • 更新日時
  • 更新製品バージョン
  • FDLファイル又はMDLファイルのバージョン
注※
FDLファイル又はMDLファイルが,Interschemaバージョン1のFDLエディタ又はMDLエディタで作成されていた場合,作成日時,作成製品バージョン及び更新製品バージョンの情報は表示されません。
表示形式は,オプションを実行した時のLANGによって決まります。Windows又はLANG Cでプロパティを表示するオプションを実行した場合,シフトJIS形式でプロパティが表示されます。プロパティの表示例を次に示します。
 
UserVersion=V0.1
UserComment=Test Model
SysCreatedDate=2002/10/01 10:00:00
SysCreatedPpVersion=0200
SysLastUpdatedDate=2002/10/10 12:00:00
SysLastUpdatedPpVersion=0200
SysDlVersion=16
 

(4) 実行例

ettransコマンドの実行例を次に示します。なお,実行例1〜3は形式1に従った例です。また,実行例4は形式2に,実行例5は形式3に従った例です。

実行例1
MDLファイル「AAA」内で指定されている入力データファイルを,出力データファイルに変換します。
 
ettrans AAA.mdl

実行例2
MDLファイル「BBB」で指定された変換情報に従って,入力データファイル「input.data」を出力データファイル「output.data」に変換します。不正文字,サイズエラーを検証するオプションを指定します。
 
ettrans BBB.mdl -F INformat input.data OUTformat output.data
     -IERR -SERR

実行例3
MDLファイル「CCC」内で指定されているフォーマットのうち,INI及びOUT1だけを変換します。入力データファイル及び出力データファイルは「CCC」内で定義されているものとします。
 
ettrans CCC.mdl -FN INI OUT1
 

実行例4
指定したパラメタファイル「param.txt」の設定に従って,変換を実行します。
 
ettrans -file param.txt
 

実行例5
指定したMDLファイル「DDD」のプロパティ情報を表示します。
 
ettrans -prop DDD.mdl
 

(5) 注意事項