RE:Como puedo darle la ruta desde el programa
Tu puedes utilizar un CommonDialog de VB para entontrar la ubicación de la base d datos o la ubicación d un reporte, a asignas a una variable y ya esta.
Ej. Primera Asignación:
GDirTrabajo = App.Path & "\BASE.MDB"
GDirReports = App.Path & "\REPORTES\"
Segunda Asignación:
GDirTrabajo = "D:\XCARPETA\BASE.MDB"
GDirReports = "D:\XCARPETA\REPORTES\"
Akí tendrás q traer sólo hasta el nombre d la carpeta d reportes, para así habrir más d uno y sólo selecciones la ruta una sóla vez. Ahora, no entiendo xq razón cambiaría las rutas d los reportes, lo q si entiendo es sobre una BD y si es así, no debiera haber mayor problema, sólo reasigna la ruta para la DB y la Ruta d los reportes q este dentro d donde se encuentre tu aplicación VB.
quereporte = GDirReports & "reportex.rpt"
CrystalReport1.ReportFileName = quereporte
CrystalReport1.DataFiles(0) = GDirTrabajo & ""