RE:VARIAS BD PARA UN SOLO INFORME
Te adjunto lo prometido.
Se define una variable y se rrellena con los datos de la conexion:
Public ConexAccessCrystal As String
ConexAccessCrystal = "driver=Microsoft Access Driver (*.mdb)," & _
"server=" & [path del directorio de ka base de datos] & ";" & _
"uid=" [usuario autorizado] & ";" & _
"pwd=" & [paswword];" & _
"database=" & [direccion completa de la base de datos (incluido path)]
yo tengo la costumbre de poner en un formulario (FrmRpt) el objeto Crystal (
Crrpt).
Cuando vayas a listar desde el modulo que sea (OJO .CONNECT y DATABASE(0)) son incompatibles. Dependen de como hayas definido el listado
With FrmRpt.CrRpt
.Connect = ConexAccessCrystal ' Aqui asignas la conexion ala BD
' .DataFiles(0) = basedato ' En este caso cambias la direccion
de la base
.Destination = crptToWindow
If CdtFechaDsd.Text = CdtFechaHst.Text Then
.Formulas(0) = "Rotulo = 'DIARIO DE CAJA DEL DIA " & CdtFechaDsd.Text & "'"
Else
.Formulas(0) = "Rotulo = 'DIARIO DE CAJA'"
End If
.Formulas(1) = "Periodo = 'Período del " & CdtFechaDsd.Text & " al " & CdtFechaHst.Text & "'"
.ReportFileName = pathcrpt & "LstDiarioDeCaja.rpt"
.SelectionFormula = "{Facturas.Codigo_Fac} = 'F' and " & _
"{Facturas.Fechaf_Fac} >= Date(" & Mid(CdtFechaDsd.Text, 7, 4) & ", " & _
Mid(CdtFechaDsd.Text, 4, 2) & ", " & _
Mid(CdtFechaDsd.Text, 1, 2) & ") and " & _
"{Facturas.Fechaf_Fac} <= Date(" & Mid(CdtFechaHst.Text, 7, 4) & ", " & _
Mid(CdtFechaHst.Text, 4, 2) & ", " & _
Mid(CdtFechaHst.Text, 1, 2) & ") "
' .SortFields(0) = "+{Facturas.Fechaf_Fac}"
' .SortFields(0) = "+{Facturas.Client_Fac}"
.WindowTitle = "Diario de Caja"
.Action = 1
.Destination = crptToWindow
.Formulas(0) = vbNullString
.Formulas(1) = vbNullString
.ReportFileName = vbNullString
.SortFields(0) = vbNullString
.SelectionFormula = vbNullString
.WindowTitle = vbNullString
End With