サーバーでレポート・スクリプトを実行します。
構文
ESSG_FUNC_M
EssGBeginReport
(
hGrid, pszReportIn, ulOptions
)
| パラメータ | データ型 | 説明 |
|---|---|---|
hGrid |
ESSG_HGRID_T |
EssGNewGridから戻されるハンドル。 |
pszReportIn |
ESSG_STR_T |
Essbaseのレポート指定が含まれた文字列(64K以下)。 |
ulOptions |
ESSG_ULONG_T |
戻されるグリッド・オプションを記述したビットマスク。有効な値は次のとおりです: ESSG_NOATTRIBUTESはpAttributesの値なしでグリッドを戻します。 |
備考
結果は2次元のセル配列で戻されます。
この操作では、行を送信する必要はありません。EssGPerformOperation、EssGGetResults、およびEssGGetRowsを呼び出すだけで十分です。
戻されたセル値の属性は、別のサーバー要求を使用して取得されます。ulOptionsパラメータにESSG_NOATTRIBUTESを渡すと、サーバーの発行する要求が1つ少なくなり、大規模な結果グリッドではより高速になります。
グリッドAPIを介してサーバーに渡されたレポートでは、必ずタブで区切られたレポート・フォーマットを戻す要求をする必要があります{TABDELIM}。タブで区切られていないレポート・フォーマットが戻されると、グリッドAPIが生成されたレポートをグリッドに変換できない場合があります。
#Missingの別名に使用される文字列がレポート指定により変更されると、欠落セルは文字列タイプ(ESSG_DT_STRING)として戻されます。またこのとき、新しい#Missingの別名は、ESSG_DT_MISSINGセルではなくテキストとして一緒に戻されます。
EssGBeginReport()および他のレポート関数を呼び出すクライアント・プログラムでは、新しいCグリッドAPIの構造体およびCグリッドAPIのデータ型(特にStringExとMemberEx)を考慮する必要があります。古いプログラムを新しいサーバーで使用するには、変更する必要があります。
戻り値
正常終了の場合は、ESSG_STS_NOERRが戻されます。
アクセス
なし。
例
ESSG_VOID_T ESSG_BeginReport (ESSG_HGRID_T hGrid)
{
ESSG_FUNC_M sts = ESS_STS_NOERR;
ESSG_PPDATA_T ppDataOut;
ESSG_RANGE_T rDataRangeOut;
ESSG_ULONG_T ulOptions;
ESSG_STR_T pszReportIn;
ESSG_USHORT_T usState;
/* connect the grid to a database on the server */
sts = EssGConnect(hGrid, "Rainbow", "Admin", "Password", "Demo", "Basic",
ESSG_CONNECT_DEFAULT);
if(sts == 0)
{ pszReportIn = "{TabDelim}<idesc Year !";
ulOptions = ESSG_NOATTRIBUTES;
sts = EssGBeginReport(hGrid, pszReportIn,
ulOptions);
}
if(sts == 0)
{
/* perform the report */
sts = EssGPerformOperation(hGrid, 0);
}
if(sts == 0)
{
/* determine the results of the report */
sts = EssGGetResults(hGrid, 0, &rDataRangeOut,
&usState);
}
if(sts ==0)
{
/* get all the data */
sts = EssGGetRows(hGrid, 0, &rDataRangeOut,
&rDataRangeOut, &ppDataOut);
}
if(sts == 0)
{
DisplayOutput (ppDataOut, rDataRangeOut);
/* Free the returned data */
EssGFreeRows(hGrid, &rDataRangeOut, ppDataOut);
}
if(!sts)
{
EssGEndOperation(hGrid, 0);
EssGDisconnect(hGrid, 0);
}
}
関連トピック