Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.29;
Скачать: CL | DM;

Вниз

посоветуйте структуру таблицы   Найти похожие ветки 

 
stud ©   (2005-05-17 11:37) [0]

необходимо контролировать посещения клиентов по времени и дням недели т.е.
например можно посещать
пн 9,00-18,00
вт 9-18
ср 10-20
..
вс 11-16 т.е. эту инфу нужно хранить в базе. как лучше это сделать?
создать поля в таблице: d1start,d1end.....d7start,d7end или
отдельную таблицу со связью или...


 
Anatoly Podgoretsky ©   (2005-05-17 11:39) [1]

Ну это посмотреть надо.


 
stud ©   (2005-05-17 11:42) [2]

куда?


 
msguns ©   (2005-05-17 11:43) [3]

Отдельную таблицу-дочку с двумя информационными полями типа TDateTime


 
Sergey13 ©   (2005-05-17 11:44) [4]

Если у всех есть допуск на каждый день (или почти на каждый) недели, то наверное можно и в одну запись напихать полей. Если у одного только по понедельникам у другого по вторникам - наверное лучше отдельную таблицу.
Можно еще подумать про стандартные графики. Т.е. для графика прописываются часы, а челу проставляется соответствие графику.


 
Max Zyuzin ©   (2005-05-17 11:51) [5]

>msguns ©   (17.05.05 11:43) [3]
К этой табличке еще припаять день недели и совсем хорошо будет... разве что с праздиками проблеммы... но это тоже решаемо, заведением таблички с праздиками...


 
msguns ©   (2005-05-17 11:55) [6]

>Max Zyuzin ©   (17.05.05 11:51) [5]
>К этой табличке еще припаять день недели

Зачем ?


 
Max Zyuzin ©   (2005-05-17 12:24) [7]

>msguns ©   (17.05.05 11:55) [6]
В твоем варианте получается что каждому клиенту придется забивать даты посещения на каждый каждый день вообще, а тут нужно именно по недельно.


 
stud ©   (2005-05-17 12:28) [8]


> К этой табличке еще припаять день недели и совсем
> хорошо будет

обязательно, дата тут не при чем, тут день недели важен


 
Max Zyuzin ©   (2005-05-17 12:33) [9]

>stud ©   (17.05.05 12:28) [8]
TDataTime там при том, что в ней будет хранится время посещения :)


 
msguns ©   (2005-05-17 12:41) [10]

>stud ©  
>Max Zyuzin ©

А вытянуть день недели из TDataTime предрассудки не позволяют ?


 
Max Zyuzin ©   (2005-05-17 12:46) [11]

>msguns ©   (17.05.05 12:41) [10]
Серег ты мыслишь не в ту сторону (или я :-))
В твоей таблице, например, скажи сколько понадобится записей, что бы записать все понедельники за год?


 
Max Zyuzin ©   (2005-05-17 12:48) [12]

>msguns ©   (17.05.05 12:41) [10]
Ааа я понял, ты типа хочешь что бы часть которая за дату отвечает хранила первую неделю любого года? Типа от туда только определям какой день недели так что ли?


 
msguns ©   (2005-05-17 12:49) [13]

>Max Zyuzin ©   (17.05.05 12:46) [11]
>Серег ты мыслишь не в ту сторону (или я :-))
В твоей таблице, например, скажи сколько понадобится записей, что бы записать все понедельники за год?

Дай, чегой-то я в последнее время пренебрегаю сухими дрожжами - хреново с воображением..

Зачем в БД хранить ПОНЕДЕЛЬНИКИ, ЧЕТВЕРГИ и т.д. ???


 
ANB ©   (2005-05-17 12:52) [14]


> msguns ©   (17.05.05 12:49) [13]

План составляем на стандартную неделю.
Типа Пн 10.00 - 18.00.
Когда начнется нужная - определяем праздники и на лету считаем дату. Да решил уже автор проблему по вышестояшим постам.


 
Anatoly Podgoretsky ©   (2005-05-17 12:58) [15]

stud ©   (17.05.05 11:42) [2]
В твои сущности.


 
msguns ©   (2005-05-17 12:59) [16]

>ANB ©   (17.05.05 12:52) [14]
>План составляем на стандартную неделю

Ага. Но план-то составляет клиент. Или сервер ? А вот на клиенте рисуй на форме хоть четверги, хоть пятницы, с учетом хоть выходных, хоть праздников святого Бодуна - на сервер пойдет TDateTime, и вообще ему совершенно серо-помаранчево, какой день недели и для чего. Вся это требуха выполняется запросами, желательно грамотно написанными. Только вот причем здесь структура таблиц (смотрим сабж) ?


 
stud ©   (2005-05-17 13:04) [17]


> А вытянуть день недели из TDataTime предрассудки не
> позволяют

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


 
Anatoly Podgoretsky ©   (2005-05-17 13:54) [18]

Это называется охранный календарь и в данной постановке - день недели, вход, выход - при условии не перехода через сутки, что является частным случаем.


 
ANB ©   (2005-05-17 14:28) [19]


> на сервер пойдет TDateTime
- зачем ему на сервере TDateTime ? Если можно хранить номер дня недели и 2 времени в любом формате.


 
stud ©   (2005-05-17 14:39) [20]

