2009-09-28 2 views
3

У меня есть несвязанный XtraReport, у которого есть элемент управления подрепортажа, который содержит другой отчет. Я называю «несвязанным» в отчет, который имеет определение полей с использованием схемы, но не привязан к какой-либо DataSet, я создаю DataTable с использованием уровня доступа к данным, а затем передаю этот объект в свойство DataSource отчета.Как создать несвязанный вложенный отчет в другой несвязанный отчет

Итак, у меня есть следующий код:

 // (...) Get the data from the db and fill a DataTable 

     if (table.Rows.Count > 0) 
     { 
      report.DataSource = table; 

      // (...) Get the data from the db and fill a DataTable for the subreport 
      report.SubPurchaseOrder.Report.DataSource = tableSubReport; 

      report.ShowPreviewDialog(); 
     } 
     else 
     { 
      MessageBox.Show("No data to show."); 
     } 

Но что я получаю, используя этот подход является подотчет печататься очень странно (взглянуть на attached pdf, жаль, что на испанском языке, но я думаю, что вы получите идея).

Я прочитал документацию DevExpress и, возможно, я не получаю такой подход, поэтому мой вопрос к вам заключается в том, как создать отчет, содержащий один или несколько подписок, но я должен предоставить данные для их заполнения, используя некоторый процесс, внешний для отчетов, такой как уровень доступа к данным?

Пожалуйста, дайте мне знать, если вопрос не указан правильно или отсутствует дополнительная информация.

EDIT:

Я загрузил пример проекта с докладом с проблемой here.

Я попытался использовать какие-то параметры. В случае BeforePrint контроля Вложенный отчет, я попытался:

((XRSubreport)sender).ReportSource.FilterString = "[IdPO_RO] = " + _idPurchaseOrder; 

и

((XRSubreport)sender).ReportSource.Parameters["Id"].Value = _idPurchaseOrder; 

Конечно, для второго, я добавил параметр и строку фильтра так же, как первый, но с использованием параметр.

+0

Является ли проблема в том, что суб-отчет повторяется 16 раз или что данные не привязаны к ярлыкам? – Jacob

+0

Да, данные не отображаются в ярлыках. Но, как вы можете видеть с ярлыками, которые не имеют источника данных, подчиненный файл привязан. – Sebastian

+0

Другое дело: когда я вызываю субрепорт без внутреннего отчета, он показывает все данные в ярлыках. – Sebastian

ответ

3

Я мог бы решить проблему.

Причина в том, что я назначал неправильный объект. Эта линия:

report.SubPurchaseOrder.Report.DataSource = tableSubReport; 

должно быть:

report.SubPurchaseOrder.ReportSource.DataSource = tableSubReport; 

Так краткое объяснение, что я использую другое свойство сослаться на доклад, содержащийся в элементе управления Вложенный отчет (XRSubreport).

Смежные вопросы