ASP.NET - pasar parametros a Crystal

 
Vista:

pasar parametros a Crystal

Publicado por Yamileth (17 intervenciones) el 06/05/2009 21:16:38
Hola
Tengo que pasar una variable de Vb a Crystal y me gustaría que me indicaran los pasos para hacerlo
Estoy trabajando con VB.net y crystal 8.0
el informe ya funciona solo tengo pasar el valor de una variables para su impresión
mil gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:pasar parametros a Crystal

Publicado por yamileth (17 intervenciones) el 07/05/2009 21:20:38
Hola

De tanto que he leido le he agragado a mi códiglo lo que aparece marcado con asterisco

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim texto As String
texto = Session("Texto")

Dim ds As New DataSet
Dim crv As New CrystalDecisions.Web.CrystalReportSource
Dim rutaInforme As String = "xx"
Dim login As New CrystalDecisions.Shared.TableLogOnInfo
Dim dataset As New DataSet
Dim sqladaptador As DataView

* Dim paramFields As New ParameterFields
* Dim paramField As New ParameterField
* Dim discreteVal As New ParameterDiscreteValue
* Dim rangeVal As New ParameterRangeValue

* paramField.ParameterFieldName = texto
* discreteVal.Value = texto
* paramField.CurrentValues.Add(discreteVal)
* paramFields.Add(paramField)

SqlDataSource1.SelectCommand = Session("selectcommand")
sqladaptador = CType(Me.SqlDataSource1.Select(DataSourceSelectArguments.Empty), System.Data.DataView)
informe = New CrystalDecisions.CrystalReports.Engine.ReportDocument()
informe.Load(rutaInforme)
informe.SetDataSource(sqladaptador)

CrystalReportViewer1.ReportSource = informe
* CrystalReportViewer1.ParameterFieldInfo = paramFields

With (login.ConnectionInfo)
.ServerName = "xxx"
.DatabaseName = "xxx"
.UserID = "xx"
.Password = "xx"
End With
CrystalReportViewer1.LogOnInfo.Add(login)
End Sub

1. Me gustaría saber si las estoy utilizando correctamente (pareciera que no)
2. Del lado del crystal he utilizado el ?ParameterFields al cual le nombre igual a la variable TEXTO y cuando corro la aplicación me pide el valor, he inabilitado que pida valore y me manda el mensaje que falta parametro.
3. He creado una formula llamada TEXTO (@texto), la he utilizado sola y no me ha funcionado.
4. En la formula llamada TEXTO (@texto), le he asigmado el ?ParameterFields y no me ha funcinado.

No se si es que desde el codigo de VB vengo mal o si simplemente no estoy haciendo llamado correctamente desde el Crystal

Le agradecería enormemente su ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:pasar parametros a Crystal

Publicado por Vicente GaRCIA zUÑIGA (41 intervenciones) el 08/05/2009 20:04:43
Hola mira puedes probar de la siguiente manera.
Primero
Dim DataSetReporte As DataSet
Dim myRpt As New ReportDocument
Dim rutarpt As String

DataSetReporte = GetDataSet(SqlString, "", "") 'Retorna un DataSet le mandamos como para metros tu consulta SQL

' carga el reporte que que indicamos en la ruta anterior
myRpt.Load(Server.MapPath("~/Reportes/ReporteNotasCredito/ReporteNotasExt.rpt"))
myRpt.SetDataSource(DataSetReporte)

myRpt.SetParameterValue("FechaInicial", FechaInicial.SelectedDate.ToString("yyyy/MM/dd"))
myRpt.SetParameterValue("FechaFinal", FechaFinal.SelectedDate.ToString("yyyy/MM/dd"))
CrystalReportViewer1.ReportSource = myRpt
CrystalReportViewer1.PrintMode = CrystalDecisions.Web.PrintMode.ActiveX

CrystalReportViewer1.DataBind()

--------------------------------------------------------------------------------------------------
1.- Creo un ReportDocument
2.- Un DataSet el cual asignaras al ReportDocument
3.- Agregar Parametros a ReportDocument
4.- Asignar a CrystalReportViewer1.ReportSource el ReportDocument
y ya quedaria asi
CrystalReportViewer1.ReportSource = myRpt
CrystalReportViewer1.PrintMode = CrystalDecisions.Web.PrintMode.ActiveX
CrystalReportViewer1.DataBind()

Funcion GetDataSet

Public Function GetDataSet(ByVal SQL As String, ByVal UserID As String, ByVal PWD As String) As DataSet
Dim strConexion As String
Dim settings As ConfigurationSettings
Dim appSettings As NameValueCollection

appSettings = settings.AppSettings()
strConexion = appSettings.Item("Qry_Conexion")

Dim connection As New SqlConnection(strConexion)
connection.Open()

Dim adapter As New SqlDataAdapter(SQL, connection)
Dim myData As New DataSet

adapter.Fill(myData)
adapter.Dispose()
connection.Close()

Return myData
End Function

Esta la puedes Implementar en una Clase para que la puedas mandar llamr desde cualquie parte de tu codigo.

Saludos

Vicente Garcia Zuñiga
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:pasar parametros a Crystal

Publicado por yamileth (17 intervenciones) el 08/05/2009 20:44:33
Vicente muchas gracias por tu ayuda, sin embargo mi reporte funciona bien sin las líneas que coloque en comentario, el informe impre una presentación de cuenta en donde se indica el valor monetario de la misma, y debo imprimir el valor moneteraio no solo en numero, sino tambien en letra, tengo una función en vb que me hace esto y lo guardo en una variable que es la que quiero mandar al informe, sin esta variable el informe funcina y me muestra los datos, pero requiero mandar el valor monetario en letras.
Que es lo que no logro hacer, tengo la variable con el valor en letras pero no se como mandarlo a crystal , ni como decirle a crystal donde esta la variable
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:pasar parametros a Crystal

Publicado por Vicente Garcia Zuñiga (41 intervenciones) el 16/05/2009 00:43:05
Hola si no mal recuerdo en tu reporte puedes crear el parametro que le mandaras a tu reporte.

Cuando agregas un reporte trae una opcion para agregar parametros ahora cuando creas tu parametro especificas de que tipo sera y los parametros que le mandas es el codigo que te mande de la misma manera.

de echo se llama Parameter Fields hay agregas el parametro "?Letras"una vez que lo creas aparece en la lista de parameters field checalo bien va.

Algunos Ejemplos va.
http://aspalliance.com/1833_Creating_Parameter_Fields_in_Crystal_Reports
http://www.codeproject.com/KB/database/ParametersToCrystalReport.aspx

Saludos
Vicente Garcia Zuñiga
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:pasar parametros a Crystal

Publicado por yamileth (17 intervenciones) el 18/05/2009 20:06:32
Mil Gracias problema solucionado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar