Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как связать таблицы разных изделий / 14 сообщений из 14, страница 1 из 1
14.12.2014, 21:43
    #38833613
Amser
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
Всех приветствую!
Прошу помощи в проектировании БД.
Задача следующая: есть задача организовать БД для фирмы, которая занимается рекламными изделиями.Изделия - совсем разные, начиная от печатной продукции, заканчивая сложными конструкциями. Вопрос, как это все объединить.
Как я вижу нужно делать обязательно следующие таблицы:
Сотрудники: КодСотрудника, ФИО и т.д.
Заказчики: КодЗаказчика, НаимЗаказчика, КонтЛицо и т.д.
ВидИзделия: КодВидаИзделия, НаимИзделия
У каждого изделия множество полей.
Например по баннерам: КодБаннера, КодВидаИзделия, Ширина, Высота, Сумма и т.д. (много полей)
Например по печатной продукции: КодПечать, КодВидаИзделия, количество, ТипПечати, Сумма и т.д. (много полей).
И другие.
Если сделать таблицу заказы Заказы: КодЗаказа, КодСотрудника, КодЗаказчика, КодИзделия, Дата, Сумма и т.д. - как привязать сюда нужную таблицу, т.е. если изделие баннер, то КодБаннера, если это печатная продукция, то КодПечати? Или нужно идти по-другому пути?
Отчетами необходимо выводить информацию либо по конкретному виду продукции за период, либо по всей продукции с суммами за период, либо по заказчику и т.п.
Предполагал сделать все в Access.
...
Рейтинг: 0 / 0
14.12.2014, 22:05
    #38833626
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
Amserесть задача организовать БД для фирмы
Для чего? Каково её практическое назначение?

AmserУ каждого изделия множество полей.
Зачем?

От ответов на эти вопросы зависит вся структура БД.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
14.12.2014, 22:10
    #38833627
Alexander2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
Amser,

Заказы: КодЗаказа, КодСотрудника, КодЗаказчика, КодИзделия, Дата, Сумма, + КодВидаИзделия
...
Рейтинг: 0 / 0
14.12.2014, 22:18
    #38833629
Alexander2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
Таблица:ВидИзделия
Поля:Код,Наименовение

Содержание:
1, Banner
2, Booklet
3, Card

В таблице Параметры - перечислить(потом можно добавлять) ВСЕ мыслимые параметры. КодПараметра|Наименование параметра|....
В таблице Параметр_ВидИзделия хранить связку кода параметра и кода вида изделия: Id|КодПараметра|КодВидаИзделия

дальше интересно?!
...
Рейтинг: 0 / 0
14.12.2014, 22:21
    #38833631
Amser
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
Dimitry Sibiryakov,

Каждая таблица каждого изделия содержит много полей - для автоматического расчета суммы изделия. Например добавляем 5 логических/выпадающих полей для того, чтобы менеджер только поставила галочки/выбрала значения, и автоматически посчиталась сумма ИТОГО. Т.о. менеджер по каждому изделию видит все поля, не забывает что-то указать, не делает ошибок при расчете.
...
Рейтинг: 0 / 0
14.12.2014, 22:31
    #38833633
apapacy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
Это типичная задача. В 1с 8.х добавлены т.н. свойства или как их там.
Конкретнее нужен словарь свойств. (Там длинна, ширна, вес, мощность, цвет) тип значений с войств (число, строка, дата, . перечислимое ...). И к изделию привязывать разные свойства. Возможно для однотипных изделий фиксированное множество сойств.

Тогда можно организовать поиск по свойствам.

Только вот в Аццесе это будет сделать довольно накладно, но не невозможно.

Я сам такое ваял в ООВазе - хранить просто, но выборка по заданным свойствм вышла корявая. А не корявая будет много букофф кода.
...
Рейтинг: 0 / 0
14.12.2014, 22:37
    #38833634
Amser
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
Alexander2В таблице Параметры - перечислить(потом можно добавлять) ВСЕ мыслимые параметры. КодПараметра|Наименование параметра|....

Т.е. хранить таблицу с наименованиями параметров?
...
Рейтинг: 0 / 0
14.12.2014, 22:38
    #38833635
Amser
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
apapacy,

А в какой среде тогда это делать оптимальнее? 1С?
...
Рейтинг: 0 / 0
14.12.2014, 23:17
    #38833652
apapacy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
Да в той среде которой Вы виртуозно владеете.

В 1с, кстати, сделать универсальную выборку по свойствам тоже нужно постараться.

НМВ наиболее органично это сделать под веб-интерфейс. Объясню почему.
Веб-интерфейс, собственно ХТМЛ-документ, генерируется на лету и может быть принципиально разным для различных наборов свойств.

В противовес этому, тот же Аццес поразумевает зараннее нарисованную форму. Впрочем, со свойствами я игрался даже на ФоксПро. Но не так это органично получалось.
...
Рейтинг: 0 / 0
14.12.2014, 23:20
    #38833653
apapacy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
Имеется в виду, что поиск сделать будет сложновато. А так - ввод свойств - несложно даже в ООБазе.
...
Рейтинг: 0 / 0
15.12.2014, 02:35
    #38833688
Alexander2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
Amser,

авторТ.е. хранить таблицу с наименованиями параметров?
Один раз заполнить, затем по мере появления добавлять/редактировать.

Изделие описывать на форме, на которую выносится в колонки таблицы развернутый список параметров.
можно вертикально, колонка= имя параметра (read-only), и редактируемая колонка - Value.
в базу записывается Id_Izdelie|Id_Parameter|Value
...
Рейтинг: 0 / 0
15.12.2014, 09:11
    #38833778
аля1с
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
AmserВсех приветствую!
...
Предполагал сделать все в Access.

имхо
для старта - оч даже правильно



найди возможность глянуть внутрь 1с

приглядись там
...
Рейтинг: 0 / 0
15.12.2014, 09:33
    #38833792
аля1с
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
))

вдогонку


прошепчу громко

как среда -
1с - демьянова уха
...
Рейтинг: 0 / 0
15.12.2014, 11:34
    #38833928
П-Л
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как связать таблицы разных изделий
Просмотрите материалы по EAV.

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

Я бы сделал так.

Одна супер-таблица на ВСЕ типы изделий, куда вытащены все общие параметры изделий.
Иерархический классификатор типов-видов-подвидов... изделий.
Возможно, измерений классификации более одного. Система будет мощнее (но труднее реализация) (я бы сделал).
Конкретные изделия, для каждого - вид по класификатору или набор кодов по измерениям классификации.
Дальше EAV - словарь параметров, применимость параметров к классификатору изделий, значения парметров для экзепляров изделий.
Если иерархический классификатор один, то применимость удобно задавать в виде паттернов адресов иерархии с метасиволами *.
Поясню.

Если классификаторов несколько, то каждый задется независимо:
<Размер> - <большой, средний, маленький>
<Цвет> - <цветной, черно-белый>.

Атрибут <тип краски> применялся бы <цветной>, а длина рулона применяется к <большой>

Если классификатор один, придется городить:
1. Большой
1.1. Большой.цветной
1.2. Большой.черно-белый
2. Средний
2.1. Средний.цветной
2.2. Средний.черно-белый
...
Атрибут <тип краски> применяется к <*.цветной>
Атрибут <длина рулона> применяется к <Большой.*>




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


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