名前
形式
deex | -p {処理名|シナリオ名} |
機能説明
Data Effectorのデータ変換処理(抽出機能、連結機能、集計機能およびソート機能)を統括的に実行します。
実行するデータ変換処理の順番をスケジュールすることもできます。
オプション
統合定義ファイルに記述した処理名またはシナリオ名を指定します。
本パラメタは、省略できません。
特定の1処理を実行したい場合は、処理条件定義部の@Name属性に指定した処理名を指定します。
複数の処理を実行したい場合は、シナリオ定義部の@Name属性に指定したシナリオ名を指定します。
統合定義ファイルの絶対パスまたはカレントディレクトリからの相対パスを指定します。
統合定義ファイルは、UTF-8で記述してください。
統合定義ファイルに記述できるシナリオの数は1つです。
統合定義ファイルの詳細については、“第5章 統合定義ファイル”を参照してください。本パラメタは省略できません。
可変項目指定ファイルの絶対パスまたはカレントディレクトリからの相対パスを指定します。
可変項目指定ファイルには、可変項目を指定します。統合定義ファイルの要素のテキストまたは属性値に記述された可変項目名を、指定した定義値で置き換えて処理します。統合定義ファイルでは、置き換える可変項目をアットマーク(@)で囲って記述します。
可変項目指定ファイルは、システムロケールの文字コードで記載してください。
可変項目指定ファイル内の可変項目の定義方法は、「可変項目名=定義値」です。
例えば、ログファイル名を実行のたびに変更したい場合、本機能を利用することで、統合定義ファイルを変更せずに実行できます。
以下に、可変項目指定ファイルの例を示します。
図1.41 可変項目指定ファイルの例
可変項目指定ファイルでは、1行に複数の可変項目の定義を記載することはできません。複数行で記載して改行で区切ってください。
ファイルの行頭にタブが記載された場合、前の行からの継続とみなします。前の行の改行コードと行頭のタブを削除して結合します。
同一の可変項目名を指定することはできません。
可変項目名は、半角英数字(大文字または小文字)を使用してください。先頭文字は英字を使用してください。
定義値に空文字を指定する場合は、「可変項目名=」だけで記載してください。
COMMON_LOGFILE= |
タグの要素や属性の値に「@文字列@」のような文字を利用したい場合は、本オプションで指定する可変項目名と重ならないように指定してください。
可変項目が指定された要素のテキストまたは属性値を無効にしたい場合は、定義値に無効文字列“NULL”を指定してください。
例
抽出機能の入力ファイル(DataFile)を可変項目に設定して、スキーマファイルを指定したくない(SchemaFile属性を無効にしたい)場合
統合定義ファイル | <Select> <DataFile SchemaFile="/data/@SCHEMA@"> <File>/data/@INFILENAME_1@</File> <File>/data/@INFILENAME_2@</File> </DataFile> : |
可変項目指定ファイル | SCHEMA=NULL INFILENAME_1=input1.csv INFILENAME_2=input2.csv |
可変項目指定ファイル1行の長さは、最大132,095バイトです(改行を含みません)。
可変項目名の長さは、最大128文字です(@を含みません)。
定義値に二重引用符(")や空白などが含まれる場合には、そのまま記載します。エスケープ文字の利用や二重引用符で括る必要はありません。
“NULL”を項目名またはパス名などの値として使用する場合、可変項目が指定されているタグまたは属性を無効にしたいときに指定する、文字列を指定します。
指定できる文字列は、半角英数字(大文字または小文字)を使用してください。先頭文字は英字で、最大10文字です。
本パラメタを省略した場合は、可変項目の無効文字列はNULLとみなされます。
例を以下に示します。
処理の結果をNULLというファイル名に出力して、ログファイルを出力しない(LogFileタグを無効にしたい)場合、無効文字列として“LOGNULL”を設定します。
統合定義ファイル (deconfig3null.xml) | <?xml version="1.0" encoding="utf-8"?> <DataEffector> <!-- 共通定義部 --> <CommonCfg> <Data CharacterCode ="SHIFT-JIS" /> <LogFile>@COMMON_LOGFILE@</LogFile> </CommonCfg> <!-- 処理条件定義部:Analyze --> <Analyze Name="Analyze"> <BaseDirectory>D:/Shunsaku/Sample3/Sample3</BaseDirectory> <InFile> <File>data/@INFILE@</File> </InFile> <OutCondition> <GCondition Total="true"> <Item Subtotal="true" Label="NMTENPO">$NMTENPO</Item> <Item Subtotal="true" Label="GOODSTYPE">substr($GTYPE,0,40)</Item> </GCondition> <RCondition> <Item Label="TOTALNUMBER">sum($NUMBER)</Item> <Item Label="TOTALSALCES">sum($SALEPRICE)</Item> </RCondition> <GString>** 計 **</GString> <OutFile>result/@OUTFILE@</OutFile> </OutCondition> </Analyze> <!-- シナリオ定義部 --> <Scenario Name="Scenario3"> <Step>Analyze</Step> </Scenario> </DataEffector> |
可変項目指定ファイル (dekahen.csv) | INFILE=Sales.csv OUTFILE=NULL COMMON_LOGFILE=LOGNULL |
コマンド実行 | deex -p Scenario3 -f cfg\deconfig3null.xml -a cfg\dekahen_null.csv -n LOGNULL |
使用例
処理名 deex1
統合定義ファイル /home/shunsaku/cfg/deexdef.cfg
deex -p deex1 -f /home/shunsaku/cfg/SelInput.cfg |
終了ステータス
以下の終了ステータスが返されます。
0:正常終了
2:警告
0,2以外:異常終了
統合コマンドの設定(注) | 各コマンドの実行結果 | ||
---|---|---|---|
正常 | 警告 | 異常 | |
警告を無視して続行 | 正常終了 | 警告 | 異常終了 |
警告により処理中断 | 正常終了 | 異常終了 | 異常終了 |
注) 統合定義ファイルのScenarioタグのIgnoreWarning属性で設定します。
ポイント
シナリオを実行した場合、途中経過として以下のメッセージを表示します。
連結処理→抽出処理の順でシナリオを実行した場合
> deex -p Scenario1 -f C:\temp\config.xml |
エラーが発生した場合
> deex -p Scenario1 -f C:\temp\config.xml |