Lists the drill-through URL names within the active database outline.
Syntax
ESS_FUNC_M EssListDrillThruURLs (hCtx, &pCountOfUrls, &pUrls);| Parameter | Data Type | Description |
|---|---|---|
hCtx | ESS_HCTX_T | API context handle |
pCountOfUrls | ESS_PUSHORT_T | Count of drill-through URLs |
pUrls | ESS_PPDURLINFO_T | List of URLs |
Notes
The ESS_DURLINFO_T structure array must be deallocated by the caller using EssFreeStructure() with the ESS_DT_STRUCT_URLINFO option.
Return Value
If successful, lists drill-through URLs in the active database outline.
If unsuccessful, returns an error code.
Access
Caller must have database Read privilege (ESS_PRIV_READ) for the specified database.
Caller must have selected the specified database as the active database using EssSetActive().
Example
static void DisplayUrlDefn (ESS_PDURLINFO_T pUrls )
{
ESS_UINT_T i;
printf("\tUrlname : %s\n", pUrls->cpURLName );
if (pUrls->bIsLevel0)
printf("\tUrl Is Level-0 slice : Yes\n");
else
printf("\tUrl Is Level-0 slice : No\n");
printf("\tUrlXmlsize : %i\n", pUrls->iURLXmlSize );
printf("\tUrlXml : %s\n", (ESS_STR_T) pUrls->cpURLXml);
printf("\tNumber of drill region(s): %d\n", pUrls->iCountOfDrillRegions);
for ( i = 0; i < pUrls->iCountOfDrillRegions; i++ )
{
printf("\t\tDrillRegion[%d]: %s\n", i, pUrls->cppDrillRegions[i] );
}
printf("\n");
}
ESS_STS_T sts = ESS_STS_NOERR;
ESS_USHORT_T usCountOfURLs, i;
ESS_PDURLINFO_T listOfURLs;
ESS_DURLINFO_T url;
/* Valid case*/
sts = EssListDrillThruURLs(hCtx, &usCountOfURLs, &listOfURLs);
printf("EssListDrillThruURLs sts: %ld\n",sts);
if(!sts)
{
printf("\tCount of URL: %d\n", usCountOfURLs);
printf("\tList of URL(s):\n");
for(i = 0; i < usCountOfURLs; i++)
{
DisplayUrlDefn (&listOfURLs[i]);
}
}
EssFreeStructure (hInst, ESS_DT_STRUCT_URLINFO, usCountOfURLs, listOfURLs);