FROM ([Данные о клиенте]
INNER JOIN Проживание ON [Данные о клиенте].[Код
клиента] = Проживание.[Код клиента])
INNER JOIN [Данные о номере] ON Проживание.Номер
= [Данные о номере].Номер
GROUP BY [Данные о клиенте].[Код
клиента], [Данные о клиенте].Фамилия,
[Данные о клиенте].Имя, [Данные
о клиенте].Отчество, Проживание.Номер,
Проживание.[Дата заселения], Проживание.[Дата
выезда], ([Дата выезда]-[Дата заселения]);
Запрос 2. Подсчитать стоимость питания
за все пребывание клиента в гостиничном
комплексе.
Рис.15 – запрос 1 – общая стоимость
питания
Код:
SELECT Проживание.Фамилия, Проживание.Имя,
Проживание.Отчество, Проживание.Номер,
Проживание.[Код питания], Проживание.[Тип
питания], Sum(Питание.Цена) AS [Sum-Цена], Проживание.[Дата
заселения], Проживание.[Дата выезда], ([Дата
выезда]-[Дата заселения]) AS [Кол-во дней],
(([Sum-цена])*[Кол-во дней]) AS [Общая стоимость]
FROM Питание INNER JOIN Проживание
ON Питание.Код = Проживание.[Код питания]
GROUP BY Проживание.Фамилия, Проживание.Имя,
Проживание.Отчество, Проживание.Номер,
Проживание.[Код питания], Проживание.[Тип
питания], Проживание.[Дата заселения],
Проживание.[Дата выезда], ([Дата выезда]-[Дата
заселения]);
Запрос 3. Подсчитать стоимость услуг
выбранные клиентом за все пребывание
клиента в гостиничном комплексе.
Рис.15 – запрос 3 – стоимость
услуг выбранных гостями
Код:
SELECT Проживание.[Код клиента],
Проживание.Фамилия, Проживание.Имя, Проживание.Отчество,
Проживание.[Услуги выбранные клиентом],
[Каталог по услугам].Стоимость
FROM [Каталог по услугам]
INNER JOIN Проживание ON [Каталог по услугам].[Номер
услуги] = Проживание.[Номер услуги];
Запрос 4. Подсчитать общую сумму клиента
за этот период проживания в гостиничном
комплексе.
Рис.16 – запрос 4 – счет клиентов
Код:
SELECT Проживание.Фамилия, Проживание.Имя,
Проживание.Отчество, Проживание.Номер,
Проживание.[Тип номера], Sum([Данные
о номере].[Стоимость номера за
один день]) AS [Sum-Стоимость номера
за один день], Проживание.[Тип
питания], Sum(Питание.Цена) AS [Sum-Цена], Проживание.[Услуги
выбранные клиентом], Sum([Каталог
по услугам].Стоимость) AS [Sum-Стоимость],
Проживание.[Дата заселения], Проживание.[Дата
выезда], ([Дата выезда]-[Дата заселения])
AS [Кол-во дней], (([Sum-Стоимость номера
за один день])*[Кол-во дней]) AS [Стоимость
проживания], (([Sum-цена])*[Кол-во дней])
AS [Стоимость питания], ([Стоимость
проживания]+[Стоимость питания]+([Sum-Стоимость]))
AS Итого
FROM [Каталог по услугам]
INNER JOIN ((Питание INNER JOIN Проживание ON Питание.Код
= Проживание.[Код питания]) INNER JOIN [Данные
о номере] ON Проживание.Номер = [Данные
о номере].Номер) ON [Каталог по
услугам].[Номер услуги] = Проживание.[Номер
услуги]
GROUP BY Проживание.Фамилия, Проживание.Имя,
Проживание.Отчество, Проживание.Номер,
Проживание.[Тип номера], Проживание.[Тип
питания], Проживание.[Услуги выбранные
клиентом], Проживание.[Дата заселения],
Проживание.[Дата выезда], ([Дата выезда]-[Дата
заселения]);
Отчеты помогают сводить данные
в форму удобную для чтения. При формировании
отчета все необходимые сведения располагаются
таким образом, что могут быть отправлены
на печать без предварительной подготовки.
Отчеты предназначены для формирования
и вывода на печать выходных документов,
содержащих результаты решения задач
пользователя, данные из таблиц или результаты
поиска, схемы, графики и другие элементы.
Для использования
функции печать необходимо: выбрать таблицу
"Услуги выбранные клиентом" чтобы
получить данные из таблицы, после чего
нажать на кнопку печать, нажав на нее
и можно увидеть такое окно (Рис.17)
Рис.17 – Отчет таблицы «Услуги
выбранные клиентом»
2.2 Спецификация
программы
Программа для гостиничного
комплекса имеет название Project1.exe
Наименование |
Обозначение |
Примечание |
Project1.dpr |
Файл проекта |
Связывает все файлы приложения |
Project1.res |
Файл ресурсов |
Содержит
пиктограммы, версию программы на данный
момент времени |
Project1.pas |
Программный модуль для Form1 |
Определяет функциональность
формы программы |
Project1.pas |
Программный модуль для Form1 |
Определяет функциональность
формы программы |
Project1.dcu |
Объектный
файл для Project1.pas |
Откомпилированная
версия Project1.pas
|
Project1.dcu |
Объектный
файл для Project1.pas |
Откомпилированная
версия Project1.pas
|
1.mdb |
База данных |
База данных, содержащая данные,
используемые в проекте пользователем |
Таблица 1 – Файлы, входящие
в состав проекта
2.3 Текст программы
Это часть кода представляет
собой авторизацию и права пользователей
procedure TForm1.Button2Click(Sender: TObject);
begin
if (ComboBox2.Text='Администратор')
and (Edit2.Text='admin') then //Создание пользователя
администратора и пароля
begin
Label2.Caption:='Вы вошли как
Администратор!'; //Доступ к базе данных
ShowMessage('Выберете таблицу!');
Button9.Visible:=true; // Пользователь
администратор может видеть эти кнопки
Button10.Visible:=true;
Button11.Visible:=true;
Button12.Visible:=true;
Button13.Visible:=true;
Button14.Visible:=true;
Button15.Visible:=true;
Button16.Visible:=true;
Button17.Visible:=true;
Button18.Visible:=true;
Button19.Visible:=true;
Button20.Visible:=true;
Button3.Visible:=True;
// эта кнопка позволяют добавлять запись,
с ними может работать только администратор
Button5.Visible:=True;
// эта кнопка позволяют добавлять и удалять
запись, с ними может работать только администратор
Exit;
end
else Label2.Caption:='Не верный
логин или пароль';//будет показывать
текст, если логин введен неверно
if ComboBox2.Text='Гость' then // создание
пользователя гостя
begin
Label2.Caption:='Вы вошли как
Гость!'; //Вход в программу
ShowMessage('Выберете таблицу!');
Button9.Visible:=true;//включены кнопки,
которые будут позволять просматривать
информацию
Button10.Visible:=true;
Button11.Visible:=true;
Button12.Visible:=true;
Button13.Visible:=false;// кнопки выключены,
их не будет видно на форме
Button14.Visible:=false;
Button15.Visible:=false;
Button16.Visible:=false;
Button17.Visible:=false;
Button18.Visible:=false;
Button19.Visible:=false;
Button20.Visible:=false;
DBGrid1.ReadOnly:=false;
Exit;
end
else Label2.Caption:='Не верный логин
или пароль';
end;
procedure TForm1.ComboBox2Change(Sender: TObject);
begin
Label2.Caption:='Пожалуйста авторизуйтесь!';
Button3.Visible:=False;
Button5.Visible:=False;
Edit2.Enabled:=True;
DBGrid1.ReadOnly:=false;
if ComboBox2.Text='Гость' then
begin
Edit2.Enabled:=False;
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
table.Append; //Эта команда позволяет
добавлять запись в dbgrid
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
table.Delete; // Эта команда позволяет
удалять запись в dbgrid
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
Form2.Show; // будет открываться
2-ая форма
form2.QuickRep1.Preview; // вывод на печать
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
ADOQuery1.Close; // Закрыть базу данных
end;
procedure TForm1.Button8Click(Sender: TObject);
begin
Table.Close;
end;
procedure TForm1.ComboBox3Change(Sender: TObject);
begin
case ComboBox3.ItemIndex of
0: begin table.Active:=False; table.TableName:='Общая
стоимость номера за все пребывание'; table.Fields.AfterConstruction;
table.Active:=True; end; //в ComboBox3 будет выводиться
список запросов, которые будут выводиться
в dbgrid
1: begin table.Active:=False; table.TableName:='Общая
стоимость питания за все пребывание';
table.Fields.AfterConstruction; table.Active:=True; end;
2: begin table.Active:=False; table.TableName:='Стоимость
услуг выбранные клиентом'; table.Fields.AfterConstruction;
table.Active:=True; end;
3: begin table.Active:=False; table.TableName:='Счет
клиента'; table.Fields.AfterConstruction; table.Active:=True;
end;
2.4 Описание программы
Функциональное назначение
программы
Программа предназначена для
использования в рамках гостиничного
комплекса сотрудниками гостиницы. Основным
критерием разрабатываемой программы
является удобство ее использования в
реальном времени и в реальных условиях
работоспособности программного продукта
в рамках любого гостиничного комплекса
подобного типа. Использование программы
позволяет достаточно удобно и быстро
корректировать, изменять и удалять необходимые
части данных или сами данные в необходимом
объеме. Программный продукт предназначен
для того чтобы производить данные и отслеживать
подробную и полную информацию о постояльцах
гостиницы, услугах гостиницы, а также
информации о номерах гостиничного комплекса,
бронировании номеров гостиницы и так
далее. Упрощение работы персоналу гостиницы
– сотрудникам и администраторам, а также
всему управляющему персоналу несёт
в себе использование данного программного
продукта в рамках использования его по
прямому назначению.
Минимальные требования,
предъявляемые для ЭВМ в рамках работы
с программным продуктом, заключаются
в следующих пунктах:
- Windows 9x/ME/NT/2000/XP.
- Видео память не менее lMb. Ускоритель
графики не требуется.
- Оперативной памяти не менее
l6 Mb.
- Процессор Intel Pentium l66 и выше.
- Объем свободного места на
жестком диске не менее 500 Мб.
- Манипуляторы:
клавиатура и мышь.
Вызов и
загрузка.
Программа
запускается на исполнение либо двойным
щелчком левой кнопки мыши по файлу Project1.exe
в проводнике Windows, либо нажатием правой
кнопки мыши по указанному файлу и выбором
пункта меню «Открыть».
2.5 Тестирование
программы
Испытание программного продукта
является немаловажной частью разработки
программного изделия от начала и до ее
завершения. За все время разработки на
всех этапах необходимо контролировать
не только минимизацию, но и устранение
технических ошибок и некорректной ориентировки
данных. Проведение тестовых мероприятий
позволяет избежать неправильной работы
программного продукта при применении
его в реальной жизни в рамках использования
на практике в среде гостиничного комплекса.
Все недостатки, ошибки и недочеты, выявленные
на этапе проектирования и реализации
программного продукта, были обнаружены
и отчасти устранены. В этой программе
возникли проблемы с фильтрацией данных.
Также на Delphi в Dbgrid не выводится список,
который сделанный в Acsess с помощью Мастера
подстановок, выводятся только числа,
а не текст.
2.6 Руководство
пользователя
Первое действие, которые необходимо
совершить пользователю системы, будь
то администратор или сотрудник гостиничного
комплекса, это авторизация. Для данной
процедуры потребуется знание логина
и пароля для того чтобы внести эти данные
в соответствующие поля. Процедура авторизации
является неотъемлемой частью взаимодействия
пользователи и не непосредственно системы
данного программного продукта.
После процедуры прохождения
авторизации пользователь системы автоматически
попадает на главное меню программы, которые
информирует о том, какие имеются у пользователя
прерогативы и что пользователь может
получить – какая информация доступна
для того или иного пользователя? Таким
образом, рассчитывается в необходимом
эквиваленте необходимое количество данных.
Все данных выводятся на монитор пользователя
в новой форме максимально подробно и
логично в том порядке, который изначально
выбирал пользователь системы (сотрудник
гостиничного комплекса или администратор
системы).
Рис.19 – Авторизация
У пользователя
Администратор есть все привилегии на
корректировку, удаление, добавление,
администрирование базы данных.
Рис.20 – Привелегии администратора
А пользователь
Гость может только просматривать таблицы:
О гостинице, Каталог услуг, Данные о номере,
Питание.
Рис.21 – Привелегии гостя
Для авторизации необходимо
воспользоваться следующими данными.
Пользователь: администратор
Пароль:admin
Вход гостя:
Пользователь: Гость
Заключение
Программный продукт, выполненный
в соответствии со всеми требованиями,
а также отвечающий всем изначально заданным
критериям, позволяет пользователю системы
данного программного изделия использовать
его в профессиональных целях при определении
необходимых требований и получении необходимой
части информации по итогам использования.
Данное программное изделие
позволяет добиваться подробной информации
и предоставлять ее в том виде, который
является удобным, правильным, лаконичным
и грамотным с точки зрения использования
программного продукта. Максимальный
коэффициент полезного действия данного
программного продукта позволит проводить
интегрированность данных в рамках любого
гостиничного комплекса в необходимом
виде.
Каждая новая информация предоставляется
пользователю в новой форме в целях взаимопонимания
и удобства пользователя в рамках контакта
и взаимодействия сотрудника гостиничного
комплекса с программным продуктом.