Foros del Web » Programación para mayores de 30 ;) » .NET »

Crystal. Parametros en Subreportes cambiando la BD

Estas en el tema de Crystal. Parametros en Subreportes cambiando la BD en el foro de .NET en Foros del Web. Hola a todos tengo el siguiente problema con crystal. Tengo un reporte que tiene un subreporte que anda de lo mas bien hasta cuando lo ...
  #1 (permalink)  
Antiguo 13/02/2007, 15:25
Avatar de vecasita  
Fecha de Ingreso: abril-2006
Mensajes: 107
Antigüedad: 18 años
Puntos: 1
Crystal. Parametros en Subreportes cambiando la BD

Hola a todos tengo el siguiente problema con crystal.
Tengo un reporte que tiene un subreporte que anda de lo mas bien hasta cuando lo levanto apuntando a otra base de datos(Distinta a la que use cuando cree el reporte) porque entonces me pide por pantalla los parametros del subreporte.[ahh, por si acaso si estoy vinculado los parametros del reporte con el subreporte]

Alguien sabe porque no funciona el paso de los parametros?

estoy pasando de esta forma los parametros y la conexion:

Reporte.SetParameterValue("@id_proceso_carga", Id_Proceso_Carga)
Reporte.SetParameterValue("@Id_Perfil", Id_Perfil)
Reporte.SetParameterValue("@id_cuenta", Id_Cuenta)

' CAMBIA LA CONEXION DE LA BASE DE DATOS
Dim crTables As CrystalDecisions.CrystalReports.Engine.Tables
Dim crTable As CrystalDecisions.CrystalReports.Engine.Table
Dim crConnInfo As New CrystalDecisions.Shared.ConnectionInfo
Dim crLogOnInfo As CrystalDecisions.Shared.TableLogOnInfo

crTables = Reporte.Database.Tables

For Each crTable In crTables
crConnInfo.DatabaseName = rptnombd
crConnInfo.ServerName = rptservidor
crConnInfo.UserID = rptlogin
crConnInfo.Password = rptpassword
crLogOnInfo = crTable.LogOnInfo
crLogOnInfo.ConnectionInfo = crConnInfo
crTable.ApplyLogOnInfo(crLogOnInfo)
crTable.Location = rptnombd & ".dbo." & crTable.Location.Substring(crTable.Location.LastIn dexOf(".") + 1)
crTable.TestConnectivity()
Next

CAll subreportes()

CRV_Reporte.ReuseParameterValuesOnRefresh = True
CRV_Reporte.ReportSource = Reporte_Calculo_Dispersion
CRV_Reporte.RefreshReport()



donde subreportes es:

Sub SubReportes()
Dim ci As ConnectionInfo
ci = New ConnectionInfo()
Dim Obj_SubReporte As SubreportObject
Dim SubReporte As New ReportDocument

ci.ServerName = rptservidor
ci.DatabaseName = rptnombd
ci.UserID = rptlogin
ci.Password = rptpassword

Dim Obj_Reporte As ReportObject
For Each Obj_Reporte In Reporte.ReportDefinition.ReportObjects
If Obj_Reporte.Kind = ReportObjectKind.SubreportObject Then
Obj_SubReporte = CType(Obj_Reporte, SubreportObject)
SubReporte = Obj_SubReporte.OpenSubreport(Obj_SubReporte.Subrep ortName)
Conexion_SubReporte(SubReporte)
End If
Next

End Sub

y Conexion_SubReporte(SubReporte) es:
Sub Conexion_SubReporte(ByVal SubReporte As ReportDocument)

' CAMBIA LA CONEXION DE LA BASE DE DATOS
Dim crTables As CrystalDecisions.CrystalReports.Engine.Tables
Dim crTable As CrystalDecisions.CrystalReports.Engine.Table
Dim crConnInfo As New CrystalDecisions.Shared.ConnectionInfo
Dim crLogOnInfo As CrystalDecisions.Shared.TableLogOnInfo

crTables = SubReporte.Database.Tables

For Each crTable In crTables
crConnInfo.DatabaseName = rptnombd
crConnInfo.ServerName = rptservidor
crConnInfo.UserID = rptlogin
crConnInfo.Password = rptpassword
crLogOnInfo = crTable.LogOnInfo
crLogOnInfo.ConnectionInfo = crConnInfo
crTable.ApplyLogOnInfo(crLogOnInfo)
crTable.Location = rptnombd & ".dbo." & crTable.Location.Substring(crTable.Location.LastIn dexOf(".") + 1)
crTable.TestConnectivity()
Next

End Sub



alguna idea ?
me falta definir los parametros para el subreporte ? pero entonces porq funciona cuando la BD coincide con la BD usada para crear el reporte ?

por favor...cualquier idea es bienvenida
de antemano muchas gracias
  #2 (permalink)  
Antiguo 20/12/2008, 11:15
 
Fecha de Ingreso: diciembre-2008
Mensajes: 1
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Crystal. Parametros en Subreportes cambiando la BD

Hola, vi que hace algun tiempo publicaste esta consulta, actualmente yo tengo este problema, y queria saber si lograste solucionarlo y si me puedes ayudar, por favor, pues ya le busque por todos lados y no encuentro solución, estoy a punto de volverme loco....
Gracias
  #3 (permalink)  
Antiguo 24/12/2008, 10:14
 
Fecha de Ingreso: mayo-2007
Mensajes: 23
Antigüedad: 16 años, 11 meses
Puntos: 0
Respuesta: Crystal. Parametros en Subreportes cambiando la BD

Hola mrodriguez, yo tengo un problema parecido (eso creo) y es q no he podido hacer q el reporte tome una base de distinta a la de creación del reporte, tiene la misma tabla y estructura pero la info es distinta, en los parametros paso los datos de conexión incluyendo el nombre del servidor y la base de datos y nada. No se q hacer. Depronto si pudo solucionar algo de lo suyo me puede colaborar, gracias
  #4 (permalink)  
Antiguo 14/01/2009, 10:12
 
Fecha de Ingreso: mayo-2007
Mensajes: 23
Antigüedad: 16 años, 11 meses
Puntos: 0
Respuesta: Crystal. Parametros en Subreportes cambiando la BD

Hola, este inconveniente lo pude solucionar adicionando un objeto ReportDocument a mi proyecto, aca pongo parte del código q use, si requieren más ayuda me cuentas y miro como puedo colaborarles.

ArrayList arrayList = new ArrayList();
arrayList.Add(param);

report = new ReportDocument();
report.Load(rptPath);
SetCurrentValuesForParameterField(report, user, arrayList);

ConnectionInfo connectionInfo = new ConnectionInfo();
connectionInfo.ServerName = dbServ; // serv;
connectionInfo.DatabaseName = dbComp; //Base de Datos
connectionInfo.UserID = dbUser;//userbd;
connectionInfo.Password = dbPsw;//pwbd;

connectionInfo.Type = ConnectionInfoType.SQL;
SetDBLogonForReport(connectionInfo, report);

crystalReportViewer.ReportSource = report;
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:35.