powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Особенность национального моделирования
24 сообщений из 24, страница 1 из 1
Особенность национального моделирования
    #38212938
topdon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги, просто сомневаюсь в себе, и поэтому хочу обратиться к Вам.
Простое дело.

Организация. Заключает договоры с заказчиками.
С одним заказчиком может быть несколько договоров.
У каждого договора д.б. контактное лицо от организации. Все.

Я создал 4 таблицы

Contracts
---------
conid
...
clid
contpersid
...

Clients
-------
clid
....

ContPersonal
-------------
persid
Pos
Phone
email

ConClPers
---------
persid
conid
cli

Структуры были выбраны скорее исходя из простоты реализации, чем из простоты эксплуатации.
Что скажете?

В. Фролов
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38212974
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdonЧто скажете?
Игры в пентикс начили меня никогда не сомневаться в себе, сильно рекомендую. Создал
таблицы - отлично, теперь приступай к разработке приложения. Если есть на этом поле
грабли, ты их почувствуешь на себе.

PS: Но лично я бы выкинул две таблицы из четырёх в случае если у клиента может быть только
одно контактное лицо. И одну - если несколько.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38212978
Фотография ssas12345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а чо уж там именовать поля - так именовать - rsdgfkl, kpopo, bvb0k4
и пусть все потом затрахаются
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38212982
topdon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Какую? Последнюю?
и добавив в ContPersonal код клиента, получаю головную боль от усложнения работы с этой таблицей.
А так- с 4 таблицей я напрямую не работаю.

То что Вы говорите- правильно, лучшее враг хорошего.
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38212997
topdon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ssas12345,
Прошу прощения, думал- стандартные имена.

Если по русски

Contracts
---------
id контракта
...
clid клиента
contpersid конт. лица
...

Clients
-------
clid клиента
....

ContPersonal
-------------
persid лица
Pos
Phone
email

ConClPers
---------
persid лица
conid контракта
clid клиента
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213027
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdonи добавив в ContPersonal код клиента, получаю головную боль от усложнения
работы с этой таблицей.
Наоборот: головную боль ты получишь от реализации пользовательского интерфейса к отношению
N:M. Но, как я уже сказал: начни реализацию, почувствуешь всё на собственной заднице.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213039
topdon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
Реализация почти закончена, но этот вопрос возник.
Сначала у меня было одно лицо, а теперь несколько.

К тому же надо организовать поиск договоров и клиентов по этому лицу.
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213043
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdonDimitry Sibiryakov,

Какую? Последнюю?
и добавив в ContPersonal код клиента, получаю головную боль от усложнения работы с этой таблицей.

Если контактное лицо может представлять только одного клиента - то у вас в таблице Contracts нарушение 3-ей нормальной формы, clid полностью определяется contpersid
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213052
Фотография ssas12345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdon,


Contracts
------------------
id_contract
contract_number
contract_start
contract_end
contract_currency
contract_sum

Согласитесь, при таких наименованиях даже sql-запросы будут выглядеть информативнее, Ad-hoc выгрузки в Excel будут понятны бизнесам, для иностранных бизнес-пользователей так вообще нативно.
А если еще будет везде унифицировано, создан и согласован словарь метаданных - то это и облегчение последующим IT-потребителям, и ETL-мэппингов и ER-диаграммы - это уже ваше портфолио.

Современные sql-редакторы кода избавляют разработчиков от ручного набора текста конструкций
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213056
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdonнадо организовать поиск договоров и клиентов по этому лицу.

А у тебя лицо может представлять несколько клиентов сразу?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213063
topdon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот Матроскин,

т.е. выбросить из договора ссылку на клиента- это неправильно по моему.
тогда после ввода клиента подтягивать его лица и выбирать или вводить новое.

Вы тоже имели ввиду- четвертую таблицу удалить, а к персоналу добавить код клиента?
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213067
topdon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdon,

Нет, одно лицо только одного клиента. Спасибо им хоть на этом!
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213079
topdon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ssas12345topdon,


Contracts
------------------
id_contract
contract_number
contract_start
contract_end
contract_currency
contract_sum

Согласитесь, при таких наименованиях даже sql-запросы будут выглядеть информативнее, Ad-hoc выгрузки в Excel будут понятны бизнесам, для иностранных бизнес-пользователей так вообще нативно.
А если еще будет везде унифицировано, создан и согласован словарь метаданных - то это и облегчение последующим IT-потребителям, и ETL-мэппингов и ER-диаграммы - это уже ваше портфолио.

Современные sql-редакторы кода избавляют разработчиков от ручного набора текста конструкций

Согласен с Вами, учту на будущее, если оно последует. Действительно, немного устарел. Хотя в книге Роберт Вьера он против подчерков.
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213116
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdonНет, одно лицо только одного клиента.

Тогда зачем тебе связь M:N лиц с клиентами и договорами? Чисто ради геморроя на всю голову?..

Есть клиенты, есть привязанные к ним договора. Контактные лица связываешь с клиентами N:1,
всё. Даже если клиенты внутри распределяют пачки договоров между менеджерами, ты тут
внешний наблюдатель, у тебя недостаточно информации чтобы отслеживать перераспределение
этих договоров. И тебе и им удобнее когда контактным человеком является секретарша,
которая и переключит тебя на менеджера, который в данный момент ведёт данный договор.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213117
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdon,

Да, в 4-он таблице я совсем не вижу смысла.

Если Вам нужно хранить принадлежность контактных лиц работодателям - то да, думаю надо добавить ссылку на клиента-организацию в ContactPerson (кстати, возникает вопрос,
что делать, если человек уволился от клиента А и перешел в клиент Б).
Насчет выкидывания поля clid из Contracts - Вы зря упираетесь в пользовательский интерфейс. Никто не мешает точно так же выбирать клиента, потом выбирать из его контактных лиц, но сохранять в базу лишь контактное лицо, не клиента.
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213161
topdon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот Матроскин,
Вроде бы Вы правы, но как- то боязно подвешивать толстый договор на "тонкого клиента". Ха- ха.
А если при вводе договора он не известен?
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213168
topdon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdon,
т.е не клиент, а лицо, черт бы его...
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213177
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdon,

если возможна такая ситуация, что не известен - тогда все в порядке, ФЗ нет, можно ссылку на клиента не убирать.
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213193
topdon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот Матроскин,
Такая ситуация есть и будет.
Итак- таблицу 4 убираю, в Персонах добавляю код клиент.
А-а, может мне из 4-й таблицы просто код договора выбросить и хранить связь между
лицами и клиентами отдельно. Тогда с таблицей Персонала легче работать.
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213277
Бредятина
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ssas12345topdon,


Contracts
------------------
id_contract
contract_number
contract_start
contract_end
contract_currency
contract_sum

Согласитесь, при таких наименованиях даже sql-запросы будут выглядеть информативнее, Ad-hoc выгрузки в Excel будут понятны бизнесам, для иностранных бизнес-пользователей так вообще нативно.
А если еще будет везде унифицировано, создан и согласован словарь метаданных - то это и облегчение последующим IT-потребителям, и ETL-мэппингов и ER-диаграммы - это уже ваше портфолио.

Современные sql-редакторы кода избавляют разработчиков от ручного набора текста конструкций
Не забывайте добавлять, что эта проблема связана с тем, что по какой-то причине не используется СУБД, а используется РСХОД. В СУБД применяются содержательные метаданные, а не только технические, поэтому:
Контракт [типы сущностей следует именовать в единственном числе]
и т.д.
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213299
Бредятина
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdonКот Матроскин,
Такая ситуация есть и будет.
Итак- таблицу 4 убираю, в Персонах добавляю код клиент.
А-а, может мне из 4-й таблицы просто код договора выбросить и хранить связь между
лицами и клиентами отдельно. Тогда с таблицей Персонала легче работать.
Крайне не логично, даже в контексте прошедшего обсуждения. Если не хотите хранить информацию о людях (хоть контактных лицах, хоть сотрудников или их детей - это все люди), то убирайте обе таблицы, а КЛ храните в свойствах контракта.
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213307
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это не особенности национального моделирования (хотя и они присутствуют), а особенности идиотской постановки задачи. Интернациональная проблема.

В любой задаче важен реальный смысл. Есть договор. На разных этапах его существования к нему имеют отношение разные персоны. Возможно, внешних лавок. Или даже частные лица. Сотрудники имеют обыкновение менять место работы. Должностные обязанности обезличены.

Кривая постановка задачи - по определению кривая реализация.
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213564
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
topdon
Что скажете?


Да много плохих слов скажем...

Contracts
---------
conid
...
clid
contpersid
...

Контракт заключается одним ЮЛ с другим ЮЛ. Одно я вижу, ГДЕ ВТОРОЕ ?


У каждого договора д.б. контактное лицо от организации. Все.

Как бы ТЗ то может быть и такое, но в реальности, и это логично, контактных лиц как правило несколько. Кто мешает тебе сделать их сразу много ?

Clients
-------
clid
....

Клиент -- это РОЛЬ юрлица или физлица, отдельной таблицы не надо, надо только обозначить роли (на это тоже может потребоваться таблица).
Ну и самой таблицы Юрлица/Физлица нет -- надо делать.

Остальное -- более-менее ничего.
...
Рейтинг: 0 / 0
Особенность национального моделирования
    #38213750
topdon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv,
Благодарю всех за корректное обсуждение и советы. Решил остановится на 3-х
таблицах, но в ContPerson добавил clid.
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Особенность национального моделирования
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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