powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Проект БД изделий
18 сообщений из 68, страница 3 из 3
Проект БД изделий
    #32970224
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> "Готовое изделие" (неготовая тоже) может быть товаром.
> Готовая продукция нет.

А теперь подробнее про глобальную разницу между готовыми изделиями и готовой продукцией.

> Товар то, что приобретается с целью дальнейшей перепродажи и учитывается на
> счете 41. Готовая продукциня на счете 43. Полуфабрикаты на счете 21.

Да по барабану, где это учитывается. Разница-то между ними в чем заключается?
...
Рейтинг: 0 / 0
Проект БД изделий
    #32970261
Сахават Юсифов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621> "Готовое изделие" (неготовая тоже) может быть товаром.
> Готовая продукция нет.

А теперь подробнее про глобальную разницу между готовыми изделиями и готовой продукцией.

> Товар то, что приобретается с целью дальнейшей перепродажи и учитывается на
> счете 41. Готовая продукциня на счете 43. Полуфабрикаты на счете 21.

Да по барабану, где это учитывается. Разница-то между ними в чем заключается?

Готовую продукцию выпускаем мы. А товар закупаем.
...
Рейтинг: 0 / 0
Проект БД изделий
    #32970288
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Готовую продукцию выпускаем мы. А товар закупаем.

Ну и?
...
Рейтинг: 0 / 0
Проект БД изделий
    #32970301
Фотография Александр Гoлдун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621 пишет:
> > Еще раз говорю: лежат на складе полуфабрикаты, являющиеся одновременно
> > готовыми изделиями. Часть продается, а часть идет в производство. На
> > складе они НИЧЕМ не отличаются. При оптовых продажах при погрузке
> > складируются на поддоны (конструкция позволяет, это каркасы мебели).
>
> Ну так на складе и лежат полуфабрикаты, а не готовые изделия.

Ага, а процесс отгрузки вдруг превращает полуфабрикат в готовое?

> OEM-упаковка - это в данном случае и будут поддоны с этими каркасами.
> Для розницы их, наверное, упакуют по-другому.

На тех же поддонах и в таком же виде везут на участок сборки.

> > Бывает отсутствие "предтоварной" подготовки. Например при оптовых
> > поставках дилерам.
>
> Вряд ли она совсем отсутствует. Скорее всего, есть, но в сильно
> усеченном виде. Об этом я и писал в [1399714].

Например, усеченном до нуля, как крайний вариант? :)

> В общем, речь-то не об этом. Фишка не в том, что и как работает сейчас и
> в конкретной стране, а в том, что и как должно работать и как это может
> быть описано с учетом возможных частных случаев. По существу (процессы +
> изделия) vs (товары) возражения есть?

По существу возражение только одно. В общем случае нельзя строго
отделить готовое изделие от полуфабриката. И жесткое разделение их в
структуре БД без возможности обобщения может привести к проблемам.

В общем, кто хочет наступать на грабли - тот пусть наступает. Надоела
эта тема.
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Проект БД изделий
    #32970377
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> В общем случае нельзя строго отделить готовое изделие от полуфабриката.

Как раз в общем случае - легко.

> И жесткое разделение их в структуре БД без возможности обобщения может
> привести к проблемам.

Да нет здесь проблем. Вопрос в целесообразности.
...
Рейтинг: 0 / 0
Проект БД изделий
    #32970536
Сахават Юсифов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PVPДля описания комплектации требуется отдельный механизм. Он может быть разным. Я, например, использую что то на подобие «component_parts». Такой подход полностью устраивает. Видел древовидный справочник изделий, но при большой номенклатуре это не удобно.

Как решаете вопрос альтернативности (модификации) и генерации спецификаций находу (on fly)?
...
Рейтинг: 0 / 0
Проект БД изделий
    #32970907
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр Гoлдун
Если есть один пример, где это неприменимо, то это еще ничего не значит.
В компьютерной фирме я могу купить HDD, а могу и комп, включающий в себя
этот HDD.
Никто и не возражает. Мало того, в моей схеме это делается абсолютно естественно. В то же время в комьютерной фирме Вы вряд ли сумеете купить одиночный винтик - максимум "комплект" (если это не нормальная фирма, где скажут - "вон, отсыпь из коробки").

