Visual Basic.NET - Archivo no encontrado

 
Vista:

Archivo no encontrado

Publicado por Damian (824 intervenciones) el 17/03/2009 17:31:23
Ese es el error que me tira al querer abrir un informe(Reporte) desde donde instale mi aplicacion realizada en VB.NET,el problema es que para poner la ruta de donde estan mis reportes escribo algo asi:
Public crReport As New CRAXDDRT.Report
Public crApp As New CRAXDDRT.Application

Reporte.crReport = Reporte.crApp.OpenReport(System.AppDomain.CurrentDomain.BaseDirectory & _
"EstadoFact.rpt", 1)

Ya probe con:
CurDir()
My.Application.Info.DirectoryPath()
System.AppDomain.CurrentDomain.BaseDirectory
Application.StartupPath 'Este no lo tengo
Application.ExecutablePath 'Este tampoco lo tengo
System.Reflection.Assembly.GetExecutingAssembly.Location

Ese que uso me tira la direccion hasta la carpeta Solucion y dentro de esta estan todos mis reportes, pero claro en mi maquina esta perfecto, pero el problema lo tengo cuando Genero mi Solucion, la publico, etc. y luego la quiero ejecutar en otra maquina me salta ese error de que no encuentra el archivo, lo tendre que poner en otro lado a los archivos del reporte?. Espeo me ayuden.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Archivo no encontrado

Publicado por OliBeer (391 intervenciones) el 18/03/2009 16:43:49
Hola

Trata de poner la ruta por medio de "../../Reportes/Reporte.vb" en lugar de con el System.AppDomain

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Archivo no encontrado

Publicado por Damian (824 intervenciones) el 18/03/2009 17:53:54
Porque esas barras invertidas /?, ademas como ya dije anteriormente, no puedo poner a mano toda la ruta hasta donde estan mis reportes porque cuando instale mi aplicacion en otras maquinas no va a econtrar dichos reportes, por ejemplo mis reportes estan en:C:Documents and SettingsBocaMis documentosVBConstruccionGamatConstruccionSolucion
Pero con esa barra() y en mi maquina obviamente que va a encontrar a los archivos, pero para las otras maquinas que pasa con la ruta?. Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Archivo no encontrado

Publicado por OliBeer (391 intervenciones) el 18/03/2009 23:34:02
Hola,

Mira, hay dos formas de accesar a un archivo en tu aplicación, estés donde estés, o sea, si estás en tu máquina o en otra... no importa.

La primera es con el AppDomain:

Ésta primera te trae toda la ruta desde C:

Ejemplo: C:bla/bla/bla/Aplicacion/Reportes/Reporte1.vb

La segunda es con diáginales "/", diágonales normales. si te puce invertidas, perdón me equivoque.

Ésta manera te trae la ruta a partir de dónde estás actualmente, qué quiere decir esto.

Si tu aplicación está más o menos así:

-Aplicacion
-Pantallas
.-Pantalla1.vb
.-Pantalla2.vb
.-Pantalla3.vb
.-Pantalla4.vb
-Reportes
.-Reporte1.vb
.-Reporte2.vb
.-Reporte3.vb

Supongamos que estamos ejecutando la pantalla2.vb, y queremos llamar a Reporte3.vb, entonces asignamos esto para la ruta:

"../Reportes/Reporte3.vb"

Esto es más o menos así:

"../" - nos salimos un nivel de la carpeta actual, lo cual nos deja en el nivel Aplicacion
"Reportes/" - entramos a la carpeta Reportes
"Reporte3.vb" - Accedemos a Reporte3.vb

Y con esta forma no importa dónde esté la aplicación, ya que pantalla2.vb estará siempre en su mismo nivel conforme a Aplicacion, al igual que Reporte3.vb.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Archivo no encontrado

Publicado por OliBeer (391 intervenciones) el 18/03/2009 23:38:50
El árbol debería quedar así:

1 Aplicacion
1.1 Pantallas
1.1.1 Pantalla1.vb
1.1.2 Pantalla2.vb
1.1.3 Pantalla3.vb
1.1.4 Pantalla4.vb
1.2 Reportes
1.2.1 Reporte1.vb
1.2.2 Reporte2.vb
1.2.3 Reporte3.vb
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Archivo no encontrado

Publicado por Damian (824 intervenciones) el 19/03/2009 03:03:09
Todo muy lindo,pero la solucion cual seria, que tengo que poner en el codigo, ya probe de todo, la ruta completa, con el System.AppDomain.CurrentDomain.BaseDirectory y otros y nada de nada. no se que mas puede ser.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Archivo no encontrado

Publicado por OliBeer (391 intervenciones) el 19/03/2009 16:57:26
Hola

Aquí:

Reporte.crReport = Reporte.crApp.OpenReport("Rutacondiágonales/EstadoFact.rpt", 1)

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Archivo no encontrado

Publicado por Damian (824 intervenciones) el 19/03/2009 18:25:16
No hay caso ya probe lo que me decis y es lo mismo, ahora me tira directorio no valido, antes era archivo no encontrado, ya probe con estos y nada de nada:

Public path as String="C:/Documents and Settings/Boca/Mis documentos/VB/Construccion/Gamat/Construccion/Solucion/EstadoFact.rpt"
'Public path As String = "../Solucion/EstadoFact.rpt"
'Public path As String = "C:Documents and SettingsBocaMis documentosVBConstruccionGamatConstruccionSolucionEstadoFact.rpt"

La variable path la pase luego al OpenReport y en ningun caso me funciona, estara mal generado el proyecto?, no me incluira los reportes cuando genero mi solucion?, es raro porque los reportes estan dentro de la carpeta Solucion.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Archivo no encontrado

Publicado por OliBeer (391 intervenciones) el 19/03/2009 19:42:20
Hola

Damián, pásame el árbol de tu proyecto, y dime, cuál es la forma en la que intentas abrir el reporte y cuál es el reporte que quieres abrir.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Archivo no encontrado

Publicado por Damian (49 intervenciones) el 19/03/2009 20:18:28
En el formulario donde tengo el control de Crystal que lugo se cargara segun el reporte que sea tengo esto:

Imports CRAXDDRT

Public Class FrCrystal
Public crApp As New Application
Public crReport As New Report
Public tbl As DatabaseTable
Public crCampo As DatabaseFieldDefinition
Public path As String = "C:Documents and SettingsBocaMis documentosVBConstruccionGamatConstruccionSolucion"
'Public path As String = "C:/Documents and Settings/Boca/Mis documentos/VB/Construccion/Gamat/Construccion/Solucion"
'Public path As String = "../Solucion/EstadoFact.rpt"
End Class
'Como veras uso la ruta que no esta comentada, aunque como ya dije, tambien probe las otras.

Luego desde el formulario donde se llama a un reporte en particular tengo esta linea y ademas de la conexion a la BD que no la pongo porque funciona bien:

Dim Reporte as New FrCrystal

Reporte.crReport = Reporte.crApp.OpenReport(Reporte.path & "EstadoFact.rpt", 1)
........
.......luego trabajo con el reporte
.......

Todos mis reportes estan dentro de la carpeta Solucion.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Archivo no encontrado

Publicado por OliBeer (391 intervenciones) el 19/03/2009 21:31:06
Hola,

Pásame el árbol de tu áplicación, y te armaré la ruta. Así la pruebas y verificas si funciona. Si no me pasas el árbol, no podré hacer mucho.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Archivo no encontrado

Publicado por Damian (49 intervenciones) el 19/03/2009 21:45:56
Ya te pase toda la ruta mas arriba es asi:
"C:Documents and SettingsBocaMis documentosVBConstruccionGamatConstruccionSolucionEstadoFact.rpt"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Archivo no encontrado

Publicado por OliBeer (391 intervenciones) el 20/03/2009 00:10:47
Perdóname

me refería a un árbol como éste:

1 Aplicacion
1.1 Pantallas
1.1.1 Pantalla1.vb
1.1.2 Pantalla2.vb
1.1.3 Pantalla3.vb
1.1.4 Pantalla4.vb
1.2 Reportes
1.2.1 Reporte1.vb
1.2.2 Reporte2.vb
1.2.3 Reporte3.vb

XD Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar