Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Формирование отчета / 11 сообщений из 11, страница 1 из 1
04.03.2005, 11:00
    #32945606
Antonia
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета
Здравствуйте!

Подскажите, пожалуйста как можно реализовать вот что: выполнить запрос, в котором входные и выходные данные указывает пользователь, т.е. выбирает данные, по которым нужно отобрать и указывает, что хочет увидеть в отчете.
...
Рейтинг: 0 / 0
04.03.2005, 11:19
    #32945676
Ilhom_uz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета
Я тоже хочу задать вопрос такого типа...
Как сделать систему исскуственного интелекта на VFP :))
И пож. в деталях (можно исходники)
...
Рейтинг: 0 / 0
04.03.2005, 11:28
    #32945705
AleksMed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета
AntoniaЗдравствуйте!

Подскажите, пожалуйста как можно реализовать вот что: выполнить запрос, в котором входные и выходные данные указывает пользователь, т.е. выбирает данные, по которым нужно отобрать и указывает, что хочет увидеть в отчете.
Организуй диалог с пользователем, где он введет эти критерии, на их основе строишь запрос на выборку из базы, ну и далее отчет.
...
Рейтинг: 0 / 0
04.03.2005, 11:43
    #32945766
Antonia
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета
Как сделать по каким критериям отбирать понятно.
А как сделать какие поля отбирать? Они могут быть из разных таблиц, которые нужно связать.
Если можно поясните подробнее.
...
Рейтинг: 0 / 0
04.03.2005, 12:06
    #32945868
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета
Посмотрите стандартный постороитель запросов (Query, Local View). Там на первой закладке как раз и предлагается указать поля, которые надо включить в итоговый запрос.

В стандартном проекте примеров FoxPro

Modify Project (Home(2)+"solution\solution.pjx")

Есть такая форма Lmover.scx и в ней используется класс MoverList из библиотеки классов samples.vcx

Там показан пример переноса элементов из одного ListBox в другой.
...
Рейтинг: 0 / 0
04.03.2005, 12:15
    #32945901
Urri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета
Ilhom_uzЯ тоже хочу задать вопрос такого типа...
Как сделать систему исскуственного интелекта на VFP :))
И пож. в деталях (можно исходники)

Ну не надо передергивать. ;-) Для частных случаев то, что хочет Antonia, вполне реализуется.

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

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

Поколоночное содержание отчета - тем более, лучше один раз согласовать с заказчиком, чем формировать динамически. В крайнем случае, использовать Excel, откуда пользователь при желании легко выкинет лишние колонки сам.

Чаще лучше иметь 2 почти одинаковых, но специализированных отчета, чем один универсальный.

Ну а теперь, как все это реализовать? Да примерно так:
1. Отчеты основывать на курсорах.
2. Курсоры получать параметризованными запросами.
3. Параметры параметризованных запросов либо получать "по ходу пьесы" (из контекста интерфейсной формы, из которой печатается отчет), либо задавать через специальную форму задания параметров отчета.

Иногда отчет можно основывать и непосредственно на источнике данных формы вызывающей отчет, при этом не нужно выполнять запрос специально для отчета. Тоже вариант. Если в этом случае нужно дополнительно ограничить выборку в отчет, то у команды Report есть SCOPE-выражения, такие как ALL, FOR, WHILE и NEXT.
...
Рейтинг: 0 / 0
04.03.2005, 13:00
    #32946087
PaulWist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета
Urri приходится каждый раз производить утомительную последовательность действий, вместо того, чтобы просто нажать кнопку "напечатать отчет" - и все

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

UrriНет, конечно, параметры отчету нужны, но и тут не стоит увлекаться. Например, указать диапазон дат и товарную позицию, по которой нужно построить отчет о продажах - святое дело. Но задавать параметром в данном конкретном случае минимальный и максимальный объем одной отгрузки - уже вряд ли имеет смысл

И да и нет. Для данного конкретного примера (диапазон и тов. позиция ) обычно используется настройка упорядочивания, а в остальном согласен для этого существуют др. инструменты.

Urri Иногда отчет можно основывать и непосредственно на источнике данных формы вызывающей отчет , при этом не нужно выполнять запрос специально для отчета. Тоже вариант. Если в этом случае нужно дополнительно ограничить выборку в отчет, то у команды Report есть SCOPE-выражения, такие как ALL, FOR, WHILE и NEXT.

Так и надо делать, те не перегружать вводом начальных критериев отбора работу пользователя, а то что получается - введи критерии отбора для формы, а потом, в общем случае и для отчета, на основе данных формы, причем совсем не ясно откуда брать данные для отчета из уже полученного курсора формы или отправлять запрос к самим данным.
...
Рейтинг: 0 / 0
04.03.2005, 13:14
    #32946147
kms_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета
Привет, Antonia!

Я нечто подобное реализовал в своем приложении, есть форма с гридом, так вот сам грид (последовательность колонок, список колонок, их ширину и т.д. и т.п.) формирует пользователь, эта программа работает уже несколько лет и вынужден констатировать факт, что уважаемый Urri прав говоря, что пользователь этого все равно не оценит. В самом начале он определяется с тем что хочет видеть, задает параметры выводимых данных и все!!! Но если все-таки решите реализовать свою задумку, то вот как это сделал я вкратце:
есть база данных с полями:
код поля (уникальный)
название поля понятное для пользователя, т.е. "наименование объекта"
название поля в таблице, например "namos"
таблица, где хранится поле, например "oss"
выбрал ли пользователь поле для отображения (.t. / .f.)
порядковый номер поля в отчете, если пользователь его выбрал.
подбивать ли итог по данному полю (.t. / .f.)

Это основное, хотя, конечно, есть у меня еще целая куча полей, для того чтобы можно было использовать и функции в отчетах и т.д. и т.п.

Так вот делается отдельная формочка с элементами для настройки выводимых данных, на ней есть два листбокса с помощью которых пользователь определяет какие поля добавить, а какие убрать, есть несколько CheckBox для логических полей. Ну а по результатам выбора формируется запрос. Результат выборки можно скинуть в Эксель.
...
Рейтинг: 0 / 0
04.03.2005, 13:22
    #32946182
Antonia
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета
Спасибо за ответы.
Есть над чем подумать..
...
Рейтинг: 0 / 0
05.03.2005, 18:09
    #32948851
Igor Korolyov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета
Hi Antonia!

Кстати исходные тексты "мастеров" запросов и отчётов есть в Tools/xSource.
Правда после взгляда на всё это богатство пропадает всяческое желание делать
свои мастера :)

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
09.03.2005, 07:27
    #32950374
Ilhom_uz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета
Igor Korolyov
Hi Antonia!

Кстати исходные тексты "мастеров" запросов и отчётов есть в Tools/xSource.
Правда после взгляда на всё это богатство пропадает всяческое желание делать
свои мастера :)

Posted via ActualForum NNTP Server 1.1

Совершенно согласен!!!
И потом, во всех ответах я не видел ни одного кода!!! А автор вроде хотела что-то вроде кода увидеть :))
И все-таки

авторЯ тоже хочу задать вопрос такого типа...
Как сделать систему исскуственного интелекта на VFP :))
И пож. в деталях (можно исходники)
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Формирование отчета / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]