2011-12-20 1 views
0

Я создал много отчетов с VS 2008. Теперь, начиная с VS 2010 для нового требования. Обратите внимание, что я использую отчет .rdlcне удалось выбрать subreport - .rdlc - VS 2010

  • Я могу добавить контроль над отчетами в отчет, но не смог выбрать доступные отчеты. Нет кнопки просмотра или выпадающего списка, чтобы выбрать доступный отчет .rdlc.

  • Когда я вручную набираю имя отчета, отчет не отображает какой-либо подзаголовок. Я также не вижу сообщения об ошибке в окне «Выход».

Как использовать подпорку с VS 2010? Я что-то пропустил? Любая помощь приветствуется.

У меня есть SQL 2005/2008 (установлены службы отчетов), VS 2008, VS 2010, установленный на том же ПК.

+0

Все ли отчеты в одном решении? Вы снова попытались создать файл решения? – SouravA

ответ

0

Сначала выберите подраздел отчет из панели инструментов и поместить, где вы хотите show.See изображение ниже enter image description here
Теперь правой кнопки мыши на подсвойствах отчета и введите суб имя отчета. enter image description here

Теперь Вы должны создать отчет к югу даже обработчика в файле .cs, откуда вы загружаете свой отчет так:

public Ctor() 
{ 
    string path = HttpContext.Current.Server.MapPath("Your Report path"); 
    ReportViewer1.Reset(); //important 
    ReportViewer1.ProcessingMode = Microsoft.Reporting.WebForms.ProcessingMode.Local; 
    ReportViewer1.LocalReport.SubreportProcessing += Process_Subreport; 
    LocalReport objReport = ReportViewer1.LocalReport; 
    objReport.ReportPath = path; 

    // Add Parameter If you need 
    List<ReportParameter> parameters = new List<ReportParameter>(); 
    parameters.Add(new ReportParameter("Name", Value)); 
    ReportViewer1.LocalReport.SetParameters(parameters); 
    ReportViewer1.ShowParameterPrompts = false; 
    ReportViewer1.ShowPromptAreaButton = false; 
    ReportViewer1.LocalReport.Refresh(); 

    //Add Datasourdce 
    ReportDataSource reportDataSource = new ReportDataSource(); 
    reportDataSource.Name = "Datasource Name Used due to report design"; 
    reportDataSource.Value = DataSourceValue; 
    objReport.DataSources.Add(reportDataSource); 
    objReport.Refresh(); 
} 

Теперь создать еще Handler метод для загрузки вспомогательных деталей отчета.

private void Process_Subreport(object sender, SubreportProcessingEventArgs e) 
{ 
    //You can get parameter from main report 
    int paramname = int.Parse(e.Parameters[0].Values[0].ToString()); 
    //You can also add parameter in sub report if you need like main report 

    //Now add sub report data source  
    e.DataSources.Add(new ReportDataSource("DataSource Name",DataSourceValue))); 
} 

Я думаю, что это будет работа для вас. Спасибо.

+0

heloo, мне нужна помощь, я следую приведенному выше коду, но есть ошибка при параметрах прохождения. «Под отчет не может быть показан» – Ajith