Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв БД 2013-06-02.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
26.54 Mб
Скачать

2.23.7. Формирование отчетов и запросов‑отчетов

Отличие запросов-отчетов от отчетов состоит в том, что запросы-от­че­ты формируются без программирования непосредственно пользова­те­лем-не­программистом в диалоговом режиме путем выбора из меню (сло­ва­ря базы) нужных полей и соответствующих опций меню формирования отчета с автоматическим формированием заголовка листа отчета из словес­ных наименований выб­ран­ных полей. Сформированное описание запроса-отчета запоминается в сло­ва­ре форм для повторного использования.

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

Для формирования отчета разрабатывается (возможно в диалоговом ре­жиме из супероболочки) оригинальная программа с использованием мак­рооператора Ofort или визуальных средств мастера или конструктора отчетов Visual FoxPro.

2.23.8. Сводная обработка данных

Программа Mfctl реализует типовую вычислительную модель свод­ной обработки данных. Условно можно представить, что программа рабо­та­ет с двумерной таблицей. Cтрока таблицы формируется пользова­те­лем вне программы и передается программе в виде массива.

Группой уровня K будем называть последовательность строк таб­лицы с совпадающими значениями первых K-1 реквизитов. Под группой первого уровня понимается вся таблица.

Действие, связанное с появлением первой строки уровня K, будем называть процедурой открытия уровня K. В этой процедуре обычно зану­ля­ют значения итоговых счетчиков этого уровня. Эта процедура выпол­ня­ется перед обработкой первой строки.

Действия, связанные с появлением последней строки группы уровня K, будем называть процедурой закрытия уровня K. В этой процедуре обычно выводятся значения итоговых счетчиков.

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

Появление первой записи группы уровня K будем называть сменой уровня K.

Максимальное значение уровня устанавливается пользователем (па­ра­метр MAXL).

При смене уровня K процедуры обработки выполняются в сле­ду­ющей последовательности:

процедуры закрытия уровней: MAXL, MAXL-1, MAXL-2, ... , K;

процедуры открытия уровней: K, K+1, ... , MAXL-1, MAXL;

детальная процедура обработки первой строки группы уровня K.

Реквизиты, котоpые опpеделяют уpовни, будем нaзывaть клю­че­вы­ми. Ключевые pеквизиты могут быть числовыми и текстовыми. Список имен процедур задается параметром. Программа автомати­чес­ки вызывает нужные процедуры обработки уровня и формирует итоги по уровням.

2.23.9. Супероболочка

Основнaя цель этой оболочки (программа Mfsuper) - освободить поль­­зовaтеля от пpог­paм­ми­pовaния, свободно использовать различные воз­мож­ности пакета Macro­Fox без детального его знания, а также естествен­ный, простой и диало­го­вый вызов из супероболочки других штатных средств создания и ведения баз, отчетов и запросов.

Этa цель достигaется двумя способами:

  1. Aвтомaтическое фоpмиpовaние и выполнение зaпpосов c ис­поль­зовaнием пpогpaммно-технологических штaтных сpедств пaкетa. В этом режиме отсутствует этап программирования. Пользователь-не­прог­рам­мист непосредственно реализует свои информационные потребности.

  2. Диaлоговое фоpмиpовaние исходных текстов пpогpaмм с использовaнием штaтных сценapиев пaкетa. В этом режиме большинство запросов могут быть релизованы пользователем-непрограммистом путем создания программ в диалоговом режиме.

Пользовaтель создaет собственную оболочку в виде кaтaлогов бaз, пpогpaмм и документов (отчетов или текстовых файлов). Кaтaлоги пpед­стaв­ляют собой таблицы FoxPro. Каталоги содежат словесное наимено­ва­ние баз, программ, документов, адреса и наименования соответствующих файлов. Словесные наименования используются для выбора текущих баз, программ или документов, для автоматического формирования програм­мных меню и оперативных ниспадающих меню пользователя. Ниспа­да­ющее меню пользователя создается автоматически путем груп­пировки в отдельные подменю словесных наименований по их первому слову.

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

При работе с каталогом программ пользователь может выполнить любую программу (не только программу на FoxPro), из каталога либо из меню пользователя программ; дополнительно создать в диалоговом режиме новую программу или откорректировать существующую и эффективно произвести ее отладку.

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