指定したメンバーごとに属性情報を戻します。
構文
ESS_FUNC_M EssCheckAttributes (
hCtx, Count, pMemberNameArray, ppAttributeTypeArray
);
| パラメータ | データ型 | 説明 |
|---|---|---|
hCtx; |
ESS_HCTX_T |
APIコンテキスト・ハンドル。 |
Count; |
ESS_USHORT_T |
指定した次元およびメンバーの数。 |
pMemberNameArray; |
ESS_PMBRNAME_T |
指定した次元およびメンバーの名前の配列。 |
ppAttributeTypeArray; |
ESS_PPUSHORT_T |
属性のタイプの配列に対する、次の定数識別子のいずれか(表6を参照):
|
アクセス
この関数を使用するのに、特別な権限は必要ありません。
例
void ESS_CheckAttributes()
{
ESS_STS_T sts=-1,sts1=-1;
int counter,i,j;
ESS_PMBRNAME_T pMbrNames=ESS_NULL;
ESS_PUSHORT_T pMbrAttrTypes=ESS_NULL;
ESS_CHAR_T buf[80]="";
/* counter = 4; */
printf("Please enter the number of member names that follow: ");
gets(buf);
counter=atoi(buf);
if (counter)
{
sts1 = EssAlloc(hInst, (counter * sizeof(ESS_MBRNAME_T)),(ESS_PPVOID_T)&pMbrNames);
if (!sts1)
{
memset(pMbrNames, 0, (counter * sizeof(ESS_MBRNAME_T)));
for (i = 0; i < counter; i++)
{
printf("Enter member name: ");
gets(buf);
strcpy(pMbrNames[i],buf);
}
sts = EssCheckAttributes(hCtx,counter,pMbrNames,&pMbrAttrTypes);
if (sts)
fprintf(stderr, "sts = %ld \n",sts);
else if (pMbrAttrTypes)
{
for (j = 0; j < counter; j++)
{
switch(pMbrAttrTypes[j])
{
case ESS_STANDARD_MEMBER:
strcpy(buf,"ESS_STANDARD_MEMBER");
break;
case ESS_STANDARD_DIMENSION:
strcpy(buf,"ESS_STANDARD_DIMENSION");
break;
case ESS_BASE_MEMBER:
strcpy(buf,"ESS_BASE_MEMBER");
break;
case ESS_BASE_DIMENSION:
strcpy(buf,"ESS_BASE_DIMENSION");
break;
case ESS_ATTRIBUTE_MEMBER:
strcpy(buf,"ESS_ATTRIBUTE_MEMBER");
break;
case ESS_ATTRIBUTE_DIMENSION:
strcpy(buf,"ESS_ATTRIBUTE_DIMENSION");
break;
case ESS_ATTRIBUTED_MEMBER:
strcpy(buf,"ESS_ATTRIBUTED_MEMBER");
break;
default:
strcpy(buf,"Unknown attribute type");
}
printf("%s is of type %s\n",pMbrNames[j],buf);
}
printf("\n");
}
}
}
}
関連トピック