EssOtlGetLevelNameEx

Returns the member-name uniqueness setting for a specific level within a dimension.

Syntax

ESS_FUNC_M EssOtlGetLevelNameEx (hOutline, pszDimension, usLevel, pszName, pbNameUnique);
ParameterData TypeDescription

hOutline

ESS_HOUTLINE_T

Outline context handle.

pszDimension

ESS_STR_T

Name of dimension that contains the generation.

usLevel

ESS_USHORT_T

Number of level number for which to get a name. Leaf members are level 0.

pszName

ESS_PSTR_T

Buffer for return of the level of the specified dimension, allocated by the API (output).

pbNameUnique

ESS_PBOOL_T

The member-name uniqueness setting (output).

Notes

Return Value

Returns 0 if successful; otherwise, returns an error code.

Example

ESS_FUNC_M 
ESS_GetLevelNameEx()
{
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;
ESS_BOOL_T         bUnique= ESS_FALSE;
 
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);
 
/***************  Set and Get Level Name **************/
   Dimension = "Year";
   LevelNum = 0; 
   LevelName = "Level 0 Year";
 
   //SetLevelNameEx() so that level 0 member of Year cannot be non-unique
   if (!sts)
   {
    sts = EssOtlSetLevelNameEx(hOutline, Dimension,
     LevelNum, LevelName, ESS_TRUE);
   }
 
   // GetLevelNameEx() to see if the level is able to be non-unique
   if (!sts)
   {
    sts = EssOtlGetLevelNameEx(hOutline, Dimension,  
         LevelNum, &LevelName, &bUnique);
    printf("Level 0 members of Year have bUnique value of %ld\n", bUnique);
   
   }
   
   if (!sts && LevelName)
   {
    printf("Level Name: %s\n",LevelName);
         EssFree(hInst, LevelName);
   }
 
 return (sts);
}

See Also

  • EssOtlSetLevelNameEx