EssLROGetObject

Description

EssLROGetObject() retrieves an object linked to a data cell in an Essbase database.

Syntax

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

Parameters

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:
  • ESS_LRO_OBJ_API retrieves only the object.
  • ESS_LRO_CATALOG_API retrieves only the catalog entry.
  • ESS_LRO_BOTH_API retrieves object and catalog entry.
pRetLRODesc Pointer to object's description structure, ESS_LRODESC_API_T.

Return Value

If successful, returns ESS_STS_NOERR. Otherwise, returns an error code.

Notes

Access

A call to this function requires read privileges (ESS_PRIV_READ) for the active database.

Example

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;
}

See Also

LRO Constant and Structure Definitions
EssLROAddObject()
EssLROUpdateObject()
EssLRODeleteObject()