特定の次元に対して指定されたすべての世代名を取得します。
構文
ESS_FUNC_M EssOtlGetGenNames ( hOutline, pszDimension, ulOptions, pulCount, pNameArray );
パラメータ | データ型 | 説明 |
---|---|---|
hOutline |
ESS_HOUTLINE_T |
Essbaseアウトライン・ハンドル。 |
pszDimension |
ESS_STR_T |
世代名を取得する次元。 |
ulOptions |
ESS_ULONG_T |
これは、次のいずれかの値にできます:
|
pulCount |
ESS_PULONG_T |
pNameArrayに要素数が戻されます。指定したメンバーの世代名の数です。 |
pNameArray |
ESS_GENLEVELNAME_T |
指定された次元に対する世代名の構造体の配列。 |
備考
呼出し元は、EssFree()を呼び出して、使用後にpNameArray構造体を解放する必要があります。
この呼出しは、EssOtlOpenOutline()およびEssOtlOpenOutlineQuery()の両方に機能します。情報はEssOtlOpenOutlineQuery()呼出し中にサーバーから戻されるため、情報は両方に対してローカルに存在します。
戻り値
関数が正常終了した場合、戻り値は0になります。
例
#include <essapi.h> #include <essotl.h> ESS_STS_T sts = ESS_STS_NOERR; ESS_HOUTLINE_T hOutline; ESS_OBJDEF_T Object; ESS_STR_T Dimension; ESS_ULONG_T GenOpt; ESS_ULONG_T pCount = 0, i; ESS_PGENLEVELNAME_T pNameArray = ESS_NULL; ESS_ACCESS_T Access; ESS_STR_T AppName; ESS_STR_T DbName; AppName = "Sample"; DbName = "Basic"; sts=EssSetActive(hCtx, AppName, DbName, &Access); if (sts == 0) { memset(&Object, '\0', sizeof(Object)); sts = EssOtlOpenOutlineQuery(hCtx, &Object, &hOutline); Dimension = "Year"; GenOpt = ESS_GENLEV_ALL; if (!sts) { sts = EssOtlGetGenNames(hOutline, Dimension, GenOpt, &Count, &pNameArray); if(!sts && Count ) { for(i = 0; i<Count; i++) { printf("\nNumber %ld, Name %s ", pNameArray[i].usNumber, pNameArray[i].szName); } EssFree(hInst, pNameArray); } } }
関連トピック