Смекни!
smekni.com

Создание справочника Парфюмерный магазин при помощи программы Turbo Pascal (стр. 2 из 7)

Программная организация записи описывается следующим образом:

Baza:record

FKod:integer;

FRazdel;

FPodRazdel;

FName:string;

FSeria:string;

FProizvod:string;

FOpisan:string;

FMany:string;

FSim:string; - символ разделитель в БД

End;

4.2 Файлы данных

Файлов данных работающих с программой можно разделить на основные и вспомогательные.

К основным относятся:

- bd.dat;

- Razdel.dat.

К вспомогательным относятся:

- Kod.dat;

- help.dat;

- BDVR.DAT.

4.2.1 bd.dat – это основной файл БД. В данном файле хранится информация о товарах. Каждая позиция товаров хранится в отдельной строке, и товары разделены символом «*».

Пример хранение информации о товаре:

1 – код товара;

1 – раздел «Уход за лицом»;

1 – подраздел «Гель»;

Гель для лица – название товара;

Власть над временем – Серия товара;

Oriflame – производитель;

Гель для лица, замедляющий процесс старения кожи. Почувствуйте моментальный эффект лифтинга. – Описание товара;

200.25 – цена товара;

* - символ разделитель.

4.2.2 Razdel.dat – это файл, хранящий разделы и подразделы. В первой строке стоит код раздела и подраздела, а за ней стоит название раздела и подраздела и т.д.

Пример:

7

Дезодорант

Это запись означает, что в седьмом разделе есть подраздел «Дезодорант»

4.2.3 Kod.dat – это файл, хранящий коды товара. При создании нового товара программа считывает последний код, увеличивает на единицу и сохраняет в файле. Таким образом, код каждого товара уникален.

4.2.4 help.dat – файл справки.

4.2.5 BDVR.DAT – это файл временной БД. Этот файл необходим при удалении товара, когда товары переносятся во временный файл. За исключением удаленного товара, а затем основной файл БД перезаписывается.


5. Описание программы формирование выходного документа

К выходным документам относятся:

- Вывод информации на экран;

- Вывод информации в файл.

5.1 Вывод информации на экран

Пример формирования выходного документа на экран см. в приложении 4 рис. 2

Экран в данной программе состоит из пяти частей:

– Заголовок. Заголовок находится в верхней части экрана и показывает, в каком разделе пользователь находится в настоящий момент. Так же при выборе пользователем подраздела в правой части заголовка выводится количество позиций (товаров) в данном подразделе.

– Меню. Меню находится в левой части экрана и отображает пользователю существующие разделы и подразделы, перемещение в которых осуществляется при помощи курсора.

– Подсказка. Подсказки находятся в левой части экрана под Меню. Здесь отображается клавиши управления для навигации по программе.

– Клавиши управления. Каждая клавиша имеет свой цвет и доступна только в тех случаях, когда данными функциями можно воспользоваться. Клавиши управления находятся в нижней части экрана и содержат следующие пункты:

1) Помощь F1;

2) Новый F2;

3) Поиск F3;

4) Отчет F4;

5) Удалить F5;

6) Назад PageUp;

7) Далее PageDown;

8) Выход F10.

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

5.2 Вывод информации в файл

Информация в файл выводится при создании файла отчета. Отчет создается по двум критериям:

– По текущему товару;

– По текущему подразделу.

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

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

Пример формирования выходного документа в файл см. в приложении 4 рис. 7.


6 Описание программы формирование списковой структуры

6.1 Область применения списковой структуры

Списковая структура применяется для передвижения по товарам внутри подраздела. Когда пользователь входит в подраздел формируется запрос, результатом которого будут товары, найденные в БД, каждый из которых, будет соответствовать выбранным пользователем раздела и подраздела. Причиной необходимости использования динамической структуры явилось то, что при программировании не известно какое количество товаров будет в выбранном разделе и подразделе. По этому, когда находится очередной товар, удовлетворяющий выбранному пользователем разделом и подразделом, код этого товара просто добавляется в список. А на экран выводится товар, код которого последний в списке.

6.2 Принцип работы

В данной программе работу с динамическим списком можно охарактеризовать в виде стека. Общий принцип работы следующий:

