アクティブなデータベース・アウトライン内のドリルスルーURL名をリストします。
ドリルスルーURLの制限を参照してください。
構文
ESS_FUNC_M EssListDrillThruURLs (
hCtx, &pCountOfUrls, &pUrls
);
| パラメータ | データ型 | 説明 |
|---|---|---|
hCtx |
ESS_HCTX_T |
APIコンテキスト・ハンドル。 |
pCountOfUrls |
ESS_PUSHORT_T |
ドリルスルーURLのカウント。 |
pUrls |
ESS_PPDURLINFO_T |
URLのリスト。 |
備考
呼出し側は、ESS_DT_STRUCT_URLINFOオプションを指定したEssFreeStructureを使用してESS_DURLINFO_T構造体の配列を割当て解除する必要があります。
戻り値
正常に処理されると、アクティブなデータベース・アウトライン内のドリルスルーURLがリストされます。
処理に失敗すると、エラー・コードが戻されます。
アクセス
呼出し側は、指定したデータベースに対してデータベース読取り権限(ESS_PRIV_READ)を持っている必要があります。
呼出し側はEssSetActiveを使用して、指定したデータベースをアクティブ・データベースとして選択しておく必要があります。
例
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);