Principales respuestas
ayuuuuuuuuuuuuudaaaaaaaaaaaaaaaaaa urgente como utilizar variables de vb 2005 en crystal reports

Pregunta
-
como paso el valor de una variable en vb.net2005 a un reporte echo en crystal reports dentro del mismo visual studio me urge porfavor ayudenme
- Cambiado Fran DiazModerator jueves, 2 de julio de 2009 7:16 - (De:Lenguaje VB.NET)
- Cambiado Fran DiazModerator jueves, 18 de agosto de 2011 12:45 Es de CR (De:SQL Server Reporting Services)
Respuestas
-
hola,
disculpa tendria que haber preguntado antes que version del ide estabas usando
http://cid-5c82aa0c9bbaf5b3.skydrive.live.com/self.aspx/Public/Forum/WinFormCrystalVD2005.zip
aqui subi una version en VS 2005
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Marcado como respuesta divad_82 martes, 30 de junio de 2009 14:38
-
Hola leandro muchas gracias por toda tu ayuda ya lo resolvi y aqui dejo el codigo generado para todos los que lleguen a tener este mismo problemita
Lo primero es crear tu reporte en vb.net 2005 despues de eso crear el parametro en su reporte para su utilización desde visual basic
una vez dentro de visual basic en nuestro form agregamos un control CrystalReportViewer añadimos las siguientes bibliotecas en el principio de nuestro codigo de la siguiente manera:
Imports CrystalDecisions.CrystalReports Imports CrystalDecisions.CrystalReports.Engine Imports CrystalDecisions.ReportSource Imports CrystalDecisions.Shared Imports CrystalDecisions.Windows Public Class contratacion
donde public class contratacion es el nombre de tu form en el programa
Despues de estos sencillos paso asignamos el siguiente codigo
' objeto para contener una colección de valores de parámetros Dim pvValoresParametros1 As New ParameterValues() ' objeto para almacenar un valor de un parámetro Dim parNOMBRE As New ParameterDiscreteValue() ' asignamos el reporte creado dentro de nuestro proyecto par poder referirnos a el en un futuro Dim oRptPrueba As New Contrato ' asignar el valor al parámetro en este caso el valor se encuentra dentro del textbox1.text parNOMBRE.Value = TextBox1.Text ' añadir el parámetro a la colección de parámetros pvValoresParametros1.Add(parNOMBRE) ' tomar del informe, el parámetro que necesitemos, ' a través de su colección de campos de parámetros, ' y aplicar a dicho parámetro los valores de los ' parámetros que están en la colección (en este caso sólo uno) oRptPrueba.DataDefinition.ParameterFields("Nombre").ApplyCurrentValues(pvValoresParametros1) 'asignamos el roporte al contenerdor puesto con el diseñador para mostrarlo en pantalla Me.CrystalReportViewer1.ReportSource = oRptPrueba
y listo de esta forma le asignamos un valor dado dentro de visual basic .net 2005 a un reporte echo en crystal reports sin nesesidad de pasar por la base de datos cabe mencionar que esto se puede utilizar para valores que no seran almacenados en otro caso no es muy efectivo el procedimiento- Marcado como respuesta divad_82 martes, 30 de junio de 2009 14:53
Todas las respuestas
-
hola,
deberias pasarse como parametro.
aqui un excelente ejemplo que explica como hacerlo:
Working with Parameters with Crystal Reports and ASP.NET 2.0
nota: si bien esta implementado para asp.net es totalmente aplicable a desarrollos desktop.
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina -
-
-
hola,
mas alla del ingles que si se que es dificil a veces.
puedes concentrarte en ele ejmplo de codigo, mas puntualmente en esta secion:
Me.CrystalReportViewer1.ReportSource = Server.MapPath("SampleParam1.rpt")
Dim ParamFields As ParameterFields = Me.CrystalReportViewer1.ParameterFieldInfo
Dim p_EmpID As New ParameterField
p_EmpID.Name = "p_EmployeeID"
Dim p_EmpID_Value As New ParameterDiscreteValue
p_EmpID_Value.Value = Me.txtEmployeeID.Text
p_EmpID.CurrentValues.Add(p_EmpID_Value)
ParamFields.Add(p_EmpID)
como veras hace uso del ParameterField, para defini el parametro del report.
ParameterDiscreteValue para especificarlo.
veras arriba en la pagina que hay un indice, e la primer pagina te muestra visualmente como crear el parametro en el reporte, deberias utilizar el mismo nombre, en este caso lo llamo "p_EmployeeID", pero tu debes usar el que crees.
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina -
-
-
hola,
mm no se me ocure mucho como explicarlo ams simple que en ejemplo del link.
por ahi te peuda ayudar un ejemplo explciado en español:
Interfaz Crystal Reports con .NET
este igualmente esta apuntado a algo mas generico que son parametros dinamicos, que creo no es tu caso, pero la logica es identica.
Pasando parámetros al informe en .NET con Crystal Reports.
en este ultimo ve la seccion cuando explica como pasar el parametro
por ahi podrias explicarnos ahsta donde conoces de crystal ?
o si pudiste crea el parametro en el reporte ?
agregaste el crystal viewer en tu aplicacion para visualizar el reporte ?
recuerda tener los import y las referencias a loc omponetes de crystal.
Se que quiere pasar solo el valor de una veriable, peroe s justamente con un parametro alr eprote con que lo logras.
Luego este parametro podras usarlo para filtrar tu consultaen ele reporte, o para visualziar el valor como un campo en el mismo.
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Editado Leandro TuttiniMVP miércoles, 24 de junio de 2009 17:00
-
-
haber mira para se mas claro nesesto mostrar dinamicamente en un reporte de crystal reports que ya tengo creado con el parametro "p_EmployeeID" en donde se mostraran los cambios echos en el textbox1.text
nesesito mostrar cualquier texto que este contenga si me puedes ayudar -
si analizas primer link "Interfaz Crystal Reports con .NET ", veras que arriba realiza algunas declaraciones en las lineas:
Imports CrystalDecisions.CrystalReports
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.ReportSource
Imports CrystalDecisions.Shared
Imports CrystalDecisions.Windows
si agregaste un control de crystal viewer seguramente las referencias se agregaron solas, sino deberas hacerlo manualmente.
si exacto lo que quieres hacer es por medio de parametros, si en realidad podrias haber usado otro nombre en el parametro algo asm representativo, en lugar de "p_EmployeeID", pero bueno si estas probando igual depues puedes renombrarlo.
Prueba de este campo en el designer del reporte, arrastrarlo a la pantalla, veras como se convierte en un campo en el reporte, cuando desde codigo logras pasarle el valor lo veras donde colocaras.
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina -
-
-
-
hola,
podrias enviar una print screen de la pantalla donde estas creando el parametro, y desde donde dices que no te deja arrastrarlo al design del reporte ?
recuerda que puede usar SkyDrive con tu cuanta de hotmail, para subir la imagen alli.
sino veo de hacer un ejemplo, pero la macana es que en el laburo no tengo instalado vb.net, pero podria armarlo en c#.
saludo
Leandro Tuttini
Blog
Buenos Aires
Argentina -
-
ok, igualmente una buena parte del diseño es visual, la parte del codigo de ultima podemos usar un conversor.
vemos entonces de resolver primero porque no puedes utilizar el parametro creado dentro del reporte, esto es todo visual aqui no interviene codigo alguno.
ve si puedes subir un print screen a ver que puede estar pasando
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina -
-
-
-
-
hola,
http://cid-5c82aa0c9bbaf5b3.skydrive.live.com/self.aspx/Public/Forum/WinFormCrystal.zip
en la url subi un ejemplo
necesitas VS 2008 y esta en c#, pero igualmente no es tan distnto a vb.net
en todo caso te guio en la traduccion.
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina -
-
hola,
disculpa tendria que haber preguntado antes que version del ide estabas usando
http://cid-5c82aa0c9bbaf5b3.skydrive.live.com/self.aspx/Public/Forum/WinFormCrystalVD2005.zip
aqui subi una version en VS 2005
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Marcado como respuesta divad_82 martes, 30 de junio de 2009 14:38
-
-
Hola leandro muchas gracias por toda tu ayuda ya lo resolvi y aqui dejo el codigo generado para todos los que lleguen a tener este mismo problemita
Lo primero es crear tu reporte en vb.net 2005 despues de eso crear el parametro en su reporte para su utilización desde visual basic
una vez dentro de visual basic en nuestro form agregamos un control CrystalReportViewer añadimos las siguientes bibliotecas en el principio de nuestro codigo de la siguiente manera:
Imports CrystalDecisions.CrystalReports Imports CrystalDecisions.CrystalReports.Engine Imports CrystalDecisions.ReportSource Imports CrystalDecisions.Shared Imports CrystalDecisions.Windows Public Class contratacion
donde public class contratacion es el nombre de tu form en el programa
Despues de estos sencillos paso asignamos el siguiente codigo
' objeto para contener una colección de valores de parámetros Dim pvValoresParametros1 As New ParameterValues() ' objeto para almacenar un valor de un parámetro Dim parNOMBRE As New ParameterDiscreteValue() ' asignamos el reporte creado dentro de nuestro proyecto par poder referirnos a el en un futuro Dim oRptPrueba As New Contrato ' asignar el valor al parámetro en este caso el valor se encuentra dentro del textbox1.text parNOMBRE.Value = TextBox1.Text ' añadir el parámetro a la colección de parámetros pvValoresParametros1.Add(parNOMBRE) ' tomar del informe, el parámetro que necesitemos, ' a través de su colección de campos de parámetros, ' y aplicar a dicho parámetro los valores de los ' parámetros que están en la colección (en este caso sólo uno) oRptPrueba.DataDefinition.ParameterFields("Nombre").ApplyCurrentValues(pvValoresParametros1) 'asignamos el roporte al contenerdor puesto con el diseñador para mostrarlo en pantalla Me.CrystalReportViewer1.ReportSource = oRptPrueba
y listo de esta forma le asignamos un valor dado dentro de visual basic .net 2005 a un reporte echo en crystal reports sin nesesidad de pasar por la base de datos cabe mencionar que esto se puede utilizar para valores que no seran almacenados en otro caso no es muy efectivo el procedimiento- Marcado como respuesta divad_82 martes, 30 de junio de 2009 14:53