この関数は、メンバー属性情報を設定します。
構文
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); }
関連トピック