Crystal报告参数c#
我试图将参数发送到Crystal Report文档,但它不起作用,文档将加载默认参数值。我发送的值是我在报告文档中定义的参数类型,参数的名称是ok。 这是我的密码Crystal报告参数c#,c#,parameters,crystal-reports,C#,Parameters,Crystal Reports,我试图将参数发送到Crystal Report文档,但它不起作用,文档将加载默认参数值。我发送的值是我在报告文档中定义的参数类型,参数的名称是ok。 这是我的密码 ReportDocument crypRpt = new ReportDocument(); //crLibroDiario Libro = new crLibroDiario(); crypRpt.Load(@"Path\crDiari
ReportDocument crypRpt = new ReportDocument();
//crLibroDiario Libro = new crLibroDiario();
crypRpt.Load(@"Path\crDiarioLibro.rpt");
ParameterFieldDefinitions crParameterFieldDefinitions;
ParameterFieldDefinition crParamenterFieldDefinition;
ParameterValues crParameterValues = new ParameterValues();
ParameterDiscreteValue EmpreSa = new ParameterDiscreteValue();
ParameterDiscreteValue NoRegistro = new ParameterDiscreteValue();
ParameterDiscreteValue Nit = new ParameterDiscreteValue();
ParameterDiscreteValue cuentaS = new ParameterDiscreteValue();
ParameterDiscreteValue SaldosT = new ParameterDiscreteValue();
ParameterDiscreteValue AuxiliarT = new ParameterDiscreteValue();
ParameterDiscreteValue crFperiodo = new ParameterDiscreteValue();
ParameterDiscreteValue crLperiodo = new ParameterDiscreteValue();
//Parametro de Nombre de Empresa
EmpreSa.Value = txt_nomEmpresa.Text;
crParameterFieldDefinitions = crypRpt.DataDefinition.ParameterFields;
crParamenterFieldDefinition = crParameterFieldDefinitions["EmpresaEnc"];
crParameterValues = crParamenterFieldDefinition.CurrentValues;
//Parametro de No. Registro
NoRegistro.Value = txt_NoRegistro.Text;
crParameterFieldDefinitions = crypRpt.DataDefinition.ParameterFields;
crParamenterFieldDefinition = crParameterFieldDefinitions["NoRegistro"];
crParameterValues = crParamenterFieldDefinition.CurrentValues;
//Parametro de Nit
Nit.Value = txt_nitEmpre.Text;
crParameterFieldDefinitions = crypRpt.DataDefinition.ParameterFields;
crParamenterFieldDefinition = crParameterFieldDefinitions["Nit"];
crParameterValues = crParamenterFieldDefinition.CurrentValues;
//Parametro de Tabla Cuentas
cuentaS.Value = "CUENTAS" + cbx_year.SelectedItem.ToString().Substring(2, 2) + cbx_numEmpresa.SelectedItem.ToString();
crParameterFieldDefinitions = crypRpt.DataDefinition.ParameterFields;
crParamenterFieldDefinition = crParameterFieldDefinitions["TablaCuentas"];
crParameterValues = crParamenterFieldDefinition.CurrentValues;
//Parametro de Tabla Saldos
SaldosT.Value = "SALDOS" + cbx_year.SelectedItem.ToString().Substring(2, 2) + cbx_numEmpresa.SelectedItem.ToString();
crParameterFieldDefinitions = crypRpt.DataDefinition.ParameterFields;
crParamenterFieldDefinition = crParameterFieldDefinitions["TablaSaldos"];
crParameterValues = crParamenterFieldDefinition.CurrentValues;
//Parametro de Tabla Auxiliar
AuxiliarT.Value = "AUXILIAR" + cbx_year.SelectedItem.ToString().Substring(2, 2) + cbx_numEmpresa.SelectedItem.ToString();
crParameterFieldDefinitions = crypRpt.DataDefinition.ParameterFields;
crParamenterFieldDefinition = crParameterFieldDefinitions["TableAuxiliar"];
crParameterValues = crParamenterFieldDefinition.CurrentValues;
//Parametro de Primer periodo
Int16 fPeriod = 0;
Int16 lperiod = 0;
if (rtbn_MesPeriod.Checked == true)
{
fPeriod = gMonthNumber(cbx_month.SelectedItem.ToString());
lperiod = gMonthNumber(cbx_month.SelectedItem.ToString());
}
else if(rbtn_rangoPeriod.Checked == true) {
fPeriod = gMonthNumber(cbx_firstMonth.SelectedItem.ToString());
lperiod = gMonthNumber(cbx_lastMonth.SelectedItem.ToString());
}
MessageBox.Show("Mes Primero: "+fPeriod.ToString());
MessageBox.Show("Mes Segundo: " + lperiod.ToString());
crFperiodo.Value = fPeriod;
crParameterFieldDefinitions = crypRpt.DataDefinition.ParameterFields;
crParamenterFieldDefinition = crParameterFieldDefinitions["firstPeriodo"];
crParameterValues = crParamenterFieldDefinition.CurrentValues;
crLperiodo.Value = lperiod;
crParameterFieldDefinitions = crypRpt.DataDefinition.ParameterFields;
crParamenterFieldDefinition = crParameterFieldDefinitions["LastPeriodo"];
crParameterValues = crParamenterFieldDefinition.CurrentValues;
crParameterValues.Clear();
crParameterValues.Add(EmpreSa);
crParameterValues.Add(NoRegistro);
crParameterValues.Add(Nit);
crParameterValues.Add(cuentaS);
crParameterValues.Add(SaldosT);
crParameterValues.Add(AuxiliarT);
crParameterValues.Add(crFperiodo);
crParameterValues.Add(crLperiodo);
crParamenterFieldDefinition.ApplyCurrentValues(crParameterValues);
crv_RepLibroDiario.ReportSource = crypRpt;
试试这个:
ReportDocument DocumentObjReport = new ReportDocument();
DocumentObjReport.SetParameterValue("ParameterName",YourParameterValue);