Параметры отчета

Обсуждение Stimulsoft Reports.WPF
Ответить
Nikolay_L
Сообщения: 4
Зарегистрирован: 16 сен 2013, 12:00

Параметры отчета

Сообщение Nikolay_L »

Добрый день.
Интересует расширение возможностей для запроса параметров у пользователя.
Вроде бы посмотрел все что есть.
Из наиболее близких вопросов:
http://forumru.stimulsoft.com/viewtopic.php?f=12&t=2897

Рекомендуете использовать параметры.
На данный момент добавлять поддержку Диалоговых форм, а тем более диалоговых форм с кустомными контролами не планируется. Для этой задачи был расширен функционал переменных RequestFromUser, с помощью которых можно строить очень сложные отчеты без использования диалоговых форм. Конкретнее смотрите примеры отчетов в категории "Parameters" в Demo.exe
Но пока не вижу нормального способа отображения дерева с 1000 элементов и предоставлению пользователю выбора одного или нескольких элементов и/или узлов дерева.
Да и с более простыми параметрам есть вопросы - например интервал дат не понял как можно контролировать чтобы дата "с" была всегда меньше даты "по" (обработки событий для таких переменных не существует?). Да и выглядят они не очень (в данном случае очень широко при размещении панели слева).


http://forumru.stimulsoft.com/viewtopic.php?&t=1623
Без исходного кода нашего продукта этого сделать нельзя. Т.к. все наши диалоговые контролы перед отображением конвертируются в Wpf контролы (иначе их нельзя будет отобразить на Window или Panel соответственно). Все это делается в методе StiWpfDialogsProvider.ConvertDialogsToControls. Написать уникальный код, который будет работать для любых пользовательских контролов нельзя, из-за больших различий архитектуры WinForms и Wpf.
При покупке версии с исходными кодами это будет реально сделать своими силами? Так чтобы в итоге контролы можно было нормально использовать в дизайнере отчетов?

http://admin.stimulsoft.com/documentati ... eeView.htm
Нашел метод ConvertReportControlToTreeView - его как-то можно использовать?

Спасибо.
Anton Lozovskiy
Сообщения: 264
Зарегистрирован: 12 ноя 2007, 08:16

Re: Параметры отчета

Сообщение Anton Lozovskiy »

Здравствуйте,
Но пока не вижу нормального способа отображения дерева с 1000 элементов и предоставлению пользователю выбора одного или нескольких элементов и/или узлов дерева.
В данному случае очень много нюансов, например каким образом вы будите задавать/передавать эти 1000 элементов. Видя конкретный пример (то чего вы ходите добиться в результате), возможно было бы быстрее вам помочь и найти конкретное решение.
Да и с более простыми параметрам есть вопросы - например интервал дат не понял как можно контролировать чтобы дата "с" была всегда меньше даты "по" (обработки событий для таких переменных не существует?).
По поводу интервал дал: DateTimePicker - это стандартный Wpf контрол, если он поддерживает эти свойства - то можно добавить их поддержку, просто раньше об этом никто не спрашивал и никому это не было нужно.
Да и выглядят они не очень (в данном случае очень широко при размещении панели слева).
Это можно контролировать Вам самому. Для этого есть событие StiOptions.Engine.GlobalEvents.NewRequestFromUserDialogCreating, где в аргументе приходит текущее значение Width контрола, к примеру по умолчанию приходит значение 150, а вы можете изменить его на более меньшее... в рамках разумного конечно.
При покупке версии с исходными кодами это будет реально сделать своими силами? Так чтобы в итоге контролы можно было нормально использовать в дизайнере отчетов?
Имея исходный код всегда можно подстроить все под себя, если у вас такие не стандартные задачи. Если что-то будет не понятно, Вы можете обратиться к нам в саппорт и мы постараемся помочь.
http://admin.stimulsoft.com/documentati ... eeView.htm
Нашел метод ConvertReportControlToTreeView - его как-то можно использовать?
Этот метод является закрытым protected, который просто конвертирует класс обертку в реальный контрол TreeView. В нем Вы можете добавить какие-то дополнительные настройки, в зависимости от требований.

