その次元メンバー名の一意性の設定を戻します。
構文
ESS_FUNC_M EssOtlGetDimensionNameUniqueness (
hOutline, hDim, pbNameUnique
);
パラメータ | データ型 | 説明 |
---|---|---|
hOutline |
ESS_HOUTLINE_T |
アウトラインのコンテキスト・ハンドル(入力)。 |
hDim |
ESS_HMEMBER_T |
次元ルート・メンバーのメンバー・ハンドル(入力)。 |
pbNameUnique |
ESS_PBOOL_T |
次元メンバー名の一意の設定(出力)。TRUEの場合、次元に重複するメンバー名を持たせることはできません。 |
備考
EssOtlFindMemberを呼び出して、ESS_HMEMBER_T (hDim)変数を設定してください。
戻り値
正常終了の場合は0が戻され、それ以外はエラーが戻されます。
例
ESS_FUNC_M ESS_GetSetDimNameUniq() { ESS_STS_T sts = 0; ESS_POUTLINEINFO_T pInfo = ESS_NULL; ESS_HOUTLINE_T hOutline; ESS_OBJDEF_T Object; ESS_APPNAME_T szAppName; ESS_DBNAME_T szDbName; ESS_OBJNAME_T szFileName; ESS_BOOL_T pbNameUnique; ESS_HMEMBER_T hDim = ESS_NULL; memset(&Object, '\0', sizeof(Object)); Object.hCtx = hCtx; Object.ObjType = ESS_OBJTYPE_OUTLINE; strcpy(szAppName, "Demo"); strcpy(szDbName, "Test"); strcpy(szFileName, "Test"); Object.AppName = szAppName; Object.DbName = szDbName; Object.FileName = szFileName; sts = EssOtlOpenOutline(hCtx, &Object, ESS_TRUE, ESS_TRUE, &hOutline); if (!sts) { sts = EssOtlFindMember(hOutline, "Year",&hDim); if (sts) printf("EssOtlFindMember failed sts %ld\n",sts); } /*Get the dimension's, Year, member-name uniqueness setting */ if (!sts) { sts = EssOtlGetDimensionNameUniqueness (hOutline, hDim, &pbNameUnique); if (sts) printf("EssOtlGetDimensionNameUniqueness failed sts %ld\n",sts); else printf("Dimension Year has Member Name Uniqueness value: %ld\n", pbNameUnique); } if (!sts) { sts = EssOtlFindMember(hOutline, "Product",&hDim); if (sts) printf("EssOtlFindMember failed sts %ld\n",sts); } if (!sts) { /*set Product to prohibit duplicate (non-unique) member names*/ pbNameUnique = ESS_TRUE; sts = EssOtlSetDimensionNameUniqueness (hOutline, hDim, pbNameUnique); if (sts) printf("EssOtlSetDimensionNameUniqueness failed sts %ld\n",sts); else printf("Dimension Product has Member Name Uniqueness value: %ld\n", pbNameUnique); } return sts; }
関連トピック