Ситуаций, когда "может быть куплено все", пожалуй не существует. Вряд ли директор согласится продать свой личный письменный стол - а вот в классификатор он может попасть, для нужд учета.

Высказанная здесь мысль насчет разных счетов, на которых учитываются ТМЦ - согласен, но это слишком тяжелый и не всегда удобный механизм. Если пользователь просит распечатать прайс-лист - странно было бы бежать по товарам и включать в него только те, которые есть на "продажном" счету.

Александр Гoлдун
И что в результате получим? В двух таблицах записи, соответствующие
одной и той же сущности?
Почему одной и той же?

Что есть "одна сущность", а что есть "разные сущности" - вопрос религиозный. Скажем, "документ", "накладная" и "счет" - это одна сущность? Две? Три?

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

Александр Гoлдун
Как должна выглядеть в БД элементарнейшая накладная на внутреннее
перемещение, в которой может быть сырье, комплектующие, полуфабрикаты и
готовая?
Зависит от структуры базы. Отметим, что "продажные" характеристики товара никак не зависят от внутреннего перемещения, поэтому структура, которая потребует затрагивать их при этой операции будет несколько нелогичной.

Александр Гoлдун
> коллизии, когда кто-то ошибся и выписал клиенту непродаваемый полуфабрикат.
А в чем трабл? Какие коллизии?
Такие коллизии. Когда продавец промахнулся, прошла оплата, клиент с накладной приехал за товаром - а товар не может быть отпущен, в силу, например, того самого "не на том счету". Ситуация не может быть оперативно исправлена, например, из-за другой цены "правильного" товара, нужно разбираться как с бумажками - чтобы все правильно было оформлено, так и с программой - откатывать оплату счета, редактировать счет..

Александр Гoлдун
> По-хорошему - это нарушение второй, кажется, нормальной формы (станет
> нарушением, как только появится поле, проставляемое только для "готовых"
> изделий и всегда пустое для комплектующих).
Например?
"Розничная цена".

Александр Гoлдун
Можно решить и при помощи FK, если уж припрет. Причем не так уж сложно.
Тупейший пример - составной FK по полям код изделия и тип изделия,
причем на тип в счете ставится check constraint.
Можно. Но криво. А необходимость кривых решений лично меня заставляет усомниться в предпосылках этих решений. По моему опыту, есть две типовых ситуации разработки:

1. Делаешь "как надо". Держишься в накатанном, предусмотренном теорией и проверенном практикой русле. Проблем не возникает - все давно выверено.

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

Есть, конечно, третий тип, в принципе допустимый - "локальная кривизна, которая ни на что серьезно не влияет". Но - чтобы не допустить второго варианта - лучше избегать и этого.

Александр Гoлдун
А зачем? Есть множество
корректных и удобных способов обеспечения целостности и
непротиворечивости данных. FK - лишь один из них.
Не только "лишь один", но лучший по "универсальность+стоимость+качество". Тем более, для учетной задачи, для которой характерна довольно быстро меняющаяся бизнес-логика.

Александр Гoлдун
Кроме того может быть компромиссный вариант с использованием
наследования. Например базовая сущность - изделие. Отдельная таблица.
Дочерние сущности - комплектующие, готовые, сырье и т.п. можно разнести
по разным таблицам, обеспечив связку по PK с изделиями. Такой вариант
применим в большинстве случаев, т.к. обеспечивает и удобство
объединения, и преимущества жесткого разделения там, где надо.
А, собственно, практически это я и предлагаю, если Вы не заметили

Единственно, я не очень люблю связку по первичным ключам - как-то так складывается, что именно ее потом часто приходится переделывать.

Posted via ActualForum NNTP Server 1.1[/quot]
...
Рейтинг: 0 / 0
Проект БД изделий
    #32971069
