クエリー・モードで開かれたアウトラインの次元内で名前が重複しているメンバーの数を戻します。
構文
ESS_FUNC_M EssOtlGetDimensionNameUniqueness (
hOutline, hDim, *pulDupCount
);
パラメータ | データ型 | 説明 |
---|---|---|
hOutline |
ESS_HOUTLINE_T |
アウトラインのコンテキスト・ハンドル(入力)。 |
hDim |
ESS_HMEMBER_T |
入力の次元。これは、EssOtlQueryGetFirstDimension()またはEssOtlQueryGetNextDimension()によって戻されます。 |
*pulDupCount |
ESS_ULONG_T |
名前が重複しているメンバーの数(出力)。 |
備考
次元内の共有メンバーは、カウントされません。
この関数を呼び出す前に、EssOtlOpenOutlineQueryを呼び出し、クエリー・モードでアウトラインを開いてください。
戻り値
正常終了の場合は0が戻され、それ以外はエラーが戻されます。
例
ESS_FUNC_M ESS_GetCount() { 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_HMEMBER_T hDim; ESS_LONG_T pulDupCount; 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 = EssOtlOpenOutlineQuery (hCtx, &Object, &hOutline); if (!sts) { sts = EssOtlQueryGetFirstDimension(hOutline, &hDim); if (sts) printf("EssOtlQueryGetFirstDimension failed sts %ld\n",sts); } if (!sts) { // returns pulDupCount which gives the number of members in a dimension // whose names are duplicate sts = EssOtlGetCountOfDupMemberNameInDim (hOutline, hDim, &pulDupCount); if (sts) printf("EssOtlGetCountOfDupMemberNameInDim failed sts %ld\n",sts); } return sts; }
関連トピック