次元構築プロセスを開始します。
この関数はEssEndStreamBuildDimの前に呼び出す必要があります。この関数を呼び出した後、EssSendStringを呼び出してソース・レコードをEssbaseサーバーに送信します。
構文
ESS_FUNC_M EssBeginStreamBuildDim (
hCtx, RulesObj, usBuildOption, szTmpOtlFilename
)
| パラメータ | データ型 | 説明 |
|---|---|---|
hCtx |
ESS_HCTX_T |
APIコンテキスト・ハンドル。 |
RulesObj |
ESS_POBJDEF_T |
ルール・ファイル・オブジェクト定義構造体へのポインタ。 |
usBuildOption |
ESS_USHORT_T |
有効な値:
|
szTmpOtlFilename |
ESS_STR_T |
一時アウトライン・ファイル名。この回の次元構築で得られたアウトラインにアウトライン確認エラーがある場合、Essbaseは拡張子がotbの一時アウトライン・ファイルを作成します。 |
備考
Unicode対応Essbaseアプリケーションとの通信にCのメインAPIを使用するUnicodeクライアントは、この関数の呼出し直後に、テキスト・ストリーム内のUTF-8でエンコードされたバイト・オーダー・マーク(BOM)を送信する必要があります。例としては、バイト・オーダー・エンコーディングの指定を参照してください。
戻り値
正常終了の場合は0が戻され、失敗した場合はエラー・コードが戻されます。
例
ESS_FUNC_M
ESS_IncBuildDim( ESS_HCTX_T hCtx)
{
ESS_STS_T sts = 0;
ESS_OBJDEF_T RulesObj;
ESS_OBJDEF_T DataObj;
ESS_STR_T ErrorName;
ESS_APPNAME_T appname;
ESS_DBNAME_T dbname;
memset(&RulesObj,0,sizeof(ESS_OBJDEF_T));
memset(&DataObj,0,sizeof(ESS_OBJDEF_T));
strcpy(appname, "sample");
strcpy(dbname,"basic");
RulesObj.hCtx = hCtx;
RulesObj.FileName = "genref";
RulesObj.AppName = appname;
RulesObj.DbName = dbname;
RulesObj.ObjType = ESS_OBJTYPE_RULES;
DataObj.hCtx = hCtx;
DataObj.FileName = "genref";
DataObj.AppName = appname;
DataObj.DbName = dbname;
DataObj.ObjType = ESS_OBJTYPE_TEXT;
ErrorName = "builddim.err";
sts = EssBeginIncrementalBuildDim(hCtx);
if (!sts)
sts = EssIncrementalBuildDim(hCtx,&RulesObj,&DataObj,NULL,ErrorName,true,ESS_INCDIMBUILD_BUILD,NULL);
if (!sts)
sts = EssIncrementalBuildDim(hCtx,&RulesObj,&DataOb,NULL,ErrorName,true,ESS_INCDIMBUILD_VERIFY,NULL);
if (!sts)
sts = EssIncrementalBuildDim(hCtx,&RulesObj,&DataOb,NULL,ErrorName,true,ESS_INCDIMBUILD_SAVEOTL,"tmpotl");
sts = EssBeginStreamBuildDim(hCtx, &RulesObj,ESS_INCDIMBUILD_BUILD,"tmpotl");
if (!sts)
sts = EssSendString(hCtx, "600 600-20 600-20-20\n");
if (!sts)
sts = EssSendString(hCtx, "600 600-20 600-20-30\n");
if (!sts)
sts = EssSendString(hCtx, "600 600-40 600-40-20\n");
sts = EssEndStreamBuildDim(hCtx,ErrorName,false);
sts = EssEndIncrementalBuildDim(hCtx,ESS_DOR_ALLDATA,"tmpotl",ErrorName,false);
return sts;
}
関連トピック