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

C.2.2 AsisInitReplace

機能

連結処理を行うための各種条件を設定します。


記述形式

#include "libAsis.h"                    /* 公開ヘッダ             */
int AsisInitReplace(
    ASISHANDLE      RHandle,            /* ハンドル               */
    char            *CharacterCode,     /* 文字コード       */
    char            *InFileType,        /* 入力ファイルタイプ     */
    char            *JnlFile,           /* 入力ジャーナルファイル */
    char            *MstFile,           /* 入力マスタファイル     */
    char            *ListDef,           /* 入力項目定義           */
    char            *OutFileType,       /* 出力ファイルタイプ     */
    char            *OutputDef,         /* リターン式 */
    char            *Jnode,             /* 出力単位ノード         */
    char            *Jcondition,        /* 連結条件式             */
    char            *OutFile,           /* 出力ファイル           */
    char            *LCondition,        /* 仮想項目定義           */
    char            *Reserve1,          /* リザーブ(NULL)         */
    char            *Reserve2);         /* リザーブ(NULL)         */

パラメタ

データ型

パラメタ

用途

説明

ASISHANDLE

RHandle

入力

ハンドルを指定します。

char*

CharacterCode

入力

検索対象となる文字列の文字コードを指定します。
本パラメタを省略した場合(NULL指定時)、UTF-8が指定されたとみなします。

char*

InFileType

入力

入力ファイルタイプを指定します。
本パラメタを省略した場合(NULL指定時)、CSVが指定されたとみなします。

char*

JnlFile

入力

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

char*

MstFile

入力

入力マスタファイルを指定します。
本パラメタを省略した場合(NULL指定時)、入力マスタファイルとの結合を行いません。

char*

ListDef

入力

入力項目を定義します。

char*

OutFileType

入力

本パラメタはNULLを指定してください。

char*

OutputDef

入力

リターン式を指定します。
リターン式の詳細については、“A.5 リターン式”を参照してください。
1~65535バイトの範囲で指定してください。

char*

Jnode

入力

入力ファイルタイプがXMLの場合に有効です。
出力単位ノードを指定します。
本パラメタを省略した場合(NULL指定時)、1XML文書から1レコードを出力します。

char*

Jcondition

入力

連結条件式を指定します。
連結条件式の詳細については、“A.6 連結条件式”を参照してください。
入力マスタファイルを指定しない場合は本パラメタを省略します。

連結にかかわる詳細については、“3.3.2.3 繰返し項目のあるXML文書を連結する場合”を参照してください。

char*

OutFile

入力

出力ファイルおよび出力方法を指定します。
本パラメタを省略した場合(NULL指定時)、標準出力に出力します。

char*

LCondition

入力

仮想項目機能を使う場合に、仮想項目定義を指定します。本パラメタを省略した場合(NULL指定時)、仮想項目機能は使用できません。
仮想項目定義の詳細については、“A.7 仮想項目機能”を参照してください。


CharacterCode (文字コード)

設定

意味

UTF-8

UTF-8の場合

SHIFT-JIS

Shift-JISの場合

EUC

EUC-JPの場合

注意

