Добрый день
Пытаюсь создать тестовый отчет на своей базе с диалоговой формой и выбором значения для передачи в отчет.
Т.е. есть форма, на которой лежит компонент "Поле со списком", для него создан отдельный источний данных. В свойствах компонента указано Связывание данных / Items / с.cID.
+ кнопки "Ок" и "Отмена"
На всякий случай проверил в просмотре отчета - вижу форму, из выпадающего списка доступны записи, все нормально.
В самом запросе указываю
.................
Where c.cID = @cID
Создаю параметр
@cID
Список1.Value
10
Uniqueidentifier
При просмотре отчета получаю ошибку:
с:\\Documents and Settings\... error CS0117 'Stimulsoft.Report.Dialogs.StiComboBoxControl' does not contain a definition for 'Value'
Что я делаю не так?
Заранее благодарен за ответ.
Передача параметров в запрос
Передача параметров в запрос
Здравствуйте.
Попробуйте, пожалуйста, изменить код следующим образом:
Спасибо.
Попробуйте, пожалуйста, изменить код следующим образом:
Код: Выделить всё
Список1.Control.SelectedItem.ToString()
Передача параметров в запрос
Еще вопрос: а можно самим создавать пользовательские функции в отчетной системе?
Хочу создать функцию для конвертации типов, например String to Giud
Хочу создать функцию для конвертации типов, например String to Giud
Передача параметров в запрос
Я надеюсь, все это проще реализовывается, но проще у меня не получилось...Edward писал(а):Здравствуйте.
Попробуйте, пожалуйста, изменить код следующим образом:
Спасибо.Код: Выделить всё
Список1.Control.SelectedItem.ToString()
На кнопку ОК на событие Click я повесил обработчик
Код: Выделить всё
Guid eeee = new Guid (Список1.SelectedValue.ToString());
Towns.Parameters["@cID"].ParameterValue = eeee;
Towns.Connect();
В случае, если у меня параметр типа Uniqueidentifier, то при присвоении ему типа Object (Список1.SelectedValue) - возникает исключительная ситуация, т.к. C# контролирует типы.
Вот и возникает еще вопрос - а можно нам писать свои функции в системе, чтобы мы могли реализовать преобразование?
Передача параметров в запрос
Да, действительно есть и немного другой способ.Al_Ex писал(а):Я надеюсь, все это проще реализовывается, но проще у меня не получилось...
На кнопку ОК на событие Click я повесил обработчик
Guid eeee = new Guid (Список1.SelectedValue.ToString());
Towns.Parameters["@cID"].ParameterValue = eeee;
Towns.Connect();
Посмотрите, пожалуйста, отчет 'Parameters From Dialog Form' в программе-примере 'Demo'.
SqlDataSource открывает данные только после установки параметров по нажатию кнопки 'ok'.
Изначально во время запуска отчета источник данных не подключается к ним. За это отвечает свойство ConnectOnStart у источника данных Employee_Sales_by_Country (выделите его и нажмите F4).
Да, это возможно. На закладке 'Code' Вы можете объявлять свои функции (только делайте, пожалуйста, это вне блока StiReport Designer generated code - do not modify, так как этот код будет перегенерирован и Ваша функция удалится).А в свойствах параметра @cID в поле "Выражение" я вообще убрал значение. Только так и заработало.
В случае, если у меня параметр типа Uniqueidentifier, то при присвоении ему типа Object (Список1.SelectedValue) - возникает исключительная ситуация, т.к. C# контролирует типы.
Вот и возникает еще вопрос - а можно нам писать свои функции в системе, чтобы мы могли реализовать преобразование?
Также на странице примеров возможно посмотреть ролик про создание статической функции для отчета.
http://www.stimulsoft.com/LiveDemos.aspx
http://www.stimulsoft.com/livedemos/Rep ... ction.html
Спасибо.