Crystal Reports: Aparece ParamerterValue de diálogo a pesar de los valores se establecen mediante programación

StackOverflow https://stackoverflow.com/questions/3895883

Pregunta

Estoy trabajando con el informe cristalino 2008

Tengo un campo de parámetro llamado HeaderColumn1, cuyo valor Quiero pasar mediante programación.

I establece el valor del campo de parámetro con código siguiente:

ReportDocument reportDocument = new ReportDocument();
ParameterFields paramFields = new ParameterFields;
ParameterField paramField;
ParameterDiscreteValue paramDiscreteValue;

paramField = new ParameterField();
paramField.Name = "HeaderColumn1";
paramDiscreteValue = new ParameterDiscreteValue();
paramDiscreteValue.Value = "Customer Code";
paramField.CurrentValues.Add(paramDiscreteValue);


paramFields.Add(paramField);

crystalReportViewer1.ReportSource = reportDocument;
crystalReportViewer1.ParameterFieldInfo = paramFields;
crystalReportViewer1.RefreshReport();

Al ejecutar este código, se le solicita para el parámetro de ParameterValue HeaderColumn1.

¿Por qué? Cualquier solución o sugerencia? Gracias una tonelada de antemano.

:))

¿Fue útil?

Solución

Solución:

funcionó finalmente usando lo siguiente:

ReportDocument reportDocument = new ReportDocument();
ParameterFields paramFields = new ParameterFields;
ParameterField paramField;
ParameterDiscreteValue paramDiscreteValue;


paramField = crystalreportviewer1.ParameterFieldInfo["HeaderColumn1"];
paramDiscreteValue = new ParameterDiscreteValue();
paramDiscreteValue.Value = "Customer Code";
paramField.CurrentValues.Add(paramDiscreteValue);


paramFields.Add(paramField);


crystalReportViewer1.ReportSource = reportDocument;
crystalReportViewer1.ParameterFieldInfo = paramFields;
crystalReportViewer1.RefreshReport();

Otros consejos

Su código no funcionó para mí Me temo, pero esto hizo (que se encuentra en otro lugar) y puede ser de utilidad para otros -

ReportDocument cryRpt = new ReportDocument();
cryRpt.Load("PUT CRYSTAL REPORT PATH HERE\CrystalReport1.rpt");

ParameterFieldDefinitions crParameterFieldDefinitions ;
ParameterFieldDefinition crParameterFieldDefinition ;
ParameterValues crParameterValues = new ParameterValues();
ParameterDiscreteValue crParameterDiscreteValue = new ParameterDiscreteValue();

crParameterDiscreteValue.Value = Convert.ToInt32(textBox1.Text);
crParameterFieldDefinitions = cryRpt.DataDefinition.ParameterFields;
crParameterFieldDefinition = crParameterFieldDefinitions["Price"];
crParameterValues = crParameterFieldDefinition.CurrentValues;

crParameterValues.Clear();
crParameterValues.Add(crParameterDiscreteValue);
crParameterFieldDefinition.ApplyCurrentValues(crParameterValues);

crystalReportViewer1.ReportSource = cryRpt;
crystalReportViewer1.Refresh(); 
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top