SoloCodigo
Bases de Datos => Crystal Reports => Mensaje iniciado por: Kev en Jueves 11 de Marzo de 2004, 23:29
-
Salu2
Buenas, quisiera saber si es posible enlazar a la BD para crear un informe a través de código en VB.
:huh: Porque mi aplicación usa reportes, creo el instalador, pero mi programa se instalara un la carpeta archivos de programa, en la unidad C o D o donde este instalado Windows, y como los reportes tambien se instalaran ahí al tratar de acceder a ellos hay un error porque no encuentra la Base de datos, ya que al momento de crear el reporte este y las bases de datos se encontraban en una carpeta de la unidad C:\APLICACION\.
:angry: Puedo obligar que el programa se instale en la unidad C:\APLICACION\ pero no soy conformista y ademas soy curioso, y quisiera saber si alguien tiene alguna solucion a este problema.
Gracias de antemano
:kicking:
-
Hola:
No te preocupes, no tienes que hacer un reporte con código. Haz lo siguiente, a mi me funciona:
1) En el reporte estadndo en Crystal, abre el menú base de datos, escoge la opción Establecer ubicación y a lo mejor tienes algo como esto:
Movimientos ventas!C:\VENTAS\BASE\Ventas.mdb
cambialo por esto
Movimientos ventas!Ventas.mdb
es decir, quitas la ruta. "Movimientos ventas" es la tabla y "ventas.mdb" la base de datos.
2) En el proyecto de VB en el formulario que cargaste el control de Crystal, prueba lo siguiente:
a) coloca en un botón el siguiente código:
CReport1.DataFiles(0) = App.Path & "Ventas.mdb"
CReport1.Connect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "Ventas.mdb" & ";Persist Security Info=False "
CReport1.ReportSource = crptReport
CReport1.ReportFileName = App.Path & "\ListaVentas.rpt"
CReport1.Action = 1
Con esto quedará solucionado tu problema
si tienes duda escribela
-
Mil gracias por tu respuesta se que ayudara mucho, estaba frustrado con esto. Aparte, donde aprendiste Crystal Reports me podrias aconsejar alguna pagina.
Gracias.
Salu2
:lol:
-
Hola Kev:
Realmente no tengo una página favorita de Crystal.
He aprendido un poco a través de libros, no se donde te encuentres a lo mejor te podá recomendar alguno, pero lo mas importante estarte metiendo a Crystal y estarle moviendo por todos lados
Saludos
Juan Carlos
-
Aparte una consulta, cuando agregas una imagen a tu reporte, esta se guarda con el informe o el informe debe encontrarla, segun la direccion que le diste, si fuera lo ultimo, como le pasas la direccion de la imagen (usando app.path).
Salu2
:comp: :huh:
-
hola.....tengo un problema
no se usa el crystal y tengo que imprimir una grilla completa desde visual....se puede hacer?
me gustaria saber como puedo imprimir los formularios que tengo hechos con crystal?
de seguro que me puedes ayudar ...cierto?
gracias
pd: k version de crytal es la mejor para usarlo von vb6 y access 2000
-
Para imprimir la grilla puedes imprimirla junto con el formulario
Form1.PrintForm
pero te aconsejo que aprendas crystal reports, es sencillo hacer los informes que me indicas, VB trae consigo el Datareport pero el uso de este es complicado y te enrredara, busca el crystal.
te recomiendo una pagina donde todo lo que se habla es crystal reports.
www.lawebcrystal.com (http://www.lawebcrystal.com)
Salu2
:kicking:
-
Hola:
No te preocupes, no tienes que hacer un reporte con código. Haz lo siguiente, a mi me funciona:
1) En el reporte estadndo en Crystal, abre el menú base de datos, escoge la opción Establecer ubicación y a lo mejor tienes algo como esto:
Movimientos ventas!C:\VENTAS\BASE\Ventas.mdb
cambialo por esto
Movimientos ventas!Ventas.mdb
es decir, quitas la ruta. "Movimientos ventas" es la tabla y "ventas.mdb" la base de datos.
2) En el proyecto de VB en el formulario que cargaste el control de Crystal, prueba lo siguiente:
a) coloca en un botón el siguiente código:
CReport1.DataFiles(0) = App.Path & "Ventas.mdb"
CReport1.Connect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "Ventas.mdb" & ";Persist Security Info=False "
CReport1.ReportSource = crptReport
CReport1.ReportFileName = App.Path & "\ListaVentas.rpt"
CReport1.Action = 1
Con esto quedará solucionado tu problema
si tienes duda escribela
Juan C,
Muy útiles tus comentarios.
Tengo una cuestión para cualquier que pueda ayudarme.
Estoy usando Crystal 8 en una aplicación VB6. La base de datos es ACCESS. Necesitaría conectarme con una base de datos mediante código para que fuese independiente del PC. Por eso no quiero usar ODBC, pero usando p.ej. OLEDB no consigo que funcione el pasar una consulta sql a través de CrystalReport1.SQLQuery; y es que incluso en tiempo de diseño se me deshabilita la posibilidad de realizar consulta sql para filtrar.
¿puede tener que ver que use CrystalReport1.RetrieveDataFiles? ¿Podéis algun Provider que permita utilizar SQLQuery y me deje direccionar a mi base de datos que por defecto se instalará en otra carpeta (APP.path) distinta de donde diseño.
Muchas gracias