Search Results for

    Show / Hide Table of Contents

    Регистрация данных

    Если ваш отчет использует данные из приложения (например, типизированный источник данных или бизнес-объект), то их необходимо зарегистрировать в отчете. Это делается с помощью метода RegisterData объекта Report.

    При типичном сценарии работы с отчетом, рассмотренном здесь, вам не нужно регистрировать данные вручную. FastReport автоматически добавляет вызов метода RegisterData в код метода InitializeComponent вашей формы.

    Метод RegisterData нужно вызывать после того, как отчет загружен:

    report1 = new Report();
    report1.Load("report.frx");
    report1.RegisterData(dataSet1, "NorthWind");
    

    Метод RegisterData перегружен и позволяет регистрировать следующие типы данных:

    Метод Описание
    void RegisterData(DataSet data) Регистрация источника данных. Этот метод регистрирует все таблицы, представления и связи, которые имеются в источнике. Вызов этого метода эквивалентен вызову RegisterData(data, "Data"). Внимание: если регистрируете несколько источников, используйте версию метода RegisterData(DataSet data, string name).
    void RegisterData(DataSet data, string name) Регистрация источника данных. Этот метод регистрирует все таблицы, представления и связи, которые имеются в источнике. В параметре name можно указать любое имя; важно, чтобы оно не менялось и было уникальным (в случае, если регистрируется несколько источников). Имя name нигде не отображается, однако оно используется для привязки объектов отчета к набору данных. Например, мы регистрируем набор данных dataSet1, содержащий две таблицы - Customers и Orders: report.RegisterData(dataSet1, "MyDataSet");
    В файл отчета (.frx) будет добавлено два источника данных следующего вида:
    <TableDataSource Name="Customers" ReferenceName="MyDataSet.Customers">
    ...
    </TableDataSource>
    <TableDataSource Name="Orders" ReferenceName="MyDataSet.Orders">
    ...
    </TableDataSource>
    Как видно, они привязаны к исходному набору данных с помощью свойства ReferenceName. Теперь, если загрузить этот отчет и вызвать метод report.RegisterData(dataSet1, "MyDataSet"); будет выполнена привязка объектов TableDataSource в отчете к соответствующим таблицам набора данных dataSet1. Если привязку осуществить не удалось (например, указано другое имя name), при запуске отчета будет выдано окно с ошибкой "Источник данных не инициализирован".
    void RegisterData(DataTable data, string name) Регистрация таблицы.
    void RegisterData(DataView data, string name) Регистрация представления (view).
    void RegisterDataAsp(IDataSource data, string name) Регистрация источника данных при работе в ASP.NET.
    void RegisterData(DataRelation data, string name) Регистрация связи.
    void RegisterData(IEnumerable data, string name) Регистрация бизнес-объекта. Этот вызов эквивалентен вызову RegisterData(data, name, 1). Используя меню "Данные|Выбрать данные для отчета...", можно раскрыть структуру бизнес-объекта до нужной глубины вложенности.
    void RegisterData(IEnumerable data, string name, int maxNestingLevel) Регистрация дерева бизнес-объектов с начальным уровнем вложенности maxNestingLevel. Используя меню "Данные|Выбрать данные для отчета...", можно раскрыть структуру бизнес-объекта до нужной глубины вложенности.
    Back to top © 1998-2025 Copyright ООО «Быстрые отчеты»