Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Перекрытие временных периодов [D7, Access]


Страницы:   1 2

Paradise ©   (2007-11-26 12:19:00) 

Здравствуйте!
Подскажите,пожалуйста,а то уже измучилась просто..
Есть БД в Access.С помощью ADO подключена в Delphi.
Там есть поле Период_работы,в нем время в течение которого инженер выполнял работу,например с 14:00 до 15:00 26 ноября 2007г.
Подскажите,как реализовать перекрытие периодов,чтобы у определенного инженера был не повторяющийся период работы в определенный день недели?
Нужен именно алгоритм кода и куда его вставить.


Сергей М.   (2007-11-26 13:06:00) [21]


> Ну дата то в любом случае останется.Это дата поступления
> заявки


Ну тогда уж и оно должно быть типа DATETIME - время поступления заявки в течение дня, наверняка, тоже понадобится.


> время начала и окончания периода лучше делать в одном поле?


Ты уже сделала в одном поле)
О том ведь и речь, чтобы разбив его на два избавить тем самым себя от грядущего геморроя)


Paradise   (2007-11-26 13:03:00) [22]


> Два поля типа DATETIME (дата+время начала и окончания периода)
> вместо полей  "Дата" и "Период_работы" намного облегчат
> решение задачи, тем более с учетом БД Access.


Ну дата то в любом случае останется.Это дата поступления заявки и привязана к календарю.
А время начала и окончания периода лучше делать в одном поле?Или проще разбить на два?


Сергей М.   (2007-11-26 13:01:00) [23]


> Johnmen ©   (26.11.07 12:52) [4]
>
>


Я так понял, что задача сводится к реализации неких проверок, не допускающих фиксацию выполнения мастером более чем одного "заказа" в любой момент времени.


Paradise   (2007-11-26 12:58:00) [24]

Ну например,есть инженер Петров,который 26 ноября 2007 года ремонтировал принтер с 14:30 до 15:30 у клиента ООО "Ромашка".Он же не может уже с 14:30 до 15:30 26 ноября 2007 года ремонтировать принтер в ООО "Самолет".
А у меня в базе получает,что может...


Сергей М.   (2007-11-26 12:56:00) [25]


> логичнее сделать два поля "Начало работы" и "Конец работы"


Угу.
Что угодно, но только не строковое представление данных о периоде.

Два поля типа DATETIME (дата+время начала и окончания периода) вместо полей  "Дата" и "Период_работы" намногооблегчат решение задачи, тем более с учетом БД Access.

Переделывай, потом и разговор будет)


Johnmen   (2007-11-26 12:52:00) [26]


> Подскажите,как реализовать перекрытие периодов,чтобы у определенного
> инженера был не повторяющийся период работы в определенный
> день недели?

Можно ещё раз. Для тех, кто ничего не понял.


Paradise   (2007-11-26 12:46:00) [27]

Сама структра главной таблицы это:
Дата--Клиент--Адрес--Описание проблемы--Мастер--Период_работы

Связи по полям клиенты,мастер и период_работы.


Paradise   (2007-11-26 12:35:00) [28]

Саму структуру БД составляла я.
В принципе,думаю логичнее сделать два поля "Начало работы" и "Конец работы",но всё равно как реализовать перекрытие непонятно...


Сергей М.   (2007-11-26 12:29:00) [29]


> есть поле Период_работы


Оно там откуда взялось ?
Это ты создал такое поле или оно досталось тебе по наследству ?
Я в смысле - кто разработчик структуры базы ?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо