RE:Informes en tiempo de ejecucion
Hola. Asumo que sabes manejar lo basico de crystal report y conoces bien visual asi que hay va la explicacion.
Bueno en Crystal report Creas un reporte con un campo parametro, ya desde basic alimentas el parametro y lo envias al reporte.
Debes utilizar ODBC para conectar el reporte de crystal a la BD, pero el parametro lo alimentas desde Visual Basic.
Me explico mejor.
Ejemplo. si deseas crear un informe de los datos de un cliente X cualquiera, y mostar unos datos adicicionales como nombres, apellidos, direccion, etc.
Cras el reporte en cystal que relacione las tablas de donde vas a obtener los datos, en este caso tabla Clientes.
y creas un campo parametro le dices que sea el Numero de Identificacion o ID como quieras y lo llamas docnum.
Luego en el menu informes - Editar formula de seleccion - registro le dicen
{nombredelatabla.nombrecampo}={?docnum}
El nombre del campo debe ser donde almacenas el numero de documento.
escoges el resto de datos a mostrar y los acomodas como queiras en el reporte, el campo parametro funciona como un filtro, quiere decir que muestra solo lo que el campo parametro especifique.
desde basic en el formulario donde estas trabajando y donde vas a llamr el reporte lo alimentas asi:
Me.CrystalReport1.ParameterFields(0) = "docnum;" & txtdocnum.Text & ";TRUE"
bueno el txtdocnum es el campo donde el usuario digita el numero de documento, pero tambien lo puedes seleccionar de un combobox o lo que sea.
ten en cuenta que en el formulario donde estas trabajando debes agragar el componente de Crystalreport y configurarlo para que busque el reporte en la ruta donde lo guardas que debe ser la misma donde estas guardando todo el proyecto cosa que cuando crees el empaquetado quede bien.
Bueno espero haberte servido. exitos