Спасибо.
Nikolay_L
Сообщения: 4
Зарегистрирован: 16 сен 2013, 12:00

Re: Параметры отчета

Сообщение Nikolay_L »

В данному случае очень много нюансов, например каким образом вы будите задавать/передавать эти 1000 элементов. Видя конкретный пример (то чего вы ходите добиться в результате), возможно было бы быстрее вам помочь и найти конкретное решение.
Хорошо давайте попробуем так.
Есть таблица:
id, paren_id, description - стандартно для дерева.
10 элементов 1-уровня в каждом 10 2-го уровня в каждом 10 - 3-го уровня.
Итого 1110 элементов.
Или можем остановиться на двух уровнях и 110 элементах - хотя их теоретически еще можно вывести в плоский список но практически это уже не удобно.
Передавать ее хотелось бы привязкой к данным так же например как это сделано в HierarchicalBand.
Возвращать она должна список id выбранных пользователем (галки или любой другой приемлемый способ).
Поля id и parent_id пользователь видеть не должен.
Желательно еще определять могут быть выбраны группы или нет.
Как бы вы это сделали?
По моему это довольно стандартная ситуация.

Но нюансов действительно много - поэтому и хочется свои компоненты.
Вот нашел
http://support.stimulsoft.com/index.php ... ur-reports
Примерно так и хочется только для формы. Это возможно?

Код: Выделить всё

Это можно контролировать Вам самому. Для этого есть событие StiOptions.Engine.GlobalEvents.NewRequestFromUserDialogCreating, где в аргументе приходит текущее значение Width контрола, к примеру по умолчанию приходит значение 150, а вы можете изменить его на более меньшее... в рамках разумного конечно.
Я тогда и контролы могу на своей форме сделать и передавать в отчет уже готовые параметры. Но очень хочется чтобы отчетами полностью занимались другие люди -). Поэтому и выбираю со встроенным редактором.


Спасибо.
HighAley
Сообщения: 1998
Зарегистрирован: 08 июн 2011, 11:36
Откуда: Stimulsoft Office

Re: Параметры отчета

Сообщение HighAley »

Здравствуйте.

Поясните, пожалуйста, зачем вы хотите запрашивать у пользователя так много параметров. Делается ли это для фильтрации данных или для выбора полей для отображения?
Не могли бы вы привести пример использования генератора отчётов начиная от структуры данных и заканчивая отчётом, который должен получится.
Как вариант вы можете создать своё диалоговое окно с необходимыми контролами, запросить у пользователя данные и передать нашему генератору отчётов уже необходимые для построения отчёта данные.

Спасибо.
Nikolay_L
Сообщения: 4
Зарегистрирован: 16 сен 2013, 12:00

Re: Параметры отчета

Сообщение Nikolay_L »

Добрый день.

Код: Выделить всё

Поясните, пожалуйста, зачем вы хотите запрашивать у пользователя так много параметров. Делается ли это для фильтрации данных или для выбора полей для отображения?
Не могли бы вы привести пример использования генератора отчётов начиная от структуры данных и заканчивая отчётом, который должен получится.
Вариантов масса но проблема в том что я не знаю что нужно будет пользователю завтра (дерево точно нужно уже сегодня). Пусть например это будет справочник номенклатура (int id, int parent_id, string description) (согласны что там может быть 1000 записей?) и вот такая форма:
http://blanker.ru/doc/15 Карточка складского учета М-17
Как вариант вы можете создать своё диалоговое окно с необходимыми контролами, запросить у пользователя данные и передать нашему генератору отчётов уже необходимые для построения отчёта данные.
Это я прекрасно понимаю. Только для чего мне тогда встроенный дизайнер отчетов нужен будет? Параметры запроса могут меняться произвольно.
Этот вариант я рассматриваю как выход, но хочется по другому. Потому что нужно будет разрабатывать свой дизайнер форм - хранить информацию о форме вместе с отчетом, при переустановки из БД в БД ее не забывать (видимо делать свой формат файла), описывать переменные для запроса в двух местах и т.д и т.п.
Все можно - только вот он вроде есть и вроде почти рабочий.

