CrystalReports

30/10/2006 - 08:53 por Juanma | Informe spam
Tengo una duda sobre Crystal Reports

En una aplicacion vb.net 2005 creo un informe donde me muestra una tabla de
la base de datos.

El problema es que cada vez que abro el informe de Crystal, este me pide que
le ponga la contraseña y usuario de la base de datos.Alguien sabe como
deshabilitar esta opcion?

Gracias

Preguntas similare

Leer las respuestas

#6 Juanma
02/11/2006 - 12:43 | Informe spam
La base de datos esta en un SQL-Server Express, y si, tiene usuario y
password. De momento he utilizado una conexion ODBC y windows se encarga del
tema de validacion. Asi el problema esta solucionado, pero creo que con
OLEDB tambien tendria que funcionar.

"" escribió en el mensaje
news:eaK%23xdQ$
Pero la base de datos es SQL???, Tiene usuario y password la instancia a
la que intentas acceder???
"Juanma" escribió en el mensaje
news:u8$IvEO$
Lo he intentado pero no lo debo tener muy claro porque no me funciona. Me
puedes pasar un ejemplo?
Yo lo que hago es una conexion ado y la conecto con crystal. El unico
problema es que me pregunta el usuario y password de la base de datos.


"" escribió en el mensaje
news:OgjmVyD$
Yo uso esta clase para hacer esto. Si tienes alguna duda comentamela



Public Class cla_crystal

Dim crUsername As String

Dim crPassword As String

Dim crServidor As String

Dim crBaseDatos As String

Public Sub Print(ByVal crReport As ReportDocument, ByVal
SettingsImpresora As Printing.PrinterSettings)

Dim crSections As Sections

Dim crSection As Section

Dim crReportObjects As ReportObjects

Dim crReportObject As ReportObject

Dim crSubreportObject As SubreportObject

Dim crSubreportDocument As ReportDocument

Dim crDatabase As Database

Dim crTables As Tables

Dim crTable As Table

Dim crTableLogOnInfo As TableLogOnInfo

Dim crConnectioninfo As ConnectionInfo

Try

Cursor.Current = Cursors.WaitCursor

crConnectioninfo = New ConnectionInfo

With crConnectioninfo

.ServerName = crServidor

.UserID = crUsername

.Password = crPassword

.DatabaseName = crBaseDatos

End With

crDatabase = crReport.Database

crTables = crDatabase.Tables

For Each crTable In crTables

crTableLogOnInfo = crTable.LogOnInfo

crTableLogOnInfo.ConnectionInfo = crConnectioninfo

crTable.ApplyLogOnInfo(crTableLogOnInfo)

crTable.Location = crConnectioninfo.DatabaseName & ".dbo." &
crTable.Location.Substring(crTable.Location.LastIndexOf(".") + 1)

Next

crSections = crReport.ReportDefinition.Sections

For Each crSection In crSections

crReportObjects = crSection.ReportObjects

For Each crReportObject In crReportObjects

If crReportObject.Kind = ReportObjectKind.SubreportObject Then

crSubreportObject = CType(crReportObject, SubreportObject)

crSubreportDocument =
crSubreportObject.OpenSubreport(crSubreportObject.SubreportName)

crDatabase = crSubreportDocument.Database

crTables = crDatabase.Tables

For Each crTable In crTables

With crConnectioninfo

.ServerName = crServidor

.UserID = crUsername

.Password = crPassword

.DatabaseName = crBaseDatos

End With

crTableLogOnInfo = crTable.LogOnInfo

crTableLogOnInfo.ConnectionInfo = crConnectioninfo

crTable.ApplyLogOnInfo(crTableLogOnInfo)

crTable.Location = crConnectioninfo.DatabaseName & ".dbo." &
crTable.Location.Substring(crTable.Location.LastIndexOf(".") + 1)

Next

End If

Next

Next

crReport.PrintOptions.PrinterName = SettingsImpresora.PrinterName

crReport.PrintToPrinter(1, False, 0, 0)

Catch ex As Exception

MsgBox(ex.Message, MsgBoxStyle.Critical)

Cursor.Current = Cursors.Default

End Try

End Sub

