Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Гостинечный комплекс.doc
Скачиваний:
95
Добавлен:
01.05.2014
Размер:
2.85 Mб
Скачать

6. Код программы

Подчиненная форма «Заказ» формы «Клиент»

Option Compare Database

Dim kolvo As Single

Private Sub Дата_выезда_AfterUpdate()

kolvo = [Дата_выезда] - [Дата_прибытия]

[Стоимость] = kolvo * [Стоимость_номера]

Refresh

End Sub

Private Sub Дата_прибытия_AfterUpdate()

kolvo = [Дата_выезда] - [Дата_прибытия]

[Стоимость] = kolvo * [Стоимость_номера]

Refresh

End Sub

Private Sub Номер_номера_AfterUpdate()

kolvo = [Дата_выезда] - [Дата_прибытия]

[Стоимость] = kolvo * [Стоимость_номера]

Refresh

End Sub

Private Sub Номер_номера_Click()

End Sub

Подчиненная форма «Заказ» формы «Заказ услуг»

Option Compare Database

Sub Form_Current()

Dim ParentDocName As String

On Error Resume Next

ParentDocName = Me.Parent.Name

If Err <> 0 Then

GoTo Form_Current_Exit

Else

On Error GoTo Form_Current_Err

Me.Parent![Используемые услуги подчиненная форма].Requery

End If

Form_Current_Exit:

Exit Sub

Form_Current_Err:

MsgBox Error$

Resume Form_Current_Exit

End Sub

Подчиненная форма «Используемые услуги» формы «Заказ услуг»

Option Compare Database

Private Sub Дата_Change()

Refresh

If [Дата] < Forms![Заказ услуг]![Заказ подчиненная форма].Form![Дата прибытия] Or [Дата] > Forms![Заказ услуг]![Заказ подчиненная форма].Form![Дата выезда] Then

MsgBox "Дата не соответствует времени вашего пребывания в гостинице.", vbExclamation

[Дата].Value = ""

End If

End Sub

Private Sub Количество_раз_AfterUpdate()

[Общая стоимость] = [Стоимость] * [Количество раз]

Refresh

End Sub

Private Sub Номер_услуги_AfterUpdate()

[Общая стоимость] = [Стоимость] * [Количество раз]

Refresh

End Sub

7. Тестирование базы данных

Запустим разработанное приложение.

Взаимодействие с пользователем осуществляется при помощи форм и запросов. Подробное их описание следует ниже.

Откроем форму «Клиент», которая предназначена для работы с информацией о клиентах и заказах (рис. 19).

Рис. 19. Форма «Книга»

Первоначально вводится информация о клиенте (ФИО, номер и серия паспорта, адрес, гражданство), а затем на подчиненной форме вводятся сведения о самом заказе. В поле со списком «Номер» пользователь может выбрать один из свободных на текущий момент номеров или же изменить свой выбор. В последнем случае информация об общей стоимости заказа обновиться.

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

Рис. 20. Форма «Заказ услуг»

Подчиненная форма «Заказ» содержит неизменную информацию, которая отображает некоторые сведения о заказе. В подчиненной форме «Используемые услуги» в поле со списком «Номер услуги» пользователь может выбрать любую доступную услугу. Некоторые сведения о ней автоматически появятся в соответствующих полях. В поле «Дата» ведется проверка на значение: дата должна соответствовать времени пребывания клиента в гостинице (в противном случае будет выдано сообщение об ошибке и просьба повторить ввод).

Помимо форм, важную роль играют запросы.

Так, нажав на запрос о свободных номерах, пользователь в любой момент может узнать список незанятых номеров на текущий момент (рис. 21).

Рис. 21 Список свободных номеров

Или наоборот, щелкнув по запросу «Заняты до даты», пользователь сможет узнать перечень номеров, занятых до определенной даты календаря (рис. 22).

Рис. 22. Постановка даты

Рис. 23 Выполнение запроса «Заняты до даты»

Следующим на очереди идет запрос «Номер за время». После нажатия на запрос пользователю будет предложено несколько окон ввода (Введите номер номера, Введите начальную дату, Введите конечную дату). После ввода появиться таблица, характеризующая занятость номера в течение определенного периода времени (рис. 24).

Рис. 24. Выполнение запроса «Номер за время»

Последним запросом является «Посещаемость». В результате выполнения этого запроса на экране отображаются сведения о регулярности посещения гостиницы теми или иными клиентами (рис. 25). На основании этой информации можно сделать вывод о наиболее часто посещающих гостиницу постояльцах.

Рис. 25. Выполнение запроса «Посещаемость»

Кроме всего вышеперечисленного, немалое значение имеет отчет «Номер/Клиент/Услуги». По заданному гостиничному номеру выдается список клиентов, проживавших в этом номере и их счета гостинице за использованные дополнительные услуги (рис. 26).

Рис. 26. Отчет «Номер/Клиент/Услуги»

Соседние файлы в предмете Базы данных
  • #
    01.05.20142.35 Mб94База данных.mdb
  • #
    01.05.20143.04 Mб107БД Аэропорт.mdb
  • #
    01.05.20145.26 Mб172Библиотека.mdb
  • #
    01.05.20141.97 Mб170Все лабы по БД.mdb
  • #
    01.05.20143.83 Mб55Горнолыжная база.mdb
  • #
  • #
    01.05.20141.47 Mб155Деканат. База данных в Access.mdb
  • #
    01.05.20141.5 Mб116Деканат. База данных в Access1.mdb
  • #
    01.05.20141.29 Mб59Детали и изделия.mdb
  • #
    01.05.20143.91 Mб28Должники МИСиС.mdb
  • #