Finds a member with the specified name and returns a handle to the member.
Syntax
ESS_FUNC_M EssOtlFindMember (hOutline, pszMember, phMember);
Parameter | Data Type | Description |
---|---|---|
hOutline | ESS_HOUTLINE_T | Outline context handle. |
pszMember | ESS_STR_T | Member name to find. Can be a simple member name or a qualified member name (distinguishing this member from another member having the same name). For information about syntax used to specify a qualified member name, see the Oracle Essbase Database Administrator's Guide section entitled "Creating and Working With Duplicate Member Outlines." |
phMember | ESS_PHMEMBER_T | Variable for the return of the member handle. ESS_NULL if the member is not found. |
Notes
If the target member has shared members, only the handle to the actual member is returned.
Once you have the member handle to the actual member, use EssOtlGetNextSharedMember() to get shared member information.
If no member is found, *phMember is set to ESS_NULL and the call returns 0.
Whenever you use EssOtlFindMember(), always perform two checks:
Check the return status.
Check whether the handle was returned.
Return Value
Returns 0 if successful.
Example
#include <essapi.h> #include <essotl.h> ESS_STS_T sts = 0; ESS_OBJDEF_T Object; ESS_HOUTLINE_T hOutline; ESS_HMEMBER_T hDimProduct; ESS_APPNAME_T szAppName; ESS_DBNAME_T szDbName; ESS_OBJNAME_T szFileName; 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); if (!sts) { sts = EssOtlFindMember(hOutline, "Product", &hDimProduct); }
See Also