none
No se encuentra ruta de crystal reports RRS feed

  • Pregunta

  • buenas tardes , una consulta cuando ejecuto mi aplicacion web no encuentra la siguiente ruta

     string reportPath = Server.MapPath("Reports/ReportByEnterpriseYearCurrency.rpt");
    
       ReportDocument rpt = new ReportDocument();
    
       rpt.Load(reportPath);
    
    

    El sistema no puede hallar el archivo especificado.

    me sale ese error pero esto es cuando lo ejecuto en el proyecto, porque si eejcuto la pagina de anera independiente si me  muestra el reporte.

    Habra que configurar algo mas?

    Saludos.

    martes, 25 de enero de 2011 17:04

Respuestas

  • Hola , que tal, bueno así lo solucioné

    primero en el webconfig

    <appSettings> 
      <add key="ReportFolder" 
    value="C:\tustena\Reports\" /> 
    
    </appSettings> 
    

    y luego en el code-behing

     private void ConfigureCrystalReports()
     {
    
     string reportFolder = ConfigurationManager.AppSettings["ReportFolder"]; 
      string reportPath = reportFolder + "\ReportByEnterpriseYearCurrency.rpt";   
      ReportDocument rpt = new ReportDocument(); 
      rpt.Load(reportPath); ......

    Así lo hice.

    Ojala y a alguién le sirva

    Saludos.

    • Marcado como respuesta Augusto C viernes, 28 de enero de 2011 18:17
    viernes, 28 de enero de 2011 18:14

Todas las respuestas

  • hola

    no has probado asignando el reportPath a un textbox o label para ver que path esta resolviendo el Server.MapPath ?

    si te aniams a poner un breakpoint tambien es valido

    con esto podrias ver si la ruta generada es correcta

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 25 de enero de 2011 17:11
  • Hoal bueno no he hecho la prueba ,pero creo que breakpoint solo se pude hacer en ambiente de desarrollo y no es ahi donde falla, falla cuando sta agregada al proyecto.

    Saludos.

    martes, 25 de enero de 2011 18:15
  • hola

    por eso sugeri las dos opciones, como no habias mencionado en que entorno se daba el problema propuse el break o sino puedes poner el Label o textbox, para escribir alli el valor que retorna el Server.MapPath() y analziar que esta resolviendo y si es correcto o no

     

    en el entorno de desarrolo podrias usar el label para analizarlo

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 25 de enero de 2011 19:46
  • Hola , mi aplicstivo va masomenos asi.

     private void Page_Init(object sender, EventArgs e)
        {
    
          filldrpEnterprise();
          filldrpYear();
          filldrpCurrency();
          ConfigureCrystalReports();
        }
    
     private void ConfigureCrystalReports()
        {
    
          string reportPath = Server.MapPath("Reports/ReportByEnterpriseYearCurrency.rpt");
          ReportDocument rpt = new ReportDocument();
          rpt.Load(reportPath);
    
    
          ConnectionInfo connectionInfo = new ConnectionInfo();
    ..............................
    .............................

    donde puedo poner el label , esa ruta es la que no resuelve , ademas te comento que tengo una clase que me permite generar messagebox no el del windowsform, sino es una que usa javascript , quizas pudiera poner ahi la ruta..

    pero dodne ,aver si me ayudas.

     

    miércoles, 26 de enero de 2011 19:53
  • Hola le puse brakpoint como sugeriste en ambiente de desarrollo, esta es la ruta que esta resolviendo

    C:\tustena\Reports\ReportByEnterpriseYearCurrency.rpt

    miércoles, 26 de enero de 2011 20:24
  • Hola , que tal, bueno así lo solucioné

    primero en el webconfig

    <appSettings> 
      <add key="ReportFolder" 
    value="C:\tustena\Reports\" /> 
    
    </appSettings> 
    

    y luego en el code-behing

     private void ConfigureCrystalReports()
     {
    
     string reportFolder = ConfigurationManager.AppSettings["ReportFolder"]; 
      string reportPath = reportFolder + "\ReportByEnterpriseYearCurrency.rpt";   
      ReportDocument rpt = new ReportDocument(); 
      rpt.Load(reportPath); ......

    Así lo hice.

    Ojala y a alguién le sirva

    Saludos.

    • Marcado como respuesta Augusto C viernes, 28 de enero de 2011 18:17
    viernes, 28 de enero de 2011 18:14