end class

"Juanma" escribió en el mensaje
news:uEtHS3A$
OLEDB (ADO)


"" escribió en el mensaje
news:uqpo4mA$
Que tipo de conexion estas usando en el informe??
"Juanma" escribió en el mensaje
news:ONvaQi$%

Tengo una duda sobre Crystal Reports

En una aplicacion vb.net 2005 creo un informe donde me muestra una
tabla de la base de datos.

El problema es que cada vez que abro el informe de Crystal, este me
pide que le ponga la contraseña y usuario de la base de datos.Alguien
sabe como deshabilitar esta opcion?

Gracias





















Respuesta Responder a este mensaje
#7 aydai
02/11/2006 - 12:55 | Informe spam
A ver

Mira, yo tengo una instancia SQL Express con contraseña y seguridad SQL.
Si te creas esta clase cla_crystal, y llamas al metodo print, pasandole un
report document, y los settings de la impresora que quiere que salga, con
esto te tiene que funcionar, no olvides poner los parametros de crUsername
(usuario del SQL), crPassword( Clave de tu usuario de SQL), crServidor( tu
nombre de servidor) y crBaseDatos (nombre de la base de datos)


Public Class cla_crystal
Dim crUsername As String = "tu usuario"
Dim crPassword As String = "tu clave"
Dim crServidor As String = "tu nombre de Servidor"
Dim crBaseDatos As String = " tu nombre de base de datos "

Public Sub Print(ByVal crReport As ReportDocument, ByVal
SettingsImpresora As Printing.PrinterSettings)
Dim crSections As Sections
Dim crSection As Section
Dim crReportObjects As ReportObjects
Dim crReportObject As ReportObject
Dim crSubreportObject As SubreportObject
Dim crSubreportDocument As ReportDocument
Dim crDatabase As Database
Dim crTables As Tables
Dim crTable As Table
Dim crTableLogOnInfo As TableLogOnInfo
Dim crConnectioninfo As ConnectionInfo

Try
Cursor.Current = Cursors.WaitCursor
crConnectioninfo = New ConnectionInfo

With crConnectioninfo
.ServerName = crServidor
.UserID = crUsername
.Password = crPassword
.DatabaseName = crBaseDatos
End With

crDatabase = crReport.Database
crTables = crDatabase.Tables
For Each crTable In crTables
crTableLogOnInfo = crTable.LogOnInfo
crTableLogOnInfo.ConnectionInfo = crConnectioninfo
crTable.ApplyLogOnInfo(crTableLogOnInfo)
crTable.Location = crConnectioninfo.DatabaseName & ".dbo." &
crTable.Location.Substring(crTable.Location.LastIndexOf(".") + 1)
Next
crSections = crReport.ReportDefinition.Sections
For Each crSection In crSections
crReportObjects = crSection.ReportObjects

For Each crReportObject In crReportObjects
If crReportObject.Kind =
ReportObjectKind.SubreportObject Then

crSubreportObject = CType(crReportObject,
SubreportObject)
crSubreportDocument =
crSubreportObject.OpenSubreport(crSubreportObject.SubreportName)
crDatabase = crSubreportDocument.Database
crTables = crDatabase.Tables

For Each crTable In crTables
With crConnectioninfo
.ServerName = crServidor
.UserID = crUsername
.Password = crPassword
.DatabaseName = crBaseDatos
End With
crTableLogOnInfo = crTable.LogOnInfo
crTableLogOnInfo.ConnectionInfo =
crConnectioninfo
crTable.ApplyLogOnInfo(crTableLogOnInfo)
crTable.Location = crConnectioninfo.DatabaseName
& ".dbo." & crTable.Location.Substring(crTable.Location.LastIndexOf(".") +
1)
Next

End If
Next
Next
crReport.PrintOptions.PrinterName =
SettingsImpresora.PrinterName
crReport.PrintToPrinter(1, False, 0, 0)

Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical)
Cursor.Current = Cursors.Default
End Try
End Sub
End Class
"Juanma" escribió en el mensaje
news:uscxiQn$
La base de datos esta en un SQL-Server Express, y si, tiene usuario y
password. De momento he utilizado una conexion ODBC y windows se encarga
del tema de validacion. Asi el problema esta solucionado, pero creo que
con OLEDB tambien tendria que funcionar.

