この関数は、メンバー属性情報を設定します。
構文
ESS_FUNC_M
EssOtlSetMemberInfo
(
hOutline, hMember, pInfo
);
| パラメータ | データ型 | 説明 |
|---|---|---|
hOutline |
ESS_HOUTLINE_T |
アウトラインのコンテキスト・ハンドル |
hMember |
ESS_HMEMBER_T |
属性を設定するメンバーのハンドル |
pInfo |
ESS_MBRINFO_T |
メンバー情報の構造体 |
備考
属性
ESS_MBRINFO_T構造体の3つのフィールドは、属性専用です:
|
データ型 |
フィールド |
説明 |
|---|---|---|
|
ESS_BOOL_T |
fAttributed |
基本メンバーに関連する属性があるかどうかを示します: ESS_TRUEまたはESS_FALSEのいずれか。 |
|
ESS_USHORT_T |
Attribute.usDataType |
属性次元またはゼロレベル(リーフ・ノード)の属性メンバーは、次のいずれかのデータ型になります:
属性次元ではなく、属性メンバーの場合:
|
|
ユニオン ESS_BOOL_T ESS_STR_T ESS_DATETIME_T ESS_DOUBLE_T |
Attribute.value bData strData dtData dblData |
次の属性メンバー値のいずれかになります:
|
ESS_MBRINFO_T構造体の2つのフィールドの値は、属性専用です:
|
データ型 |
フィールド |
説明 |
|---|---|---|
|
ESS_USHORT_T |
usCategory |
次の次元カテゴリのいずれかになります:
|
|
ESS_USHORT_T |
usStorageCategory |
次の次元ストレージ・カテゴリのいずれかになります:
|
戻り値
正常終了の場合は0が戻されます。それ以外の場合は、次のいずれかの値が戻されます:
OTLAPI_BAD_CONSOL
OTLAPI_BAD_MBRNAME
OTLAPI_BAD_MEMBER
OTLAPI_ERR_ADDNAMEUSED
OTLAPI_ERR_CURTOOMANYDIMS
OTLAPI_ERR_BADSHARE
OTLAPI_ERR_BADSKIP
OTLAPI_ERR_BADSTORAGE
OTLAPI_ERR_BADSTORAGECATEGORY
OTLAPI_ERR_BADTIMEBAL
OTLAPI_ERR_ILLEGALBOOLEAN
OTLAPI_ERR_ILLEGALCURRENCY
OTLAPI_ERR_ILLEGALDATE
OTLAPI_ERR_ILLEGALNAME
OTLAPI_ERR_ILLEGALNUMERIC
OTLAPI_ERR_ILLEGALTAG
OTLAPI_ERR_LEAFLABEL
OTLAPI_ERR_NOSHAREPROTO
OTLAPI_ERR_NOTIMEDIM
OTLAPI_ERR_SHARENOTLEVEL0
例
#include <essapi.h>
#include <essotl.h>
ESS_STS_T sts = 0;
ESS_HOUTLINE_T hOutline;
ESS_HMEMBER_T hMemberJan;
ESS_MBRINFO_T MbrInfo;
ESS_PMBRINFO_T pMbrInfo = ESS_NULL;
ESS_OBJDEF_T Object;
ESS_APPNAME_T szAppName;
ESS_DBNAME_T szDbName;
ESS_OBJNAME_T szFileName;
memset(&Object, '\0', sizeof(Object));
Object.hCtx = hCtx;
Object.ObjType = ESS_OBJTYPE_OUTLINE;
strcpy(szAppName, "Sample");
strcpy(szDbName, "Basic");
strcpy(szFileName, "Basic");
Object.AppName = szAppName;
Object.DbName = szDbName;
Object.FileName = szFileName;
sts = EssOtlOpenOutline(hCtx, &Object, ESS_TRUE,
ESS_TRUE, &hOutline);
if (!sts)
{
sts = EssOtlFindMember(hOutline, "Jan",
&hMemberJan);
}
if (!sts && hMemberJan)
{
sts = EssOtlGetMemberInfo(hOutline,
hMemberJan, &pMbrInfo);
}
if (!sts && pMbrInfo)
{
pMbrInfo->usConsolidation = ESS_UCALC_SUB;
pMbrInfo->fTwoPass = ESS_TRUE;
pMbrInfo->fExpense = ESS_TRUE;
sts = EssOtlSetMemberInfo(hOutline,
hMemberJan, pMbrInfo);
}
if (pMbrInfo)
{
EssOtlFreeStructure(hOutline, count, structId, structPtr);
}
関連トピック