Пример 6. Привязка к источникам данных

Top  Previous  Next

Во всех рассмотренных примерах мы печатали таблицу, которая содержит обычный текст. В этом примере мы покажем, как сформировать таблицу, используя источник данных. Для этого создадим таблицу следующего вида:

 

tableExample6

 

Создадим обработчик события ManualBuild, который будет делать следующее:

 

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

 

Вот код обработчика:

 

private void Table1_ManualBuild(object sender, EventArgs e)

{

  // получаем источник данных по его имени

  DataSourceBase rowData = Report.GetDataSource("Products");

  // инициализируем его

  rowData.Init();

  

  // печатаем заголовок таблицы

  Table1.PrintRow(0);

  Table1.PrintColumns();

  

  // выполняем цикл, пока в источнике данных есть записи

  while (rowData.HasMoreRows)

  {

    // печатаем строку таблицы

    Table1.PrintRow(1);

    Table1.PrintColumns();

    

    // переходим на следующую запись источника

    rowData.Next();

  }

  

  // печатаем подвал таблицы

  Table1.PrintRow(2);

  Table1.PrintColumns();

}

 

Примерно такие же действия выполняет FastReport при печати бэнда "Данные". Если запустить отчет, мы получим следующее:

 

tableExample6Result