"" escribió en el mensaje
news:eaK%23xdQ$
Pero la base de datos es SQL???, Tiene usuario y password la instancia a
la que intentas acceder???
"Juanma" escribió en el mensaje
news:u8$IvEO$
Lo he intentado pero no lo debo tener muy claro porque no me funciona.
Me puedes pasar un ejemplo?
Yo lo que hago es una conexion ado y la conecto con crystal. El unico
problema es que me pregunta el usuario y password de la base de datos.


"" escribió en el mensaje
news:OgjmVyD$
Yo uso esta clase para hacer esto. Si tienes alguna duda comentamela



Public Class cla_crystal

Dim crUsername As String

Dim crPassword As String

Dim crServidor As String

Dim crBaseDatos As String

Public Sub Print(ByVal crReport As ReportDocument, ByVal
SettingsImpresora As Printing.PrinterSettings)

Dim crSections As Sections

Dim crSection As Section

Dim crReportObjects As ReportObjects

Dim crReportObject As ReportObject

Dim crSubreportObject As SubreportObject

Dim crSubreportDocument As ReportDocument

Dim crDatabase As Database

Dim crTables As Tables

Dim crTable As Table

Dim crTableLogOnInfo As TableLogOnInfo

Dim crConnectioninfo As ConnectionInfo

Try

Cursor.Current = Cursors.WaitCursor

crConnectioninfo = New ConnectionInfo

With crConnectioninfo

.ServerName = crServidor

.UserID = crUsername

.Password = crPassword

.DatabaseName = crBaseDatos

End With

crDatabase = crReport.Database

crTables = crDatabase.Tables

For Each crTable In crTables

crTableLogOnInfo = crTable.LogOnInfo

crTableLogOnInfo.ConnectionInfo = crConnectioninfo

crTable.ApplyLogOnInfo(crTableLogOnInfo)

crTable.Location = crConnectioninfo.DatabaseName & ".dbo." &
crTable.Location.Substring(crTable.Location.LastIndexOf(".") + 1)

Next

crSections = crReport.ReportDefinition.Sections

For Each crSection In crSections

crReportObjects = crSection.ReportObjects

For Each crReportObject In crReportObjects

If crReportObject.Kind = ReportObjectKind.SubreportObject Then

crSubreportObject = CType(crReportObject, SubreportObject)

crSubreportDocument =
crSubreportObject.OpenSubreport(crSubreportObject.SubreportName)

crDatabase = crSubreportDocument.Database

crTables = crDatabase.Tables

For Each crTable In crTables

With crConnectioninfo

.ServerName = crServidor

.UserID = crUsername

.Password = crPassword

.DatabaseName = crBaseDatos

End With

crTableLogOnInfo = crTable.LogOnInfo

crTableLogOnInfo.ConnectionInfo = crConnectioninfo

crTable.ApplyLogOnInfo(crTableLogOnInfo)

crTable.Location = crConnectioninfo.DatabaseName & ".dbo." &
crTable.Location.Substring(crTable.Location.LastIndexOf(".") + 1)

Next

End If

Next

Next

crReport.PrintOptions.PrinterName = SettingsImpresora.PrinterName

crReport.PrintToPrinter(1, False, 0, 0)

Catch ex As Exception

MsgBox(ex.Message, MsgBoxStyle.Critical)

Cursor.Current = Cursors.Default

End Try

End Sub

end class

"Juanma" escribió en el mensaje
news:uEtHS3A$
OLEDB (ADO)


"" escribió en el mensaje
news:uqpo4mA$
Que tipo de conexion estas usando en el informe??
"Juanma" escribió en el mensaje
news:ONvaQi$%

Tengo una duda sobre Crystal Reports

En una aplicacion vb.net 2005 creo un informe donde me muestra una
tabla de la base de datos.

El problema es que cada vez que abro el informe de Crystal, este me
pide que le ponga la contraseña y usuario de la base de
datos.Alguien sabe como deshabilitar esta opcion?

Gracias

























email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida