powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
12 сообщений из 12, страница 1 из 1
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36056637
r2d22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Какую структуру должна иметь таблица движения запасов, если у разных клиентов системы разные требования к хранению остатков:
Клиент №1. Достаточно в разрезе кодов товара.
Клиент №2. Код товара + кол-во штук в упаковке.
Клиент №3. Код товара + номер партии + срок реализации.

Я вижу два варианта:
1. Включить в таблицу движения требуемые поля и заполнять их там где требуется. Минус - если появится новый клиент с новыми требованиями, то придется исправлять много кода.
2. Создать 10 текстовых полей под хранение требуемой информации и для каждого клиента указать, какое поле, что хранит. Минус - довольно сложный начальный код.

Кто что может посоветовать?
...
Рейтинг: 0 / 0
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36056711
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перевожу:

Клиент №1. В разрезе номенклатуры (ссылок на справочник Номенклатура)
Клиент №2. В разрезе номенклатуры и единиц измерения (в единицах измерения есть поле коэффициент пересчета к базовым единицам "штукам")
Клиент №3. В разрезе номенклатуры и партий поступления (в партиях есть поле - срок хранения)
Следовательно номенклатура общее, опционно единицы и партии. Предлагаю это сделать булевыми полями в справочнике клиентов: вести в единицах, вести в партиях (не взаимоисключающее).
Таблица движений имеет поля-измерения:
- Ссылка на номенклатуру (обязательный)
- Ссылка на единицы (опционно)
- Ссылка на партии (опционно)

Как то так.

С уважением, Naf
...
Рейтинг: 0 / 0
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36056741
RodionAT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r2d22,
Таблицы
client: client_id;client_name ...
tovar: tovar_id; tovar_name ...
tovar_client_prop: client_id; tovar_id;property_name; property_value ...
Вот как-то так.
...
Рейтинг: 0 / 0
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36056771
r2d22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
номенклатура общее
это верно

В разрезе номенклатуры и партий поступления (в партиях есть поле - срок хранения)
Уточняю: если бы у клиента №3 у одного товара в одной партии был одинаковый срок реализации, то не было бы требования "Код товара + номер партии + срок реализации ".
В целом примерно так и реализовано как Вы предлагаете, за исключением того, что вместо ссылок на ед.изм., номер партии и срок реализации в таблице движения используются сами значения. Это и есть первый вариант.
Как быть если завтра появиться новый клиент и попросит хранить обувь в разрезе моделей, размеров и цветов? Переписывать кучу кода на клиенте и сервере?
Может быть есть более универсальные решения?
...
Рейтинг: 0 / 0
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36056773
r2d22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
RodionATr2d22,
Таблицы
client: client_id;client_name ...
tovar: tovar_id; tovar_name ...
tovar_client_prop: client_id; tovar_id;property_name; property_value ...
Вот как-то так.
Осталось только привести пример таблицы движения запасов и остатков... Сделайте одолжение :)
...
Рейтинг: 0 / 0
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36056843
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r2d22номенклатура общее
это верно

В разрезе номенклатуры и партий поступления (в партиях есть поле - срок хранения)
Уточняю: если бы у клиента №3 у одного товара в одной партии был одинаковый срок реализации, то не было бы требования "Код товара + номер партии + срок реализации ".
В целом примерно так и реализовано как Вы предлагаете, за исключением того, что вместо ссылок на ед.изм., номер партии и срок реализации в таблице движения используются сами значения. Это и есть первый вариант.
Как быть если завтра появиться новый клиент и попросит хранить обувь в разрезе моделей, размеров и цветов? Переписывать кучу кода на клиенте и сервере?
Может быть есть более универсальные решения?

Более обще:
Таблица свойств (ключ,наименование) , например: цвет, размер, срокхранения
Таблица значений свойств (ключ, строк. значение (даже если размер обуви числовой) за универсальность платим, ключ_свойства) , например: (цвет, красный), (размер, 40) (срокхранения, 12)
Таблица движений (ключ, приход/расход, ключ_номенклатуры, количество, дата, и т.д. и т.п. - но значений свойств нет)
Таблица набора свойств движения (ключ, ключ_значения_свойства, ключ_движения)

