次元内の特定のレベルの名前を取得します。
構文
ESS_FUNC_M EssOtlGetLevelName ( hOutline, pszDimension, usLevel, pszName );
パラメータ | データ型 | 説明 |
---|---|---|
hOutline |
ESS_HOUTLINE_T |
アウトラインのコンテキスト・ハンドル。 |
pszDimension |
ESS_STR_T |
対象の世代を含む次元の名前。 |
usLevel |
ESS_USHORT_T |
名前を取得するレベル番号の番号。リーフ・メンバーはレベル0です。 |
pszName |
ESS_PSTR_T |
指定された次元のレベル名が戻されるバッファ。APIによって割り当てられます。 |
備考
Cプログラムでは、戻りバッファを解放する場合はEssFree()を呼び出します。
レベル名は自動的には割り当てられません。この関数で名前を戻すには、名前を割り当てておく必要があります。名前はEssOtlSetLevelNameで割り当てられます
戻り値
正常終了の場合は0が戻されます。それ以外の場合は、次のいずれかの値が戻されます:
OTLAPI_NO_GENLEVELNAME
OTLAPI_ERR_NOTADIM
OTLAPI_ ERR_GENLEVELNAMEMBR
例
#include <essapi.h> #include <essotl.h> ESS_STS_T sts = 0; ESS_HOUTLINE_T hOutline; ESS_OBJDEF_T Object; ESS_APPNAME_T szAppName; ESS_DBNAME_T szDbName; ESS_OBJNAME_T szFileName; ESS_STR_T Dimension; ESS_USHORT_T LevelNum; ESS_STR_T LevelName; 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); /*************** Get Level Name **************/ Dimension = "Year"; LevelNum = 0; if (!sts) { sts = EssOtlGetLevelName(hOutline, Dimension, LevelNum, &LevelName); } if (!sts && LevelName) { printf("Level Name: %s\n",LevelName); EssFree(hInst, LevelName); }
関連トピック