|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
Коллеги добрый день. Прошу подсказать, проектирую таблицу с контрагентами для PostgreSQL. Задумался сделать в одной таблице колонки содержащие всю информацию о нем (наименование, типы, реквизиты) или разделить на несколько? Скриншот схемы С Ув. Виктор ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2018, 14:22 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
ramkoЗадумался сделать в одной таблице колонки содержащие всю информацию о нем (наименование, типы, реквизиты) или разделить на несколько? Скриншот схемы Я бы разделил: адресов может быть несколько, банковских счетов тоже может быть более одного. Counterparty не понял смысла - только из за типа counterparty_type? Ведь эта связь возникает в результате какого то договора? Вот этот договор бы я и описал- есть договор, значит контрагент, нету - ну и ладно. counterparty и counterparty_details не могут быть связаны. Странное поле updated - вам нужно знать что что-то редактировалось, но не важно что именно? Бред. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2018, 00:10 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
SergueiСтранное поле updated - вам нужно знать что что-то редактировалось, но не важно что именно? Бред. Такое поле есть в ERP Microsoft Dynamics AX (а также поле с кодом пользователя, которые произвел обновление). Его можно использовать, например, для инкрементной выгрузки справочников в другие системы. Или просто для быстрого просмотра кто и когда последний раз менял эту запись. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2018, 00:39 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
ramkoЗадумался сделать в одной таблице колонки содержащие всю информацию о нем (наименование, типы, реквизиты) или разделить на несколько? р А если еще более глубоко копать, то адрес можно поделить на таблицы по странам,регионам, городам, районам, индексам ) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2018, 00:42 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
bideveloperА если еще более глубоко копать, то адрес можно поделить на таблицы по странам,регионам, городам, районам, индексам ) А вот тут не надо путать адреса (которых может быть несколько: юридический, физический, почтовый) и географическое местоположение. Их лучше делать параллельно. Да, получается некоторая избыточность, зато простота и однозначность. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2018, 01:20 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
по сабжу: 1. Нужна ссылка на родительскую запись. Необходимо для указания дочерних структур/торг. точек/точек доставки и пр. 2. Все реквизиты должны быть "на дату", т.е. если они меняются во времени, то нужно знать их значение на любую дату. Даже название компании иногда полезно хранить исторически. Простое переименование может быть неприемлемо. А вообще полезно для сабжа привлечь EAV. Часто возникают задачи добавить к карточке некий произвольный признак "прямо сейчас" и ЕАВ тут - самое то. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2018, 11:00 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
LSVА вообще полезно для сабжа привлечь EAV. Часто возникают задачи добавить к карточке некий произвольный признак "прямо сейчас" и ЕАВ тут - самое то. Ну вот не надо всем навязывать свою патологическую любовь к EAV (ничего личного) :) EAV нужно с умом использовать. И тут он явно будет лишний, так как структуры более менее понятны. EAV -только для того чтобы обеспечить гибкость, но у этой гибкости есть оборотная сторона медали - производительность. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2018, 15:21 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
И тут он явно будет лишний, так как структуры более менее понятны.Да неужели ?????? Использование ЕАВ никак не мешает текущей структуре данных. Если текущ. структура устраивает, то ЕАВ просто будет пустой, но если вдруг появляется срочная необх. добавить новый признак, то это самое то. Если это какой нить молодой CRM, то такая необходимость будет появляться часто. При правильном использовании и неогромном основном справочнике, ЕАВ не создаст существенных тормозов. Но придаст гибкость. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2018, 18:41 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
Коллеги спасибо за мнения. Меня смущает производительность если таблицы с клиентами и их контрагентами объединить. Таблица с клиентами будет часто и везде использоваться. Таблица с контрагентами клиентов и реквизитами в основном для формирования документов. Соотношение может быть вполне себе к одному клиенту до 1 000 контрагентов. С Ув. Виктор ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2018, 13:07 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
ramkoСоотношение может быть вполне себе к одному клиенту до 1 000 контрагентов. Чо? Что это у вас за предметная область такая, в которой клиенты не являются контрагентами? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2018, 13:17 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
Нашими клиентами являются контрагенты, для них мы оказываем складские услуги связанные с приемкой и отгрузкой ТМЦ от их контрагентов. С Ув. Виктор ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2018, 13:22 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
ramkoМеня смущает производительность если таблицы с клиентами и их контрагентами объединить. ... С Ув. ВикторУ Вас это разные таблицы ???????! Если да, то это АДЪ. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2018, 14:21 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
LSVУ Вас это разные таблицы ???????! Если да, то это АДЪ. Походу, он путает клиентов, контрагентов и грузополучателей. Последние два действительно могут быть разными сущностями. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2018, 14:26 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovПоходу, он путает клиентов, контрагентов и грузополучателей. Последние два действительно могут быть разными сущностями. Не понял почему последние могут быть разными сущностями? Набор атрибутов ведь один. Или имеется ввиду что типа грузополучателей туча будет и не факт что одному и тому же часто будут отправлять, в результате чтобы не замусоривать основную таблицу клиентов вынести в отдельную? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2018, 16:35 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
SergueiНе понял почему последние могут быть разными сущностями? Набор атрибутов ведь один. Нет. Грузополучатели/отправители у ТСа не платят деньги. Они тупо приезжают и оставляют/забирают вещи со склада. Клиент (он же контрагент) этого не делает, но платит за аренду площадей и т.п. Атрибуты разные. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2018, 17:12 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovНет. Грузополучатели/отправители у ТСа не платят деньги. Они тупо приезжают и оставляют/забирают вещи со склада. Клиент (он же контрагент) этого не делает, но платит за аренду площадей и т.п. Атрибуты разные. ну в этом случае все равно не понятно зачем выделять - тогда прямо внутри бизнес сущности данные вообще можно хранить (например внутри заказа каждый раз без ссылки на справочник хранить данные о грузополучателе). Избыточность некоторая, но нет гемора с ведением справочника. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2018, 19:40 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
Структура какая-то кривущая. Как ты сделаешь внешний ключ на две таблицы сразу, интересно? Я бы начал с того, что нарисовал что-нибудь по принципу иеархии table-per-class - одна таблица с общими для контрагентов и клиентов полями + по таблице для контрагентов и клиентов со специфичными для них полями. Дальше уже или связать таблицы клиентов и контрагентов, или другой вариант, более сложный, но с заделом на будущее, двигать в сторону паттерна "accountability" . ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2018, 21:31 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
Как ты сделаешь внешний ключ на две таблицы сразу, интересно?Как в 1С, бро. Там для этого применяют три поля: тип ссылки/подтип ссылки/ID ссылки. :) По сабжу: деление на 2 и более таблицы - дебилизм, ИМХО. Клиент по сути ничем не отличается от контрагента. И он может быть одновременно и тем и другим. Не берите пример с дебильных систем вроде Navision. Там две разных таблицы: галимое наследие из 80-х. Хотя мож в новых версиях это исправили ? :) Но верится слабо. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2018, 11:16 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
LSVКак в 1С, бро. Там для этого применяют три поля: тип ссылки/подтип ссылки/ID ссылки. :) Пример 1С показателен, конечно. Эталон архитектуры. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2018, 13:21 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
fkthatLSVКак в 1С, бро. Там для этого применяют три поля: тип ссылки/подтип ссылки/ID ссылки. :) Пример 1С показателен, конечно. Эталон архитектуры.А чо там не так ? Имеет право на жизнь. В некот. случаях это единственный способ кратко описать связь. Н-р документ может быть создан на основании разных документов (их список может со временем расти). Как описать родительскую связь иначе, чем Типдок/IDдок ? внимательно слушаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2018, 13:49 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
LSVН-р документ может быть создан на основании разных документов (их список может со временем расти). Как описать родительскую связь иначе, чем Типдок/IDдок ? Да как-как, стандартно. Имеем базовый абстрактный тип сущности "документ" и производные типы сущностей, по разновидностям документов. Дальше используем стандартное либо "TPT" (если хотим больше гибкости), либо "TPH" отображение объектной модели на реляционную. И напоследок отношение M2M сущности "документ" на себя же. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2018, 15:37 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
fkthatLSVН-р документ может быть создан на основании разных документов (их список может со временем расти). Как описать родительскую связь иначе, чем Типдок/IDдок ? Да как-как, стандартно. Имеем базовый абстрактный тип сущности "документ" и производные типы сущностей, по разновидностям документов. Дальше используем стандартное либо "TPT" (если хотим больше гибкости), либо "TPH" отображение объектной модели на реляционную. И напоследок отношение M2M сущности "документ" на себя же.Много слов ниачомъ. ООП головного мозга. Как приведенный пример должен выглядеть в таблице подчиненных документов или к-л логе ? Или пример: письмо-жалоба. Может быть создано на основании 20-30 видов документов. Допустим "1 письмо - 1 основание". Как должна выглядеть ссылка на документ (скорее всего в шапке письма) ? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2018, 16:27 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
LSVООП головного мозга. При чем тут ООП. Понятие подтипов есть и в ERM и в IDEF 1x, которые с ООП никаким боком, если тебе эти аббревиатуры о чем-то говорят. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2018, 17:27 |
|
Структура таблицы контрагентов
|
|||
---|---|---|---|
#18+
fkthatLSVООП головного мозга. При чем тут ООП. Понятие подтипов есть и в ERM и в IDEF 1x, которые с ООП никаким боком, если тебе эти аббревиатуры о чем-то говорят.Ты сначала дай ответ на вопрос, а том будешь сыпать умными аббревиатурами. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2018, 18:25 |
|
|
start [/forum/topic.php?fid=32&fpage=9&tid=1540085]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
75ms |
get topic data: |
15ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
2ms |
others: | 236ms |
total: | 435ms |
0 / 0 |