Interstage Data Effector ユーザーズガイド
目次 索引 前ページ次ページ

第6章 C APIを利用する> 6.3 データを連結する

6.3.1 条件に一致するデータを連結する

入力ジャーナルファイルと入力マスタファイルに対し、連結条件に指定した条件に一致するデータを連結関数を使って連結します。

連結関数のハンドル取得から解放までの、処理シーケンスを以下に示します。

[図: 連結関数の処理シーケンス]

■記述

/* 連結ハンドルの取得 */

status = AsisAllocHandleReplace( &handle, logFile );             (1)

/* 数値演算式における空の扱いを指定 */

envName = ASIS_ENV_SubstituteZeroForEmpty;

envValue = "NO";

status = AsisSetEnvironment( handle, envName, envValue );         (2)



/* 連結条件の設定 */

JnlFile = "Journal \"C:\\shunAsis\\sample\\journal.csv\"";

MstFile = "{Master1 \"C:\\shunAsis\\sample\\master1.csv\""

          ",Master2 \"C:\\shunAsis\\sample\\master2.csv\"}";

ListDef = "{document(Journal){$Kbn Kbn,$Number Number,$Code Code,$Name Name,$Val Val}"

          ",document(Master1){$Kcode Kcode,$Kname Kname}"

          ",document(Master2){$Ncode Ncode,$Nname Nname}}";

OutputDef = "{$Kbn,$Kname,$Number,$Nname,$Code,$Name,$Val}";

Jcondition = "{$Kbn==$Kcode,$Number==$Ncode}";

status = AsisInitReplace( handle, CharacterCode, inFileType,

             jnlFile, mstFile, listDef,

             outFileType, outputDef, NULL,

             Jcondition, outFile, NULL, NULL, NULL);           (3)

/* 連結の実行 */

status = AsisExecuteReplace( handle );                           (4)

/* 連結ハンドルの解放 */

status = AsisFreeHandleReplace( handle );                        (5)

◆(1) 連結ハンドルの取

事前に、AsisAllocHandleReplace関数でハンドルを指定して割り当てます。

◆(2) 数値演算式における空の扱いを指

AsisSetEnvironment関数で、連結条件において数値演算式を使用する場合の空の扱いを指定します。

◆(3) 連結条件の設

AsisInitReplace関数のパラメタに、ListDef(入力項目定義)、Jcondition(連結条件定義)、OutputDef(出力項目定義)および文字コードなど、連結関数に必要な条件を指定します。

◆(4) 連結の実

AsisExecuteReplace関数で、データの連結を実行します。

◆(5) ハンドルの解

データの連結が完了したら、AsisFreeHandlReplace関数で、ハンドルを解放します。

連結関数の詳細については、“C.2 連結関数”を参照してください。
データを連結するサンプルプログラムは、“F.2 データの連結”を参照してください。

目次 索引 前ページ次ページ

Copyright 2007 FUJITSU LIMITED