|
|
|
Помогите найти верное решение для структуры
|
|||
|---|---|---|---|
|
#18+
Mr Marmelad пишет: > Кроме того - существуют КОРПОРАТИВНЫЕ клиенты - А они вообще пасспорт > используют УСЛОВНО. Тут как с беременностью. Либо используют, либо нет. Очень условно - это используют. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2008, 00:43 |
|
||
|
Помогите найти верное решение для структуры
|
|||
|---|---|---|---|
|
#18+
Ну вообще то если быть предельно аккуратным надо бы в структуру КЛИЕНТА ввести аттрибут Код: plaintext .Филиал (по отношению к головному), Бухгалтерия (все аттрибуты, американские Accounts Payable, Accounts Receivable, Credit Dpt, etc), Налоговые (если есть) отличия, Часы Работы.... Ну и многое другое. В зависимости от специфики Вашего бизнеса это может быть вообще другая БАЗА ДАННЫХ. Это если объём оборота соизмерим (или превышает) с частным сектором. А так - просто учтите внести корпоративные аттрибуты в структуру своих (Entities) Кстати - какой у Вас Модельный Тул? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2008, 00:44 |
|
||
|
Помогите найти верное решение для структуры
|
|||
|---|---|---|---|
|
#18+
MasterZiv О предметной области мы ничего не знаем. Ну уж ТУТ то не надо быть семи пядей во лбу. Тем более что я почти угадал... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2008, 00:46 |
|
||
|
Помогите найти верное решение для структуры
|
|||
|---|---|---|---|
|
#18+
Mr Marmelad...Кстати - какой у Вас Модельный Тул? Sybase PowerDesigner 12 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2008, 00:49 |
|
||
|
Помогите найти верное решение для структуры
|
|||
|---|---|---|---|
|
#18+
MasterZiv Очень условно - это используют. Вот именно - а кто ? Президент? Главбух? Менеджер? А свой аккаунт у него-нее есть? А если есть дочери - у которой нет пасспорта (и пока не было?) Я с Вами абсолютно согласен что это прерогатива бизнеса. Но порой нам следует предположить наиболее вероятностные посылки создания и хранения данных - Так мы будем выглядеть "немного компетентнее" Не правда ли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2008, 00:51 |
|
||
|
Помогите найти верное решение для структуры
|
|||
|---|---|---|---|
|
#18+
kuznecov.sg Sybase PowerDesigner 12 respect!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2008, 00:52 |
|
||
|
Помогите найти верное решение для структуры
|
|||
|---|---|---|---|
|
#18+
MasterZiv Тут как с беременностью. Либо используют, либо нет. Очень условно - это используют. Как раз сейчас читаю "Психбольница в руках пациентов" про психологию разработчиков. Хомо-логикус в корне по-другому представляют работу программы, в отличие от обычных пользователей: "Если есть хотя мельчайшая вероятность наступления какого-либо события - то оно должно быть отражено в коде, в виде исключительной ситуации"... Я, конечно, понимаю, что так и должно быть, но мне необходимо придумать очень гибкую и, в последствии (если придется), расширяемую с минимальными потерями систему. А тут приходится идти на уступки или ухищрения, иначе всех "исключительных ситуаций" не учесть, но без этого не получить гибкости... To Mr Marmelad: Upd. Sybase PowerDesigner под Wine :) (чуть кривовато, но зато работает и лучшего средства визуального проектирования я не нашел, тем более в опен-сорсе). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2008, 00:58 |
|
||
|
Помогите найти верное решение для структуры
|
|||
|---|---|---|---|
|
#18+
В своё время решал подобную задачу. Было два пути - такой же способ как у автора, только с отношением один-ко-многим без промежуточных таблиц. И второй, по которому в итоге пошли. Плясали вот от чего - все изменения в системе должны вноситься на основании соответствующей заявки и быть задокументированы. Т.е. была таблица "заявки" связанная с таблицами Client, таблица ClientHistory (своего рода "выборочная" копия инфы по клиенту) . При добавлении новой заявки, требующей изменения клиентской информации, вся информация по клиенту, требующая изменения, уходила в архивную таблицу(естественно с датой изменения и ClientID), а в таблицу Client сохранялась актуальная. Сейчас уже не вспомню, почему пошли именно по этому варианту. Но тогда были какие-то весомые аргументы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2008, 09:19 |
|
||
|
Помогите найти верное решение для структуры
|
|||
|---|---|---|---|
|
#18+
Ну уж если нормализовывать до конца, то таблицу адресов тоже надо разбивать. Хранить не названия улиц, регионов и т.д., а как-то типо того: автор tbl_adresses ........ region_id int street_id int ......... tbl_street street_id int street_Name varchar ........... tbl_region region_id int region_Name varchar .......... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2008, 09:38 |
|
||
|
Помогите найти верное решение для структуры
|
|||
|---|---|---|---|
|
#18+
Можно добавитьНу уж если нормализовывать до конца, то таблицу адресов тоже надо разбивать. Хранить не названия улиц, регионов и т.д., а как-то типо того: Так и делают но в случае если бизнес связан с Недвижимостью. В реальной жизни когда региональное изменение клиента "не предвидится" или "очень редко" таких крайностей мы не допускаем. Считайте это началом ДЕ-нормализации. Потом может быть двойственность табличек в корпоративной части бизнеса. Потом может воссоединение всех аттрибутов таблички ПАССПОРТ с табличкой КЛИЕНТ - ведь по сути пасспортные изменения исторически не влияют на ход действия. Ну был один пасспорт, ну стал другой - и что? Главное чтобы была ОБЯЗАТЕЛЬНАЯ связь ОДНОГО КЛИЕНТА с ОДНИМ ПАССПОРТОМ. Но это всё будет потом. А пока - без крайности на нормализацию адресов - отличное начало. Кстати - ДЕ-нормализация всегда необходима. но только ПОСЛЕ разумной нормализации ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2008, 16:28 |
|
||
|
Помогите найти верное решение для структуры
|
|||
|---|---|---|---|
|
#18+
есть такое предложение (на примере адреса клиента): в табличке адрес создать поля DateBegin, DateEnd и если клиент переехал на новый адрес, а на старый адрес приехал другой клиент, то другому клиенту заводится новый идентификатор адреса, а тот адрес "забывается" навсегда. Либо если надо искать клиентов на одном адресе, то можно такую схему организовать через промежуточную табличку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2008, 14:17 |
|
||
|
|

start [/forum/topic.php?fid=32&startmsg=35648038&tid=1543574]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
140ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 447ms |

| 0 / 0 |