хранить надо в любом случае:
день_недели,можно_приходить_с, можно_приходить_по.
вопрос как это удобнее реализовать, чтобы и хранилось нормально и использовать удобно было


 
Sergey13 ©   (2005-05-17 14:43) [21]

2[20] stud ©   (17.05.05 14:39)
>вопрос как это удобнее реализовать, чтобы и хранилось нормально и использовать удобно было
Так хранить и использовать ты будешь или Пушкин? Ты? Тебе и решать. Вариантов достаточно (ты их сам перечислил 8-).


 
stud ©   (2005-05-17 15:01) [22]

вот и спрашиваю про варианты!!!!!


 
Sergey13 ©   (2005-05-17 15:07) [23]

2[22] stud ©   (17.05.05 15:01)
Я тебя в [4] тоже спрашивал (точнее фантазировал при отсутствии инфы), но ты же молчишь на это.


 
stud ©   (2005-05-17 15:14) [24]

наверное лучше отдельную таблицу.....


 
Max Zyuzin ©   (2005-05-17 15:15) [25]

>msguns ©   (17.05.05 12:49) [13]
Чего то начало недели а я туплю... не понял я нифига как в твоей таблице будет сохранятся например что в четверг можно ходит с 11-00 до 15-00 напиши плиз что будет жить в твоей таблице?

>stud ©   (17.05.05 14:39) [20]
Тебе уже вроде насоветовали, да ты и сам насоветовал... а по поводу удобст - каждому удобно по совему... кому стоя в гамаке... :)


 
msguns ©   (2005-05-17 15:16) [26]

Не, ну чего подняли сыр-бор-то ?
Есть 2 сущности:
1)график
2)процедура регистрации

График составляется НА КЛИЕНТЕ, т.е. с помощью удобной для пользователя (админа) формы: с разными пикерами, календарями, праздниками-выходными, дежурством бобика со сторожем дядей Ваней и т.д.
Главное, чтобы в БД была записана след.информация:
- Клиент
- Дата
- Время входа
- Время выхода

Последние три поля вполне симбиобствуют в одном TDateTime !

Когда студент Непришейконюхвостенко пытается завалиться в систему (говоря по-бразильски - логиниться), посланная с тачки малява попадает на сервер, где тупо выполняется запрос типа
А-ну-ка-дай-инфу-по-клиенту-имярек-где_дата_время_сегодня_витвин_время_входа_и_время выхода.
Если запрос вернет запись, то заходи, дорогой, гостем будешь. Иначе - поганая метла и грязный сапог под зад.

 ВСЕ !


 
msguns ©   (2005-05-17 15:18) [27]

Извиняюсь, в двух дататаймах.


 
Sergey13 ©   (2005-05-17 15:41) [28]

2 [24] stud ©   (17.05.05 15:14)
>наверное лучше отдельную таблицу.....
Наверное. Избавишься от динамических запросов по выборке нужных полей.


 
Max Zyuzin ©   (2005-05-17 15:57) [29]

>msguns ©   (17.05.05 15:16) [26]
Ну нету у автора там поля "Дата"... хоть тресни... есть только день недели, время входа и выхода...


 
stud ©   (2005-05-17 16:17) [30]


> Ну нету у автора там поля "Дата"...

в данном случае дата не нужна! нужен день недели:
1 00:00 11:11
2 11:11 12:12
...
когда приходит чел из даты прихода вытаскивается день недели и сравнивается с тем, который в БД и принимается решение о пропуске или отказе


 
ANB ©   (2005-05-17 16:22) [31]

Опиши ТЗ подробнее.
Имхо :
Если у клиентов типовые графики, то заведи таблички графики и интервалы (интервалы привязать к графикам). А клиенту присваивай номер графика.
Если клиентов не очень много, но у всех индивидуальные графики, то заведи табличку с интервалами, привязанную к клиенту.
Это уже было выше.


 
stud ©   (2005-05-17 16:24) [32]

клиент покупает тарифный план для занятий в зале, согласно плану он может посешать зал в определенные дни недели и определенные часы


 
stud ©   (2005-05-17 16:25) [33]

т.е. тарифных планов много, один клиентв может иметь  их несколько, график посещений по планам может отличаться


 
ANB ©   (2005-05-17 16:43) [34]

Тады добавь линковку клиент - график и не мучайся.


 
stud ©   (2005-05-17 17:03) [35]

время посещения привязано не к клиенту, а к тарифному плану, который он на данный моент хочет использовать


 
stud ©   (2005-05-17 17:03) [36]

в общем я уже разобрался



Страницы: 1 вся ветка

Текущий архив: 2005.06.29;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.031 c
1-1117782191
BigBan
2005-06-03 11:03
2005.06.29
Операции со строками


14-1117465281
HBreaker
2005-05-30 19:01
2005.06.29
Как вывести строчку на принтер использую assembler и прерывания


9-1111516682
Sphinx
2005-03-22 21:38
2005.06.29
Плагин к 3DS Max 7 и .X файлы


3-1116233305
Yurisimus
2005-05-16 12:48
2005.06.29
DataSource не видит pFIBQuery


10-1094808578
Kusto
2004-09-10 13:29
2005.06.29
Как вернуть список строк?