EssLROGetObject() retrieves an object linked to a data cell in an Essbase database.
ESS_FUNC_M EssLROGetObject (hCtx, plinkId, targetFile, usOption, pRetLRODesc);
ESS_HCTX_T | hCtx |
ESS_PLROHANDLE_API_T | plinkId ; |
ESS_STR_T | targetFile |
ESS_USHORT_T | usOption |
ESS_PLRODESC_API_T | pRetLRODesc |
hCtx | Essbase API context handle. |
plinkId | Pointer to object identification structure. |
targetFile | The name of the target file into which the object is retrieved. |
usOption | Option specifying whether to retrieve
the object, its catalog entry, or both. Use one of the following:
|
pRetLRODesc | 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 read privileges (ESS_PRIV_READ) for the active database.
ESS_FUNC_M ESS_LRO GetObject (ESS_HCTX_T hCtx) { ESS_FUNC_M sts = ESS_STS_NOERR; ESS_LROHANDLE_API_T linkId; ESS_LRODESC_API_T lroDesc; ESS_USHORT_T usOption = 2; /* Default is catalog */ ESS_CHAR_T targetFile[ESS_ONAMELEN_API]; memset(&lroDesc, 0, sizeof(ESS_LRODESC_API_T)); memset(&linkId, 0, sizeof(ESS_LROHANDLE_API_T)); /* Linked object is a LRO. (Windows Application) */ linkId.hObject = 4; linkId.cellKey.cellOffset = 136; linkId.cellKey.blkOffset = 113.0; linkId.cellKey.segment = 0.0; usOption = ESS_LRO_BOTH_API ; /* Get the catalog and the object */ strcpy ( targetFile , "c:\\temp\\lrofile"); sts = EssLROGetObject(hCtx, &linkId, targetFile, usOption, &lroDesc); if (sts) { printf("Could not get object\n"); } return sts; }
LRO Constant and Structure Definitions
EssLROAddObject()
EssLROUpdateObject()
EssLRODeleteObject()