powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / График работы
20 сообщений из 20, страница 1 из 1
График работы
    #38315036
yura89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте. Подскажите как лучше хранить графики работы. Ну например склад работает в понедельник-четверг с 8:00 до 17:00 а в пятницу c 8:00 до 16:00. Ну или например в зависимости от нагрузки может меняться в конкретный день график работы. Подскажите пожалуйста как лучше хранить чтобы экономит место ну и можно было искать быстро. Спасибо.
...
Рейтинг: 0 / 0
График работы
    #38315057
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yura89можно было искать быстро
Что искать?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
График работы
    #38315065
londinium
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В самом базовом варианте без учета обедов и перерывов я бы делал так:
дата
время начала работы склада
время окончания работы склада
...
Рейтинг: 0 / 0
График работы
    #38315085
Flying Dutchman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yura89Здравствуйте. Подскажите как лучше хранить графики работы. Ну например склад работает в понедельник-четверг с 8:00 до 17:00 а в пятницу c 8:00 до 16:00. Ну или например в зависимости от нагрузки может меняться в конкретный день график работы. Подскажите пожалуйста как лучше хранить чтобы экономит место ну и можно было искать быстро. Спасибо.

Нужно создать две таблицы.

В первой хранятся графики работы по дням недели. В второй хранятся графики работы по датам, если на эту дату график работы отличается от графика работы из первой таблицы.
...
Рейтинг: 0 / 0
График работы
    #38315097
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yura89,
...
Рейтинг: 0 / 0
График работы
    #38315139
yura89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Flying Dutchman , я так понял решение как и ViPRos предложил, интересно, мне подойдет. Спасибо большое за помощь!
...
Рейтинг: 0 / 0
График работы
    #38315342
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yura89Здравствуйте. Подскажите как лучше хранить графики работы. Ну например склад работает в понедельник-четверг с 8:00 до 17:00 а в пятницу c 8:00 до 16:00. Ну или например в зависимости от нагрузки может меняться в конкретный день график работы. Подскажите пожалуйста как лучше хранить чтобы экономит место ну и можно было искать быстро. Спасибо.

График работы, это очень гибкая вещь, т.к. существуют выходные и праздничные дни, которые могут переноситься.
График работы со временем может меняться.
Т.о. не надо придумывать "периодичный" график работы, т.к. он обрастет кучей исключений.
Из моего опыта, минимальный график работ должен составляться на год.
Причем изменяемый в течении года.
А так просто хранить график работы на каждый день.
...
Рейтинг: 0 / 0
График работы
    #38317388
Фотография bootty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulГрафик работы, это очень гибкая вещь, т.к. существуют выходные и праздничные дни, которые могут переноситься.
График работы со временем может меняться.
Т.о. не надо придумывать "периодичный" график работы, т.к. он обрастет кучей исключений.
Из моего опыта, минимальный график работ должен составляться на год.
Причем изменяемый в течении года.
А так просто хранить график работы на каждый день.
Что плохого в исключениях?
И насколько удобно будет работать с изменениями, если просто хранится график работы на каждый день?

Пару лет назад была похожая тема .
...
Рейтинг: 0 / 0
График работы
    #38318058
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boottyЧто плохого в исключениях?

То что они каждый год уникальны.
Грубо говоря выпал праздничный день на выходной, то выходной переноситься на другой день.
И так каждый год нужно иметь таблицу исключений, причем закономерности "кот наплакал".

boottyИ насколько удобно будет работать с изменениями, если просто хранится график работы на каждый день?


Просто и удобно.
У вас есть график работы на каждый день (например на год).
Соответственно храниться вся история графиков работы.
И не нужно думать про исключения, т.к. каждый день "уникальный".

P.S. Просто я решал данную задачу, когда сталкивался с расписаниями в Университете.
Хотя вроде бы был цикл неделя четная/нечетная, но расписание менялось каждый день в сентябре,
и раз в неделю позже. Поэтому если есть задача составить график работ, расписание и т.д. То лучше планировать "по факту". Т.е. на каждый конкретный день. Т.к. "циклы" в этому случае сильно "не четкие". :-)
...
Рейтинг: 0 / 0
График работы
    #38318114
Фотография bootty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulboottyЧто плохого в исключениях?

То что они каждый год уникальны.
Грубо говоря выпал праздничный день на выходной, то выходной переноситься на другой день.
И так каждый год нужно иметь таблицу исключений, причем закономерности "кот наплакал".
Так на то они и исключения :-)

Пример:

График работы (с десяток записей):

пн–чт 9:00 — 18:00 (обед 13:00 — 13:45)
пт 9:00 — 16:45 (обед 13:00 — 13:45)
сб-вск — выходной

За исключением ... *здесь с десяток-два исключений в год*

График на каждый день вычисляется как правила минус исключения.

Другой вариант: записи на каждый день — это несколько сотен записей.
При смене графика изменения делаются в нескольких записях.

mad_nazgulP.S. Просто я решал данную задачу, когда сталкивался с расписаниями в Университете.
Хотя вроде бы был цикл неделя четная/нечетная, но расписание менялось каждый день в сентябре,
и раз в неделю позже. Поэтому если есть задача составить график работ, расписание и т.д. То лучше планировать "по факту". Т.е. на каждый конкретный день. Т.к. "циклы" в этому случае сильно "не четкие". :-)
Я бы не смешивал воедино график работы и расписание занятий. Расписание в данном случае — менее стабильная сущность :-)
...
Рейтинг: 0 / 0
График работы
    #38318279
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boottyТак на то они и исключения :-)

Пример:

График работы (с десяток записей):

пн–чт 9:00 — 18:00 (обед 13:00 — 13:45)
пт 9:00 — 16:45 (обед 13:00 — 13:45)
сб-вск — выходной

За исключением ... *здесь с десяток-два исключений в год*

График на каждый день вычисляется как правила минус исключения.

Другой вариант: записи на каждый день — это несколько сотен записей.
При смене графика изменения делаются в нескольких записях.


А еще отпуска, командировки, болничные.
Это тоже "исключения", которые надо будет учитывать. ;-)
Причем я еще не говорил по вахту,расписание работы диспетчеров и прочие специфичные графики работ.
Т.е. мне как программисту проще сделать одну логику работы, чем городить "исключения". :-)

boottyЯ бы не смешивал воедино график работы и расписание занятий. Расписание в данном случае — менее стабильная сущность :-)

По своему опыту, стабильность у них одинакового порядка.
Ксли рассматривать график работы не только офисного сотрудника. ;-)
...
Рейтинг: 0 / 0
График работы
    #38318499
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,

обясни ка что ты хошь сказать?
...
Рейтинг: 0 / 0
График работы
    #38318548
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosmad_nazgul,

обясни ка что ты хошь сказать?

Я хочу сказать, что хранить "цикл" графика работы на неделю в "абстрактном" (не привязанным к конкретной дате) виде не удобно для программирования.
Цикличность графика работы кажущаяся.
Точнее закономерность есть, но она сильно "не строгая".
Поэтому если придерживаться данной концепции, то надо "предусмотреть" кучу "исключений".
Т.е. сложность программы и программирования возрастет, т.к. часть бизнес-логики будет храниться в данных.
Что приведет к тому, что при обработке данных надо будет везде учитывать данную бизнес-логику.
...
Рейтинг: 0 / 0
График работы
    #38318661
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,

а как ты будешь задавать график на года 2 поденно? а может надо еще пару дней? где конец гоизонта? на основании чего?
вощем никакой сложности с календарями нет, есть стандарты, есть стандартные алгоритмы и т.д.
а МРПшный горизонт там и остался и нафиг никому не нужен
...
Рейтинг: 0 / 0
График работы
    #38319019
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosmad_nazgul,
а как ты будешь задавать график на года 2 поденно? а может надо еще пару дней? где конец гоизонта? на основании чего?
вощем никакой сложности с календарями нет, есть стандарты, есть стандартные алгоритмы и т.д.
а МРПшный горизонт там и остался и нафиг никому не нужен

Я про хранение данных, а не про алгоритмы ;-)
Хранить лучше поденно.
А дальше на усмотрения заказчика.
Либо он сам заводит график.
Либо пишется "алгоритм" заполнения, с возможностью "правки" для исключений.
Хранить в БД сам график, как "цикл" смысла нет.
"Цикличность" графика лучше реализовывать в алгоритме.
А вот "экономить на спичках" не надо. ;-)
...
Рейтинг: 0 / 0
График работы
    #38319200
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,

поденный клендарь - ерунда
...
Рейтинг: 0 / 0
График работы
    #38319504
londinium
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторподенный клендарь - ерунда
Было бы неплохо обосновать такой радикализм
...
Рейтинг: 0 / 0
График работы
    #38319837
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
londiniumавторподенный клендарь - ерунда
Было бы неплохо обосновать такой радикализм

Ну кроме хранения "большего" количества данных я явных минусов не вижу.

P.S. Мое мнение, что "циклы" и способы формирования графиков эффективнее хранить в алгоритмах ЯП, чем в БД.
Но опять же никто не мешает наступать на грабли самостоятельно :-)
...
Рейтинг: 0 / 0
График работы
    #38319960
londinium
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторНу кроме хранения "большего" количества данных я явных минусов не вижу
Вот и я не вижу. Плюс график работы по определению быть большим не может. В году 365 дней, за 10 лет в таблице по одному складу будет 3650 записей - немного
...
Рейтинг: 0 / 0
График работы
    #38319971
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
londiniumавторНу кроме хранения "большего" количества данных я явных минусов не вижу
Вот и я не вижу. Плюс график работы по определению быть большим не может. В году 365 дней, за 10 лет в таблице по одному складу будет 3650 записей - немного

Тут еще надо учесть что график работы может быть индивидуальным ;-)
Т.е. за год 365 * N, где N - количество сотрудников.
Не забываем, про отпуска больничные и командировки.
Но все равно это не на столько много, чтобы об этом "ломать голову"
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / График работы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]