OpenWhere(Params: IMetabaseObjectParamValues; Where: String): IDatasetInstance;
Params. Значения параметров для открытия источника данных. Null, если параметры отсутствуют;
Where. Условие фильтрации, используемое при открытии.
Метод OpenWhere открывает источник данных, используя указанное условие фильтрации.
Для выполнения примера в репозитории предполагается наличие запроса с идентификатором Query_1. Результирующий набор данных, который возвращает запрос при выполнении, должен содержать поле F_VALUE с числовыми значениями.
Добавьте ссылки на системные сборки: Db, Metabase.
Sub UserProc;
Var
MB: IMetabase;
MObj: IMetabaseObject;
DSInst: IDatasetInstance;
DSModel: IDatasetModel;
Fields: IDatasetInstanceFields;
Field: IDatasetInstanceField;
Begin
MB := MetabaseClass.Active;
MObj := MB.ItemById("Query_1").Bind;
DSModel := MObj As IDatasetModel;
DSInst := DSModel.OpenWhere(Null, "F_VALUE>200");
Fields := DSInst.Fields;
While Not DSInst.Eof Do
For Each Field In Fields Do
Debug.Write(Field.Value + " ");
End For;
Debug.WriteLine("");
DSInst.Next;
End While;
DSInst.Close;
End Sub UserProc;
При выполнении примера будет произведено открытие запроса. В результирующий набор данных попадут только те записи, у которых значение поля F_VALUE больше 200. Полученные данные будут выведены в консоль среды разработки.
См. также: