機能
入力ファイルよりソート式で指定したキーでデータを仕分けて、結果をファイルに出力します。
記述形式
#include "libAsis.h" /* 公開ヘッダ */ int AsisExecuteKeySort( ASISHANDLE AHandle, /* ハンドル */ char *CharacterCode, /* 文字コード */ char *InFileType, /* 入力ファイルタイプ */ char *InFile, /* 入力ファイル */ char *ResultFolder, /* 出力ファイル用フォルダ名 */ char *Ocondition, /* ソート式 */ char *AlternativeName, /* 代替ファイル名 */ char *Reserve1; /* リザーブ(NULL) */ char *Reserve2; /* リザーブ(NULL) */ char *Reserve3); /* リザーブ(NULL) */ |
パラメタ
データ型 | パラメタ | 用途 | 説明 |
---|---|---|---|
ASISHANDLE | AHandle | 入力 | ハンドルを指定します。 |
char* | 入力 | 文字コードを指定します。 | |
char* | 入力 | 入力ファイルタイプを指定します。 | |
char* | 入力 | 入力ファイルを指定します。(注) | |
char* | 入力 | 出力ファイルのフォルダ名を指定します。(注) | |
char* | Ocondition | 入力 | キー仕分けのキーを指定するソート式を指定します。 |
char* | 入力 | 代替ファイル名を指定します。 | |
char* | Reserve1 | - | NULLを指定します。 |
char* | Reserve2 | - | NULLを指定します。 |
char* | Reserve3 | - | NULLを指定します。 |
注) ファイル名またはフォルダ名に特殊な文字を指定した場合の扱いについては、“2.9.3 パス名に指定する特殊な文字の扱い”を参照してください。
図E.14 入力ファイルタイプがCSVの場合
図E.15 入力ファイルタイプがXMLの場合
本パラメタを省略した場合(NULL指定時)、または物理ファイル名を省略した場合は標準入力より入力します。
入力ファイルタイプがCSVの場合で、スキーマ情報を指定する場合は、スキーマ情報ファイル名と各物理ファイル名をセミコロン(;)で接続します。
入力ファイルタイプがCSVの場合で、スキーマ情報を指定しない場合は、各物理ファイル名をカンマ(,)で接続します。
スキーマ情報を指定した場合、物理ファイル名に指定した各ファイルの先頭行には項目名が記述されていないものとみなし、データとしてソート対象になります。
スキーマ情報を指定しない場合、物理ファイル名に指定した各ファイルの先頭行には項目名が記述されているものとみなし、先頭行のデータをソート対象にしません。
入力ファイルタイプがXMLで複数のファイルを指定する場合には 各物理ファイル名をカンマ(,)で接続します。
ポイント
入力ファイルのエラー処理
入力ファイルタイプがCSVの場合、入力ファイルのエラー処理機能が利用できます。入力ファイルのエラー処理機能は、AsisSetErrFile関数で指定します。
その場合、入力ファイル名に半角英数字を入れるなど工夫すると便利です。
詳細については、“E.5.2 AsisSetErrFile”を参照してください。
キー仕分けの結果を出力するフォルダを指定します。
フォルダ名は、96バイト以内で指定してください。
結果のファイル名は、Data Effectorが自動的に決定します。CSV形式の場合、見出し行を出力しないこともできます。
キー仕分け機能を使用する場合、本パラメタを省略できません。
フォルダ名は、複数記述できません。フォルダ名に標準出力および名前付きパイプは指定できません。
参照
結果ファイル名の命名規約および見出し行の制御については、“D.4.1 sort用動作環境ファイル”の“ResultFolder”を参照してください。
復帰値
復帰値 | 説明 |
---|---|
ASIS_SUCCESS | 関数が正常に終了したことを示します。 |
ASIS_ERROR | 関数の実行時に問題が検出されたことを示します。 |
関数の利用規則
OutFileパラメタで指定したファイルが存在する場合は上書きします。