Ver Mensaje Individual
  #12 (permalink)  
Antiguo 20/09/2010, 02:58
luiscaloto
 
Fecha de Ingreso: diciembre-2008
Mensajes: 28
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: VB2008 y Crystal Reports

Aqui os dejo una parte del codigo en el cual recoja los datos de la conexion. Como ya os dije solo me sirve para conectar con las bases de datos de MYSQL y en consecuencia poder modificarlas.

El problema lo tengo en los formularios que utilizo los reportes, ya que no tengo codigo de conexion, ya que lo hice con el asistente de Crystal Reports. Conecto con la BD MySQL por Conexion OBDC con el conector OBDC de mysql.

Lo que queria era realizar manualmente la conexion, es decir, pasar los parametros de la misma por codigo, pero no encuentro nada de documentacion.

Como os digo, aqui os dejo un tramo del codigo de conexion con MySQL, Mas abajo os dejo un tramo del codigo que utilizo para que me cree un reporte con CR, como ya os dije, no existen datos de conexion:




'Defino las variables
Con = New MySqlConnection

CadCon = _
"server=" & txtServidor.Text & _
";user id=" & txtUsuario.Text & _
";password=" & txtPass.Text & _
";database=" & BDatos

'Asocio la cadena de conexion
Con.ConnectionString = CadCon

Try
Con.Open()
Me.ProgressBar1.Value = 100
Me.Timer1.Enabled = False
MsgBox("Conectado!!")
My.Forms.Inicio.Enabled = True
My.Forms.Inicio.ControlaConexion.Enabled = True
My.Forms.Inicio.WindowState = FormWindowState.Maximized
Me.Close()

Catch MiError As MySqlException
Me.ProgressBar1.Value = 100
Me.Timer1.Enabled = False
MsgBox("Error abriendo la base de datos: " & Chr(13) & MiError.Message)

Finally
Con.Dispose()
Me.Timer1.Enabled = False
End Try


Aqui os dejo parte del codigo del formulario que carga en informe:

Private Sub FormDeImpresion_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim CRImpresion As New FichaClientConDetalle
Dim CRImpresion1 As New FichaClienteSimplificada

'Cargo datos de la conexion
' CRImpresion.SetDatabaseLogon("root", "0849701", "CalotoRed", "caloto")
' CRImpresion1.SetDatabaseLogon("root", "0849701", "CalotoRed", "caloto")

If imprimir = True Then
Select Case Detalles
Case True
'Creo variable publica que utilizo para las impresiones con SrystalReports

' establecer la fórmula de selección de registros
CRImpresion.RecordSelectionFormula = "{clientes.cod_cli} = " & codigo & ";"
Me.CRV.ReportSource = CRImpresion
Me.CRV.Refresh()
Me.CRV.PrintReport()
Me.Close()
Case False
'Creo variable publica que utilizo para las impresiones con SrystalReports

' establecer la fórmula de selección de registros
CRImpresion1.RecordSelectionFormula = "{clientes.cod_cli} = " & codigo & ";"
Me.CRV.ReportSource = CRImpresion1
Me.CRV.Refresh()
Me.CRV.PrintReport()
Me.Close()

End Select
Else




AGRADEZCO ENORMEMENTE VUESTRA AYUDA.

sALUDOS