Project::GetDatasetInfo
GetDatasetInfo
Description
Get Dataset information
Syntax
DWORD GetDatasetInfo( LPCTSTR lpcszDatasetName, BOOL bNeedFolderInfo = FALSE, LPDatasetInfoMore pstMore = NULL )
Parameters
- lpcszDatasetName
- [input]name of the Dataset object
- bNeedFolderInfo
- [input]get folder info if the Dataset is one of the columns in a worksheet which could be inside a sub folder.
- To get subfolder info, it needs to do some searching so will take more time.
- pstMore
- More dataset info :
typedef struct tagDatasetInfoMore
{
char szDependent[MAXLINE]; /// corresponding 'X' dataset when plotting
}DatasetInfoMore, *LPDatasetInfoMore;
Return
return value is a DWORD with LOWORD defined in oc_const.h, can be one of the followings
PGDN_PLOTTABLE = 0x0001,
PGDN_IN_WKS = 0x0002,
PGDN_IN_MATRIX = 0x0004,
PGDN_IS_DATASET = 0x0008,
PGDN_LOOSE = 0x0010,
PGDN_FOLDER = 0x0020,
PGDN_FOLDER_SUB = 0x0040
PGDN_FUNCTION = 0x1000
PGDN_TEMP_DATASET = 0x2000
return HIWORD contains internal data type, FSI_DOUBLE, FSI_SHORT, FSI_MIXED etc.
Examples
EX1
void Project_GetDatasetInfo_ex1()
{
DWORD dwInfo;
foreach (string strDatasetName in Project.DatasetNames)
{
dwInfo = Project.GetDatasetInfo(strDatasetName);
printf("Info(Dataset %s) = 0x%X, data type = %d\n", strDatasetName, LOWORD(dwInfo), HIWORD(dwInfo));
}
}
EX2
void Project_GetDatasetInfo_ex2(string strDatasetName)
{
DWORD dwInfo = Project.GetDatasetInfo(strDatasetName, true);
if(dwInfo == 0)
{
printf("%s is not a dataset\n", strDatasetName);
return;
}
if(dwInfo & PGDN_FOLDER)
printf("dataset %s is in one of the worksheets in current folder\n", strDatasetName);
else if(dwInfo & PGDN_FOLDER_SUB)
printf("dataset %s is not in one of the worksheets in current folder, but it is inside one of the subfolders\n", strDatasetName);
else
printf("dataset %s is not in current folder, nor in any of its subfolders\n", strDatasetName);
}
Remark
See Also
Project::GetDatasetMasks, Project::GetDatasetPlotList
header to Include
origin.h
|