EssLROUpdateObject() stores an updated version of a linked reporting object on the server.
ESS_FUNC_M EssLROUpdateObject (hCtx, plinkId, usOption, pLRODesc);
ESS_HCTX_T | hCtx |
ESS_PLROHANDLE_API_T | plinkId |
ESS_USHORT_T | usOption |
ESS_PLRODESC_API_T | pLRODesc |
hCtx | Essbase API context handle. |
plinkId | Pointer to object identification structure. |
usOption | Option specifying whether to store
the object, its catalog entry, or both. Use one of the following:
|
pLRODesc | Pointer to object's description structure, ESS_LRODESC_API_T. |
If successful, returns ESS_STS_NOERR. Otherwise, returns an error code.
A call to this function requires write privileges (ESS_PRIV_WRITE) to the active database.
ESS_STS_T ESS_LRO UpdateObject (ESS_HCTX_T hCtx) { ESS_STS_T sts = ESS_STS_NOERR; ESS_LROHANDLE_API_T linkId; ESS_LRODESC_API_T lroDesc; ESS_USHORT_T usOption = 2; /* Default is catalog */ memset (&linkId, 0, sizeof(ESS_LROHANDLE_API_T)); memset (&lroDesc, 0, sizeof(ESS_LRODESC_API_T)); linkId.hObject = 25; linkId.cellKey.cellOffset = 149; linkId.cellKey.blkOffset = 113.0; linkId.cellKey.segment = 0.0; /* Linked object is a LRO. (Windows Application) */ lroDesc.usObjType = 1; /* Update both object and catalog */ usOption = ESS_LRO_BOTH_API; strcpy (lroDesc.lro.lroInfo.objName, "e:\\lro\\lroex.c"); strcpy (lroDesc.lro.lroInfo.objDesc, "My C file"); strcpy (lroDesc.userName, "user1"); lroDesc.linkId.hObject = linkId.hObject; sts = EssLROUpdateObject(hCtx, &linkId, usOption, &lroDesc); if (sts) { printf("Could not update linked object.\n"); } return sts; }
LRO Constant and Structure Definitions
EssLROGetObject()
EssLROAddObject()
EssLRODeleteObject()