Я работаю с VB2010 C# и CR13. Я создал отчет с пустыми полями параметров, которые я буду заполнять во время выполнения, используя тексты, которые пользователь будет вводить в нескольких текстовых полях. Я создал словарь, который содержит имя параметра в качестве ключа и текст как значение.Неверный параметр индекса Crystal Reports?
Dictionary<String, String> textos = new Dictionary<string, string>();
textos.Add("prueba1", textBox1.Text);
textos.Add("prueba2", textBox2.Text);
textos.Add("prueba3", textBox3.Text);
textos.Add("prueba4", textBox4.Text);
textos.Add("prueba5", textBox5.Text);
textos.Add("prueba6", textBox6.Text);
textos.Add("prueba7", textBox7.Text);
textos.Add("prueba8", textBox8.Text);
Затем добавить значение к отчету с помощью этого:
public void addValues()
{
String text;
String parameter;
foreach (KeyValuePair<String, String> t in textos)
{
text = t.Value;
parameter = t.Key;
if (!String.IsNullOrEmpty(text))
cryRpt.SetParameterValue(parameter, text);
}
}
cryRpt.SetParameterValue(parameter, text);
дает мне COMException (HRESULT: 0x8002000B (DISP_E_BADINDEX)), которую я знаю, что это suposed означает, что имя параметра, которое я представил, не совпадает с именем параметра в отчете. Проблема в том, что он IS тот же, поскольку я скопировал и вставил его, чтобы быть уверенным.
После дальнейшего тестирования я обнаружил, что если я Канг формы имени параметра prueba1 к только Prueba это работает. Поэтому я подумал, что это произошло потому, что имя поля параметра не может иметь номера на нем, поэтому я изменил все имена (например, вместо prueba2, test), и это дает мне то же самое Недопустимый индекс excepcion, как и раньше.
Что происходит?
редактировать
Allright после многих испытаний я понял, что я делаю это нормально, проблема была с полями параметрами. Вместо создания различных полей параметров я использовал один и тот же каждый раз. Извините И большое спасибо всем.
Возможно, необходимо удалить все параметры из отчета и воссоздать их. Затем повторите попытку. Насколько я знаю, имена параметров могут иметь номера, это не ваша проблема. – aMazing
@aMazing Это не сработало – Carles
Отметьте этот ответ: http://stackoverflow.com/questions/35862733/crystal-report-invalid-index-exception-from-hresult-0x8002000b-disp-e-badin/35954722# 35954722 –