Проектирование технологии вывода информации. Изучение технологического процесса генерации отчетов в СУБД FoxPro, страница 2

Таблица

Остаток

Таблица

Ценник на материалы

Таблица

Расход материалов

1. Код материала КМ1

1. Код материала КМ2

1. Потребитель П

2. Остаток ОС

2. наименование материала НМ

2. Код материала КМ3

3. Единица измерения ЕИ1

3. Единица измерения ЕИ2

3. Затребовано З

4. Цена Ц2

4. Отпущено От

5. Единица измерения ЕИ3

6. Дата Д

7. Цена Ц3

8 Сумма С

Базовой таблицей для этой сводки является таблица "Остаток", т.к. она содержит полный перечень материалов, которые отпускаются в производство.

Схема синтеза отчетной сводки "Ведомость расхода материалов" за месяц может быть представлена в следующем виде (рис.4).

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

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

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


 


Рис.4


Примечание : в схему можно включить контроль количества отпущено и остатка из таблицы 1.

1.1. Генераторы отчетов СУБД.

В СУБД FoxPro для формирования отчетов используется генератор отчетов, который формирует два файла *.frx. и *frt. Структура участка *.frx представлена в приложении 2. Эти файлы представляют собой базу метаданных, описывающих формат отчетной сводки. При формировании отчетной сводки пользователь реализует функцию планирования размещения информации на выбранном формате листа.

Для титульного листа он вводит необходимые символьные константы, выбирая место их расположения и необходимые параметры шрифта, также зная перечень системных переменных указывает необходимые переменные, их формат и место расположения. Все,  что вводит пользователь, относится к термину формат в области программирования, но пользователь в данном случае не знает синтаксиса и семантики внутримашинного представления формата. Т.е. при создании объектов в СУБД пользователь работает со специализированным  редактором, обеспечивающем формирование формата вывода без знания языка программирования.

В любой современной СУБД присутствует типовая технология (программа), обеспечивающая  вывод информации по форматному файлу. Принцип ее работы можно описать следующими действиями:

-  считывание форматного файла;

-  планирование размещения информации в оперативной памяти;

-  создание временного дискового файла отчета;

-  открытие необходимых баз данных;

-  чтение форматного файла и баз данных и формирование записей отчетной сводки во временный файл;

-  вывод временного файла на требуемое устройство;

-  создание файла отчета на магнитном диске в указанном каталоге.

-   

Генераторы отчетов СУБД невозможно использовать при формировании сложных отчетов, где вычисление значений выполняется по сложным алгоритмам, требующим написания процедур на языке программирования. В этом случае пользователь разрабатывает оригинальные программы (технологии) вывода отчетных сводок. Типовая структура такой программы состоит из шести процедур:

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

-  модуль вывода заголовка отчета, используется при выводе титульного листа. В нем описываются все элементы титульного листа, фактически перечисляются все операторы вывода элементов титульного листа (символьных констант и системных переменных) с требуемым форматом вывода;

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

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

-  модуль вывода заголовка группы;

-  модуль вывода тела группы;

-  модуль вывода подвала группы.

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

-  модуль вывода подвала отчета аналогичен модулю вывода подвала страницы, но работает со своими символьными константами и переменными.

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

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

2.  Порядок выполнения лабораторной работы.

1.  Построить укрупненную информационную модель формирования отчета по материалам лабораторной работы №1.

2.  Разработать структуру отчетной сводки и согласовать с преподавателем.

3.  Разработать граф синтеза отчетной сводки.

4.  Создать структуру отчета в среде СУБД FoxPro. При создании структуры отчета, после внесения каждого элемента закрывать файл отчета и просматривать файл *.frx на экране с целью анализа свойств, описывающих включенный объект.

5.  Проверить правильность формирования отчетной сводки.

6.  Оформить отчет по лабораторной работе.

3.  Содержание отчета.

1.  Информационная модель операции вывода отчета.