– Когда пользователь выбирает нужный ему подраздел, программа ищет в файле БД первый товар, если таковой вообще существует, который удовлетворяет выбранному пользователем разделу и подразделу и код этого товара добавляется в динамический список – стек.

– Далее программа выводит на экран информацию о товаре, код которого находится в вершине стека.

– При нажатии пользователем клавиши PageDown, вновь осуществляется поиск товара в БД, который соответствует выбранному пользователем разделу и подразделу, но уже программа проверяет, не находится ли код этого товара уже в стеке. Если нет, то код товара добавляется в стек и на экран выводится товар, код которого находится в вершине стека, т.е. зашедший в стек последний. При повторном нажатии на PageDown, проделывается все то же самое.

– Если нажата клавиша PageUp, то код товара, который является вершиной стека, просто удаляется и вершиной стека становится, уже предыдущий код товара, если, конечно же, это был не первый товар. А далее, как и в случае с PageDown выводится товар, код которого находится в вершине стека.

Подводя итог можно сказать, что фактически перемещение происходит в стеке, а на экран выводится лишь товар с кодом товара из вершины стека.

6.3 Процедуры, используемые при работе со списком.

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

При работе со списком используются следующие функции:

– Чтение элемента из списка;

– Добавление элемента в список;

– Поиск элемента в списке;

– Удаление элемент из списка.

6.3.1 Описание списка

Type

Integ=^integer;

Int:integer; {код товара}

Next:integ; {ссылка на следующий элемент}

end;

6.3.2 Чтение элемента из списка

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

6.3.3 Добавление элемента в список

Добавление кода товара в список происходит в процедуре AddSpisok, алгоритм которой заключается в следующем (Приложение 5, схема 12):

– Создается новый элемент;

– Записывается код товара из файла в список;

– Устанавливается указатель для поддержания целостности списка;

6.3.4 Поиск элемента в списке

Поиск осуществляется в процедуре PoiskFPR. Алгоритм поиска заключается в следующем:

– Переход на последний элемент списка – вершину стека;

– До тех пор пока не конец стека делать;

– Если текущий код товара из файла БД равен коду товара из списка, то условие выполнено, если нет, то считывается следующий элемент из списка и т.д.

6.3.5 Удаление элемента из списка.

Удаления кода товара из списка происходит в процедуре DelSpisok, в данной процедуре удаляется только последний элемент, который являлся вершиной стека, алгоритм данной процедуры заключается в следующем:

– Переход на последний элемент списка – вершина стека;

– Создание связи, со следующим элементом;

– Удаление элемента;

– Присваивание нового последнего элемента.


7 Технология обработки данных

Последовательность операций с данными заключается в следующем (приложение 5 схема 1):

– Создания разметки экрана (Приложение 4, рисунок 1);

– Создания и управление разделами и подразделами;

– Выбор режима работы;

– Вывод на экран товаров соответствующих разделу и подразделу;

– Операции над товарами;

7.1 Разметка экрана.

Разметка экрана реализуется при помощи процедуры Shapka. В данной процедуре реализуется следующее (приложение 5, схема 2):

– Создаются линии, которые разделяют экран;

– Создаются копки управления – кнопки управления с доступными функциями. Если на определенном этапе работы кнопка имеет серый цвет, то данная функция недоступна;

– Создается заголовок – раздел экрана, в котором выводится название раздела, в котором пользователь работает в настоящий момент;

– Создаются окно подсказки – в данном окне выводятся подсказки для пользователя, необходимые для работы в определенный момент.

7.2 Управление разделами и подразделами.

Управление разделами и подразделами реализовано в процедуре Perem, следующим образом:

– Вывод на экран разделов или подразделов;

– Перемещение внутри раздела или подраздела;

– Выбор режима работы.

7.2.1 Вывод на экран разделов или подразделов.

Данный раздел осуществляется при помощи процедуры PodRazdel. Реализация в данной процедуре происходит следующим образом (приложение 5, схема 3):

– Открытие файла razdel.dat для чтения. В данном файле содержится название всех разделов и подразделов и специальные коды для распознавания (структуру файла см. п. 4.2.2). Например, если стоит код 0, то данная позиция относится к разделу, и будет выводиться только, в случае отображение разделов. Если стоит единица, то это означает, что данный подраздел соответствует первому разделу и т.д.