IDataGridView.SetDataSet

Синтаксис

SetDataSet(Value: IDatasetModel; AutoFillColumns: Boolean);

Параметры

Value. Реляционный источник репозитория, данные которого необходимо отобразить в компоненте;

AutoFillColumns. Признак автоматического добавления всех полей источника в столбцы компонента.

Описание

Метод SetDataSet устанавливает для компонента реляционный источник данных.

Комментарии

В качестве источника данных для компонента в параметре Value могут выступать следующие объекты репозитория: Запрос, Таблица, Представление, Присоединенная таблица.

При выполнении метода в коллекции Columns будут созданы столбцы для каждого поля источника. Если параметру AutoFillColumns установлено значение True, то для столбцов будут установлены настройки по умолчанию и они будут отображены в компоненте. При значении параметра False будет необходимо в прикладном коде установить видимость и настройки тех столбцов, которые должны отображаться в компоненте.

Пример

Для выполнения примера в репозитории предполагается наличие веб-формы и таблицы с идентификатором T_DATA. В таблице имеется поле с идентификатором ID. На веб-форме расположена кнопка с наименованием Button1 и компонент DataGridView с наименованием DataGridView1.

Добавьте ссылки на системные сборки: DB, Express, Metabase, Tab, WebForms.

Class TESTWebForm: WebForm
    Button1: WebButton;
    DataGridView1: WebDataGridView;

    Sub Button1OnClick;
    Var
        Mb: IMetabase;
        DGView: IDataGridView;
        Sorts: ISortSettings;
        Sort: ISortSetting;
        ExecSettings: IExecuteSettings;
    Begin
        Mb := MetabaseClass.Active;
        DGView := DataGridView1.DataGridView;
        // Смена источника
        DGView.SetDataSet(Mb.ItemById("T_DATA").Bind As IDatasetModel, True);
        DGView.BeginUpdate;
        // Настройки отображения данных
        ExecSettings := DGView.ExecuteSettings;
        ExecSettings.AllowPaging := True;
        ExecSettings.CurrentPage := 1;
        ExecSettings.RecordsCount := 10;
        ExecSettings.RecordsLimit := 1000;
        // Настройки сортировки
        DGView.EnableSort := True;
        Sorts := DGView.SortSettings;
        Sort := Sorts.Add(DGView.Columns.Item(0));
        Sort.SortDirectionType := SortDirection.Ascending;
        Debug.WriteLine("Сортировка по полю: " + Sort.FieldId);
        // Примеры условий фильтрации
        DGView.Expression.AsString := "(({id}>=100) and ({id}<=1000))";
        DGView.Expression.AsString := "({client_name}=""Петров"")";
        DGView.Expression.AsString := "({product_name}="""")";
        DGView.Expression.AsString := "({product_name} <> NULL)";
        DGView.EndUpdate;
    End Sub Button1OnClick;
End Class TESTWebForm;

При выполнении примера к компоненту веб-формы DataGridView1 будет подключен источник данных. Будут определены настройки отображения данных источника, задана сортировка по первому столбцу и выражения для фильтрации данных.

См. также:

IDataGridView