Результаты выполения запросов q_ВыборСвбодногоНомера
Запрос выбора свободного номера на текущий день Используются таблицы «Категория номеров» «Номера» и «Регитрация» для выделения только тех номеров, которые не заняты в текущий день ( и не будут заняты вплоть до даты выселения регистрируемого лица)
Используется, как список предлагаемых номеров в форме
На рис 9 приводится конструирование приведенного запроса
Список задаваемый приведенным запросом открывается при выборе номера, после выбора категории номеров (см. рис 10)
Вид запроса в виде предложения SQL
SELECT DISTINCTROW КатегорииНомеров.КодКатНомера, Номера.Номер, КатегорииНомеров.Тариф, Номера.Этаж, Регистрация.ДатаВселения, Регистрация.ДатаВыселения, IIf(Date()>[Регистрация].[ДатаВселения] And Date()<=[Регистрация].[ДатаВыселения],-1,0) AS Занят, ([Регистрация].[ДатаВыселения]-[Регистрация].[ДатаВселения])*[Тариф] AS Оплата
FROM (КатегорииНомеров INNER JOIN Номера ON КатегорииНомеров.КодКатНомера = Номера.КодКатегории) INNER JOIN Регистрация ON Номера.Номер = Регистрация.Номер
WHERE (((IIf(Date()>[Регистрация].[ДатаВселения] And Date()<=[Регистрация].[ДатаВыселения],-1,0))=0))
ORDER BY КатегорииНомеров.КодКатНомера, Номера.Этаж;
Источник записей в форме frmКлиентыПросм
SELECT Клиенты.КодКлиента, Клиенты.ФИО, Клиенты.Адрес, Клиенты.Телефон, Клиенты.[Паспорт №серия], Клиенты.ПаспортВыдан FROM Клиенты ORDER BY Клиенты.ФИО;
Рис 10 Вид формы регистрации Клиента при выборе свободного номера в двухместном люксе
Q_Проживание не оплачено
Запрос предназначен для выявления неоплаченных номеров На рис 11 см. конструирование запроса.
Рис 11 Конструирование запроса «проживание не оплачено»
Ниже приводится вид запроса ввиде фразы SQL:
SELECT DISTINCTROW Регистрация.ДатаВселения, Регистрация.ДатаВыселения, Регистрация.Сумма, Регистрация.Оплачен, Клиенты.ФИО
FROM Клиенты INNER JOIN Регистрация ON Клиенты.КодКлиента = Регистрация.КодКлиента
WHERE (((Регистрация.Оплачен)=0));
Q_сумма оплаты за месяц
Запрос предназначен для суммирования сведений об оплате за месяц
Приводится в виде фразы на языке SQL
При выполнении запроса открываются диалоговые окна (см. рис 12) в соответствии с параметрами запроса
SELECT DISTINCTROW Month(([ДатаВыселения])) AS [Итого за месяц], Sum(Регистрация.Сумма) AS Sum_Сумма, Регистрация.Оплачен
FROM Клиенты INNER JOIN Регистрация ON Клиенты.КодКлиента = Регистрация.КодКлиента
GROUP BY Month(([ДатаВыселения])), Регистрация.Оплачен
HAVING (((Month(([ДатаВыселения])))=[Укажите № мес выбытия]) AND ((Регистрация.Оплачен)=-1));
Итого
за месяц Sum_Сумма Оплачен 10 32
700,00р. Да
В работе сконструированы з формы, основанные на запросах- источниках информации. Первая форма приведена на рис 10. Дл выбор клиентов используется список, а при вводе нового клиента нажимается кнопка “Ввод паспортных данных нового клиента” При этом вызывается форма frmКлиентыНовый
Форма приводится на рис 13
Рис 13 Ввод паспортных данных нового клиента или просмотр существующего
Для просмотра паспортных данных списка клиенов сконструирована ленточная форма “Клиенты- Просмотр” frmКлиентыПросм
На рис 14 вид открытой формы frmКлиентыПросм