|
Создание интервала для записи
|
|||
---|---|---|---|
#18+
Доброго времени суток. Есть таблица шаблонов расписания. Код: plsql 1. 2. 3. 4. 5. 6.
Следовательно активен шаблон в любой момент только один и для каждого шаблона имеется n-ое количество интервалов расписаний Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Так же существует таблица в которой уже хранятся записи и занятое время. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Нужно составить хранимую процедуру (запрос), которая возвращала бы доступное время для записи (если возможно, то одним запросом) учитывая: 1. интервал приема 2. уже занятое время другими записями 3. дни недели. Интервалы одного Schedule у меня построить получается, но как это сделать для всех Schedule одного шаблона и исключить уже то время на которое записались. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2021, 23:54 |
|
Создание интервала для записи
|
|||
---|---|---|---|
#18+
Navi030596 Доброго времени суток. Есть таблица шаблонов расписания. Код: plsql 1. 2. 3.
О чем тут вообще можно говорить? По, собственно, проблеме: 1. Строим ВСЕ интервалы приема в табличку. 2. Отмечаем занятые. (Правильнее иметь отдельную табличку Занятых и связь между ВСЕ <-> Занятые. Тады при изменении расписаний "записанные страдальцы" не пропадут. ) 3. Далее фсе просто - выбираем свободный из ВСЕ. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2021, 13:56 |
|
Создание интервала для записи
|
|||
---|---|---|---|
#18+
Поясню мысль коллеги aleks222 Речь идет о таблице "календарь" заполненой на годы вперед любые попытки сгенерировать такую таблицу "на лету" на базе шаблонов (дней недели, праздников) и т.д. обречены на неудачу сложный, часто изменяемый код. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2021, 17:25 |
|
Создание интервала для записи
|
|||
---|---|---|---|
#18+
aleks222,программно я это уже сделал, вызывая более простые процедуры. Но думаю было бы неплохо эти интервалы создавать сразу на сервере. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2021, 23:59 |
|
|
start [/forum/topic.php?fid=46&fpage=19&tid=1684493]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
308ms |
get topic data: |
10ms |
get forum data: |
1ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
others: | 263ms |
total: | 675ms |
0 / 0 |