Sie sind auf Seite 1von 15

22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza

inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 1/15
Previous Next
Como Pasar Parametros/Variables a un
Crystal Reports

4 Votes

Posted on February 22, 2010 by Sergio Inzunza
Sergio Inzunza
Hazlo simple: tan simple como sea posible, pero no ms.
Search
Home Sotano .NET Contact About
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 2/15
Como pasar un Valor, parametro o variable a Crytal Reports
En esta ocasin compartir con ustedes una manera fcil de pasar un valor, parmetro o variable a un reporte de
Reporte de Cyrstal Reports desde codigo de C# .net.
Si te has preguntado la manera de pasar un valor, o variable a un reporte de Crystal Reports, sin la necesidad de
crear una columna en la Base de Datos, pues que no tendra sentido hacerlo para un solo valor.
La forma de hacerlo es:
Declarar un parmetro del tipo Parameter Field dentro de nuestro Reporte.
Para esto, en Field Explorer hacer clic derecho sobre Parameter Field y elegir New
Definir el Nombre y el tipo del parametro.
Para el ejemplo, Nombre: ParametroEjemplo, Tipo: String
Listo, ahora ya tenemos el elemento ParametroEjemplo disponible para arrastrarlo y acomodarlo dentro del reporte.
Para pasar el valor/variable al Reporte de Crystal Reports desde cdigo C#.
En caso de que estemos agregando el Reporte al CrystalReportViewer de manera automtica, tenemos que poner
el cdigo de paso de parmetros antes de llamar el Reporte.
En caso de que estemos agregando el Reporte al CrystalReportViewer desde cdigo, tenemos que poner
el cdigo de paso de parmetros antes de asignar el ReportSource.
El Cdigo de paso de Parmetros
1
2
3
// Pasando una caneda/valor
rpt.SetParameterValue("ParametroEjemplo", "Hola Mundo");
// Pasando una variable
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 3/15
39 THOUGHTS ON COMO PASAR PARAMETROS/VARIABLES A UN CRYSTAL REPORTS
Like this:
Be the first to like this.
Like

About Sergio Inzunza


