ページのトップに戻る
Interstage Data Effector ユーザーズガイド

B.2.1 replace用動作環境ファイル

入力となる入力ジャーナルファイル、入力マスタファイルおよびログファイルを定義した動作環境を記述します。


実行パラメタの種類と意味

以下に、replace用動作環境ファイルの実行パラメタを示します。


注意

replace用動作環境ファイルの内容は、システムロケールの文字コードで記述してください。


パラメタ

省略

説明

JnlFile

不可

入力ジャーナルファイルを指定します。
本パラメタは複数行にまたがって定義できます。

MstFile

入力マスタファイルを指定します。
本パラメタを省略した場合、入力マスタファイルとの結合を行いません。
本パラメタは複数行にまたがって定義できます。

OutFile

出力ファイルを指定します。指定したファイルがすでに存在する場合は上書きします。
本パラメタを省略した場合、標準出力に出力します。

LogFile

ログファイルを指定します。
本パラメタを省略した場合、ログ出力を行いません。
本パラメタを指定した場合、指定されたログファイルに追記出力します。

ParallelNum

複数の入力ジャーナルファイルを同時に連結するための並列数を指定します。本パラメタを省略した場合、1が指定されたとみなします。

FieldSeparator

入力ファイルタイプがCSVの場合、項目間の区切り文字を二重引用符(")で囲んで指定します。
入力ファイルタイプがXMLの場合は指定できません。
本パラメタを省略した場合は、項目間の区切り文字としてカンマ(,)が指定されたとみなします。

FieldSeparatorMode

入力ファイルタイプがCSVの場合、2つ以上の連続した区切り文字の扱いを指定します。
  0 : 1つの区切り文字を1つの項目間の区切りとして扱う。
  1 : 2つ以上の連続した区切り文字を1つの項目間の区切りとして扱う。
入力ファイルタイプがXMLの場合は指定できません。
本パラメタを省略した場合、0が指定されたとみなします。

ErrFile

入力ジャーナルファイルまたは、入力マスタファイル中にエラーデータを検出したときの、エラーデータ出力ファイルを指定します。
また、エラーデータの最大出力件数を指定できます。
入力ファイルタイプがXMLの場合は指定できません。
本パラメタを省略した場合、エラーデータを検出したとき、コマンドが異常終了します。

PathNameCompatibility

出力ファイルの出力方法を指定します。
  0 : 見出し行とデータ行を分ける出力方法
  1 : 見出し行とデータ行を分けない出力方法
入力ファイルタイプがCSVの場合に有効です。
本パラメタを省略した場合、0が指定されたとみなします。


JnlFile

入力ジャーナルファイルを指定します。

入力ジャーナルファイルの定義は1つだけです。


図B.6 入力ファイルタイプがCSVの場合

図B.7 入力ファイルタイプがXMLの場合


J略称
スキーマ情報ファイル名
  • 連結条件ファイルのInFileTypeパラメタがCSVの場合に、入力ジャーナルファイルの項目名を記述したスキーマ情報ファイルを指定します。

  • スキーマ情報ファイルに標準入力は指定できません。


物理ファイル名
  • 入力ジャーナルファイルを指定します。物理ファイル名を指定しない場合(""を記述)、標準入力より入力します。

  • 物理ファイル名の先頭に"pipe@"を記述することで、入力ジャーナルファイルに名前付きパイプを指定できます。

注意

  • スキーマ情報ファイルには、名前付きパイプを指定できません。ファイル名の先頭に"pipe@"を記述してもファイル名の一部と認識します。

  • 入力の物理ファイルに名前付きパイプを指定する場合には、あらかじめ利用者が名前付きパイプを作成する必要があります。ただし、DataEffectorのコマンド間で名前付きパイプを使用する場合は、作成する必要はありません。

  • 複数の物理ファイルに名前付きパイプを指定して並列に処理を実施する場合には、物理ファイルごとに別々の名前付きパイプを指定し、ParallelNumパラメタを指定してください。



MstFile

入力マスタファイルを指定します。入力マスタファイルの定義は複数指定が可能です。


図B.8 入力ファイルタイプがCSVの場合

図B.9 入力ファイルタイプがXMLの場合

注意

入力マスタファイルには、名前付きパイプを指定できません。スキーマ情報ファイル名または物理ファイル名の先頭に"pipe@"を記述してもファイル名の一部と認識します。

M略称
スキーマ情報ファイル名
  • 入力ファイルタイプがCSVの場合に、マスタの項目名を記述したスキーマ情報ファイルを指定します。

  • スキーマ情報を指定した場合、入力マスタファイルの先頭からデータであるとみなします。

  • スキーマ情報ファイルに標準入力は指定できません。


物理ファイル名
  • 入力マスタファイルを指定します。

  • 入力マスタファイルに標準入力は指定できません。


複数行にまたがるパラメタの定義

JnlFileパラメタおよびMstFileパラメタは、複数行にまたがった定義を行うことができます。
改行が可能な位置を以下に示します。

表B.1 改行可能な位置

パラメタ

改行可能な位置

JnlFile

  • J略称の前後

  • スキーマ情報ファイル名の前後

  • 物理ファイル名の区切り文字となる、セミコロン(;)の前後

MstFile

  • 中括弧({})の前後

  • M略称の前後

  • スキーマ情報ファイル名の前後

  • 物理ファイル名の区切り文字となる、セミコロン(;)の前後

  • 入力マスタファイルを複数定義する場合の、カンマ(,)の前後


OutFile

出力ファイルを指定します。


図B.10 入力ファイルタイプがCSVの場合

図B.11 入力ファイルタイプがXMLの場合

出力ファイル名

出力するファイル名を指定します。
出力ファイル名または物理ファイル名の先頭に"pipe@"を記述することで、名前付きパイプを指定できます。入力ファイルタイプがCSVの場合で見出し行とデータ行を分けて出力したいときは、スキーマ情報ファイルと物理ファイル名に分けて指定してください。

注意

スキーマ情報ファイルと物理ファイルの扱い

指定の組合せと出力先を以下に示します。

指定例

出力先

スキーマ情報ファイル

物理ファイル

スキーマ情報ファイル名;物理ファイル名

指定したファイル

指定したファイル

;物理ファイル名

作成されない

指定したファイル

スキーマ情報ファイル名;

指定したファイル

標準出力

;

作成されない

標準出力

見出し行とデータ行に分けて標準出力へ出力することはできません。


スキーマ情報ファイル名と物理ファイル名には、セミコロン(;)を含むことはできません。PathNameCompatibilityパラメタに"1"を指定してセミコロン(;)を指定した場合、セミコロンはファイル名の一部と認識します。

注意

名前付きパイプの扱い

  • スキーマ情報ファイルには、名前付きパイプを指定できません。ファイル名の先頭に"pipe@"を記述してもファイル名の一部と認識します。

  • 出力ファイルに名前付きパイプを指定する場合には、利用者が名前付きパイプを作成する必要ありません。

  • コマンドの実行結果が出力されるまで名前付きパイプは作成されないため、名前付きパイプが作成されるまでに時間がかかる場合があります。

  • SolarisLinuxOSのコマンドを使用して、Data Effectorのコマンドをキャンセルした場合、名前付きパイプのファイルが残る場合があります。この場合は、必要に応じてファイルを削除してください。

  • PathNameCompatibilityパラメタに"1"を指定して名前付きパイプを指定した場合、"pipe@"はファイル名の一部と認識します。


ParallelNum

JnlFileパラメタで2つ以上の入力ジャーナルファイルを指定した場合、複数の入力ファイルから同時に連結を行う並列数を指定します。

  • ParallelNumパラメタに指定できる値は、1から128までです。

  • ParallelNumパラメタで指定した並列数が入力ジャーナルファイル数よりも小さい場合、並列数以上の入力ジャーナルファイルは、並列数以内の入力ジャーナルファイルの連結が終わった後に順次、実行されます。

  • ParallelNumパラメタで指定した並列数が入力ジャーナルファイル数よりも大きい場合、入力ジャーナルファイル数が同時に連結を行う並列数となります。

注意

  • ParallelNumに2以上を指定した場合、入力ジャーナルファイルの連結処理は、JnlFileパラメタに指定した順に並列に行います。そのため、OutFileパラメタに指定した出力ファイルには、複数の入力ジャーナルファイルの連結結果が混在して出力されます。
    並列処理時の出力ファイルイメージについては、“図B.1 並列処理時の出力ファイルイメージ”を参照ください。

  • ParallelNumパラメタに2以上を指定した場合、入力ファイルは複数の物理ディスクに分散して配置することで、読込み処理のディスクI/Oの負荷を分散することができ、並列効果を最大限に発揮できます。
    そのため、ParallelNumパラメタに指定した並列数と、入力ファイルを配置する物理ディスクの数を同じにすることを推奨します。


FieldSeparator

入力ファイルタイプがCSVの場合、項目間の区切り文字を変更する場合は、新しく区切り文字とする文字を二重引用符(")で囲んで指定します。区切り文字として使用できる文字は、以下のとおりです。

区切り文字

指定方法

カンマ

¥,

半角空白

¥s

水平タブ

¥t

区切り文字として複数指定する場合は、個々の文字列をカンマ(,)で区切って指定します。

注意

本パラメタを指定しても出力時の区切り文字は、常にカンマ(,)になります。


FieldSeparatorMode

入力ファイルタイプがCSVの場合、2つ以上の連続した区切り文字の扱いを指定します。

0:1つの区切り文字を1つの項目間の区切りとして扱う。

1:2つ以上の連続した区切り文字を1つの項目間の区切りとして扱う。

本パラメタを省略した場合、0が指定されたものとみなします。


ErrFile

入力ファイルタイプがCSVの場合、エラーデータ出力ファイルと、エラーデータの最大出力件数を指定します。

  • 本パラメタを指定すると、エラーデータを連結対象外のデータとして扱い、連結処理を継続します。

  • 本パラメタを省略した場合、エラーデータを検出したとき、検出した時点でコマンドが異常終了します。

    図B.12 エラーデータ出力の定義

エラーデータ出力ファイル名
  • 入力ジャーナルファイルまたは、入力マスタファイル中にエラーデータを検出したとき、そのエラーデータの情報を出力します。

  • 指定したファイルがすでに存在している場合は、その情報が上書きされます。

  • 入力ファイル中にエラーデータが存在しなかった場合、エラーデータ出力ファイルは作成されません。

最大出力件数
  • エラーデータの最大出力件数に指定できる値は、1から2147483647までです。

  • エラーデータの最大出力件数を指定すると、エラーデータが指定件数分、出力された時点でコマンドが異常終了します。

  • 本パラメタを省略した場合、1000が指定されたものとみなします。


ポイント

入力ファイル名の工夫

ErrFileパラメタを指定した場合、入力ファイル名に半角英数字以外が含まれるとき、エラーデータ出力ファイルに出力される入力ファイル名が、文字化けすることがあります。そのため、入力ファイル名には半角英数字を使うことを推奨します。

入力定義ファイルに指定するファイル名に半角数字で日付情報を付加する例を以下に示します。

WindowsWindowsの場合

JnlFile     Journal "D:¥Shunsaku¥indata¥売上情報_20080101.csv ;
                     D:¥Shunsaku¥indata¥売上情報_20080102.csv ;
                     D:¥Shunsaku¥indata¥売上情報_20080103.csv ;
                     D:¥Shunsaku¥indata¥売上情報_20080104.csv"

SolarisLinuxLinux/Solarisの場合

JnlFile    Journal  "/home/Shunsaku/data/売上情報_20080101.csv ;
                     /home/Shunsaku/data/売上情報_20080102.csv ;
                     /home/Shunsaku/data/売上情報_20080103.csv ;
                     /home/Shunsaku/data/売上情報_20080104.csv"

参照

エラーデータ出力ファイルの出力例は、“2.1.1.3 入力ファイルのエラー処理”のエラーデータ出力ファイルの例を参照してください。


replace用動作環境ファイル指定例

以下に、replace用動作環境ファイルの実行パラメタを示します。

入力ファイルがXML形式の場合

WindowsWindowsの場合

# 入力ファイル(入力ジャーナルファイル)
JnlFile      Journal "D:¥Shunsaku¥data¥FactFile1.xml;
                     D:¥Shunsaku¥data¥FactFile2.xml;
                     D:¥Shunsaku¥data¥FactFile3.xml"
# 入力ファイル(入力マスタファイル)
MstFile    { Master1 "D:¥Shunsaku¥data¥NameFile.xml",
             Master2 "D:¥Shunsaku¥data¥KbnFile.xml"
}
# 出力ファイル
OutFile    "pipe@¥¥.¥pipe¥named_pipe_Repoutput"
# ログファイル
LogFile    "D:¥Shunsaku¥log¥Replace.log"
# 並列数
ParallelNum      3

Linux/Solarisの場合

# 入力ファイル(入力ジャーナルファイル)
JnlFile       Journal "/home/shunsaku/data/FactFile1.xml;
                      /home/shunsaku/data/FactFile2.xml;
                      /home/shunsaku/data/FactFile3.xml"
# 入力ファイル(入力マスタファイル)
MstFile    {  Master1 "/home/shunsaku/data/NameFile.xml",
              Master2 "/home/shunsaku/data/KbnFile.xml"
}
# 出力ファイル
OutFile    pipe@/home/shunsaku/data/named_pipe_Repoutput
# ログファイル
LogFile    /home/shunsaku/log/Replace.log
# 並列数
ParallelNum      3

入力ファイルがCSV形式の場合

WindowsWindowsの場合

# 入力ファイル(入力ジャーナルファイル)
JnlFile      Journal "D:¥Shunsaku¥data¥FactFile1.csv;
                     D:¥Shunsaku¥data¥FactFile2.csv;
                     D:¥Shunsaku¥data¥FactFile3.csv"
# 入力ファイル(入力マスタファイル)
MstFile    { Master1 "D:¥Shunsaku¥data¥NameFile.csv",
             Master2 "D:¥Shunsaku¥data¥KbnFile.csv"
}
# 出力ファイル
OutFile    "pipe@¥¥.¥pipe¥named_pipe_Repoutput"
# ログファイル
LogFile    "D:¥Shunsaku¥log¥Replace.log"
# 並列数
ParallelNum      3
# CSV形式の区切り文字
FieldSeparator     "¥s"
# CSV形式の連続した区切り文字の扱い
FieldSeparatorMode  0
# エラーデータ出力ファイル
ErrFile       "D:¥Shunsaku¥errdata¥err.csv"  10

Linux/Solarisの場合

# 入力ファイル(入力ジャーナルファイル)
JnlFile       Journal "/home/shunsaku/data/FactFile1.csv;
                      /home/shunsaku/data/FactFile2.csv;
                      /home/shunsaku/data/FactFile3.csv"
# 入力ファイル(入力マスタファイル)
MstFile    {  Master1 "/home/shunsaku/data/NameFile.csv",
              Master2 "/home/shunsaku/data/KbnFile.csv"
}
# 出力ファイル
OutFile     pipe@/home/shunsaku/data/named_pipe_Repoutput
# ログファイル
LogFile    /home/shunsaku/log/Replace.log
# 並列数
ParallelNum      3
# CSV形式の区切り文字
FieldSeparator     "¥s"
# CSV形式の連続した区切り文字の扱い
FieldSeparatorMode  0
# エラーデータ出力ファイル
ErrFile        /home/shunsaku/errdata/err.csv  10