2013-09-05 2 views
1

У меня есть отчет о кристалле, в котором я пытаюсь передать текст ярлыка в хрустальный отчет. Но всякий раз, когда я пытаюсь сделать это, запрашивается или значение параметра. У меня есть другая форма, в которой делается то же самое, но она отлично работает. Heres мой код, который я пробовал:Передача параметра в отчет о кристалле запрашивает значение параметра

crystalReportViewer1.RefreshReport(); 
      ParameterFields paramFields = new ParameterFields(); 
      ParameterField paramField = new ParameterField(); 
      ParameterDiscreteValue paramDiscreteValue = new ParameterDiscreteValue(); 
      paramField = new ParameterField(); 
      paramDiscreteValue = new ParameterDiscreteValue(); 
      paramField.Name = "kot"; 
      paramDiscreteValue.Value = NewOrderBL.KOTNo; 
      paramField.CurrentValues.Add(paramDiscreteValue); 
      paramFields.Add(paramField); 

      paramField = new ParameterField(); 
      paramDiscreteValue = new ParameterDiscreteValue(); 
      paramField.Name = "TotalVat"; 
      paramDiscreteValue.Value = NewOrderBL.totalvat; 
      paramField.CurrentValues.Add(paramDiscreteValue); 
      paramFields.Add(paramField); 

      paramField = new ParameterField(); 
      paramDiscreteValue = new ParameterDiscreteValue(); 
      paramField.Name = "TotalService"; 
      paramDiscreteValue.Value = NewOrderBL.totalservicetax; 
      paramField.CurrentValues.Add(paramDiscreteValue); 
      paramFields.Add(paramField); 



      paramField = new ParameterField(); 
      paramDiscreteValue = new ParameterDiscreteValue(); 
      paramField.Name = "TotalAmount"; 
      paramDiscreteValue.Value = NewOrderBL.totalamount; 
      paramField.CurrentValues.Add(paramDiscreteValue); 
      paramFields.Add(paramField); 


      paramField = new ParameterField(); 
      paramDiscreteValue = new ParameterDiscreteValue(); 
      paramField.Name = "TotalServiceTax"; 
      paramDiscreteValue.Value = NewOrderBL.totalservicetax1; 
      paramField.CurrentValues.Add(paramDiscreteValue); 
      paramFields.Add(paramField); 

NewOrderBL класс файл, в котором я определил выше переменных, как общественности статической десятичной (имя переменной)

Пожалуйста, помогите.

ответ

2

Что вы делаете дальше с ParameterFields? Из кода не видно, что вы фактически добавили какие-либо параметры/значения в сам отчет.

ПараметрFields paramFields = new ParameterFields();

Опция A: Установить paramFields в свойство ParameterFields документа отчета.

Вариант B: Возможно посмотреть в использовании ReportDocument.SetParameterValue http://msdn.microsoft.com/en-us/library/aa691465%28v=vs.71%29.aspx

1

Я установил его. Это было глупо, только что добавлено

crystalReportViewer1.ParameterFieldInfo = paramFields; 

ниже, и все работает отлично.

Смежные вопросы