設定値を二重引用符(")で囲んで指定します。

InFileType (入力ファイルタイプ)

設定

意味

CSV

CSVの場合

XML

XMLの場合

注意

設定値を二重引用符(")で囲んで指定します。

JnlFile (入力ジャーナルファイル)

図C.1 入力ファイルタイプがCSVの場合

図C.2 入力ファイルタイプがXMLの場合

J略称

  • 入力ジャーナルファイルに割り当てる任意の名称を設定します。このJ略称はListDef(入力項目定義)で使用します。


スキーマ情報ファイル名

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

  • スキーマ情報を指定した場合、入力ジャーナルファイルは先頭行からデータとして扱います。

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


物理ファイル名

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

ポイント

入力ファイルのエラー処理

入力ファイルタイプがCSVの場合、入力ファイルのエラー処理機能が利用できます。入力ファイルのエラー処理機能は、AsisSetErrFile関数で指定します。
その場合、入力ファイル名に半角英数字を入れるなど工夫すると便利です。
詳細については、“C.5.2 AsisSetErrFile”を参照してください。


MstFile (入力マスタファイル)

図C.3 入力ファイルタイプがCSVの場合

図C.4 入力ファイルタイプがXMLの場合

M略称

  • 入力マスタファイルに割り当てる任意の名称を設定します。

  • このM略称はListDef(入力項目定義)で使用します。


スキーマ情報ファイル名

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

  • スキーマ情報を指定した場合、入力マスタファイルは先頭行からデータとして扱います。

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


物理ファイル名

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

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

ポイント

入力ファイルのエラー処理

入力ファイルタイプがCSVの場合、入力ファイルのエラー処理機能が利用できます。入力ファイルのエラー処理機能は、AsisSetErrFile関数で指定します。
その場合、入力ファイル名に半角英数字を入れるなど工夫すると便利です。
詳細については、“C.5.2 AsisSetErrFile”を参照してください。


ListDef (入力項目定義)

図C.5 入力ファイルタイプがCSVの場合

図C.6 入力ファイルタイプがXMLの場合


K略称

  • 入力ジャーナルファイルまたは入力マスタファイルの各項目に対する新たな名前です。後続のOutputDefパラメタまたはJconditionパラメタで参照使用できます。

  • K略称は、全体で一意でなければなりません。

注意

K略称の指定に何らかの誤りがある場合、指定されたK略称を含むメッセージが設定されます。
K略称にマルチバイト文字を指定し、かつデータの文字コードとシステムロケールの文字コードが異なる場合、AsisGetMessageText関数で取得できるメッセージには、データの文字コードのマルチバイト文字が含まれるため、メッセージを画面やシステムログなどに出力する場合は注意が必要です。

項目名

  • documentで指定したCSVファイルの抽出する項目名を指定します。


テキスト式

  • documentで指定したXML文書の抽出するパスをテキスト式で指定します。


    図C.7 テキスト式の定義

注意

  • パス式のパス演算子に“//”は指定できません。

  • パス式のパス要素に“*”は指定できません。

  • パス式については、“A.1.5 パス式”を参照してください。

Jnode (出力単位ノード)

入力ファイルタイプがXMLで、1文書中の特定の繰り返しノード数分のレコードを出力したい場合に指定します。
出力単位ノードをパス式で指定します。
また、出力項目に指定された項目が1文書中に繰り返し出現した場合には先頭の項目だけが出力されます。

参照

使用例は“3.3.2.3 繰返し項目のあるXML文書を連結する場合”を参照してください。

注意

  • パス式のパス演算子に“//”は指定できません。

  • パス式のパス要素に“*”は指定できません。

  • パス式については、“A.1.5 パス式”を参照してください。

Jcondition (連結条件)

入力ジャーナルファイルと入力マスタファイルの連結条件式を指定します。この連結条件式によって参照特定された入力マスタファイルの項目を連結結果として出力します。
連結条件式は、1つの入力マスタ(M略称)につき1つ指定します。


参照

連結にかかわる詳細については、“3.3.3 連結機能の注意事項”を参照してください。

連結条件式の詳細は、“A.6 連結条件式”を参照してください。


OutFile

出力先および出力方法を指定します。

入力ファイルタイプがCSVの場合で、見出し行とデータ行を別ファイルに分けて出力したいときは、以下のように指定します。

指定されたスキーマ情報ファイルには、見出し行だけを出力し、物理ファイルにはデータを出力します。

参照

PathNameCompatibilityの詳細については“C.5.1 AsisSetEnvironment”のPathNameCompatibilityを参照してください。

注意

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

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

指定例

出力先

スキーマ情報ファイル

物理ファイル

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

指定したファイル

指定したファイル

;物理ファイル名

作成されない

指定したファイル

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

指定したファイル

標準出力

;

作成されない

標準出力

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


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



復帰値

復帰値

説明

ASIS_SUCCESS

関数が正常に終了したことを示します。

ASIS_ERROR

関数の実行時に問題が検出されたことを示します。


関数の利用規則

OutFileパラメタで指定したファイルが存在する場合は上書きします。