Файл: Технология «клиент-сервер».pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 26.06.2023

Просмотров: 62

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Таблица 2.17 – Структура таблицы «Склады»

Поле

Код

Тип

Номер

Number

INTEGER

Название

Name

VARCHAR(30)

Адрес

Adress

VARCHAR(50)

Телефон

Phone

VARCHAR(15)

Описание

Description

VARCHAR(100)

Таблица 2.18 – Структура таблицы «Смены кладовщиков»

Поле

Код

Тип

Номер

Number

INTEGER

Кладовщик

Stockman

INTEGER

Склад

Stock

INTEGER

Начало

Start

DATE

Конец

Ending

DATE

Таблица 2.19 – Структура таблицы «Смены продавцов»

Поле

Код

Тип

Номер

Number

INTEGER

Продавец

Seller

INTEGER

Касса

Till

INTEGER

Начало

Start

DATE

Конец

Ending

DATE

Таблица 2.20 – Структура таблицы «Сотрудники»

Поле

Код

Тип

Номер

Number

INTEGER

Работник

Person

INTEGER

Оклад

Salary

DECIMAL(10,4)

Премия

Bonus

DECIMAL(10,4)

Отпускные

Travel

DECIMAL(10,4)

Устройство

Inauguration

DATE

Увольнение

Dismissal

DATE

Таблица 2.21 – Структура таблицы «Товары»

Поле

Код

Тип

Номер

Number

INTEGER

Название

Name

VARCHAR(50)

Производитель

Maker

VARCHAR(30)

Подкатегория

Subcategory

INTEGER

Ед. измерения

Units

VARCHAR(10)


Таблица 2.22 – Структура таблицы «Чеки»

Поле

Код

Тип

Номер

Number

INTEGER

Дата

Date

DATE

Касса

Till

INTEGER

Наличные

Cash

DECIMAL(10,4)

Сдача

Submit

DECIMAL(10,4)

Итог

Total

DECIMAL(10,4)

Отменен

Canceled

SMALLINT

Определим коды названий таблиц для корректного физического проектирования базы данных в системе InterBase (Таблица 2.23).

Таблица 2.23 – Коды таблиц базы данных

Название таблицы

Код таблицы

Выплаты

Salaries

Заказ

Items

Заказы

Orders

Занятость

Busyness

Кассы

Tills

Категории

Categories

Кладовщики

Stockmen

Налоги

Taxes

Операции

Operations

Подкатегории

Subcategories

Поставки

Delivery

Поставщики

Suppliers

Продавцы

Sellers

Продажи

Sales

Продукты

Products

Работники

People

Склады

Stocks

Смены кладовщиков

Stockmen shift

Смены продавцов

Cellers shift

Сотрудники

Employees

Товары

Goods

Чеки

Tickets

Таблицы разрабатываемой базы данных являются взаимосвязанными. Так как при физической реализации связей необходимо указывать имя связи, которое не несет никакой смысловой нагрузки, при описании связей в базе данных ограничимся только кодом связи, связующим полем, исходной и конечной таблицей. В качестве кода будем использовать английское слово «Reference», знак подчеркивания и порядковый номер связи (Таблица 2.24).

Таблица 2.24 – Связи между таблицами базы данных

Код связи

Исходная таблица

Конечная таблица

Поле связи

Reference_1

Категории

Подкатегории

Категория

Reference_2

Подкатегории

Занятость

Подкатегория

Reference_3

Поставщики

Занятость

Поставщик

Reference_4

Поставщики

Поставки

Поставщик

Reference_5

Заказы

Поставки

Заказ

Reference_6

Заказы

Заказ

Заказ

Reference_7

Товары

Заказ

Товар

Reference_8

Подкатегории

Товары

Подкатегория

Reference_9

Товары

Продукты

Товар

Reference_10

Поставки

Продукты

Поставка

Reference_11

Склады

Продукты

Склад

Reference_12

Продукты

Продажи

Товар

Reference_13

Чеки

Продажи

Чек

Reference_14

Кассы

Чеки

Касса

Reference_15

Кассы

Смены продавцов

Касса

Reference_16

Продавцы

Смены продавцов

Продавец

Reference_17

Работники

Продавцы

Работник

Reference_18

Работники

Кладовщики

Работник

Reference_19

Работники

Сотрудники

Работник

Reference_20

Кладовщики

Смены кладовщиков

Кладовщик

Reference_21

Склады

Смены кладовщиков

Склад

Reference_22

Кассы

Операции

Касса

Reference_23

Операции

Налоги

Операция

Reference_24

Операции

Выплаты

Операция

Reference_25

Работники

Выплаты

Работник


Так как для первичных ключей в базе данных InterBase условие уникальности накладывается только в пределах таблицы, в качестве имени первичных ключей всех таблиц будем использовать «Key_1».

Для реализации структуры базы данных воспользуемся CASE-средством PowerDesigner версии 15.3, разработанным компанией Sybase. Данное средство позволяет разрабатывать физические модели баз данных, оптимизированные для дальнейшей реализации на конкретной платформе с учетом её особенностей.

Рисунок 2.1 – Структурная схема БД в PowerDesigner 15.3

2.3 Реализация БД на языке SQL

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

В данном случае разумно использовать третий диалект языка SQL, так как данная его реализация значительно дополнена и исправлена. Для наглядной иерархии каталогов в программной системе выберем подкаталог «Data» главного каталога программы. Имя файла базы данных выберем соответствующее разрабатываемому проекту: «Shop.gdb». Размер страниц памяти логичнее выбирать в соответствии с размером страниц памяти, используемом на компьютерах конечного пользователя. В данном случае выберем размер равный 4Кб. При создании файла базы данных необходимо иметь права доступа администратора в системе InterBase, такими правами доступа в этой системе обладает стандартная учетная запись «sysdba», имеющая стандартный пароль для входа в систему «masterkey».

Конечный фрагмент кода создания файла базы данных выглядит следующим образом:

SET SQL DIALECT 3;

CREATE DATABASE '\Data\Shop.gdb'

PAGE_SIZE 4096

USER 'sysdba' PASSWORD 'masterkey'

DEFAULT CHARACTER SET WIN1251;

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

2.4Архитектура клиент-серверной системы

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

Рисунок 2.2 – Схема физических каналов связи


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

Программная взаимосвязь (Рисунок 2.3) должна учитывать не только физическое расположение программных средств, но и архитектуру доступа к данным.

Рисунок 2.3 – Схема программных каналов связи

2.5 Реализация серверной части приложения

Для реализации комплекса программных средств воспользуемся менеджером проектов Delphi и создадим группу проектов «Shop». Назовем проект сервера соответственно «Server».

Добавим в проект сервера удаленный модуль данных и назовем его «rdm». Далее организуем его следующим образом (Рисунок 2.4).

Рисунок 2.4 – Удаленный модуль данных

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

Рисунок 2.5 – Главная форма сервера приложений

Для указания местонахождения файла базы данных создадим форму настройки подключения базы данных (Рисунок 2.6).

Рисунок 2.6 – Форма настройки адреса базы данных

Информацию о подключенных клиентских программах также отобразим на отдельной форме (Рисунок 2.7).

Рисунок 2.7 – Форма вывода информации о количестве подключений

2.6 Реализация клиентских частей приложения

В приложении «Cash» на главной форме создадим меню, позволяющее оперировать таблицами, устанавливать настройки соединения и вызывать справочные материалы (Рисунок 2.8).

Рисунок 2.8 – Главная форма приложения «Cash»

Для удобства и экономии времени создадим отдельную форму «Соединение», которую будем вызывать из всех клиентских программ для настройки соединения с сервером (Рисунок 2.9).


Рисунок 2.9 – Форма настройки соединения с сервером приложений

Меню главной формы клиентских приложений «Stock» (Рисунок 2.10) и «Office» (Рисунок 2.11) создадим аналогичными приложению «Cash».

Рисунок 2.10 – Главная форма приложения «Stock»

Наполнению функционалом всех созданных форм предшествует размещение на них специальных компонентов отображения и управления данными, TDBGrid и TDBNavigator соответственно.

Рисунок 2.11 – Главная форма приложения «Office»

Заключение

В процессе выполнения курсовой работы был изучен теоретический материал по следующим темам:

  • архитектура клиент-серверных приложений;
  • технологии создания клиент-серверных приложений в Delphi 7;
  • особенности системы управления базами данных InterBase;
  • создание баз данных с помощью case-средства PowerDesigner 15;
  • использование технологии сокетов при создании многоуровневых приложений в Delphi;
  • обеспечение своевременности применения транзакций в технологии MIDAS Delphi.

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

  • ­создана физическая модель базы данных в PowerDesigner 15;
  • сгенерирован sql-код для создания реальной базы данных;
  • реализована разрабатываемая база данных в IBConsole;
  • разработано и реализовано серверное приложение «Server»;
  • разработаны и реализованы клиентские приложения «Cash», «Stock» и «Office»;
  • создана инструкция пользователя для каждого приложения;
  • оформлена пояснительная записка к курсовой работе.

Курсовая работа выполнена в полном объеме в соответствии с заданием.

Список литературы

  1. Сенов А.В. Access 2003. Практическая разработка баз данных / А.В. Сенов. СПб.: Питер, 2005.
  2. Барановская Т.П. Информационные системы и технологии в экономике: учебник / Т.П. Барановская, В.И. Лойко. М.: Финансы и статистика, 2003. – 416 с.
  3. Гайдамакин Н.А. Автоматизированные информационные системы, базы и банки данных. Вводный курс / Н.А. Гайдамакин. М.: Гелиос АРВ, 2002. – 412 с.
  4. Голицина О.Л. Основы алгоритмизации и программирования: учебное пособие. / О.Л. Голицина, И.И. Попов. М.Форум: Инфра-М, 2004. – 432 с.
  5. Кириллов В.В. Структурированный язык запросов (SQL): учебное пособие / В.В. Кириллов, Г.Ю. Громов. СПб.: ИТМО, 2004. – 71 с.
  6. Кузин А.В. Базы данных: учебное пособие / А.В. Кузин, С.В. Левонисова. М.: Изд.центр «Академия», 2005. – 250 с.
  7. Послед Б.С. Access 2000 Базы данных и приложения: лекции / Б.С. Послед. М.: Изд.центр «Академия», 2005. – 250 с.