Sergio Alberto Inzunza Soberanes Ing en Computacion el UABC Tijuana.
View all posts by Sergio Inzunza
Espero les sea de utilidad el post, y como siempre, se agradecern todos los comentarios.
This entry was posted in Crystal Reports and tagged C#, Crystal Reports parametros variables, SetParameterField by Sergio Inzunza.
Bookmark the permalink.
4
5
string var1 = "Hola Mundo";
rpt.SetParameterValue("ParametroEjemplo", var1);
You May Like
1.
About these ads
jbslaider on March 11, 2010 at 6:42 pm said:
Buen dia, una pregunta como puedo pasar un paramtro de tipo imagen, quiero mostrar en el reporte una
imagen, pero q no se estatica si no q pueda cambiar, talvez mandarle la ruta de la imagen o la imagen
misma no se como hacerlo, si me pudrieras ayudar estaria perfecto de antemano gracias
Reply
Sergio Inzunza
on March 15, 2010 at 2:40 pm said:
Hola jbslaider.
La verdad es que nunca he utilizado imgenes dinmicas, lo que de primera mano se me ocurre es
que pudieras poner en tu dataset una columna del tipo Binary, y para llenarlo con la imgenes
utilizas el comando ImageToBinary.
Otra opcin seria buscar en Google sobre Crystal Reports e Imgenes Dinmicas, seguro
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 4/15
encuentras miles de sugerencias de conocedores en el tema.
Gracias por tu visita
Reply
Melina
on April 16, 2010 at 8:07 pm said:
Podrias guardar tu imagen en labase de datos y segun un identificador el conjunto de datos
devuelve un imagen u otra, e insertas la imagen de tipo database
Saludos.
Reply
rm123 on March 12, 2010 at 10:54 am said:
Hola,
He seguido los pasos que ha indicado, pero cuando ejecuto el programa me da un error en el cdigo:
rpt.SetParameterValue(Valor,valor) y el error es el siguiente:
El ndice no es valido. (Exception from HRESULT: 0x8002000B (DISP_E_BADINDEX))
porque me sucede esto?
Espero vuestras respuestas.
Muchas gracias!!
Reply
Sergio Inzunza
on March 15, 2010 at 2:37 pm said:
Hola rm123
Seguramente estas usando VS 2005 vrdd?
Ese error es comun en VS 2005 y Crystal Reports 10, lo unico que tienes que hacer es mandar el
Indice del parametro, no el nombre.
Esto seria: rpt.SetParameterValue(0,valor).
Tambin recomiendo actualizar el vs 2005 al SP 1.
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 5/15
Gracias por la visita.
Reply
Miguel Antonio
on August 15, 2012 at 6:53 pm said:
Hola, a mi tambien me salio el mismo error, porque estoy indicando que es un control
ComboBox, si le asigno el ndice como indicas,me va a salir siempre el primer item, pero lo
que necesito es que me visualice el item selecccionado. Como hara porfavor?.
Agradezco de antemano tu repuesta.
rodolfo garcia on April 14, 2010 at 10:42 pm said:
Gracias por el dato pero ya he intentado de las dos formas que mencionas y ambas me aparece la misma
excepcion me puedes ayudar???
Reply
rodolfo garcia on April 14, 2010 at 10:57 pm said:
Ya le intente de otra forma espero y les sirva
Dim reporte3 As CrystalReport3 = New CrystalReport3()
reporte3.SetParameterValue(diaInicial, diainicio)
Reply
Sergio Inzunza
on April 16, 2010 at 4:16 pm said:
Gracias.
Creo que es la misma forma que habia escrito en el post, solo que tu codigo es VB.
Reply
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 6/15
Angel on May 13, 2010 at 3:54 pm said:
Excelente!!
Reply
Oscar on December 1, 2010 at 8:27 pm said:
Exelente aporte, nos cayo del cielo esas lineas de codigo..
Reply
Nicolas on February 3, 2011 at 9:33 pm said:
Muchas gracias, era exactamente lo que necesitaba. Muy buena explicacin!
Saludos!
Reply
Luis on April 7, 2011 at 7:06 pm said:
Hola, excelente el aporte. Implemente el codigo con un datatable aparte. Pero me genera un error, el cual
es Faltan valores de parmetro:
El codigo es el siguiente:
Dim datos As DataTable = creaTablaPruebas.Tables(0) Crea una tabla con 4 campos: id, valor1, valor2 y
valor3
reporte.Load(nombreReporte)
reporte.SetParameterValue(ParametroExterno, Hola a todos)
reporte.SetDataSource(datos)
reporte.ExportToHttpResponse(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat,
Response, True, BaseReporte) Aqui me genera el error
Response.Clear()
Response.BufferOutput = False
Response.Buffer = False
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 7/15
Response.ContentType = application/pdf
nombreReporte &= .pdf
Response.AddHeader(Content-Disposition, attachment;filename= & nombreReporte)
Response.Flush()
Response.Close()
Algo me falta ??? o que podria hacer ???
En el RPT tengo referenciado los nombres del DataTable por el XSD y el parametroExterno como
parametro.
Te agradeceria mucho tu apoyo.
Gracias.
Reply
Sergio Inzunza
on April 11, 2011 at 7:27 pm said:
Hola.
Intenta intercambiando de posicin las lineas
reporte.SetParameterValue(ParametroExterno, Hola a todos)
reporte.SetDataSource(datos)
de tal manera que quede as:
reporte.SetDataSource(datos)
reporte.SetParameterValue(ParametroExterno, Hola a todos)
Reply
rodro on November 3, 2011 at 1:09 am said:
la solucin es sencilla, tens mal la ubicacin de tu origen de datos, la actualizas y va bien.
Reply
Christian on November 24, 2011 at 5:12 pm said:
Tengo un problema al mandar a ejecutar la aplicacion q soty desarrolando en c# 2010, el error q sale es:
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 8/15
Error 18 No se puede encontrar el tipo o el nombre de espacio de nombres ReportClass (falta una
directiva using o una referencia de ensamblado?)
el mismo error me sale para el Enginer, Shared, Report Source, IcachedReport, ReportClass y
RequestContext.
que puedo hacer. Es de suma urgencia
Reply
Sergio Inzunza
on November 29, 2011 at 6:40 am said:
Pues no soy el experto en este caso, pero te puedo recomendar:
1,- Tienes instalado el crystal reports ?
2.- Estas usando las referencias (usings)
Reply
Christian
on November 29, 2011 at 1:20 pm said:
tengo instalado el crystal reports 13, en mi aplicacion estoy haciendo referencia al:
using crystaldecisions.enginer
using crystaldecisions.shared
using crystaldecisions.ReportSource
tambien agerge referencia mediane las dll
Joel on November 25, 2011 at 10:47 pm said:
En el caso de los comandos, como hago para pasarle parametros??
Reply
Rooevelt on January 3, 2012 at 2:15 am said:
buenas hermano tengo mi envio asi y me da error El ndice no es valido. (Exception from HRESULT:
0x8002000B (DISP_E_BADINDEX)) y a todo le ah funcionado
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 9/15
Dim reporte As CrystalReport1 = New CrystalReport1()
reporte.SetParameterValue(nombre1, nom.Text)
que error tengo estoy usando vb.net 2005
Reply
Sergio Inzunza
on January 3, 2012 at 9:32 pm said:
Estas usando VS 2005 vrdd?
Ese error es comun en VS 2005 y Crystal Reports 10, lo unico que tienes que hacer es mandar el
Indice del parametro, no el nombre.
Esto seria: rpt.SetParameterValue(0,valor).
Tambin recomiendo actualizar el vs 2005 al SP 1.
Gracias por la visita.
Reply
jalberto on February 15, 2012 at 7:14 pm said:
Muchas gracias compaero.
Saludos!
Reply
yusi on March 7, 2012 at 12:45 pm said:
Hola estoy haciendo un sistema en vs 2008 en Cshart y quiero sacar un reporte con Cristal Report pero no
se como pasarle un parametro yo, cree un dataset y a este le adadi un query con un filtro pero no se como
hacer mas nada tengo algunos manuales pero no he podido resolver mi problema
Reply
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 10/15
yusi on March 27, 2012 at 1:47 pm said:
Hola no he recibido ninguna respuesta y me gustaria que me ayuden mira yo tengo un dataset de visitas
donde a este le adadi un query con un filtro fecha pues me interesa obtener todas las visitas de una fecha
dada pero no se como poder mostrar este resultado en un reporte estoy trabajando con vs 2008 en CShart
y es una aplicacion destop. Ya lo he intentado de muchas maneras hasta creando un procedimiento
almacenado y combirtiendolo en dataset pero al final cuando muestro el reporte no obtengo nada me
pueden ayudar graciasssssssssssssss
Reply
Sergio Inzunza
on March 27, 2012 at 5:25 pm said:
Hola, Si tienes el DataSet con un filtro, no se si lo tengas que los datos siempre son filtrados o el
DataSet tiene un query con el filtro.
Quiero pensar que es la segunda opcion, entonces lo que tienes que hacer es tan facil como:
1.- Obtener los datos filtrados:
DataTable dtsFiltrados = new DataSet1TableAdapters.Table1().Query1();
2.- Asignar los Datos al Reporte:
Report1 rpt = new Report1();
rpt.SetDataSource(rpt);
3.- y ya esta listo el reporte para asignarlo al reportviewer o lo que desees hacer con el.
1.- obtener los datos filtrados
Reply
yusi
on April 16, 2012 at 5:27 pm said:
Hola primero que todo gracias y disculpa pues usted debe de estar pensando que yo soy
una mala agradecida pero es que no habia podido escribirte mira yo hize lo que me dijiste y
de hecho este es mi codigo
// TODO: This line of code loads data into the dataSet2.Prueba table. You can move, or
remove it, as needed.
this.pruebaTableAdapter.Fill(this.dataSet2.Prueba);
Sistema_Recepcion.DataSet2.PruebaDataTable rrr = new DataSet2.PruebaDataTable();
DataSet2TableAdapters.PruebaTableAdapter ws = new
Sistema_Recepcion.DataSet2TableAdapters.PruebaTableAdapter();
FrmFecha frmFecha = new FrmFecha();
ws.FillByFecha(rrr, 19 / 3 / 2012);
CrystalReport2 rpt = new CrystalReport2();
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 11/15
rpt.SetDataSource(this.dataSet2);
crystalReportViewer1.ReportSource = rpt;
y este es mi dataset donde tengo el query con el dato filtrado
Pero no me funciona ya que me devuelve todas las recepciones no las del 19/3/2012 que
son las que me hacen falta me ayudas porfa estoy como loca.
Tambin intente haciendo un procedimiento almacenado donde ya yo obtengo los datos
filtrados por esa fecha u otra y con el creo mi dataset pero tampoco funciona.
Cuando usted me pone en el pazo 2
2.- Asignar los Datos al Reporte:
Report1 rpt = new Report1();
rpt.SetDataSource(rpt);
En la segunda lnea o sea en rpt.SetDataSource(rpt); me da error pues yo no le puedo pasar
un reporte cuando el me esta pidiendo un dataset espero su ayuda y gracias
yusi on April 24, 2012 at 12:40 pm said:
Hola no he recibido ninguna respuesta y necesito su ayuda porfa ya no se que hacer le agradeceria que me
ayudaran lo antes posible saludos y gracias yusi
Reply
Berenice on May 11, 2012 at 10:19 pm said:
Hola soy nueva y hice el codigo para pasar parametros pero cuando ejecuto me sale un apantalla y me pide
que ingrese un texto y ese me aparece donde puse el parametro en el informe, yo quiero que me salga un
nombre de cualquier persona que escoja de un combo
Reply
Sergio Inzunza
on May 16, 2012 at 7:12 pm said:
Es es por que en el reporte tienes parametros que deben ser pasados como cadena, que no toma
del source de datos.
por ejemplo si en el reporte tienes un parametro de NombreReporte.
y llamas el reporte sin pasarle el parametro te pide que lo ingreses.
para pasar el parametro, despues de donde asiganas el datasource (rpt.SetDataSource(x)) llamas
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 12/15
a rpt.SetParameterValue(NombreReporte, strNombre);
Reply
yusi on May 16, 2012 at 7:00 pm said:
Hola sergio porfa es yusi otra vez me puede dar respuesta porfa
Reply
Sergio Inzunza
on May 16, 2012 at 7:38 pm said:
Disculpa que no te respondiera pero en la lista de comentarios no me aparecia tu comentario tal vez
por que le diste replay.
En fin.
Me parece un muy complicado tu codigo tan solo para obtener datos filtrados de una tabla.
pero me parece mas complicado entenderlo asi en simple texto, te ajunto un ejemplo de como
obtendo datos filtrados.
y si quieres ayuda mas especifica enviame tu archivo de clase a inxunxa(arroba)gamil.com
Asi obtengo datos filtrados de un DAtaSet y los asigno al reporte.
Data.Recorrido rec = new Data.Recorrido();
rec.EnforceConstraints = false; //opcional para que no marque error si hay problemas con un
contraint
new
Data.RecorridoTableAdapters.RecorridosReal_PorUnidadTableAdapter().TodasUnidades_Fill(rec.RecorridosReal_PorUnidad,
inicio, final);
rpt.SetDataSource(rec.RecorridosReal_PorUnidad);
y en el dataSource el la TableAdapter RecorridosReal_PorUnidadTableAdapter tengo el query
TodasUnidades_Fill con el codigo:
Select campo1, campo2,,campoN from nombreTabla
where fecha1 >= @inicio and fecha2<= @final
Reply
yusi on May 16, 2012 at 7:19 pm said:
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 13/15
hola sergio se acuerda de mi porfa necesito su ayuda
Reply
Sergio Inzunza
on May 16, 2012 at 7:39 pm said:
jajaja me llego tu coment cuando te estaba escribiendo la respuesta.
Reply
yusi on May 16, 2012 at 7:57 pm said:
Ok voy a probarlo y despues te digo deja ver si asi si, sino te mando mi archivo de clase aunque te soy
sincera creo que no entiendo mucho lo que me mandastes jajaja pero cuando tu te refieres a mi archivo de
clase es a alguno especifico pues mira tengo una clase para cada tabla y una principal que es la que
maneja todo el negocio yo maana pues estoy en el trabajo y ya voy de salida te envio lo que entienda para
ver si me puedes ayudar ok saludos y gracias yusi
Reply
mars on June 5, 2012 at 10:40 pm said:
tengo una consulta al respecto, tengo tres parametros en mi reporte pero estos son de un sp en la bd. el
problema que tengo es se puede mandar el valor null al parametro desde vb. o como puedeo hacer por
ejemplo si no mando ningun valor al parametro me tome null por defecto?.
Reply
Lyly on June 23, 2012 at 11:21 pm said:
Ayuda a la hora de correr mi aplicacion me manda un mensaje de que el informe solicitado requiere de
informacion adicional y me pide usuario y contrasea no se como quitar ese error.. ayuda
Reply
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 14/15
LALO on September 16, 2012 at 1:23 am said:
hola quisiera saber si ese parametro que mandas se puede multiplicar?? por un dato que traigo de la base
de datos
Reply
joejmp on February 15, 2013 at 12:29 am said:
hola estoy iniciando me en programacion y uso de c#, logre programar un sistema solo me falta lo que
refiere a impresiones. bien no se utilizar el crystal report. Lei info de la red pero no logro comprender el
uso.estoy intentado conseguir que al presionar un boton este guarde en la base de datos e imprima el
reporte pero no logro dar con un ejemplo de esto
segui el siguiente ejemplo con parametro y programe lo siguiente
private CrystalReport2 reporte;
private void button1_Click(object sender, EventArgs e)
{
reporte = new CrystalReport2();
reporte.SetParameterValue(IdCliente, ncli);
reporte.SetParameterValue(TipoCliente, tcli);
reporte.SetParameterValue(Antiguedad, ant);
reporte.SetParameterValue(EstadoAnterior, estado);
ReporteFinal frm = new ReporteFinal();//este seria el form donde se presenta el crystal report
frm.Show();
las variables toman su valor de los textbox del form
los textbox estan conectados a la base de datos atraves de un binding source (no creo que esto cause
problemas al reporte)
sucede que al lanzar el frm este me pide valores para los parametros del crystalReport2, cosa que deberia
tomar de las variables pasadas por parametros
una cosa que note en la creacion del CrystalReport2 es que cuando inserto las variables en las secciones
estos toman valor
ej:(nombre de la variable) IdCliente = IdCliente1(en el formulario)
gracias por la paciencia
22/09/13 Como Pasar Parametros/Variables a un Crystal Reports | Sergio Inzunza
inxunxa.wordpress.com/2010/02/22/parametros_crystalreports/ 15/15
Blog at WordPress.com. | The Duster Theme.
Reply
max on February 25, 2013 at 9:50 pm said:
Hola, como puedo hacer para que de una pagina asp net lea un campo TextBox y con ese dato
pueda generar el reporte, ya que en mi procedimiento almacenado que llena el reporte le paso ese dato.
Reply
Leave a Reply
Enter your comment here...

Das könnte Ihnen auch gefallen