Подотчет - ошибка в спецификации местоположения отчета - PullRequest
0 голосов
/ 13 февраля 2019

У меня возникла следующая ошибка, которую я подробно описал ниже:

"Не удалось найти вложенный отчет 'Encabezado' в указанном месте. УКАЗАТЬ МАРШРУТ \ Encabezado.rdlc. Убедитесь, чтоПодотчет опубликован, и его имя является правильным. "

InitializeComponent();
string nombreSP = "XXX_SP_REPORTING_SERVICES_DESPACHOS";
DataSet ds = frmListClass.ObtenerDS(parametrosXML, nombreSP);
string[] nodoParametro = frmListClass.ParsearParametros(parametrosXML);
int[] cantDecimales = frmListClass.ObtenerCantDecimales(parametrosXML);

ReportParameter p1  = new ReportParameter("Base", nodoParametro[0]);
ReportParameter p2  = new ReportParameter("User", nodoParametro[1]);
ReportParameter p3  = new ReportParameter("Sistema", nodoParametro[3]);
ReportParameter p4  = new ReportParameter("Caratula", nodoParametro[4]);
ReportParameter p5  = new ReportParameter("FormatoQRP", nodoParametro[5]);            
ReportParameter p6  = new ReportParameter("dcmlCant", cantDecimales[0].ToString());
ReportParameter p7  = new ReportParameter("dcmlCantTalle", cantDecimales[1].ToString());
ReportParameter p8  = new ReportParameter("dcmlPrecio", cantDecimales[2].ToString());
ReportParameter p9  = new ReportParameter("dcmlImporte", cantDecimales[3].ToString());



ReportDataSource dataSource = new ReportDataSource(nombreSP, ds.Tables[0]);
this.reportViewer1.LocalReport.DataSources.Clear();
this.reportViewer1.ProcessingMode = ProcessingMode.Local;
string rutaEncabezado = @"D:\\BASCS-ReportingServices\\BAS-ReportingServices\\BCSLDSPT\\Encabezado.rdlc";
string rutaRDLC = @"D:\\BASCS-ReportingServices\\BAS-ReportingServices\\BCSLDSPT\\Report1.rdlc";
Stream subReport = File.OpenRead(rutaEncabezado);
Stream report = File.OpenRead(rutaRDLC);            
this.reportViewer1.LocalReport.LoadReportDefinition(report);
this.reportViewer1.LocalReport.LoadSubreportDefinition("Encabezado", subReport);
this.reportViewer1.LocalReport.SubreportProcessing += new SubreportProcessingEventHandler(AgregarEncabezado);                                                                     
this.reportViewer1.LocalReport.DataSources.Add(dataSource);
this.reportViewer1.LocalReport.SetParameters(new ReportParameter[] { p1, p2, p3, p4, p5, p6, p7, p8, p9/*, p10, p11, p12, p13*/ });
this.reportViewer1.RefreshReport();                        

Warning[] warnings;
string[] streamIds;
string mimeType;
string encoding;
string filenameExtension;
byte[] bytes = reportViewer1.LocalReport.Render("PDF", null, out mimeType, out encoding, out filenameExtension, out streamIds, out warnings);

string rutaArchivo = frmListClass.ObtenerRutaPDF(bytes);
System.Diagnostics.Process.Start(rutaArchivo);


void AgregarEncabezado(object sender, SubreportProcessingEventArgs e)
    {
        string Parametros = "1, 1, NULL, 1";            
        string cadenaConexion = "Data Source=SRVDESARROLLO7\\BASCS; Initial Catalog=bascsreport ;User Id=sa; Password=sa";
        string cadenaComandoSQL = frmListClass.SeteosSQL + frmListClass.SP_Encabezado + " " + Parametros;

        SqlConnection ConexionSQL = new SqlConnection(cadenaConexion);
        ConexionSQL.Open();
        SqlCommand ComandoSQL = new SqlCommand(cadenaComandoSQL, ConexionSQL);
        ComandoSQL.CommandType = CommandType.Text;
        ComandoSQL.Parameters.AddWithValue("@monoemp, @codempusu, @tituloinf, @whereemp", Parametros);
        SqlDataAdapter da = new SqlDataAdapter();
        da.SelectCommand = ComandoSQL;
        DataSet dsEncabezado = new DataSet();
        da.Fill(dsEncabezado, Parametros);
        ConexionSQL.Close();

        ReportDataSource dataSourceEncabezado = new ReportDataSource("XXX_SP_REPORTING_PARAMETROS_EMP", dsEncabezado.Tables[0]);
        e.DataSources.Add(dataSourceEncabezado);

    }

Мне нужно иметь возможность передать в основной отчет Подотчет (Заголовок), так как в нем я имеюпараметры, которые отображаются в заголовке и повторяются почти во всех отчетах.Подотчет находится в другом проекте, может ли это быть проблемой?

Может ли SubreportProcessingEventHandler быть плохо определенным?

Пожалуйста, мне нужна помощь !!

...