Вопросы по данным
FastReport.Net 1.3.12
1. Как создать источник данных без привязки к базе, такой который в внутри отчета прописывается как:
C:\Program Files\FastReports\FastReport.Net\Demos\C#\DataFromDataSet\report.frx
2. внутри отчета sql запрос:
<!--sql--><div class='sqltop'>SQL</div><div class='sqlmain'><!--sql1--><span style='color:blue;font-weight:bold'>select</span> * <span style='color:green'>from</span> <span style='color:orange'>some_table</span> <span style='color:orange'><span style='color:green'>where</span> </span>id<span style='color:orange'>=</span>@param <!--sql2--></div><!--sql3-->
значение по умолчанию для param=1, тип int32
в форме:
3. Как сделать следующее (для отладки):
В отчете есть параметр. Если я в дизайнере нажимаю кнопку "Предварительный просмотр", то он меня спрашивает значения для параметра. Если из кода вызываю Show() то не спрашивает.
1. Как создать источник данных без привязки к базе, такой который в внутри отчета прописывается как:
<Dictionary>
<TableDataSource Name="Employees" ReferenceName="Data.Employees" DataType="System.Int32" Enabled="true">
<Column Name="ID" DataType="System.Int32"/>
<Column Name="Name" DataType="System.String"/>
</TableDataSource>
</Dictionary>
взято из файлаC:\Program Files\FastReports\FastReport.Net\Demos\C#\DataFromDataSet\report.frx
2. внутри отчета sql запрос:
<!--sql--><div class='sqltop'>SQL</div><div class='sqlmain'><!--sql1--><span style='color:blue;font-weight:bold'>select</span> * <span style='color:green'>from</span> <span style='color:orange'>some_table</span> <span style='color:orange'><span style='color:green'>where</span> </span>id<span style='color:orange'>=</span>@param <!--sql2--></div><!--sql3-->
значение по умолчанию для param=1, тип int32
в форме:
Report report= new Report();
report.Load(Application.StartupPath + "\\report.frx");
report.SetParameterValue( "param", 7 );
report.Show();
так отчет все равно вызывается со значением по умолчанию3. Как сделать следующее (для отладки):
В отчете есть параметр. Если я в дизайнере нажимаю кнопку "Предварительный просмотр", то он меня спрашивает значения для параметра. Если из кода вызываю Show() то не спрашивает.
Комментарии
1) нужно зарегистрировать источник данных вызовом report.RegisterData(DataTable, name).
2) Вы путаете параметр запроса и параметр отчета. Метод SetParameterValue устанавливает параметр отчета. См. документацию:
http://fast-report.com/documentation/UserM...passvalueto.htm
3) добавьте в отчет диалоговую форму, и перетащите на нее параметр. Если не хотите показывать форму, установите ее св-во Visible = false.
2. Понял, спасибо
3. Речь шла о чем то вроде:
- источник данных находится в приложении, его надо регистрировать вызовом report.RegisterData;
- источник данных создается в отчете, в меню "Данные/Новый источник данных...".
3) запросить значение параметра можно только с помощью диалоговой формы. Скрыть диалог можно так:
report.Load(...);
(report.FindObject("Form1") as DialogPage).Visible = false;
report.Show();