Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :) / 25 сообщений из 33, страница 1 из 2
20.12.2006, 15:39
    #34213696
_QWE_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
Доброго дня.

Заинтересовал меня следущий вопрос.
Как лучше/удобней/правильней хранить отдельно взятый элемент учёта?
Вот что я имею ввиду.
допустим проектируем базу для учёта товара.
Два варианта:
1. для каждого товара ложим отдельную запись в таблицу товаров
2. для каждой отдельно взятой категории товара просто держим скажем пару полей. с общим кол-вом товара в продаже и проданным.

первый пункт самый очевидный именно так я всё время и делаю
второй пункт.... кроме геморая ничего не вижу.

кто что скажет?
...
Рейтинг: 0 / 0
20.12.2006, 16:26
    #34213895
4321
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
песок не пробовали продавать?

(для каждой отдельной песчинки....бугога)
...
Рейтинг: 0 / 0
20.12.2006, 16:38
    #34213944
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
ну собственно продается не товар,а товар единицами измерения.так что с песком все в норме.в нормальной бд должны быть таблицы единиц измерения, вомзожных единиц измерения для типа товара и набор таблицы конверсии (например, 1 шт сахара = 250 граммам, 1 кг пуха=2 куб метра пуха), причем в зависимости от наворотов таблицы для конверсии м/быть довольно сложными (всякие там пресовки,усушки и т.д.). А вообще вопрос неясен: что значит "ложим отдельную запись в таблицу товаров"?в номенклатурный справочник?в таблицу движений товара?
...
Рейтинг: 0 / 0
20.12.2006, 17:10
    #34214068
_QWE_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
ShtockА вообще вопрос неясен: что значит "ложим отдельную запись в таблицу товаров"?в номенклатурный справочник?в таблицу движений товара?

хм. давайте так.
есть справочник/справочники по которые описывают номенклатуру.
тоесть сам факт существования товара.
теперь на склад приезжает скажем две еденицы одинакового товара. две бутылки пифа.

и теперь в таблице товаров(движений) мы делаем по записе для каждого товара. две бутылки пива две записи
ЛИБО
в таблице содержиться одна запись для этого типа товара, где в ячейке количество мы ставим двоечку.
...
Рейтинг: 0 / 0
20.12.2006, 17:51
    #34214178
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
_QWE_теперь на склад приезжает скажем две еденицы одинакового товара. две бутылки пифа.

и теперь в таблице товаров(движений) мы делаем по записе для каждого товара. две бутылки пива две записи
ЛИБО
в таблице содержиться одна запись для этого типа товара, где в ячейке количество мы ставим двоечку.А зачем первый способ? Точнее, зачем он как единственный?

Лучьше второй способ + отдельно записи для товаров, которые учитываются поштучно (автомобили и водка, например).
...
Рейтинг: 0 / 0
21.12.2006, 09:19
    #34215040
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
Я же говорю-тут зависит от того,какой учет вам нужен-если минимальный квант учета - 2 бутылки пива,то пришла 1 единица двух бутылок, если надо учитывать побутыльно-пришла одна единица одной бутылки.Это все настройи тех самых единиц измерения.Не должно быть разницы,если по факту учитывается одно и тоже.можно же одновременно с ящиками пива учитывать и литры и бутылки.ТОлько надо делать не 3 движения каждого,а одно минимального учетного кванта и иметь схему конверсии попугаев в бегемоты.
...
Рейтинг: 0 / 0
21.12.2006, 10:47
    #34215300
_QWE_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
alexeyvgА зачем первый способ? Точнее, зачем он как единственный?

так я вот и хотел бы узнать как ещё люди делают. Для меня пока этот способ единственный, потому как второй мне уж очень "неприятен".......
Первый способ простой с токи зрения изменения состояний. взял адишник, поменял состояние товара.
но "напряжный" с точки зрения отчётности. постоянно надо юзать агрегатные фыункции и бегать по таблице взад вперёд, и вот тут будет херовато если считать каждую песчинку песка.

Второй способ получше в отчётности но похуже с точки зрения, как бы сказать. скажу целосности.
Берём простую ситуацию скажем для одного типа товара у нас существует одна запись с тремя полями. в продаже/продано/списано. После приезда двух бутылок ставим "в продаже" двойку. Бутылка продалась? Декрементируем поле "в продаже", инкрементируем поле "продано". И так далее.

ShtockТОлько надо делать не 3 движения каждого,а одно минимального учетного кванта и иметь схему конверсии попугаев в бегемоты.
Конверсию пока отодвигаем в сторону. Тоесть грубого говоря вы за вторую схему? Я правильно понял?
...
Рейтинг: 0 / 0
21.12.2006, 11:50
    #34215544
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
в общем случае да
...
Рейтинг: 0 / 0
21.12.2006, 17:35
    #34216886
Кот Матроскин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
автор
Второй способ получше в отчётности но похуже с точки зрения, как бы сказать. скажу целосности.

Отчего же он похуже с точки зрения целостности? Вообще-то ровно наборот.
У Вас, получается, нет в таблице естественного primary key, две записи о бутылках пива различаются только суррогатным айдишником. Будут проблемы с тем, чтобы понять, какую именно
бутылку из двух продали или уценили.
...
Рейтинг: 0 / 0
22.12.2006, 07:19
    #34217584
asdfghjkl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
Кот Матроскин автор
Второй способ получше в отчётности но похуже с точки зрения, как бы сказать. скажу целосности.

Отчего же он похуже с точки зрения целостности? Вообще-то ровно наборот.
У Вас, получается, нет в таблице естественного primary key, две записи о бутылках пива различаются только суррогатным айдишником. Будут проблемы с тем, чтобы понять, какую именно
бутылку из двух продали или уценили.+1. Вы как себе складской учет представляете, в примитиве хотя бы?

Подумайте в сторону партий, как варианта объединения 1 и 2 способов.
...
Рейтинг: 0 / 0
22.12.2006, 10:08
    #34217871
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
возвращаясь к единицам продажи-партия и есть единица измерения.просто она может быть и из одной бутылки (там можно и ставить цену фактической оплаты меньше,чем по прайсу и ставить причину изменения цены - скидка например по истечению срока годности)
...
Рейтинг: 0 / 0
22.12.2006, 13:56
    #34218832
_QWE_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
asdfghjklВы как себе складской учет представляете, в примитиве хотя бы?
Туго представляю, потому и прошу помощи зала. Что я не могу проникнуться. Плиз объясните ещё как-то.

Что касается партий. То у меня в таблица товаров есть форейнкей на таблицу партий.

Что касается того что могут быть проблемы с тем, чтобы понять, какую именно бутылку из двух продали или уценили, хм.. ну если они одинаковые то какая разница? Если допустим они отличаються по дате изготавления, то что мешает делать выборку учитывая и этот фактор также?
...
Рейтинг: 0 / 0
25.12.2006, 06:01
    #34221605
asdfghjkl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
_QWE_ asdfghjklВы как себе складской учет представляете, в примитиве хотя бы?Туго представляю, потому и прошу помощи зала. Что я не могу проникнуться. Плиз объясните ещё как-то.

Что касается партий. То у меня в таблица товаров есть форейнкей на таблицу партий.

Что касается того что могут быть проблемы с тем, чтобы понять, какую именно бутылку из двух продали или уценили, хм.. ну если они одинаковые то какая разница? Если допустим они отличаються по дате изготавления, то что мешает делать выборку учитывая и этот фактор также?В примитиве - складской учет должен обеспечить достаточную уникальность хранимого, с возможностью выбора нужного и детализации текущих остатков. Стандартное решение - иерархия свойств. Как правило верхний уровень "материал". Дальше - как придется. Кто дерево из материалов строит, расширяя аналитику ("Доска"-"Доска 15мм"), кто переходит в другую плоскость - партии. Партия также может нести в себе набор аналитик. Для алкоголя можно задействовать номер партии ЕГАИС и дату розлива, к примеру. :-) И далее - пофигу, какая из кучи продана, уникальность и оценка сохраняются. Технические аспекты зависят от среды реализации.

Чаво автоматизируем-то?! :-)
...
Рейтинг: 0 / 0
25.12.2006, 12:54
    #34222298
_QWE_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
asdfghjklЧаво автоматизируем-то?! :-)

В моём случае это автоматизация учёта всякой одежды.
У меня есть справочники описывающие одежду это категории, производители, модели, размеры...
Есть партии, где есть дата, затраты на доставку и тому подобное.
И есть собсно говоря таблица товаров. где каждый товар представлен отдельной записью. по форейнкеям я могу определить и партию и модель и так далее.
Грубо говоря так.
...
Рейтинг: 0 / 0
26.12.2006, 04:07
    #34223937
asdfghjkl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
_QWE_В моём случае это автоматизация учёта всякой одежды.
У меня есть справочники описывающие одежду это категории, производители, модели, размеры...
Есть партии, где есть дата, затраты на доставку и тому подобное.
И есть собсно говоря таблица товаров. где каждый товар представлен отдельной записью. по форейнкеям я могу определить и партию и модель и так далее.
Грубо говоря так.Ну и чудно. Если я правильно понял, товар уже несет в себе максимальную детализацию.
Теперь делаем контейнер, который будет хранить пересечение товар+склад[+чего там еще] как ключ. Полями данных будут количества разного рода, возможно деньги, пр. Получили таблицу запасов на сейчас. :-)
Прочие обвязки - уже как бантики. Так устроит?
...
Рейтинг: 0 / 0
26.12.2006, 14:12
    #34225165
_QWE_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
asdfghjklПрочие обвязки - уже как бантики. Так устроит?
Вполне...
Просто хотелось бы вытянуть голову из "панцыря" и оглядетсья вокруг. Но по сию секунду не могу вникнуться в способ номер два, описанный мной выше :(

Это ещё надо обсудить второй способ с точки зрения одновременной работы многих пользователей.
...
Рейтинг: 0 / 0
27.12.2006, 08:37
    #34226697
asdfghjkl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
_QWE_ asdfghjklПрочие обвязки - уже как бантики. Так устроит?
Вполне...
Просто хотелось бы вытянуть голову из "панцыря" и оглядетсья вокруг. Но по сию секунду не могу вникнуться в способ номер два, описанный мной выше :(Ничего такого в "способе номер два" нет. Хочется хранить разные количества в одной ячейке запаса - храните. Дело вкуса.

_QWE_Это ещё надо обсудить второй способ с точки зрения одновременной работы многих пользователей.А эта тема абсолютно отдельная и способа хранения не касается. :-)
...
Рейтинг: 0 / 0
27.12.2006, 11:08
    #34227143
AlexTheRaven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
alexeyvg _QWE_теперь на склад приезжает скажем две еденицы одинакового товара. две бутылки пифа.

и теперь в таблице товаров(движений) мы делаем по записе для каждого товара. две бутылки пива две записи
ЛИБО
в таблице содержиться одна запись для этого типа товара, где в ячейке количество мы ставим двоечку.А зачем первый способ? Точнее, зачем он как единственный?

Лучьше второй способ + отдельно записи для товаров, которые учитываются поштучно (автомобили и водка, например).

По-видимому, есть такое понятие как партия (bulk). Т.о. если обе бутылки пива принёс за один раз один человек, и ему надо выдать за это одну складскую квитанцию - нужно записать

Номер партии Наименование товара Количество Единица измерения1 Пиво 2 Бутылка

ну или

Номер партии Наименование товара Количество Единица измерения1 Два пива 1 Упаковка

А вот если это пиво принесли за два раза или с двух разных источников - надо написать:

Номер партии Наименование товара Количество Единица измерения1 Пиво 1 Бутылка2 Пиво 1 Бутылка

иначе потом концов не найдёшь. Хотя, если концы искать и не надо, и нам неинтересно, что и откуда взяли, а только что сейчас есть (ларёк...) - надо написать:

Наименование товара Количество Единица измеренияПиво 2 Бутылка

или

Наименование товара Количество Единица измеренияДва пива 1 Упаковка
...
Рейтинг: 0 / 0
27.12.2006, 12:47
    #34227616
;lkjhgf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
автор
Теперь делаем контейнер, который будет хранить пересечение товар+склад[+чего там еще]

+ дата, кол-во, цена, ... операция:
приход
продажа
возврат
...
?
...
Рейтинг: 0 / 0
27.12.2006, 13:30
    #34227788
_QWE_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
to AlexTheRaven
именно так сейчас и есть

asdfghjklА эта тема абсолютно отдельная и способа хранения не касается. :-)
в приницпе да. согласен.

asdfghjklНичего такого в "способе номер два" нет. Хочется хранить разные количества в одной ячейке запаса - храните. Дело вкуса.
разве дело вкуса?!
Пока у меня за год ~20 тысяч записей. Проекты схожи и очень малы. Ни в одном из них я пока не столкнулся с тем что надо думать над чем то более чем каждый товар отдельная запись.
Ни с точки зрения масштабируемости ни производительности ни одновременной работы пользователей и так далее.

Очевидный момент привёл 4321 про аналогию с песком, можно взять нечто более реальное.
Для примера: в день приходит X партий, где Y моделей товаров по Z штук.
Соответственно в первой модели будет X*Y*Z записей, во второй X*Y, очевидно отсюда и растут ноги у проблем с производительностью.
...
Рейтинг: 0 / 0
27.12.2006, 14:34
    #34228048
4321
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
_QWE_разве дело вкуса?!
не знаю, как вы собираетесь работать с "1-й моделью", но 2-я предусматривает, мне кажется, следующие сущности
0. товар (опционально - может быть в партии)
1. партия (шапка, определение)
2. движения (опционально - несколько отдельны сущностей движений - приход/расход/утруска и т.п.)
3. опционально - остатки (текущие/на опорные даты и т.п.) (скажем - на триггерах).

т.е. кол-ва считаются не простой сверткой "партий", но
А. либо по движениям, (от начала эры - партии обычно стоко не живут).
Б. либо по остаткам, а от остатка (если считаете кол-во на дату, на который не сформированы опорные остатки) - по движениям от даты предыдущего остатка.
...
Рейтинг: 0 / 0
27.12.2006, 15:59
    #34228370
_QWE_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
4321но 2-я предусматривает
Есть у меня один таркан относительно второй модели. Который настолько укоренился что я даже боюсь думать о реализации второй модели.
Суть страха в том что обработай неправильно значение ячейки, и капец. С точки зрения возникновения ошибки мне кажеться гораздо вероятней тут ошибиться(при апдейте ячейки с кол-вом) или что-то глюкануть, чем с удалением строк. Понятное дело что кто-то может по пьяне и транкейт тейблу выполнить.... но это гораздо маловероятней чем ошибиться обработкой значения ячейки(здесь уместно вспомнить про многопользовательскую работу).
...
Рейтинг: 0 / 0
28.12.2006, 01:49
    #34229308
Папа Игорь
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
Здравствуйте!

Возможно эта дискуссия Вам пригодится. http://www.sql.ru/forum/actualthread.aspx?tid=354422
...
Рейтинг: 0 / 0
28.12.2006, 04:15
    #34229342
asdfghjkl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
_QWE_разве дело вкуса?!
Пока у меня за год ~20 тысяч записей. Проекты схожи и очень малы. Ни в одном из них я пока не столкнулся с тем что надо думать над чем то более чем каждый товар отдельная запись.
Ни с точки зрения масштабируемости ни производительности ни одновременной работы пользователей и так далее.Именно его. :-) Пример от AlexTheRaven - нормален как вариант, он уже дает понимание запасов.

_QWE_Очевидный момент привёл 4321 про аналогию с песком, можно взять нечто более реальное.
Для примера: в день приходит X партий, где Y моделей товаров по Z штук.
Соответственно в первой модели будет X*Y*Z записей, во второй X*Y, очевидно отсюда и растут ноги у проблем с производительностью.Что-то мне подсказывает, что есть проблемы с пониманием понятий "запас" и "движение" и их отношений. :-) Не стоит все валить в одну кучу ("таблицу"), обычно это разные "таблицы". Просто удобнее. А проблема - "ой, триггер не обновил остатки!" - от кривизны рук/архитектуры и не более. :-)
...
Рейтинг: 0 / 0
28.12.2006, 14:51
    #34230675
_QWE_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Учёт чего-либо. Принцип хранения отдельно взятого чего-либо. Короче внутри :)
2Папа Игорь
сенкс, почитаем...

asdfghjklЧто-то мне подсказывает, что есть проблемы с пониманием понятий "запас" и "движение" и их отношений. :-) Не стоит все валить в одну кучу ("таблицу"), обычно это разные "таблицы". Просто удобнее. А проблема - "ой, триггер не обновил остатки!" - от кривизны рук/архитектуры и не более. :-)

возможно проблемы.
давайте углубимся чуть глубже в мою архитектуру. если отбросить бантики то вот так.
структура таблицы товаров, где у меня каждое изделие представлено отдельно записью, имеет поле статусов(продано/списано/в продаже), поле входящей цены, поле исходящей цены, форейнкей на партию, на тип товара, на подразделение.
примерно так. тоесть абсалютно все данные.
есть также таблица движений. в моём случае общая для движений и денег и товаров. примерно так
по таблице товаров я вижу что есть. тут и остатки и то и сё и пятое и десятое.
по таблице движений я вижу историю движения/изменения.

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


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