機能
抽出の入力ファイルを指定します。
記述形式
#include "libAsis.h" /* 公開ヘッダ */ int AsisSetDataSelect( ASISHANDLE SHandle, /* ハンドル */ int InFileCnt, /* 入力ファイル数 */ char **InFile); /* 入力ファイル */ |
パラメタ
データ型 | パラメタ | 用途 | 説明 |
---|---|---|---|
ASISHANDLE | SHandle | 入力 | ハンドルを指定します。 |
int | 入力 | 入力ファイル数を指定します。 | |
char** | 入力 | 入力ファイルまたは入力ファイルが配置されたディレクトリを入力数分指定します。(注) |
注) ファイル名に特殊な文字を指定した場合の扱いについては “パス名に指定する特殊な文字の扱い”を参照してください。
入力ファイルタイプがCSVの場合、以下のいずれかの条件を満たすときだけ、入力ファイル数に2以上の値を指定できます。それ以外のときはInFileCntに1(標準入力は-1)を指定します。
AsisSetSchemaSelect関数のModeパラメタに1を指定して、スキーマ情報ファイルから項目名を取得する場合
InFileパラメタに指定したすべての入力ファイルの見出し行が同一の場合
見出し行が同一かどうかは、AsisExecuteSelect関数の実行時に判定します。
見出し行が同一でなく、すべての検索番号にリターン式を指定して、特定の項目だけ返却するようにした場合
入力ファイルまたは入力ファイルが配置されたディレクトリを入力数分指定します。ファイル名とディレクトリ名の混在も指定できます。入力ファイルタイプがCSVで、SchemaInfパラメタを指定した場合、本パラメタに指定するファイルの先頭行からデータであるとみなします。
SchemaInfパラメタを省略したとき、本パラメタに指定するファイルの先頭行を項目名として扱い、2行目以降をデータとみなします。
注意
ディレクトリ配下のファイルは、ファイル名でソートされた順番に処理されます。
抽出処理実行中に、指定されたディレクトリに対してファイルの追加、削除を実施した場合は、そのファイルが本機能に反映されない場合があります。
指定されたディレクトリが存在しない場合には、異常終了します。
指定されたディレクトリ配下にファイルが存在しない場合、または、処理すべきファイルが存在しない場合には、異常終了します。(ディレクトリが複数指定されていて、1つのディレクトリ配下にファイルが存在しなくても、他のディレクトリ配下にファイルが存在すれば、異常終了しません。)
指定されたディレクトリ直下のファイルだけが処理対象となります。サブディレクトリ配下のファイルは対象としません。
ディレクトリ配下の内容が以下の場合は、異常終了します。
Data Effectorとして処理対象外のファイルが存在する
参照
処理対象のファイルの種類については、“導入・運用ガイド”の“処理対象ファイルの種類”を参照してください。
復帰値
復帰値 | 説明 |
---|---|
ASIS_SUCCESS | 関数が正常に終了したことを示します。 |
ASIS_ERROR | 関数の実行時に問題が検出されたことを示します。 |
関数の利用規則
入力ファイルタイプ(CSV、XML)はAsisInitSelect関数で指定したInFileTypeの型でなければなりません。
入力ファイル数、または入力ディレクトリ数に指定した数の入力ファイルをInFileに指定してください。入力ファイル数分の入力ファイルを指定しない場合には動作は保証されません。
ポイント
入力ファイルのエラー処理
入力ファイルタイプがCSVの場合、入力ファイルのエラー処理機能が利用できます。入力ファイルのエラー処理機能は、AsisSetErrFile関数で指定します。
その場合、入力ファイル名に半角英数字を入れるなど工夫すると便利です。
詳細については、“2.5.2 AsisSetErrFile”を参照してください。