я хочу добавить возможности создания отчетов в свое программное обеспечение и решил использовать RDL и локальное средство просмотра отчетов (WinForms)
Я читал несколько хороших HOW TO (MSDN и gotreportviewer) и статей, и я успешно сделал следующее:
Преобразование последней схемы с помощью XSD (http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition) и во время выполнения сгенерировал RDL-файл, который отображается в средстве просмотра репозитория.
Проблема в том, что, поскольку я не использую сервер и в локальном режиме нет фактического соединения, поскольку набор данных доставляется во время выполнения, данные не являются постоянными.
я хочу внедрить данные таким образом, чтобы требовалось только RDL (на самом деле это RDLC, поскольку он находится в локальном режиме).
я обнаружил, что есть встроенный способ XML:
[из: StockChartsRS2008R2.rdl]
…
<DataSet Name="AWDataSet"> <Query> <DataSourceName>AdventureWorksOffline</DataSourceName> <CommandText><Query> <ElementPath>Root /Stock {@High (Float), @Low (Float), @Close (Float), @Open(Float), @StockPriceDate(Date)} </ElementPath> <XmlData> <Root> <Stock High="30.4113833868661" Low="29.9705661418443" Close="30.2016959908158" Open="30.2323120165209" StockPriceDate="2008-01-13T00:00:00"/>
...
Проблема в том, что когда я использую локальное средство просмотра отчетов, мне нужно восстановить набор данных из встроенных данных, и я не знаю, как это сделать:
_reportViewer.LocalReport.DataSources.Add(new ReportDataSource(???))
в случае успеха это гарантирует, что как при работе в режиме сервера, так и в режиме клиента мои данные всегда будут доступны, а отчет будет отображаться
также есть ли лучший способ, чем встроенный XML, для сохранения данных?
Спасибо, мош.