Contraseña para SQL server usando Crystal Reports
Hola a todos, tengo una aplicación en VB .NET que accede a una BD en SQL Server. Mi problema es que al intentar mostrar un Crystal Report me sale una ventanita que me pide una contraseña, la introduzco y se muestra correctamente pero quisiera ahorrarme ese paso. Gracias por adelantado.
create en sql un usuario con poderes de almenos select sobre las tablas con las k vas a trabajar en el crystal report y al crear el crystal y hacerle la conexion nueva a la base de datos, usa este usuario con su contraseña, si esto no te lo resuelve hazmelo saber k tengo otras posibilidades ;)
por cierto, mira haber si me puedes resolver mi duda sobre los datagrids por favor.
Hola juantxeras. Tengo un usuario creado como admin y como owner con todos los permisos, hay por ahi una funcioncita que me he bajado y casi lo hace bien pero debe haber algo que corregir. respecto a lo del data grid prueba poniendo mas ancho que la cabecera la propiedad RowHeaderWidth pero no tengo ni idea. Gracias
Bueno bueno, al fin lo he solucionado y dejo aki el codigo para aquellos con el mismo problema.
* El CrystalReportViewer en la propiedad ReportSource no tiene que tener nada.
'Módulos a importar en la clase
Imports CrystalDecisions.ReportSource
Imports CrystalDecisions.Shared
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.CrystalReports
Imports CrystalDecisions.Windows
Imports CrystalDecisions.Windows.Forms
* Después en el load...
Private Sub Historico_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
With crConnectionInfo
.ServerName = "SERVER"
.DatabaseName = "DATABASE"
.UserID = "USER"
.Password = "PASSWORD"
End With
crTableLogonInfo.ConnectionInfo = crConnectionInfo
crTableLogonInfo.TableName = "TABLA1"
crTableLogonInfos.Add(crTableLogonInfo)
'crTableLogonInfo.TableName = "TABLA2"
'crTableLogonInfos.Add(crTableLogonInfo)
CrystalReportViewer1.LogOnInfo = crTableLogonInfos
crTableLogonInfos.Item(0).ReportName = crReportDocument.Name
CrystalReportViewer1.SelectionFormula = "{personas.DNI} ='" & dni & "'"
CrystalReportViewer1.ReportSource = crReportDocument
' Resto de consulta
' ---> codigoPaciente +" AND {consulta.c_codigo} =" + codigoConsulta
Me.CrystalReportViewer1.Zoom(50)
End Sub
Gracias y suerte!
* El CrystalReportViewer en la propiedad ReportSource no tiene que tener nada.
'Módulos a importar en la clase
Imports CrystalDecisions.ReportSource
Imports CrystalDecisions.Shared
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.CrystalReports
Imports CrystalDecisions.Windows
Imports CrystalDecisions.Windows.Forms
* Después en el load...
Private Sub Historico_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
With crConnectionInfo
.ServerName = "SERVER"
.DatabaseName = "DATABASE"
.UserID = "USER"
.Password = "PASSWORD"
End With
crTableLogonInfo.ConnectionInfo = crConnectionInfo
crTableLogonInfo.TableName = "TABLA1"
crTableLogonInfos.Add(crTableLogonInfo)
'crTableLogonInfo.TableName = "TABLA2"
'crTableLogonInfos.Add(crTableLogonInfo)
CrystalReportViewer1.LogOnInfo = crTableLogonInfos
crTableLogonInfos.Item(0).ReportName = crReportDocument.Name
CrystalReportViewer1.SelectionFormula = "{personas.DNI} ='" & dni & "'"
CrystalReportViewer1.ReportSource = crReportDocument
' Resto de consulta
' ---> codigoPaciente +" AND {consulta.c_codigo} =" + codigoConsulta
Me.CrystalReportViewer1.Zoom(50)
End Sub
Gracias y suerte!
me alegro k lo hayas resuleto :) y gracias por el codigo ese, seguro k le saco partido.
Amigo siento la tardanza, el código no te lo puedo pasar porque es de mi curro y es confidencial (a mi me da igual pero si me pillan pago 15000 Eurazos), pero estoy dispuesto ayudarte en lo que pueda. Para empezar te diré que lo de las tablas es irrelevante puedes poner el nombre que quieras y funcionará por que es en la formula donde coge la info. Y esta función solo sirve para refrescar la conexión del CR, aparte claro tengo uno creado normalmente por el asistente. No se si era eso a lo que te referÃas pero espero haber sido de ayuda. Gracias
Por cierto se me olvidaba un fragmento de codigo.
Obviamente se deben declarar las variables:
Public crReportDocument As CrystalReport1 = New CrystalReport1 ()
Public crTableLogonInfos As TableLogOnInfos = New TableLogOnInfos()
Public crTableLogonInfo As TableLogOnInfo = New TableLogOnInfo()
Public crConnectionInfo As ConnectionInfo = New ConnectionInfo()
Obviamente se deben declarar las variables:
Public crReportDocument As CrystalReport1 = New CrystalReport1 ()
Public crTableLogonInfos As TableLogOnInfos = New TableLogOnInfos()
Public crTableLogonInfo As TableLogOnInfo = New TableLogOnInfo()
Public crConnectionInfo As ConnectionInfo = New ConnectionInfo()
