powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / "Bill Of Material" (BOM)
18 сообщений из 18, страница 1 из 1
"Bill Of Material" (BOM)
    #36710931
МаксимК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Люди, нигде не могу найти тольковой статьи о построение объектов на основе "Bill of Material" (BOM), кто сталкивался, киньте ссылочку...
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36710992
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для этого нужен толковый вопрос. Что такое "построение объектов на основе BOM", только вам, наверное, и известно.
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36711440
МаксимК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
это когда у одного объекта может быть много родителей например в изделие1 входит сборочная единица1 и в изделие2 входит сборочная единица1, вложенность не ограничена
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36712266
Фотография StalkerS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это называется деревом входимости и реализуется как минимум двумя разными способами - обычным деревом и методом Селко
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36712483
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По описанию - не дерево, а граф.
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36712502
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МаксимКЛюди, нигде не могу найти тольковой статьи о построение объектов на основе "Bill of Material" (BOM), кто сталкивался, киньте ссылочку...
Две таблицы: 1. вершины графа, 2. дуги графа. доп. поля таблиц на ваше усмотрение. вот и весь BOM
на этой стр-ре решается масса задач типа разузлований, входимости и т.д.
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36712904
МаксимК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_модМаксимКЛюди, нигде не могу найти тольковой статьи о построение объектов на основе "Bill of Material" (BOM), кто сталкивался, киньте ссылочку...
Две таблицы: 1. вершины графа, 2. дуги графа. доп. поля таблиц на ваше усмотрение. вот и весь BOM
на этой стр-ре решается масса задач типа разузлований, входимости и т.д.

дело вот еще в чем: корневые узлы могут входить в другие узлы т.е. какое нибудь изделие3 состоит из изделие1 + изделие2 + материалыю Помимо этого у каждого корневого узла есть таблица исполнений, в исполнение1 входит какое-то кол-во деталей а в исполнение2 совсем другое кол-во и может даже другие детали.
Насколько я понимаю с точки зрения ООП в таблице1 там где вершины графа у меня хранятся все сущности на пример сущность изделие с полями (ID,наименование,ссылка на ID в таблице исполнений), материал(ID,наименование,ссылка на таблицу с исполнениями)
в вот насчет таблицы2 это тоже будет отдельная сущность? если да то с какими полями? и как ее использовать? я думаю это должна быть отдельная сущность т.к в таблице2 я храню не только ID связи между сущностями в таблице1 там также есть поля "количество", "позиция", "примечание", которые относятся конкретно только к данной связи...
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36712971
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МаксимКдело вот еще в чем: корневые узлы могут входить в другие узлы
не могут по определению. готовое изделие м.б. не корневым узлом.
вершины графа д.б. типизированы - изделие, узел, материал, деталь, комлектующее
исполнения можно хранить как разные изделия (так проще), а можно хранить общую часть+изменения (это сложнее)
в остальном все правильно
[/quot]
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36713423
МаксимК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вот схема БД
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36713578
МаксимК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
таблица Elem в ней хранятся осовные сущности "изделие" "сборочная ед." "материал"
поле kod = ID записи
naim = наименование (стринг)
tip = тип класса
...

таблица Spec
kodsp = ID записи
kodrod = ссылка на родителя из таблицы elem
kodizd = сслыка на корневое изделие из таблицы elem
ispoln = текущее исполнение с которым исп данный элемент спецификации
kol = количество едениц данного елемента
...

таблица Namer в ней хранится список исполнений для данного элемента
на схеме ошибка поле kodizd из namer ссылается на kodel в таблице spec

kodizd = ссылка на поле kodel в spec
ispoln = номер исполнения
naim = наименование (стринг)
...

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

создать класс "исполнение" с полями соответ табл namer

класс "лист элементов" для загрузки элементов спецификации
в нем написать дополнит поле "лист элементов" загрузки элементов спецификации

создать класс "лист исполнений" который бы загружал все исполнения

затем сделать класс "элемент спецификации" с полями соответсвующими таблице spec в конструкторе класса передавать объект типа "изделие", "сборочная", "материал"
в этом же классе написать методы для вызова полей из класса который я передал в конструктор
(так удобней мне кажется)

Итак пользователь открывает программу и через объект класса "лист элементов" загружает все изделия за тем выбирает изделие нажимает открыть срабатывает метод класса "Get лист исполнений" появляется окно с текущими исполнениями, он выбирает исполнение нажимает ок и уже через класс "исполнение" вызывает метод "get лист элементов" я получаю лист входящих элементов в данное изделие с данным исполнением

пользователь видит на экране элементы спецификации с наименованием, обозначением, количеством, позицией и тд. только поля наименование и обозначение хранятся в elem а количество, позиция в spec

как здесь разрулить кто нибудь знает?
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36713632
МаксимК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в правильном ли я направлении мыслю, может у кого нибудь есть другие изделия

может уважаемый _mod мне что нибудь подскажет?
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36715495
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МаксимК,

вот одноуровневые спецификации
варианты создаются клонированием и изменением (так лучше, имхо)
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36715499
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А деревянные спецификации вычислимы
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36715509
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Д.б так:
таблица Elem в ней хранятся осовные сущности "изделие" "сборочная ед." "материал"
поле kod = ID записи
naim = наименование (стринг)
tip = тип класса
...
исполнения хранить как разные изделия, каждое со своим составом
для тип класса завести иерархический справочник, туда же занести типовые изделия, для которых есть исполнения

таблица Spec
kodsp = ID записи
kodrod = ссылка на родителя из таблицы elem
kodizd = сслыка на саму строк из таблицы elem
kol = количество едениц данного елемента
...
т.е. это чисто дуга графа
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36717004
МаксимК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
насчет дуги графа я понял, про изделия с исполнениями тоже, только у меня уже база заполнена данными и в некоторых изделиях около 100 исполнений, теперь получается мне надо все это перелопачивать в 100 разных изделий... можно ли как нибудь привязаться к таблице исполнений? (на схеме табл namer)
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36717059
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МаксимКтолько у меня уже база заполнена данными
Подход такой: сначала делаем БД правильной структуры, а потом в нее заливаем данные (не важно откуда). А иначе так и будете мучаться с плохой БД
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36861210
_мод
таблица Spec
kodsp = ID записи
kodrod = ссылка на родителя из таблицы elem
kodizd = сслыка на саму строк из таблицы elem
kol = количество едениц данного елемента
...
т.е. это чисто дуга графа
Можно вопрос?
А если количество разбивается по позициям и номерам листов, то нужно ли выносить это в отдельную таблицу?
автортаблица Spec
kodsp = ID записи
kodrod = ссылка на родителя из таблицы elem
kodizd = ссылка на саму строк из таблицы elem
kol = количество единиц данного элемента

автортаблица Spec_List_Pos
kodsp = ID записи
list = номер листа
pos = позиция
kol = количество единиц на данный лист и позицию


Или просто добавить в таблицу spec:
автортаблица Spec
kodsp = ID записи
kodrod = ссылка на родителя из таблицы elem
kodizd = ссылка на саму строк из таблицы elem
list = номер листа
pos = позиция
kol = количество единиц данного элемента
...
Рейтинг: 0 / 0
"Bill Of Material" (BOM)
    #36861739
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ВислобоковСережаИли просто добавить в таблицу spec:
Видимо, да
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / "Bill Of Material" (BOM)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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