Sets a member as an extended shared member.
Syntax
ESS_FUNC_M EssOtlSetOriginalMember (hOutline, hMember, pszOriginalMbr);
Parameter | Data Type | Description |
---|---|---|
hOutline | ESS_HOUTLINE_T | Outline context handle (input). |
hMember | ESS_HMEMBER_T | Member name (input). This member will be set as extended shared. |
pszOriginalMbr | ESS_STR_T | The original member name intended to share with (input). |
Notes
If hMember is not shared already, it will be marked as extended shared.
If you use this function on an outline in which all member names are unique, it will have no effect.
Before you call this function, call EssOtlOpenOutline to open the outline in editing mode.
Given the following hierarchy, if you pass to this function the member handle (hMember) corresponding to [Diet].[100-10], and the original member (pszOriginalMbr) as [200].[100-10], then [Diet].[100-10] becomes an extended shared member of [200].[100-10].
100 100-10 200 100-10 (duplicate) Diet 100-10 (shared with [200.100-10])
Return Value
Returns 0 if successful; otherwise, returns an error.
Example
ESS_FUNC_M ESS_SetOrigMember() { 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 hMember = ESS_NULL; 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, "[Diet].[100-10]", &hMember); } if (!sts && hMember) { sts = EssOtlSetOriginalMember (hOutline, hMember, "[100].[100-10]"); } return sts; }
See Also