EssGBeginDataPoint() begins a data point operation.
ESSG_FUNC_M EssGBeginDataPoint (hGrid, ulRow, ulColumn, ulOptions);
| ESSG_HGRID_T | hGrid |
| ESSG_ULONG_T | ulRow |
| ESSG_ULONG_T | ulColumn |
| ESSG_ULONG_T | ulOptions |
| hGrid | Handle passed back from EssGNewGrid. |
| ulRow | Row of the data point. |
| ulColumn | Column of the data point. |
| ulOptions | Reserved for future use. Should be set to zero. |
If successful, returns ESSG_STS_NOERR.
None.
ESSG_VOID_T ESSG_BeginDataPoint(ESSG_HGRID_T hGrid)
{
ESSG_FUNC_M sts = ESS_STS_NOERR;
ESSG_ULONG_T ulRow;
ESSG_ULONG_T ulColumn;
ESSG_ULONG_T ulOptions;
ESSG_PPDATA_T ppDataIn;
ESSG_RANGE_T rDataRangeIn;
ESSG_ULONG_T ulMembers, i;
ESSG_PSTR_T ppszMembers;
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)
{
ppDataIn = BuildTable(&rDataRangeIn);
ulRow = 1;
ulColumn = 2;
ulOptions = 0;
/* start the data point operation */
sts = EssGBeginDataPoint(hGrid, ulRow, ulColumn, ulOptions);
}
if(sts == 0)
{
/* send the entire grid to define the query */
sts = EssGSendRows(hGrid, &rDataRangeIn,
ppDataIn);
}
if(sts == 0)
{
/* perform the data point operation */
sts = EssGPerformOperation(hGrid, 0);
/* free the built data */
FreeTwoDim(ppDataIn, rDataRangeIn.ulNumRows);
}
if(sts == 0)
{
/* determine the results of the data point operation */
sts = EssGGetDataPointResults(hGrid, &ulMembers,
&ppszMembers, &usState);
}
if(!sts && ulMembers)
{
printf("\nMembers:");
for (i = 0; i<ulMembers; i++)
printf("\n\t%s", ppszMembers[i]);
EssGFreeMemberInfo(hGrid, ulMembers, ppszMembers);
}
if(!sts)
{
EssGEndOperation(hGrid, 0);
EssGDisconnect(hGrid, 0);
}
}