Как пройти параметры к Crystal Report для Visual Studio 2010? Похоже, они игнорируются

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

Вопрос

Это правильно работало в Visual Studio 2008, но поскольку у меня переключатель в Visual Studio 2010 и Crystal Reports для Visual Studio 2010, мои пройденные параметры игнорируются.

Они отображаются в отчете, просто проигнорировали, когда дело доходит до формулы выбора! Вот мой код для создания отчета и передача параметров.

 private void Prepare()
    {
        var reportDocument = new ReportDocument();

        string reportPath = string.Format(
            "{0}\\{1}",
            Globals.FormPath,
            this.FormTemplate.Filename);

        reportDocument.Load(reportPath);

        ParameterDiscreteValue parameter;

        foreach (var control in this.FormTemplateFieldControls)
        {
            switch (control.FormTemplateField.DataType)
            {
                case FormFieldDataType.Date:
                    this.AddParameterForDateTime(
                        reportDocument,
                        control.FormTemplateField.Name,
                        (DateTime)control.EditValue);
                    break;
                case FormFieldDataType.DateTime:
                    this.AddParameterForDateTime(
                        reportDocument,
                        control.FormTemplateField.Name,
                        (DateTime)control.EditValue);
                    break;
                case FormFieldDataType.Time:
                    this.AddParameterForDateTime(
                        reportDocument,
                        control.FormTemplateField.Name,
                        (DateTime)control.EditValue);
                    break;
                case FormFieldDataType.Guid:
                    this.AddParameterForGuid(
                        reportDocument,
                        control.FormTemplateField.Name,
                        (Guid)control.EditValue);
                    break;
                default:
                    this.AddParameterForString(
                        reportDocument,
                        control.FormTemplateField.Name,
                        control.EditValue.ToString());
                    break;
            }
        }

        this.SetConnectionInfo(reportDocument);

        var frm = new FormViewer();

        frm.Report = reportDocument;

        frm.ShowDialog();

        frm.Dispose();

        this.Close();
    }

Когда я запускаю отчет от дизайнера, он работает просто хорошо. Вы можете видеть, что параметры передаются, как я показываю их в моем отчете.

alt text

Для моих докладов, которые запускаются из сохраненных процедур, параметры, кажется, проходят просто хорошо, это просто те, которые состоят из всех таблиц.

Для чего это стоит, вот моя формула выбора:

 {employee.HireDate} >= {?StartDate} And {employee.HireDate} <= {?EndDate}
Это было полезно?

Решение

Это было решено с последней версией отчетов Crystal для Visual Studio 2010.

Другие советы

Когда вы говорите: «Они не пропускают», что проходит? Они пустые?

Вы можете просмотреть параметры самих параметров, а только для перерывов, попробуйте дать им другое имя, что-то дополнительное уникальное. Может быть что-то, находящееся за то, что происходит какой-то другой другой настройки отчета или способом определения параметров.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top