Тогда может вернемся к другому вопросу. Если брать с исходными кодами это будет реально нормально сделать или там действительно проблемы? Я просто не совсем понимаю зачем обязательно нужны исходники и почему нельзя сделать так же как в ссылке которую я приводил выше где добавляются компоненты для Page.
Хотя судя по всему проблем с формами много и кто как выходит.
Может лучшее решение типа такого
http://forumru.stimulsoft.com/viewtopic.php?f=8&t=321
Aleksey
Сообщения: 2775
Зарегистрирован: 22 апр 2010, 06:57

Re: Параметры отчета

Сообщение Aleksey »

Здравствуйте,
Вариантов масса но проблема в том что я не знаю что нужно будет пользователю завтра (дерево точно нужно уже сегодня).
Это я прекрасно понимаю. Только для чего мне тогда встроенный дизайнер отчетов нужен будет? Параметры запроса могут меняться произвольно.
Этот вариант я рассматриваю как выход, но хочется по другому.
Но пихать в дизайнер, все что хочет пользователь - тоже не вариант. Для диалоговых форм добавлены самые востребованные компоненты. Если нужны какие-то конкретные элементы, необходимые только конкретному пользователю, то необходимо уже реализовывать либо в своем приложении, либо через исходники конкретно под себя.
Тогда может вернемся к другому вопросу. Если брать с исходными кодами это будет реально нормально сделать или там действительно проблемы? Я просто не совсем понимаю зачем обязательно нужны исходники и почему нельзя сделать так же как в ссылке которую я приводил выше где добавляются компоненты для Page.
Со стопроцентной уверенностью сказать, что все вопросы решатся с помощью исходного кода, тоже нельзя. Возможно некоторые задачи будут очень сложно реализуемыми.

Спасибо.
Nikolay_L
Сообщения: 4
Зарегистрирован: 16 сен 2013, 12:00

Re: Параметры отчета

Сообщение Nikolay_L »

Но пихать в дизайнер, все что хочет пользователь - тоже не вариант. Для диалоговых форм добавлены самые востребованные компоненты. Если нужны какие-то конкретные элементы, необходимые только конкретному пользователю, то необходимо уже реализовывать либо в своем приложении, либо через исходники конкретно под себя.
Абсолютно согласен - сам так думаю (но мне кажется довольно просто реализовать интерфейс соответствие которому контрола дает возможность добавить этот контрол к себе на форму - просто на данном этапе формы вообще бесполезны - все что можно сделать ими можно сделать и через параметры, хотя сама по себе идея формы наверное не плоха)
Будем считать что решили - в более менее сложной системе надо делать запрос параметров средствами приложения.

Тогда еще один вопрос. Читал что можно расширить перечень свойств для компонентов в дизайнере (точнее заменить компонент).
http://support.stimulsoft.com/index.php ... -component

Возможно добавить свойства для переменных? Чтобы форму запросов параметров можно было строить на основании данных из самого отчета, а не хранить их отдельно.

Спасибо.
Aleksey
Сообщения: 2775
Зарегистрирован: 22 апр 2010, 06:57

Re: Параметры отчета

Сообщение Aleksey »

Здравствуйте,
Абсолютно согласен - сам так думаю (но мне кажется довольно просто реализовать интерфейс соответствие которому контрола дает возможность добавить этот контрол к себе на форму - просто на данном этапе формы вообще бесполезны - все что можно сделать ими можно сделать и через параметры, хотя сама по себе идея формы наверное не плоха)
Изначально были только формы, но так как они поддерживаются не во всех продуктах, были реализованы запрашиваемые переменные как возможная замена самих форм.

Для вашей задачи, скорее всего, наиболее оптимальным решением, будет использовать дополнительные формы в самом приложении, а не в дизайнере. Генератор отчетов предназначен, в первую очередь, для вывода информации.

Спасибо.
Ответить