サーバー上のアウトラインを再構築します。これは非同期の呼出しです。
構文
ESS_FUNC_M EssOtlRestructure ( hCtx, usRestructType );
パラメータ | データ型 | 説明 |
---|---|---|
hCtx |
ESS_HCTX_T |
サーバー・ログイン・コンテキスト・ハンドル。これは、EssOtlWriteOutline()によってアウトラインが保存されたサーバーである必要があります。 |
usRestructType |
ESS_USHORT_T |
実行する再構築のタイプ。これは、次のいずれかの値にできます:
|
備考
この関数を呼び出す前に、EssOtlWriteOutline()を使用してアウトラインを保存する必要があります。
この呼出しは、サーバーに保存されたアウトラインに対してのみ有効です。
これは非同期の呼出しです。この呼出しを行った後、EssGetProcessState()で再構築操作の完了を示すステータスが戻されるまで、EssGetProcessState()を呼び出す必要があります。
データが正しく再構築されるためには、fKeepTransフラグをESS_TRUEに設定したEssOtlOpenOutline()を使用して、アウトラインを開いておく必要があります。
戻り値
正常終了の場合は0が戻されます。それ以外の場合はOTLAPI_BAD_RESTRUCTTYPE構造体が戻されます。
アクセス
この関数を使用するには、呼出し元は指定したアプリケーション、アウトライン・オブジェクトの保存先であるデータベースのいずれか、または両方に対するアクセス権が必要です。アウトライン・オブジェクトを再構築するには、指定したアプリケーション、またはアウトラインが含まれるデータベースに対して、アプリケーション・デザイナまたはデータベース・デザイナの権限(ESS_PRIV_APPDESIGNまたはESS_PRIV_DBDESIGN)が必要です。
例
#include <essapi.h> #include <essotl.h> ESS_STS_T sts = 0; ESS_HCTX_T hCtx; ESS_HOUTLINE_T hOutline; ESS_OBJDEF_T Object; ESS_APPNAME_T szAppName; ESS_DBNAME_T szDbName; ESS_OBJNAME_T szFileName; memset(&Object, '\0', sizeof(Object)); Object.hCtx = hCtx; Object.ObjType = ESS_OBJTYPE_OUTLINE; strcpy(szAppName, "Sample"); strcpy(szDbName, "Basic"); strcpy(szFileName, "Basic"); Object.AppName = szAppName; Object.DbName = szDbName; Object.FileName = szFileName; sts = EssOtlOpenOutline(hCtx, &Object, ESS_TRUE, ESS_TRUE, &hOutline); /* body of code */ /* write outline to server using */ /* EssOtlWriteOutline() */ if (!sts) { sts = EssOtlRestructure(hCtx, ESS_DOR_ALLDATA); } /* need to call EssGetProcessState() */ /* to check for completion before proceeding */
関連トピック