Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.04.2013, 14:31   #1
АННА-ЕАО
Форумчанин
 
Аватар для АННА-ЕАО
 
Регистрация: 24.08.2011
Сообщений: 193
Сообщение При записи другого клиента запрет на запись в уже занятый день и час

Всем здравствуйте!
Помогите, пожалуйста, советом или разъяснением (буду и примеру очень рада).
Есть фирма по оказанию услуг (массаж), в которой работают несколько мастеров с графиком выхода 2/2.
Есть клиенты, которые могут предварительно записываться по телефону.
В общем небольшую базу самую элементарную я почти сделала (Таблицы: сотрудники, клиенты, заказы, вид услуг и т.д.), но как то примитивно совсем.
Подскажите пожалуйста, возможно ли в ACCESS реализовать следующую идею:
1. Вначале месяца необходимо заполнить табель выхода на работу мастеров,
2. При записи клиента выбрать мастера и выбрать дату работу этого мастера,
3. При записи другого клиента запрет на запись в уже занятый день и час.
В голове идеи какие то вертятся, но знаний, конечно, не хватает, буду рада любой помощи.
Если данная идея слишком сложная придется от неё отказаться.
Спасибо.
АННА-ЕАО вне форума Ответить с цитированием
Старый 24.04.2013, 14:52   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
1. Вначале месяца необходимо заполнить табель выхода на работу мастеров,
Код:
Insert Tabel (master, data_seanc, time_seanc)
на все дни и часы работы и для каждого мастера
Цитата:
2. При записи клиента выбрать мастера и выбрать дату работу этого мастера,
Код:
update tabel set client =??? 
where master=???  and data_seanc=??? and time_seanc =???
Цитата:
3. При записи другого клиента запрет на запись в уже занятый день и час.
Только свободные рабочие часы мастера
Код:
select master, data_seanc, time_seanc from tabel where master =??? and client is NULL
свободные сеансы с указнием мастера в указанный день
Код:
select master, data_seanc, time_seanc from table where data_seanc=??? and client is NULL
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 24.04.2013 в 15:00.
evg_m вне форума Ответить с цитированием
Старый 24.04.2013, 16:07   #3
АННА-ЕАО
Форумчанин
 
Аватар для АННА-ЕАО
 
Регистрация: 24.08.2011
Сообщений: 193
По умолчанию

evg_m Большое спасибо Вам за помощь. Будьте добры поясните как это работает. Я умею делать формы, таблицы, запросы а вот через код sql не умею. Если это сложно объяснить в двух словах, то подскажите, пожалуйста, какую литературу почитать или может быть сайт с примерами. Спасибо.
АННА-ЕАО вне форума Ответить с цитированием
Старый 24.04.2013, 16:44   #4
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
то подскажите, пожалуйста, какую литературу почитать
Мартин Грубер Понимание SQL.

краткая суть моего предыдущего поста.
Вам нужна таблица Tabel со следующими полями
Код:
master -мастер
data_seanc дата сеанса
time_seanc время сеанса 
client клиент записанный на данный сеанс (data_seanc, time_seanc) к данному мастеру (master)
в которой по сути будет вестись весь учет (рабочие часы мастеров / запись клиента на сеанс)
конечно и таблицу и поля вы назовете так как вам удобно

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

1. при составление табеля мы записываем в эту таблицу все возможные сеанса мастера за новый месяц.
С указанием мастер / дата / время /сеанса
клиента пока не указываем т.е. у нас все вновь созданные сеансы доступны.
при изменении графика работы данные должны быть откорректированы.

2. при записи клиента (после того как он определился с мастером и временем) в нужном месте проставляем клиента.

3. для того чтобы не было повторной записи мы настраиваем фильтр показа при выборе сеанса(п.2) так чтобы занятые сеансы не были видны, точнее чтобы были видны(доступны) только свободные (сlient is NULL).

способы выполнения в общем-то могут быть на ваше усмотрение.
Цитата:
Я умею делать формы, таблицы, запросы а вот через код sql не умею.
просто на SQL все что я сейчас написал укладываются в несколько строк (см. предыдущий пост), и все запросы все равно приводятся к SQL виду.
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 24.04.2013 в 16:53.
evg_m вне форума Ответить с цитированием
Старый 24.04.2013, 16:53   #5
АННА-ЕАО
Форумчанин
 
Аватар для АННА-ЕАО
 
Регистрация: 24.08.2011
Сообщений: 193
По умолчанию

evg_m Ещё раз большое спасибо Вам за помощь. Буду разбираться и читать. Спасибо за разъяснения, суть поняла.
АННА-ЕАО вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запрет редактирования записи в БД Liite БД в Delphi 14 29.03.2013 12:04
Iaccessible to IHTMLElement.... Вроде всё просто, а я уже 4-й день ищу... chaky22 Win Api 0 14.12.2010 20:13
Запрет запуска программы на VBA в случае если Excel уже открыт kovalevskivf Microsoft Office Excel 4 01.09.2009 11:22
уже второй день парюсь! Алёна БД в Delphi 9 16.03.2007 08:22