Сахават Юсифов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer
Александр Гoлдун
Кроме того может быть компромиссный вариант с использованием
наследования. Например базовая сущность - изделие. Отдельная таблица.
Дочерние сущности - комплектующие, готовые, сырье и т.п. можно разнести
по разным таблицам, обеспечив связку по PK с изделиями. Такой вариант
применим в большинстве случаев, т.к. обеспечивает и удобство
объединения, и преимущества жесткого разделения там, где надо.
А, собственно, практически это я и предлагаю, если Вы не заметили

Единственно, я не очень люблю связку по первичным ключам - как-то так складывается, что именно ее потом часто приходится переделывать.

Posted via ActualForum NNTP Server 1.1
Есть 5 таблиц. Сборки, детали, покупные комплектующие изделия, заготовки и Спецификации. Первые четыре справочники. Пятая имеет структуру :

Куда входит
Что входить
Количество
...

Вместо 4 справочников можно было бы иметь 1. Но неудобно и долго в дальнейшем(технология).
...
Рейтинг: 0 / 0
Проект БД изделий
    #32971139
Фотография UK0IAI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Igor KozlovЧесно говоря, мне ближе решение с одной таблицей и флажком
готовое изделие/комплектующее изделие

Но как организовать древовидную структуру?
Можно подробнее, PVP?

А ещё лучше с примерчиком.

Большое спасибо!

Для хранения всех видов изделий с переменым по сути свойством своей принадлежности, возможно использовать Дерево из 6-и полей (вместо трех).

Дерево
Код: plaintext
1.
2.
3.
4.
5.
  Ид_изделия
Имя_изделия
  Ид_родителя
Тип_записи
 Ид_ссылки
Тип_Узла 
Первые три поля понятны сами по себе,

Тип_записи - признак что это за объект в дереве, может принимать диапазон значений.

Ид_ссылки - это спец_поле, может быть пустым. Но, оно может быть использовано в запросах ВМЕСТО Ид_родителя при условии что ТИП_записи = "ссылка"

Таким образом в дереве можно создать произвольное кол-во узлов , которые содержат в себе - ССЫЛКИ (ярлыки) на любой Ид_изделия . При этом, другое поле - Ид_родителя - оно вообще то - жестко, привязывает изделие к жесткому узлу, а поле Ид_ссылки позволяет одно изделие включить в Разные узлы - одновременно и неограниченно.

Тип_Узла - это Ваш любимый способ отличать разные Узлы - например Комплекты от просто Групп Продукции.

Дальше уже дело техники - при создание накладной содержащей Комплект - можно заставить Вашу систему совершить Проводки.....где будет отражен не только расход Комплекта - но и его Комплектующих - согласно полю Ид_ссылки
...
Рейтинг: 0 / 0
Проект БД изделий
    #32971766
Фотография PVP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сахават Юсифов PVPДля описания комплектации требуется отдельный механизм. Он может быть разным. Я, например, использую что то на подобие «component_parts». Такой подход полностью устраивает. Видел древовидный справочник изделий, но при большой номенклатуре это не удобно.

Как решаете вопрос альтернативности (модификации) и генерации спецификаций находу (on fly)?Описание комплектации имеет дату ввода его в действие. Оно действует начиная с этой даты и до тех пор, кока не появится новое описание. При изменении комплектации создается копия старого с новой датой ввода, далее производится необходимая корректировка.

PS. У меня описание комплектации используется пока только для целей планирования: для заданной производственной программы выполняется расчет плановой себестоимости изделий, расчета количества необходимых материалов и полуфабрикатов, количества рабочих на разных производственных участках, загрузки производственых участков. Там, где это работает, это делается не чаще одного раза в месяц. Поэтому жесткие требования к оперативности перекомплектации не прдъявляются.
...
Рейтинг: 0 / 0
Проект БД изделий
    #32971792
Фотография PVP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сахават ЮсифовКак решаете вопрос альтернативности (модификации) и генерации спецификаций находу (on fly)?В догонку.
Я не пытаюсь делать комплектацию из того же справочника ТМЦ, который используется в бухгалтерии. Проблема с разными кодами, ценами, партиями, названиями, разными людьми, которые ведут эти участки. Для описания комплектации исползуется другая база данных, в которой номенклатура носит обобщенный характер. Для связи между ними в базе данных ТМЦ делается ссылка на код из базы данных планирования.
...
Рейтинг: 0 / 0
Проект БД изделий
    #32971912
Andres 1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer
Ситуаций, когда "может быть куплено все", пожалуй не существует. Вряд ли директор согласится продать свой личный письменный стол - а вот в классификатор он может попасть, для нужд учета.

Почему? Так и представляю себе ситуацию - покупается новый стол, а старый так аккуратненько в загашник - а вдруг пригодится?
...
Рейтинг: 0 / 0
Проект БД изделий
    #32971966
Сахават Юсифов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PVP Сахават ЮсифовКак решаете вопрос альтернативности (модификации) и генерации спецификаций находу (on fly)?В догонку.
Я не пытаюсь делать комплектацию из того же справочника ТМЦ, который используется в бухгалтерии. Проблема с разными кодами, ценами, партиями, названиями, разными людьми, которые ведут эти участки. Для описания комплектации исползуется другая база данных, в которой номенклатура носит обобщенный характер. Для связи между ними в базе данных ТМЦ делается ссылка на код из базы данных планирования.

Это не есть хорошо.
А вообще, я имел ввиду альтернативность материалов (одна деталь может изготовливаться из разных материалов), альтернативность технологий (разные маршрутно - операционные карты), что приводит к генерации спецификаций находу.
...
Рейтинг: 0 / 0
Проект БД изделий
    #32972049
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andres 1Почему? Так и представляю себе ситуацию - покупается новый стол, а старый так аккуратненько в загашник - а вдруг пригодится?
Вот когда "а вдруг пригодится" - тогда и появится строчка в прайсе "стол директорский". А пока он стоит в кабинете - рискну предположить, никто столько не заплатит.
...
Рейтинг: 0 / 0
Проект БД изделий
    #32979753
Сахават Юсифов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andres 1 Сахават Юсифов
Они были выставлены для тестирования.
Какие программы Вас интересует? Цель?

Посмотреть, как сделано. Любопытно просто. Какая еще может быть у меня цель?
Кстати, на первом скриншоте в документе tech.doc после комбобокса с датой есть кнопка с подписью "Срецификации".

Андре,

Ссылки исправлены. можете скачать программы.
...
Рейтинг: 0 / 0
Проект БД изделий
    #32979756
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Igor KozlovЕсть задачка:

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

Как правильно организовать базу?

Я придумал вот так:

TABLE ware // готовые изделия
ware_id
drawing_number
description
....

TABLE workpieces // заготовки
ware_id
material_id
quantity
...

TABLE component_parts // комплектующие изделия
ware_id
component_id
quantity
...

Так как опыта у меня совсем мало, оцените, пожалуйста, и скажите есть ли более совершенные решения с точки зрения простоты/сложности запросов и будущего усовершенствования?
Потому-что боюсь зайти слишком далеко з заведомо плохим началом :)

Когда IBM делал базу для проекта "Апполон" они решили точно такую-же задачу древовидной структурой.
У тебя деталь может быть и деталью и продуктом. Соответственно может содержаться в двух таблица. Это, вроде, не очень хорошо.
...
Рейтинг: 0 / 0
Проект БД изделий
    #32979761
Andres 1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сахават Юсифов
Ссылки исправлены. можете скачать программы.
Спасибо, попробую :)
...
Рейтинг: 0 / 0
Проект БД изделий
    #32980819
TimKa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ничего себе спор на голом месте.

По моему как окму удобно, тот так и делает, не существует универсального решения.

Например можно не делить товары на готовые изделия и полуфабрикаты на складе, потому как кладовщику пофиг что это. Так же пофиг бухгалтеру, что ушло, ему важна сумма. А вот менеджеру по продажам важно, и технологу важно. Та для них надо создать справочники - для первого это например прайс лист готовых изделий - то что он может отгрузить со склада. Для второго это технологическая карта сборки - что он может подать в производство и что он получит в результате. Эти справочники могут быть связаны, естественно, по кодам готовой продукции.

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


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