|
117 Кб. |
|
| Народ, помогите создать структуру.
Есть таблица клиенты. (Код, ФИО, датарождения)
Есть таблица организации (Код, Организация, адрес)
Есть таблица расписание. На определенные дни существуют определенные мероприятия в определенное для этого дня время. Составляется в справочнике из нескольких таблиц. В общем получается (Код, Мероприятие, День, Время) Так как эти дела могут меняться как угодно, то они не связаны с таблицами записи и прочими.
Клиенты идут записываться на определенное число. Могут от организации, могут сами по себе с левой стороны. По числу определяется день, на этот день из справочника показывается время, в списке на форме это время отфильтровывается и показывается только свободное время этого мероприятия на выбранное число.
С этим все ясно. А вот если заранее записывать места для организации? При этом надо учесть то, что клиент может уже быть записан в базу и только потом быть отнесен к какой-либо организации? Второй раз вносить клиента в базу не надо. Каждый должен быть внесен 1 раз.
Фишка вот в чем. Если я в таблицу Архив хочу внести организацию, время и дату, то мне обязательно нужен клиент, потому как связь таблиц Клиенты и Архив 1:много, не дает возможности внести данные, что бы застолбить время. Внести в таблицу клиенты какое-нибудь слово типа «Резерв» или цифровой дежурный код, что бы все организации записываемые заранее вносились под него, а потом уже вставлять запросом на обновление пришедшего клиента? | |
|
| |
|
|
|
| http://www.docstoc.com/docs/72097281/FSLDM | |
|
| |
|
|
|
| Это предложение перейти на оракл? Это выше моих возможностей. Я ведь юзер, а не программист. | |
|
| |
|
|
|
| или я чегото не пойму - или просто убери на схеме обязательность связи. пусть поле клиент будет пустой. и у тебя будет возможность выбирать "зарезервированное" время по признаку Null
п.с. на фига каждый раз записывать дату роджения - оначе сменяется
п.п.п.с. за русские названия убыв бы.
коняк однако. | |
|
| |
|
|
|
| Увы, если буду английские названия делать, то далеко не уеду. Хотя знаю, что лучше английскими буквами писать. Хотя бы что бы в SQL потом перевести. Но это пока высший пилотаж.
Проблему решил просто. В таблице клиенты зарезервировал первую строку как служебное поле с фимилией Резерв-01 и код 1. Все записи на резервирование времени делаются на нее, а там уже запросом на обновление вставляется прибывший.
Дату рождения. Так она у каждого своя. Клиент вписывается 1 раз в базу, а на него уже делаются все исследования. Вопрос был в том, что если сначала зарезервировать время на организацию, а клиент уже был сам по себе и внесен в базу, то получалось, что он вводился еще раз, уже как от организации. Теперь все ОК. | |
|
| |
|
|
|
| не совсем :) или даже совсем не
это предложение воспользоваться их моделью данных ;) т.н. FSLDM
можно много полезного почерпнуть :) | |
|
| |