можно еще ограничить допустимые свойства по номенклатуре:
Таблица свойств номенклатуры (ключ, ключ_номенклатуры, ключ_свойства)
...
Рейтинг: 0 / 0
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36056847
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r2d22RodionATr2d22,
Таблицы
client: client_id;client_name ...
tovar: tovar_id; tovar_name ...
tovar_client_prop: client_id; tovar_id;property_name; property_value ...
Вот как-то так.
Осталось только привести пример таблицы движения запасов и остатков... Сделайте одолжение :) посмотрите мои изыскания: Ресурсы накопления
...
Рейтинг: 0 / 0
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36058707
r2d22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Naf
Более обще:
Таблица свойств (ключ,наименование) , например: цвет, размер, срокхранения
Таблица значений свойств (ключ, строк. значение (даже если размер обуви числовой) за универсальность платим, ключ_свойства) , например: (цвет, красный), (размер, 40) (срокхранения, 12)
Таблица движений (ключ, приход/расход, ключ_номенклатуры, количество, дата, и т.д. и т.п. - но значений свойств нет)
Таблица набора свойств движения (ключ, ключ_значения_свойства, ключ_движения)

можно еще ограничить допустимые свойства по номенклатуре:
Таблица свойств номенклатуры (ключ, ключ_номенклатуры, ключ_свойства)
А для чего нужна Таблица значений свойств Можно в Таблица набора свойств движения указывать ключ свойства и само значение. Только все равно мне кажется эта система тяжело управляемой. Таблицу набора свойств придется создавать не только для таблицы движения но и всех таблиц содержащих строки с товарам (приход, расход и т.д.). Или как вариант хранить набор свойств толко в приходе, а в других таблицах ссылаться на этот приход. И все равно минус в виде трудоемкости кода на ввод, обновление, удаление данных, поддержание целостности данных и построение отчетов превышает плюс в виде возможности хранения неограниченного количества свойств по товару.
авторРесурсы накопления
Это я просмотрел еще в самом начале. Как раз в этом варианте, если я правильно понял, мои цвета, размеры, сроки и будут измерениями в таблице движений. Проблема в том, как удовлетворить требования разных клиентов. Что если сделать запас этих измерений, допустим 5 полей и для каждого клиента указать что там хранить? При этом запросы будут не сложными, а минусом - ограничение количества свойств - 5 шт. Что бы Вы выбрали из этих вариантов?
...
Рейтинг: 0 / 0
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36059287
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если есть партионный учет, то нет проблем. Есть ссылки на приходные партии, значит есть и сроки и фасовка, сер.номера и пр.
На каждый чих лепить новые поля - дебилизм, ИМХО.
Подумайте о проблеме шире.
...
Рейтинг: 0 / 0
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36060858
r2d22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Понимаю, что это уже вопросы не проектирования, но все же для меня существенной проблемой является - если хранить характеристики товара в приходе вертикально, то как их разворачивать на клиенте в перечень полей напротив товара в той же строке? Drilldown не устраивает.
...
Рейтинг: 0 / 0
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36060924
RodionAT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r2d22Понимаю, что это уже вопросы не проектирования, но все же для меня существенной проблемой является - если хранить характеристики товара в приходе вертикально, то как их разворачивать на клиенте в перечень полей напротив товара в той же строке? Drilldown не устраивает.
Можно подчиненным отчетом (это в Аксе- по другимСУРБД - не знаю), можно процедурой/функцией сцепить несколько строк в поле отчета.
...
Рейтинг: 0 / 0
Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
    #36060943
r2d22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
RodionAT,
Можно подчиненным отчетом r2d22Drilldown не устраивает
можно процедурой/функцией сцепить несколько строк в поле отчета
Я себе представлял работу при приходе примерно так:
1. Создаем приходный документ для конкретного клиента системы.
2. В зависимости от клиента системы появляется спецификация прихода требуемые характеристики в которой, заполняются в отдельных полях непосредственно в каждой строке спецификации напротив необходимого товара.

Если использовать метод сцепки характеристик, то поле в табличной части всегда одно и редактируется он отдельной кнопкой вызывающей тот самый Drilldown, где и происходит заполнение значений характеристик. Помимо этого в других отчетах и таблицах теряется возможность сортировки/фильтрации (щелкая по наименованию поля) в разрезе каждой характеристики в отдельности.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Склад ответственного хранения. Разные клиенты - разные требования к остаткам.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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