この関数は、単独のデータポイントを表現する1つの値をサーバーから取得します。
構文
ESSG_FUNC_M
EssGCell
(
hGrid, usCount, pszMbrs, pDataCell
);
| パラメータ | データ型 | 説明 |
|---|---|---|
hGrid |
ESSG_HGRID_T |
EssGNewGridから戻されるハンドル。 |
usCount |
ESSG_USHORT_T |
送信対象メンバーの数。EssGCellがレポートできる次元の最大数は20です。 |
pszMbrs |
ESSG_PSTR_T |
クエリー対象のメンバー名の配列。次元ごとに1つのみ代表が許可されます。 |
pDataCell |
ESSG_DATA_T |
サーバーから戻される値。 |
備考
指定できるメンバーの最大数は、次のとおりです:
20メンバー。
1次元につき1メンバー。
次元に対してメンバーを指定しない場合、デフォルトとして最上位レベル(次元)のメンバーが使用されます。
戻り値
正常終了の場合は、ESSG_STS_NOERRが戻されます。
アクセス
なし。
例
ESSG_VOID_T ESSG_Cell (ESSG_HGRID_T hGrid)
{
ESSG_FUNC_M sts = ESS_STS_NOERR;
ESSG_USHORT_T usCount;
ESSG_DATA_T DataCell;
ESSG_CHAR_T *pszMbrs[5] = { "Actual", "Jan",
"West", "Audio",
"Sales"};
/* connect the grid to a database on the server */
sts = EssGConnect(hGrid, "Rainbow", "Admin",
"Password", "Demo", "Basic",
ESSG_CONNECT_NODIALOG);
/* retrieve cell value */
usCount = 5;
if(sts == 0)
sts = EssGCell(hGrid, usCount, pszMbrs,&DataCell);
if(!sts)
{
switch(DataCell.usType)
{
case(ESSG_DT_STRING):
printf("%s", DataCell.Value.pszStr+1);
break;
case(ESSG_DT_LONG):
printf("%ld", DataCell.Value.lData);
break;
case(ESSG_DT_DOUBLE):
printf("%g", DataCell.Value.dblData);
break;
case(ESSG_DT_BLANK):
break;
case(ESSG_DT_RESERVED):
printf("#Reserved");
break;
case(ESSG_DT_ERROR):
printf("#Error");
break;
case(ESSG_DT_MISSING):
printf("#Missing");
break;
case(ESSG_DT_ZERO):
printf("%ld", DataCell.Value.lData);
break;
case(ESSG_DT_NOACCESS):
printf("#NoAccess");
break;
case(ESSG_DT_MEMBER):
printf("%s", DataCell.Value.pszStr+1);
break;
default:
break;
}
}
if(!sts)
EssGDisconnect(hGrid, 0);
}
関連トピック